numapprox
chebpade
compute a Chebyshev-Pade approximation
Calling Sequence
Parameters
Description
Examples
References
chebpade(f, x=a..b, [m, n])
chebpade(f, x, [m, n])
chebpade(f, a..b, [m, n])
f
-
procedure or expression representing the function to be approximated
x
the variable appearing in f, if f is an expression
a, b
numerical values specifying the interval of approximation
m, n
desired degree of numerator and denominator, respectively
The function chebpade computes a Chebyshev-Pade approximation of degree m,n for the function f.
Specifically, f is expanded in a Chebyshev series on the interval a..b (if a..b is not specified then the interval −1..1 is understood), and then the Chebyshev-Pade rational approximation is computed.
If n=0 or if the third argument is simply an integer m then the Chebyshev series of degree m is computed.
The m,n Chebyshev-Pade approximation is defined to be the rational function p⁡xq⁡x with deg⁡p⁡x≤m and deg⁡q⁡x≤n such that the Chebyshev series expansion of p⁡xq⁡x has maximal initial agreement with the Chebyshev series expansion of f. In normal cases, the series expansion agrees through the term of degree m+n.
If the second argument is a range a..b then the first argument is understood to be a Maple operator, and the result will be returned as an operator. If the second argument is an equation x=a..b, or a name x, then the first argument is understood to be an expression in the variable x, and the result will be returned as an expression. In all cases, the numerator and denominator will be expressed in terms of the Chebyshev polynomials T⁡n,x. See orthopoly[T].
The method used is based on transforming the Chebyshev series to a power series with the same coefficients, computing a Pade approximation for the power series, and then converting back to the appropriate Chebyshev-Pade approximation.
Note that for the purpose of evaluating a rational function efficiently (i.e. minimizing the number of arithmetic operations), the rational function should be converted to a continued-fraction form. See numapprox[confracform].
Various levels of user information will be displayed during the computation if infolevel[chebpade] is assigned values between 1 and 3.
The command with(numapprox,chebpade) allows the use of the abbreviated form of this command.
with⁡numapprox:
chebpade⁡exp⁡x,x=0..1,5
1.75338765437709⁢T⁡0,2⁢x−1+0.850391653780811⁢T⁡1,2⁢x−1+0.105208693630937⁢T⁡2,2⁢x−1+0.00872210473331555⁢T⁡3,2⁢x−1+0.000543436831150254⁢T⁡4,2⁢x−1+0.0000271154349130735⁢T⁡5,2⁢x−1
chebpade⁡sin⁡xx,x=0..2,2,2
0.771073733750623⁢T⁡0,x−1−0.221091073962959⁢T⁡1,x−1−0.0421244668861024⁢T⁡2,x−1T⁡0,x−1+0.0836360586596837⁢T⁡1,x−1+0.0336007994536882⁢T⁡2,x−1
chebpade⁡sin+cos,−1..1,1,2
x↦0.865073720371733357⋅T⁡0,x+1.11718143936440173⋅T⁡1,xT⁡0,x+0.266549197507840174⋅T⁡1,x+0.151597635961381677⋅T⁡2,x
r≔confracform⁡subs⁡T=orthopolyT,
r≔y↦3.68469281291759376y+0.104797831264514252+2.71705574090406143y+0.774335922429842616
Check agreement of the Chebyshev series to 7 digits of accuracy.
Digits≔7
chebpade⁡r,−1..1,4
x↦0.7651975⋅T⁡0,x+0.8801012⋅T⁡1,x−0.2298070⋅T⁡2,x−0.03912671⋅T⁡3,x+0.02274805⋅T⁡4,x
chebpade⁡sin+cos,−1..1,4
x↦0.7651975⋅T⁡0,x+0.8801012⋅T⁡1,x−0.2298070⋅T⁡2,x−0.03912671⋅T⁡3,x+0.004953278⋅T⁡4,x
Geddes, K.O. "Block Structure in the Chebyshev-Pade Table." SIAM J. Numer. Anal., Vol. 18(5). (Oct. 1981): 844-861.
See Also
convert/ratpoly
numapprox[chebyshev]
numapprox[confracform]
numapprox[minimax]
orthopoly[T]
Download Help Document