外文原文:
PADE APPROXIMATION BY RATIONAL FUNCTION 129
We can apply this formula to get the polynomial approximation directly for a given function f (x), without having to resort to the Lagrange or Newton polynomial. Given a function, the degree of the approximate polynomial, and the left/right boundary points of the interval, the above MATLAB routine “cheby()” uses this formula to make the Chebyshev polynomial approximation.
The following example illustrates that this formula gives the same approximate polynomial function as could be obtained by applying the Newton polynomial with the Chebyshev nodes.
Example 3.1. Approximation by Chebyshev Polynomial. Consider the problem of finding the second-degree (N = 2) polynomial to approximate the function
f(x)?1/(1?8x2). We make the following program “do_cheby.m”, which uses the MATLAB routine “cheby()” for this job and uses Lagrange/Newton polynomial with the Chebyshev nodes to do the same job. Readers can run this program to check if the results are the same.
3.4 PADE APPROXIMATION BY RATIONAL FUNCTION
Pade approximation tries to approximate a function f (x) around a point xo by a rational function
QM(x?x0)pM,N(x?x)?DN(x?x0)0=q0?q1(x?x)?q2(x?x)++qM(x?x)1?d1(x?x0)?d2(x?x0)2?+dN(x?x0)N0020M (3.4.1)
where f(x0),f'(x0),f(2)(x0),,f(M?N)(x0) are known.
How do we find such a rational function? We write the Taylor series expansion of f (x) up to degree M + N at x = xo as
130 INTERPOLATION AND CURVE FITTING
f(2)(x0)f(x)?TM?N(x?x)?f(x)?f'(x)(x?x)?(x?x0)2?20000f(M?N)(x0)?(x?x0)M?N(M?N)!?a0?a1(x?x0)?a2(x?x0)2?
?aM?N(x?x0)M?N(3.4.2)Assuming x0=0for simplicity, we get the coefficients of DN(x)andQM(x) such that
TM?N(x)?QM(x)?0DN(x)(a0?a1x??aM?NxM?N)(1?d1x??dNxN)?(q0?q1x?1?d1x??dNxN?qNxN)?0
(a0?a1x??aM?NxM?N)(1?d1x??dNxN)?(q0?q1x??qNxN) (3.4.3)
by solving the following equations:
?a0?a?a0d1?1?a2?a1d1+a0d2???+aM?1d1+aM?2d2?aM?a+aMd1+aM?1d2?M?1?aM?2+aM?1d1+aMd2????aM?N+aM?Nd1+aM?Nd2?q0?q1?q2+aM?NdN+aM?N?1dN?aM?N?2dN+aMdN(3.4.4b) qM(3.4.4a)
?0?0?0Here, we must first solve Eq. (3.4.4b) for d1,d2,?,dN and then substitute di’s into Eq. (3.4.4a) to obtain q0,q1,?,qM
The MATLAB routine “padeap()” implements this scheme to find the coefficient vectors of the numerator/denominator polynomialQM(x)/DN(x) of the Pade approximation for a given function f (x). Note the following things:
? The derivativesf'(x0),f(2)(x0),,f(M?N)(x0) up to order (M + N) are
computed numerically by using the routine “difapx()”, that will be introduced in Section 5.3.
? In order to compute the values of the Pade approximate function, we substitute
x?x0 for x in pM,N(x) which has been obtained with the assumption that x0=0.
PADE APPROXIMATION BY RATIONAL FUNCTION 131
Example 3.2. Pade Approximation for f(x)?ex . Let’s find the Pade approximation
p3,2(x)?Q3(x)/D2(x) for f(x)?ex around x0=0. We make the MATLAB program “do_pade.m”, which uses the routine “padeap()” for this
计算机科学与技术专业外文翻译--插值与拟合



