miércoles, 5 de junio de 2024

Richardson Extrapolation Demostration

 https://personal.math.ubc.ca/~CLP/CLP2/clp_2_ic/ap_Richardson.html



C.1 Richardson Extrapolation

There are many approximation procedures in which one first picks a step size  and then generates an approximation 𝐴() to some desired quantity 𝐴. For example, 𝐴 might be the value of some integral 𝑎𝑏𝑓(𝑥)d𝑥. For the trapezoidal rule with 𝑛 steps, Δ𝑥=𝑏𝑎𝑛 plays the role of the step size. Often the order of the error generated by the procedure is known. This means
(E1)𝐴=𝐴()+𝐾𝑘+𝐾1𝑘+1+𝐾2𝑘+2+ 
with 𝑘 being some known constant, called the order of the error, and 𝐾, 𝐾1, 𝐾2,  being some other (usually unknown) constants. If 𝐴() is the approximation to 𝐴=𝑎𝑏𝑓(𝑥)d𝑥 produced by the trapezoidal rule with Δ𝑥=, then 𝑘=2. If Simpson's rule is used, 𝑘=4.
Let's first suppose that  is small enough that the terms 𝐾𝑘+1+𝐾𝑘+2+  in (E1) are small enough 1  that dropping them has essentially no impact. This would give
(E2)𝐴=𝐴()+𝐾𝑘
Imagine that we know 𝑘, but that we do not know 𝐴 or 𝐾, and think of (E2) as an equation that the unknowns 𝐴 and 𝐾 have to solve. It may look like we have one equation in the two unknowns 𝐾, 𝐴, but that is not the case. The reason is that (E2) is (essentially) true for all (sufficiently small) choices of . If we pick some , say 1, and use the algorithm to determine 𝐴(1) then (E2), with  replaced by 1, gives one equation in the two unknowns 𝐴 and 𝐾, and if we then pick some different , say 2, and use the algorithm a second time to determine 𝐴(2) then (E2), with  replaced by 2, gives a second equation in the two unknowns 𝐴 and 𝐾. The two equations will then determine both 𝐴 and 𝐾.
To be more concrete, suppose that we have picked some specific value of , and have chosen 1= and 2=2, and that we have evaluated 𝐴() and 𝐴(/2). Then the two equations are
(E3a)𝐴=𝐴()+𝐾𝑘(E3b)𝐴=𝐴(/2)+𝐾(2)𝑘
It is now easy to solve for both 𝐾 and 𝐴. To get 𝐾, just subtract (E3b) from (E3a).
(E3a)(E3b):0=𝐴()𝐴(/2)+(112𝑘)𝐾𝑘(E4a)𝐾=𝐴(/2)𝐴()[12𝑘]𝑘
To get 𝐴 multiply (E3b) by 2𝑘 and then subtract (E3a).
2𝑘(E3b)(E3a):[2𝑘1]𝐴=2𝑘𝐴(/2)𝐴()(E4b)𝐴=2𝑘𝐴(/2)𝐴()2𝑘1
The generation of a “new improved” approximation for 𝐴 from two 𝐴()'s with different values of  is called Richardson 2  Extrapolation. Here is a summary
This works very well since, by computing 𝐴() for two different 's, we can remove the biggest error term in (E1), and so get a much more precise approximation to 𝐴 for little additional work.

No hay comentarios:

Publicar un comentario