Lecture
Lecture
Padé Approximation
Joe Mahaffy,
[email protected]
Department of Mathematics
Dynamical Systems Group
Computational Sciences Research Center
San Diego State University
San Diego, CA 92182-7720
http://www-rohan.sdsu.edu/∼jmahaffy
Spring 2010
Joe Mahaffy, [email protected] Rational Function Approximation — (1/21)
Approximation Theory
Padé Approximation
Outline
1 Approximation Theory
Pros and Cons of Polynomial Approximation
New Bag-of-Tricks: Rational Approximation
Padé Approximation: Example #1
2 Padé Approximation
Example #2
Finding the Optimal Padé Approximation
Padé Approximation
Padé Approximation
P∞
Now, use the Taylor expansion f (x) ∼ i=0 ai (x − x0 )i , for
simplicity x0 = 0:
∞
X m
X n
X
i i
ai x qi x − pi xi
i=0 i=0 i=0
f (x) − r (x) = .
q(x)
Padé Approximation
P∞
Now, use the Taylor expansion f (x) ∼ i=0 ai (x − x0 )i , for
simplicity x0 = 0:
∞
X m
X n
X
i i
ai x qi x − pi xi
i=0 i=0 i=0
f (x) − r (x) = .
q(x)
Next, we choose p0 , p1 , . . . , pn and q1 , q2 , . . . , qm so that the numerator
has no terms of degree ≤ N.
Joe Mahaffy, [email protected] Rational Function Approximation — (5/21)
Pros and Cons of Polynomial Approximation
Approximation Theory
New Bag-of-Tricks: Rational Approximation
Padé Approximation
Padé Approximation: Example #1
as
k
X
ai qk−i = pk , k = 0, 1, . . . , N.
i=0
x0 a0 − p0 = 0
x1 a0 q1 + a1 − p1 = 0
x2 a0 q2 + a1 q1 + a2 − p2 = 0
x3 a0 q3 + a1 q2 + a2 q1 + a3 − p3 = 0
x4 a0 q4 + a1 q3 + a2 q2 + a3 q1 + a4 − p4 = 0
x5 a0 q5 + a1 q4 + a2 q3 + a3 q2 + a4 q1 + a5 − p5 = 0
If we want n = 3, m = 2:
a0 q1 p1 a1
a1 a0 q2 p2 a2
a2 a1 a0 0 − p3 = − a3 .
a3 a2 a1 a0 0 0 a4
a4 a3 a2 a1 a0 0 0 a5
If we want n = 3, m = 2:
a0 −1 q1 0 a1
a1 a0 q2 p2 a2
a2 a1 0 p1 − p3 = − a3 .
a3 a2 0 a0 0 0 a4
a4 a3 0 a1 a0 0 0 a5
If we want n = 3, m = 2:
a0 −1 q1 0 a1
a1 a0 −1 q2 0 a2
a2 a1 0 p1 − p3 = − a3 .
a3 a2 0 0 p2 0 a4
a4 a3 0 0 a0 0 0 a5
If we want n = 3, m = 2:
a0 −1 q1 0 a1
a1 a0 −1 q2 0 a2
a2 a1 0 −1 p1 − 0 = − a3 .
a3 a2 0 0 p2 0 a4
a4 a3 0 0 0 p3 0 a5
If we want n = 3, m = 2:
a0 0 −1 q1 a1
a1 a0 0 −1 q2 a2
a2 a1 0 0 −1 p1 = − a3 .
a3 a2 0 0 0 p2 a4
a4 a3 0 0 0 p3 a5
1 0 −1 q1 −1
−1 1 0 −1 q2
1/2
1/2 −1 0 p1
0 −1 = −
−1/6 ,
−1/6 1/2 0 0 0 p2
1/24
1/24 −1/6 0 0 0 p3 −1/120
1 0 −1 q1 −1
−1 1 0 −1 q2
1/2
1/2 −1 0 p1
0 −1 = −
−1/6 ,
−1/6 1/2 0 0 0 p2
1/24
1/24 −1/6 0 0 0 p3 −1/120
3 3 1
1 − x + x2 − x3
r3,2 (x) = 5 20 60 .
2 1 2
1+ x + x
5 20
Joe Mahaffy, [email protected] Rational Function Approximation — (9/21)
Approximation Theory Example #2
Padé Approximation Finding the Optimal Padé Approximation
r5,0 (x) = 1 − x + 12 x 2 − 16 x 3 + 1 4
24 x − 1 5
120 x
3 2 1 3
1− 54 x+ 10 x − 15 1
x + 120 x4
r4,1 (x) = 1+ 15 x
3 2 1 3
1− 53 x+ 20 x − 60 x
r3,2 (x) = 1 2
1+ 25 x+ 20 x
1 2
1− 25 x+ 20 x
r2,3 (x) = 1+ 53 x+ 20
3 2 1 3
x + 60 x
1− 51 x
r1,4 (x) = 3 2
1+ 54 x+ 10 x + 151 3 1
x + 120 x4
1
r0,5 (x) = 1+x+ 12 x 2 + 61 x 3 + 24
1 4 1
x + 120 x5
R{5,0}(x)
0.01
0.001
0.0001
1e-05
0 0.5 1 1.5 2
R{5,0}(x)
R{4,1}(x)
0.01
0.001
0.0001
1e-05
0 0.5 1 1.5 2
R{5,0}(x)
R{4,1}(x)
R{3,2}(x)
0.01
0.001
0.0001
1e-05
0 0.5 1 1.5 2
R{5,0}(x)
R{3,2}(x)
R{2,3}(x)
0.01
0.001
0.0001
1e-05
0 0.5 1 1.5 2
R{5,0}(x)
R{2,3}(x)
R{1,4}(x)
0.01
0.001
0.0001
1e-05
0 0.5 1 1.5 2
R{5,0}(x)
R{2,3}(x)
R{0,5}(x)
0.01
0.001
0.0001
1e-05
0 0.5 1 1.5 2
R{5,0}(x)
R{4,1}(x)
R{3,2}(x)
0.01 R{2,3}(x)
R{1,4}(x)
R{0,5}(x)
0.001
0.0001
1e-05
0 0.5 1 1.5 2
Note: Due to the “folding”, Ti (x)Tj (x) = 21 Ti+j (x) + T|i−j| (x) ,
£ ¤
· ¸
1
T0 (x) : 2 a1 q1 + a2 q2 − 2p0 = 2a0
· ¸
1
T1 (x) : 2 (2a0 + a2 )q1 + (a1 + a3 )q2 − 2p1 = 2a1
· ¸
1
T2 (x) : 2 (a1 + a3 )q1 + (2a0 + a4 )q2 − 2p2 = 2a2
· ¸
1
T3 (x) : 2 (a2 + a4 )q1 + (a1 + a5 )q2 − 2p3 = 2a3
· ¸
1
T4 (x) : 2 (a3 + a5 )q1 + (a2 + a6 )q2 − 0 = 2a4
· ¸
1
T5 (x) : 2 (a4 + a6 )q1 + (a3 + a7 )q2 − 0 = 2a5
1.155054 T0 (x) − 0.8549674 T1 (x) + 0.1561297 T2 (x) − 0.01713502 T3 (x) + 0.001066492 T4 (x)
T0 (x) + 0.1964246628 T1 (x)
RCP
3,2 (x) =
RCP
2,3 (x) =
0.9541897238 T0 (x) − 0.3737556255 T1 (x) + 0.02331049609 T2 (x)
T0 (x) + 0.5682932066 T1 (x) + 0.06911746318 T2 (x) + 0.003726440404 T3 (x)
RCP
1,4 (x) =
1.5 1.5
1 1
0.5 0.5
0 0
−0.5 −0.5
−1 −1
−1.5 −1.5
−2 −2
−1 −0.5 0 0.5 1 −1 −0.5 0 0.5 1
−5 Error for Chebyshev−Pade−2−3 Approximation −5 Error for Chebyshev−Pade−1−4 Approximation
x 10 x 10
2 2
1.5 1.5
1 1
0.5 0.5
0 0
−0.5 −0.5
−1 −1
−1.5 −1.5
−2 −2
−1 −0.5 0 0.5 1 −1 −0.5 0 0.5 1
−1
2.5
−1.5
2
−2
−2.5 1.5
−3
1
−3.5
−4 0.5
−4.5 Chebyshev−Pade
Pade 0
−5
−1 −0.5 0 0.5 1 −1 −0.5 0 0.5 1
−4 Error Comparison for 1−4 Approximations
−4 Error Comparison for 2−3 Approximations x 10
x 10 15
0 Chebyshev−Pade
Pade
−0.5
−1
−1.5 10
−2
−2.5
−3
5
−3.5
−4
−4.5 Chebyshev−Pade
Pade
−5 0
−1 −0.5 0 0.5 1 −1 −0.5 0 0.5 1
The Chebyshev basis does not give an optimal (in the min-max
sense) rational approximation. However, the result can be used as
a starting point for the second Remez algorithm. It is an
iterative scheme which converges to the best approximation.
A discussion of how and why (and why not) you may want to use
the second Remez’ algorithm can be found in Numerical Recipes
in C: The Art of Scientific Computing (Section 5.13). [You can
read it for free on the web(∗) — just Google for it!]
(∗) The old 2nd Edition is Free, the new 3rd edition is for sale...