基本原理
泰勒展开以多项式的形式对
f
(
x
)
f(x)
f(x)进行逼近,帕德近似则是以有理分式的形式对目标函数
f
(
x
)
f(x)
f(x)进行逼近。帕德近似的基本形式如下所示(以零点为邻域):
R
m
,
n
(
x
)
=
p
(
x
)
q
(
x
)
=
p
0
+
p
1
x
+
p
2
x
2
+
.
.
.
+
p
m
x
m
1
+
q
1
x
+
q
2
x
2
+
.
.
.
+
q
n
x
n
{R_{m,n}}\left( x \right) = \frac{{p\left( x \right)}}{{q\left( x \right)}} = \frac{{{p_0} + {p_1}x + {p_2}{x^2} + ... + {p_m}{x^m}}}{{1 + {q_1}x + {q_2}{x^2} + ... + {q_n}{x^n}}}
Rm,n(x)=q(x)p(x)=1+q1x+q2x2+...+qnxnp0+p1x+p2x2+...+pmxm
其中, p ( x ) p(x) p(x)和 q ( x ) q(x) q(x)分别为 m m m和 n n n阶多项式, R m , n ( x ) {R_{m,n}}\left( x \right) Rm,n(x)也被称作 f ( x ) f(x) f(x)的 [ m , n ] [m,n] [m,n]阶帕德近似。注意, q ( x ) q(x) q(x)的常数项为 1 1 1。
求解方法1
利用
R
m
,
n
(
x
)
R_{m,n}(x)
Rm,n(x)和
f
(
x
)
,
f(x),
f(x),在
x
=
0
x=0
x=0处,前
m
+
n
m+n
m+n阶导数与
f
(
x
)
f(x)
f(x)对应项相等,求解帕德近似的系数:
{
R
m
,
n
(
x
0
)
=
f
(
x
0
)
R
m
,
n
′
(
x
0
)
=
f
′
(
x
0
)
R
m
,
n
′
′
(
x
0
)
=
f
′
′
(
x
0
)
⋮
R
m
,
n
(
m
+
n
)
(
x
0
)
=
f
(
m
+
n
)
(
x
0
)
→
{
p
0
,
p
1
,
p
2
,
.
.
.
+
p
m
q
1
,
q
2
,
.
.
.
,
q
n
\left\{ {\begin{array}{c} {{R_{m,n}}\left( {{x_0}} \right) = f\left( {{x_0}} \right)}\\ {{R_{m,n}^{'}}\left( {{x_0}} \right) = f'\left( {{x_0}} \right)}\\ {{R_{m,n}^{''}}\left( {{x_0}} \right) = f''\left( {{x_0}} \right)}\\ \vdots \\ {R_{m,n}^{\left( {m + n} \right)}\left( {{x_0}} \right) = {f^{\left( {m + n} \right)}}\left( {{x_0}} \right)} \end{array}} \right. \to \left\{ {\begin{array}{c} {{p_0},{p_1},{p_2},... + {p_m}}\\ {{q_1},{q_2},...,{q_n}} \end{array}} \right.
⎩
⎨
⎧Rm,n(x0)=f(x0)Rm,n′(x0)=f′(x0)Rm,n′′(x0)=f′′(x0)⋮Rm,n(m+n)(x0)=f(m+n)(x0)→{p0,p1,p2,...+pmq1,q2,...,qn
示例:求解
f
(
x
)
=
e
x
f\left( x \right) = {e^x}
f(x)=ex的
[
1
,
1
]
[1,1]
[1,1]阶帕德近似:
{
R
1
,
1
(
0
)
=
p
0
+
p
1
x
1
+
q
1
x
=
p
0
1
=
1
R
1
,
1
′
(
0
)
=
p
1
−
p
0
q
1
(
1
+
q
1
x
)
2
=
p
1
−
p
0
q
1
(
1
)
2
=
1
R
1
,
1
′
′
(
0
)
=
−
2
(
p
1
−
p
0
q
1
)
(
1
+
q
1
x
)
q
1
(
1
+
q
1
x
)
2
=
−
2
(
p
1
−
p
0
q
1
)
q
1
(
1
)
2
=
1
→
{
p
0
=
1
p
1
=
0.5
q
1
=
−
0.5
\left\{ \begin{array}{l} {R_{1,1}}\left( 0 \right) = \frac{{{p_0} + {p_1}x}}{{1 + {q_1}x}} = \frac{{{p_0}}}{1} = 1\\ {R^\prime_{1,1}} \left( 0 \right) = \frac{{{p_1} - {p_0}{q_1}}}{{{{\left( {1 + {q_1}x} \right)}^2}}} = \frac{{{p_1} - {p_0}{q_1}}}{{{{\left( 1 \right)}^2}}} = 1\\ {R^{\prime \prime }_{1,1}}\left( 0 \right) = \frac{{ - 2\left( {{p_1} - {p_0}{q_1}} \right)\left( {1 + {q_1}x} \right){q_1}}}{{{{\left( {1 + {q_1}x} \right)}^2}}} = \frac{{ - 2\left( {{p_1} - {p_0}{q_1}} \right){q_1}}}{{{{\left( 1 \right)}^2}}} = 1 \end{array} \right. \to \left\{ \begin{array}{l} {p_0} = 1\\ {p_1} = 0.5\\ {q_1} = - 0.5 \end{array} \right.
⎩
⎨
⎧R1,1(0)=1+q1xp0+p1x=1p0=1R1,1′(0)=(1+q1x)2p1−p0q1=(1)2p1−p0q1=1R1,1′′(0)=(1+q1x)2−2(p1−p0q1)(1+q1x)q1=(1)2−2(p1−p0q1)q1=1→⎩
⎨
⎧p0=1p1=0.5q1=−0.5
于是,
f
(
x
)
=
e
x
f\left( x \right) = {e^x}
f(x)=ex的
[
1
,
1
]
[1,1]
[1,1]阶帕德近似表达式为:
R
1
,
1
(
x
)
=
1
+
0.5
x
1
−
0.5
x
{R_{1,1}}\left( x \right) = \frac{{1 + 0.5x}}{{1 - 0.5x}}
R1,1(x)=1−0.5x1+0.5x
求解方法2
利用
f
(
x
)
f(x)
f(x)在
x
=
0
x=0
x=0处,
m
+
n
m+n
m+n阶泰勒展开表达式,求解帕德近似
R
m
,
n
(
x
)
R_{m,n}(x)
Rm,n(x)的系数:
{
f
(
x
)
=
p
(
x
)
+
O
(
x
m
+
n
)
=
f
(
0
)
+
f
′
(
0
)
1
!
x
+
f
′
′
(
0
)
2
!
x
2
+
.
.
.
+
f
(
m
+
n
)
(
0
)
n
!
x
m
+
n
+
O
(
x
m
+
n
)
f
(
x
)
=
R
m
,
n
(
x
)
+
O
(
x
m
+
n
)
=
p
0
+
p
1
x
+
p
2
x
2
+
.
.
.
+
p
m
x
m
1
+
q
1
x
+
q
2
x
2
+
.
.
.
+
q
n
x
n
+
O
(
x
m
+
n
)
\left\{ \begin{array}{l} f\left( x \right) = p\left( x \right) + O\left( {{x^{m + n}}} \right) = f\left( 0 \right) + \frac{{f'\left( 0 \right)}}{{1!}}x + \frac{{f''\left( 0 \right)}}{{2!}}{x^2} + ... + \frac{{{f^{\left( {m + n} \right)}}\left( 0 \right)}}{{n!}}{x^{m + n}} + O\left( {{x^{m + n}}} \right)\\ f\left( x \right) = {R_{m,n}}\left( x \right) + O\left( {{x^{m + n}}} \right) = \frac{{{p_0} + {p_1}x + {p_2}{x^2} + ... + {p_m}{x^m}}}{{1 + {q_1}x + {q_2}{x^2} + ... + {q_n}{x^n}}} + O\left( {{x^{m + n}}} \right) \end{array} \right.
{f(x)=p(x)+O(xm+n)=f(0)+1!f′(0)x+2!f′′(0)x2+...+n!f(m+n)(0)xm+n+O(xm+n)f(x)=Rm,n(x)+O(xm+n)=1+q1x+q2x2+...+qnxnp0+p1x+p2x2+...+pmxm+O(xm+n)
示例,求解
f
(
x
)
=
e
x
f\left( x \right) = {e^x}
f(x)=ex的
[
1
,
1
]
[1,1]
[1,1]阶帕德近似:
{
e
x
=
1
+
x
+
1
2
x
2
+
O
(
x
2
)
e
x
=
p
0
+
p
1
x
1
+
q
1
x
+
O
(
x
2
)
→
{
1
+
x
+
0.5
x
2
=
p
0
+
p
1
x
1
+
q
1
x
+
O
(
x
2
)
→
1
+
(
1
+
q
1
)
x
+
(
0.5
+
q
1
)
x
2
=
p
0
+
p
1
x
+
O
(
x
2
)
→
{
1
=
p
0
1
+
q
1
=
p
1
0.5
+
q
1
=
0
→
{
p
0
=
1
p
1
=
0.5
q
1
=
−
0.5
\left\{ \begin{array}{l} {e^x} = 1 + x + \frac{1}{2}{x^2} + O\left( {{x^2}} \right)\\ {e^x} = \frac{{{p_0} + {p_1}x}}{{1 + {q_1}x}} + O\left( {{x^2}} \right) \end{array} \right. \to \left\{ \begin{array}{l} 1 + x + 0.5{x^2} = \frac{{{p_0} + {p_1}x}}{{1 + {q_1}x}} + O\left( {{x^2}} \right)\\ \to1 + \left( {1 + {q_1}} \right)x + \left( {0.5 + {q_1}} \right){x^2} = {p_0} + {p_1}x + O\left( {{x^2}} \right) \end{array} \right. \to \left\{ \begin{array}{l} 1 = {p_0}\\ 1 + {q_1} = {p_1}\\ 0.5 + {q_1} = 0 \end{array} \right. \to \left\{ \begin{array}{l} {p_0} = 1\\ {p_1} = 0.5\\ {q_1} = - 0.5 \end{array} \right.
{ex=1+x+21x2+O(x2)ex=1+q1xp0+p1x+O(x2)→{1+x+0.5x2=1+q1xp0+p1x+O(x2)→1+(1+q1)x+(0.5+q1)x2=p0+p1x+O(x2)→⎩
⎨
⎧1=p01+q1=p10.5+q1=0→⎩
⎨
⎧p0=1p1=0.5q1=−0.5
于是,
f
(
x
)
=
e
x
f\left( x \right) = {e^x}
f(x)=ex的
[
1
,
1
]
[1,1]
[1,1]阶帕德近似表达式为:
R
1
,
1
(
x
)
=
1
+
0.5
x
1
−
0.5
x
{R_{1,1}}\left( x \right) = \frac{{1 + 0.5x}}{{1 - 0.5x}}
R1,1(x)=1−0.5x1+0.5x