The aim of this paper is to give a complete and practical method for numerical application of Padé approximation with the help of the c-table analysis. We present an exhaustive list of useful formulas to compute a c-table related to a formal power series C(z)=∑n=0∞cnzn. Some of these formulas are not widely known, because they were presented in publications of limited circulation. Some others were never published, as three symmetric Paszkowski-like formulas to overcome the blocks in a c-table or an extension of local error formula for Padé approximants in the blocks. All formulas are given in two versions: in terms of Toeplitz determinants (c-table) and in the version of Hankel determinants (c-table). We compare the theory with numerical observations by reproducing different computational aspects of software
producing the c-tables with the presence of blocks and their evolution
following the evolution of computer environment.
1. Introduction
The Padé approximation method is largely used to solve many problems of numerical analysis such as the convergence acceleration, analytic continuation of complex functions, moment problems, and numerical integration [1–3] and, in general, to approximate functions of the complex variable represented by a truncated power series and the detection of their zeros and poles. This method is also commonly applied to solve numerous problems in physical modeling [4]. We can find some historical background and fundamental concepts of this method in [5] and the recently published book by Trefethen [6]. In [7] the authors present the methods used to construct matrix Padé approximants if the coefficient matrices of the input matrix polynomial are triangular. The extended Euclidean algorithm is applied to solve this problem. The application of Padé approximants in computational problems starts frequently by the computation of the auxiliary table, called c-table [8]. The entries of c-table are the Toeplitz determinants of matrices of linear systems defining the denominators of Padé approximants. The square blocks of zeros in the c-table indicate the existence of corresponding blocks in the table of Padé approximants. The so-called valleys in the c-table are the lines of minimal absolute values of entries, which indicate the lines of best Padé approximants (BPA) in the Padé table [9]. Because the computation of the c-table is simpler, it is recommended to begin by this computation to obtain global preliminary information about the interesting Padé approximants before their own calculations.
Let us recall some definitions and results related to Padé approximation.
Let
(1)C(z)=∑n=0∞cnzn,c0≠0
be a formal power series of a function f. It can be a Maclaurin series of an analytic function at z=0 or an asymptotic series, such as a Stieltjes series having a zero radius of convergence [10, 11].
Definition 1.
Let
(2){mn}(z)=Pm(z)Qn(z)=p0+p1z+⋯+pmzmq0+q1z+⋯+qnzn,{mn}(z)=Pm(z)Qn(z)=degPm≤m,degQn≤n
denote in general a rational function. The Padé table (p-table) of the formal power series (1) is a doubly infinite array of irreducible rational functions {m/n} called reduced Padé forms, determined in such a manner that the Maclaurin expansion of {m/n} agrees with C(z) as far as possible.
The first column in Table 1 contains the truncated series (1). Because a reduced Padé form can be normalized by dividing all coefficients by one coefficient ≠0, then {m/n} contains only m+n+1 unknowns which can be determined by m+n+1 first coefficients of C(z) or, equivalently, by m+n+1 first derivatives of f at z=0:
(3){mn}(0)=f(0),(4){mn}′(0)=f′(0),…,{mn}(m+n)(0)=f(m+n)(0).
m
n
0
1
2
⋯
0
{0/0}
{0/1}
{0/2}
⋯
1
{1/0}
{1/1}
⋯
2
{2/0}
⋯
⋮
⋮
This is usually expressed by the condition
(5)f(z)-Pm(z)Qn(z)=O(zm+n+1)
which means that the power series expansion of Pm(z)/Qn(z) matches the power series expansion of f at z=0 at least up to the power m+n.
Definition 2 (see Gilewicz [<xref ref-type="bibr" rid="B8">11</xref>, page 171]).
If the reduced Padé form {m/n} satisfies (5), then it is a Padé approximant and is denoted by [m/n]: {m/n}≡[m/n].
Definition 3.
The power series and associated p-table are said to be normal if every element of the table is different from any other element. Each Padé approximant [m/n] reproduces the series C(z) exactly up to the term in zm+n.
Multiplying (5) by Qn we obtain
(6)Qn(z)f(z)-Pm(z)=O(zm+n+1)
which leads to the separated linear system for the coefficients qj and pj (ci≡0 if i<0):
(7)-pk+∑j=0nck-jqj=0k=0,1,…,m,(8)∑j=0nck-jqj=0k=m+1,…,m+n.
The system (8) of n equations for (n+1) unknowns qj always a nontrivial solution (Frobenius) which determines the reduced Padé form. Let us note that (6) is equivalent to (5) only if Qn is reversible, that is, if Qn(0)≠0. Following this remark Baker presented an equivalent definition of the Padé approximant as follows.
Definition 4 (see Baker [<xref ref-type="bibr" rid="B4">10</xref>, page 5]).
The Padé approximant is a solution of linear systems (8) and (7) with the condition Qn(0)=q0=1 (ci≡0 if i<0):
(9)-pk+∑j=1nck-jqj=-ckk=0,1,…,m,(10)∑j=1nck-jqj=-ckk=m+1,…,m+n.
The power series converges only inside the convergence circle; the Padé approximants reproduce zeros and poles of meromorphic functions and give a good approximation of these functions also outside the circle of convergence. Moreover, in particular cases where the series represents a rational function, the Padé approximant method finds this function automatically. In other cases the BPA algorithms allow finding excellent approximations. Padé approximant is the best local rational approximation of f in the vicinity of the point of expansion of f in the power series. Of course, we are not limited by the point z=0 and if we are interested in other regions in ℂ we can compute the Padé approximants at arbitrary point z0 of analyticity of f knowing the coefficients of the series ∑aj(z-z0)j.
A determinant of the matrix of the system (10) is the Toeplitz determinant:
(11)m≥0,n≥1:Cnm=|cmcm-1…cm-n+1cm+1.….·.…...….cm+n-1.…cm|,
where we put ck≡0 if k<0. Defining C0m∶=1 we can build an infinite table of Cnm’s, called c-table.
The second column of Table 2 contains the coefficients of the power series C1m=cm. The first row contains the powers of c0, Cn0=(c0)n and the second row can be computed recursively by expanding Cn1:
(12)Cn1=∑j=1n(-c0)j-1cjCn-j1.
m
n
m
n
0
1
2
3
⋯
0
1
2
⋯
0
1
c0
(c0)2
(c0)3
⋯
0
C00
C10
C20
⋯
1
1
c1
⋯
⋯
⋯
≡
1
C01
C11
C21
⋯
2
1
c2
⋯
⋯
⋯
2
C02
C12
C22
⋯
⋮
⋯
⋯
⋯
⋯
⋯
⋮
⋯
⋯
⋯
⋯
The c-table was first introduced by Gragg [8]. Baker [10] used an alternative definition permuting rows in (11), calling the resulting Hankel determinants C(m/n) and the corresponding table a c-table. An obvious relation between C(m/n) and Cnm is
(13)Cnm=(-1)n(n-1)/2C(mn),C(mn)=|cm-n+1.…cmcm-n+2.…cm+1..…...….cm.…cm+n-1|.
Interest in the c-table is due to its direct relation to the Padé table [8, 11] and to the particular ease of its computation. The c-table contains information about the block structure of the Padé table. Each square block of zeros in the c-table defines a corresponding block in the Padé table. Moreover, a dominant term of the error of Padé approximant located outside a block is given by a ratio of two Toeplitz determinants:
(14)f(z)-Pm(z)Qn(z)=(-1)nCn+1m+1Cmnzm+n+1+⋯.
A theory of valleys in the c-table [9] leading to a numerical algorithm of choice of the best Padé approximant [11] is based on property (14).
In general a p-table presents a square block structure. We denote by (m,n;k) a k×k square block of all equal entries with a west-north corner {m/n}. In each block
(15)∀i,j<k:{m+in+j}i+j≤k-1=[mn]
are Padé approximants and satisfy
(16)f(z)-[mn](z)=O(zm+n+k),
but the reduced forms located under the antidiagonal of a block are not Padé approximants:
(17)∀i,j<k:{m+in+j}i+j≥k≠[mn]
because (m+i)+(n+j)+1>m+n+k (see (16)). If the p-table presents a (m,n;k) block, the c-table presents a (k-1)×(k-1) block of zeros with the west-north corner on the position (m+1), (n+1). Now the following property becomes evident.
Property 1.
The p-table is normal if all Cnm≠0.
Let us complete the error formula (14) by the corresponding formula for [m/n] belonging to the block (m,n;k):
(18)f(z)-[mn](z)=rzm+n+k+⋯,
where
(19)r=Cn+1m+kCnm+k-1(-1)n=Cn+km+1Cn+k-1m(-1)n+k-1=C(m+k/n+1)C(m+k-1/n)=C(m+1/n+k)C(m/n+k-1).
This formula given in [10, 12] is given here in terms of Toeplitz and Hankel determinants. An extension of representations of r using other determinants around the zeros block in the c-table will be presented in the next section.
The existence of an infinite block (m,n;∞) means that the series C(z) represents a rational function [m/n]. If a p-table presents a block (m,n;k), then the [m/n] Padé approximant computed with m+n+1 coefficients c0,c1,…,cm+n located on the antidiagonal m+n=const in the p-table is clearly the best Padé approximant (BPA) on this antidiagonal, because it is the only approximant which reproduces exactly the series C(z) up to the power zm+n+k-1. A number of algorithms of choice of BPA are presented in [11]. The detailed modern theory of Padé approximants and the exhaustive list of algorithms of their calculation are presented in [10, 11]. The entries of p-table can be calculated directly by solving the linear system (10) ((9) is restricted only to the substitutions) or by more efficient recursive algorithms adapted to the Toeplitz systems. One of these is based on the Wynn formula
(20)NWCES1W-C+1E-C=1N-C+1S-C
which permits computing the E elements from four others (ascending algorithm). This method is too laborious and so it is simpler to discover the block structure of the p-table by analyzing the block structure of the c-table. In numerical practice we are always interested in BPA and a more rapid way to determine the position of BPA passes through the analysis of the c-table.
2. Computation of the <inline-formula><mml:math xmlns:mml="http://www.w3.org/1998/Math/MathML" id="M155"><mml:mrow><mml:mi>c</mml:mi></mml:mrow></mml:math></inline-formula>-Table in the Normal Case: Numerical Recommendations
The particular form of Toeplitz (resp. Hankel) determinants permits computing them recursively using the Sylvester formula
(21)NWCESNS+EW=C2(forCnm),NS-EW=C2(forC(mn))
avoiding the laborious direct computation by (11) (resp. (13)). Starting from the two first columns one can compute the “East” Cnm elements by the ascending algorithm [13]:
(22)E=CWC-SWN.
Alternatively, starting from the first two rows one can compute the “South” elements by the descending algorithm:
(23)S=CNC-ENW.
The above order of arithmetic operations diminishes a risk of overflows or underflows. We have studied in [13] the complexity of both the above algorithms counting multiplications and divisions (including that of (12) needed for the descending algorithm) necessary to obtain the Cnm from the normalized sequence (cj), that is, with c0=1. The cost of the normalization of each coefficient c1,c2,… in the second column of the c-table is equal to 1. Then the costs in the second row are 0,0,1,2,…,n-1,… (12). Then the cost pE of E computed by (22) is pE=pC+pW+pS+pN+4, where pC, pW, pS, and pN are the previous costs of C,W,S, and N, respectively. In fact it is the cost of the calculation of all n2 determinants disposed in the triangle pointed on the last Cnm if it is situated under or on the diagonal. Analogously, the global cost of the calculation of all m2 determinants with the last Cnm by the descending algorithm is pS=pC+pN+pE+pW+4. The following separation line optimizes the cost of each algorithm.
In the following example we give the number of operations needed by the descending algorithm followed by the number of operations needed by the ascending one:
(24)C118:105266,159995C119:349092,160070.
The precision of E computed by (22) is, crudely estimating, proportional to the global cost pE=2pC+2pW+pS+pN+5, where pC, pW, pS, and pN are the previous global costs. We count twice PC and PW because each presence of an element in the arithmetic expression introduces its error. On the other hand if we wish to optimize the precision, we must take into account all arithmetic operations, including additions and subtractions. The errors of differences play a dominant role, but they are not considered here. Consequently the separation line will be modified. The precision observed numerically using multiprecision calculus (see details in [14]) showed that the separation line mounts a few places giving a clear advantage to the ascended algorithm.
Example 5.
Fragment of the 13th column of the c-table of the series of the Stieltjes function -(1/x)log(1-x) is computed by ascending algorithm (AA) and descending algorithm (DA) in double precision (see Table 3).
Row
AA
DA
Exact values
8
.1345-54_
.1345-54
.1344-54
9
.3457-64_
.3445-64
.3465-64
10
-.1041-73_
-.1073-73
-.1035-73
11
-.6476-83_
-.5203-83
-.6054-83
12
-.4552-92
.1140-91
.1443-91
13
.1653-97
.9137-98
.1387-98
14
-.9270-103
-.7552-103
.9683-105
15
-.2095-108
-.6141-108
.2715-110
16
-.2044-111
-.1911-111
.2241-115
The underlined elements (Example 5) computed by the ascending algorithm situated in the region of accuracy of the descending algorithm are a little better than those computed by descending algorithm. The exact values were determined by multiprecision calculus with 32 digits.
3. Overflow, Underflow, and Detection of Blocks: Numerical Recommendations
No problems arise in a numerical computation if all coefficients cj are integers [8, 12]. If a block exists, the integer arithmetic produces zeros exactly. Unfortunately in a real case the computational problem is generally much more difficult. Numerical experiments show that Cnm’s decrease or increase quite rapidly. The risk of the overflow or underflow appears approximately for m+n≥3p, where p is the number of decimal digits of the floating point representation ([11, page 344]). Fortran subroutines given in [13, 15] use masks allowing the determination of exponents of real constants composing of the arithmetic expression (22) or (23) before their evaluation. After that the program checks if a global exponent is inside an authorized range or not and, if so, if it authorizes the evaluation or not. Knowing the computer used it is possible to overcome overflows without stopping an execution of the program, but the use of this technique embarrasses the software portability.
The underflow problem is related to another important question: is the computed value of Cnm equal to zero or not? The Vignes permutation-perturbation method to detect the so-called “zero informatique” in French [16] gives a satisfactory statistical estimation, allowing one to decide if a determinant vanishes or not, but in our practical computational problems its cost is too great. The crude estimation is the following:
(25)if|Cnm|<base-(m+n),thenCnm≈0,
where base denotes the base of representation of the real constant in the computer (essentially 2,10, or 16). The second method, purely empirical, is due to Guziński [17]. Guziński follows the monotonicity of the ascending or descending sequences: (|Cn-jm+j|), j=n,n-1,…,1,0 or j=-m,-m+1,…,0, respectively. Using the 32-bit arithmetic (single precision) he estimates that the true value of determinant (let us call it “new”) is equal to zero if the previous monotonicity changes significantly, that is, if the new determinant with respect to the previous determinant satisfies the following inequality:
(26)new<previous*5*10-12.
We recommend this efficient method which allows the detection of the zeros blocks in c-tables very quickly. Of course, it must be readapted to the used real constant representation. These two criteria, (25) and (26), are well-illustrated by Example 6, where the second table represents a fragment of c-table for a series produced by a rational function:
(27)f(x)=[54]=1(1-(x/3))2-9x3(1-(x/9))2.
The numerical constants are denoted shortly by decimal exponents: for instance .9×10-5 is denoted by .9-5. The first table represents the approximative limits (25) for the base=16:16-(m+n)≈10-(6/5)(m+n). The underlined elements correspond to the beginning of the infinite block of zeros starting at element C56. As shown here both criteria work: the underlined elements on the right (c-table) are less than the corresponding limits on the left and also Guziński criterion is satisfied for these elements.
Example 6 (zeros block in the <inline-formula><mml:math xmlns:mml="http://www.w3.org/1998/Math/MathML" id="M241"><mml:mrow><mml:mi>c</mml:mi></mml:mrow></mml:math></inline-formula>-table).
If the first zero is detected by the ascending algorithm, it corresponds to the west-north corner of the block of zeros. Then, we stop at the moment of the ascending computation of this antidiagonal and we return to the next antidiagonal to verify the value of the determinant situated under this first zero. Suppose that we find k-1 zeros starting from Cn+1m+1 which indicate the existence of the block (m,n;k). The next section is devoted to the strategy of following the calculus.
The “normal” monotonicity, by opposition to the jumps (26), can be tested by reference to the normal c-table corresponding, for instance, to the Stieltjes function (see Table 4)
(28)f(x)=-1xlog(1-x)=1+12x+13x2+⋯.
m
n
4
5
6
7
3
1.-8
1.-10
1.-11
1.-12
4
1.-10
1.-11
1.-12
1.-13
5
1.-11
1.-12
1.-13
1.-14
6
1.-12
1.-13_
1.-14_
1.-16_
7
1.-13
1.-14_
1.-16_
1.-17_
m
n
4
5
6
7
3
6.28+03
-5.60+04
4.99+05
-4.45+06
4
6.61-01
2.19+00
7.18+00
2.34+01
5
6.61-07
-6.61-07
6.61-07
-6.61-07
6
9.06-10
6.55-26_
-2.26-26_
7.48-27_
7
1.24-12
-3.11-29_
3.48-47_
9.31-47_
Example 7 presents a fragment of the c-table for a series produced by the mentioned function.
Example 7 (fragment of the <inline-formula><mml:math xmlns:mml="http://www.w3.org/1998/Math/MathML" id="M290"><mml:mrow><mml:mi>c</mml:mi></mml:mrow></mml:math></inline-formula>-table of the Stieltjes function <inline-formula><mml:math xmlns:mml="http://www.w3.org/1998/Math/MathML" id="M291"><mml:mi>f</mml:mi><mml:mo>-</mml:mo><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mn mathvariant="normal">1</mml:mn><mml:mo>/</mml:mo><mml:mi>x</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mi>log</mml:mi><mml:mo /><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mn mathvariant="normal">1</mml:mn><mml:mo>-</mml:mo><mml:mi>x</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:math></inline-formula>).
The minima on the antidiagonals are underlined. They correspond to the positions of the best padé approximants on the corresponding antidiagonals in the Padé table. Joining these minima we obtain the valley structure in the c-table mentioned in Section 6 (see Table 5).
Using the 64-bit arithmetic (double precision) the risk of overflows or underflows is rather marginal [14]. Both standards of mentioned representations of numerical values are specified by the IEEE Standard for Floating-Point Arithmetic (IEEE 754).
m
n
1
2
3
4
5
6
7
8
9
10
11
1
.5+0_
-.8-1_
.4-1
-.3-1
.2-1
-.1-1
.1-1
-.9-2
.8-2
-.7-2
.6-2
2
.3+0
-.1-1_
-.5-5_
-.8-4
-.2-4
-.1-4
-.4-5
.2-5
-.1-5
-.7-6
-.4-6
3
.3+0
-.4-2
-.2-4_
.2-6_
-.1-7
.1-8
-.2-9
.2-10
-.1-10
.4-11
-.1-11
4
.2+0
-.2-2
-.3-5
.2-8_
.4-11_
.7-13
.3-14
.2-15
.3-16
-.3-17
.3-17
5
.2+0
-.8-3
-.5-6
.9-10
.4-13_
-.5-17_
.2-19
-.2-21
-.1-21
-.2-22
-.6-23
6
.1+0
-.4-3
-.1-6
.7-11
.2-15
-.5-20_
-.2-23_
.2-25
.3-27
.1-27
.1-28
7
.1+0
-.2-3
-.3-7
.7-12
.5-17
-.8-22
.4-26_
.3-30_
.3-32
-.6-33
-.1-34
8
.1+0
-.2-3
-.1-7
.1-12
.4-18
.3-23
-.2-28
-.6-33_
-.1-36_
-.2-39
-.1-39
9
.1+0
-.1-3
-.4-8
.2-13
-.2-19
-.2-24
.5-30
-.6-35
-.3-40_
.1-42_
.2-44
10
.9-1
-.7-4
-.2-8
.3-14
.1-19
.2-25
.4-31
-.8-31
-.5-41
-.4-45_
4. Nonnormal Case: Froissart-Gilewicz and Paszkowski Identities to Overcome Blocks
The proof of geometrical progression of elements surrounding the zeros blocks in the c-table and an analytic proof of the identity allowing the computation of the east or south elements of these blocks when the Sylvester identity fails are presented in [11]. The purely algebraic proof of an equivalent identity is given by Paszkowski in [12]. Three new Paszkowski-like identities and an extension of formula (19) are proved and are given in this section. Figure 2 illustrates the c-table corresponding to the block (m,n;k) with k=8 and two “shells” adjacent to the 7×7 zeros block.
Elements surrounding the blocks of zeros form geometrical sequences (attention: the sense of west and north arrows and the superscripts +,- on the south and east sides are inverted with respect to [11, 12] and now correspond to the sense of calculation of the elements of the c-table by presented algorithms) from the corners as indicated by arrows and with respective ratios S^, W^, N^, and E^. Then, it suffices to know four entries Cnm, Cn+1m, Cnm+1 (these three are already computed before the detection of the block), and Cn+1m+k (first nonzero element after k-1 zeros on the n+1 column which identifies the block) to calculate all elements surrounding the block of zeros in the following way:
(29)S^=Cn+1m+kCnm+k,Cn+im+k=Cnm+k*S^i,W^=Cnm+1Cnm,Cnm+i=Cnm*W^i,N^=Cn+1mCnm,Cn+im=Cnm*N^i,E^=(-1)k+1Cnm+1Cn+1m+kCn+1mCnm+k,Cn+km+i=Cn+km*E^i,i=0,1,…,k.
Two additional relations were proved in [11]:
(30)W^S^=(-1)k+1E^N^,NS=(-1)i(k+1)WE,
where N=Cn+im, S=Cn+k-im+k, W=Cmm+i, and E=Cn+km+k-i. The following relations (31) show relationships analogous to (29) which are expressed in terms of Hankel determinants C(m/n):
(31)S~=C(m+k/n+1)C(m+k/n)=(-1)nS^,C(m+kn+i)=C(m+kn)*S~i,W~=C(m+1/n)C(m/n)=W^,C(m+in)=C(mn)*W~i,N~=C(m/n+1)C(m/n)=(-1)nN^,C(mn+i)=C(mn)*N~i,E~=(-1)k+1C(m+1/n)C(m+k/n+1)C(m/n+1)C(m+k/n)=E^,C(m+in+k)=C(mn+k)*E~i,i=0,1,…,k(32)W~S~=(-1)k+1E~N~,NS=WE,
where here N=C(m/n+i), S=C(m+k/n+k-i), W=C(m+i/m), and E=C(m+k-i/n+k). Using the above relations we can easily extend the formulas for r in (18) to other ratios of Toeplitz determinants located around the zeros block. Let us simplify the notation of the left part of the formula (19) as follows:
(33)r=A1B1(-1)n=A1*B1*(-1)n+k-1
and denote the next determinants by Ai, Bi, Ai*, and Bi* as indicated in Figure 3 corresponding to the block (m,n;k).
Then, we have the following equivalent formulas:
(34)i=1,2,…,k:r=A1B1(-1)n=AiBi(-1)n(W^S^)i-1=A1*B1*(-1)n+k+1=Ai*Bi*(-1)n+(k-1)[i/2](W^S^)i-1,
where [j/2] denote the remainder of division of j by 2.
The ascending Sylvester algorithm fails for the second east column because of the division by W=0, that is, for Cn+k+1m+i with i=1,…,k-1. The descending algorithm fails for the second south row, that is, for Cn+im+k+1 with i=1,…,k-1. This creates the “east shadow” region and the “south shadow” region where the elements can not be computed by respective algorithms. These regions are shown in Figure 4.
If no block exists in the way of descending algorithm then the east shadow region can be computed by this algorithm. Analogously the ascending algorithm can be used to compute the south shadow region. Then, the two combined algorithms allow the easy computation of many c-tables with blocks without the use of the special identities which will be presented in this section. Of course, these identities can be used to compute the black east column or the black south row which allows following the use of respective, ascending, or descending algorithm. In fact, the Sylvester algorithms fail only in the rare situations illustrated in Figure 5. Let A be an intersection of an east shadow region produced by a block (m,n;4) and a south shadow region produced by the block (M,N;5). Let E4 be an intersection of A with the second east 3-element column on the right side of the block (m,n;4) and let S5 be an intersection of A with the second south 4-element row in the bottom of the block (M,N;5). The combined Sylvester algorithm fails only if both E4 and S5 (in general: Ek and SK) are nonempty.
In this particular case it is necessary to compute E4=Cn+5m+3 by the Froissart-Gilewicz or Paszkowski identity, to be able to follow the recurrence computation of the c-table by the combined Sylvester algorithms. If not, we can compute the south black elements S5 at the bottom of the blocks of zeros and follow the computation by Sylvester algorithms. The last strategy is recommended if card(SK)<card(Ek), that is, in the opposite situation, as seen in Figure 5.
However this “theoretical” strategy based on an extensive application of the combined Sylvester algorithm can be only used near the diagonal of a c-table. Indeed, the complexity diagram (Figure 1, Section 2) shows that outside this region the cost of the computation of elements needed is much lower if they are computed by the Froissart-Gilewicz or Paszkowski formulas.
Separation line optimizing the cost of each algorithm.
Location of elements in (m,n;8) block for Gilewicz-Froissart and Paszkowski identities.
Location of determinants giving different forms of error r.
East and south shadow regions in the c-table.
Intersection of two shadow regions in the c-table.
The first identity allows going around a block (m,n;k) in the c-table (i.e., for Cnm). It was proven by Froissart and Gilewicz [11]. Using the notation of Figure 2 it can be presented in the following form of a determinant:
(35)k≥3:(-1)k|N′N1W^S′SE^|=(-1)i|W′WN^E′E1S^|,k=2:N′N2+S′S2=W′W2+E′E2.
After computing elements E′ or/and S′ one can continue the computing using the Sylvester formulas. This identity written for C(m/n) (now N′,N,… denote Hankel determinants) is
(36)k≥3:(-1)k|N′N1W~S′SE~|=(-1)i|-W′WN~E′E(-1)k1S~|,k=2:N′N2+S′S2=-W′W2-E′E2.
Paszkowski identity for C(m/n), equivalent to the previous, gives also E′ or/and S′:
(37)E′=(-1)kiS+[N′W-+N+W+((-1)kS′S++(-1)iW′W-)].
Paszkowski presented this identity in the elegant form of a determinant:
(38)|N′N+E+W-S+W′W+S′|=0.
Following (32) we have W-*E+=N-*S+ and N+*S-=E-*W+ which give three new Paszkowski-like identities:
(39)|N′N+E+N-E+W′W+S′|=|N′E-E+W-S+W′S-S′|=|N′N+E+N-E+W′W+S′|=0.
These identities for Cnm become
(40)|N′N+(-1)kE+(-1)knW-S+-W′W+S′(-1)k+n|=0,|N′(-)k+1N+E+(-1)nN-E+W′(-1)nW+S′(-1)k+1|=|N′(-1)knE-E+W-S+W′(-1)nS-S′(-1)k+1|=|N′(-1)nN+E+(-1)k+1N-E+W′(-1)knW+S′|=0.
Achuthan and Ponnuswamy have published [18] a detailed analysis of a table of approximants of McCabe M-fractions in the nonnormal case. To this so-called M-table corresponds a table of Toeplitz (or Hankel) determinants, like the c-table (or c-table). These tables have a square block structure analogous to that presented in this work. Consequently, all our formulas can be applied to compute the elements around the blocks in the table of Hankel determinants related to the M-table.
5. Computation of Padé Approximants around the Blocks: Numerical Recommendations
Our goal consists of indicating the location of the blocks in the p-table and then giving some information about the location of the BPA by means of the analysis of the structure of the c-table. The next step in the work of approximation consists of computing the relevant Padé approximant. Many methods of computation of Padé approximants use the relation between the convergents of continued fractions and Padé approximants [19]. However if we wish to compute an individual Padé approximant [m/n] solving the linear system (10) followed by the substitutions (9), we can use Cholesky method, the cost of which is
(41)16n(n2+2)+mn.
The cost of Cholesky method or other methods adapted to this particular symmetric matrix (see [11, page 370] or [20]) represents one-half of the cost of the solution by the Gauss method. For instance the cost of the computation of [6/4] by Cholesky is 36 but by Longman algorithm is 465. Using this last algorithm we compute all 45 Padé approximants located in the triangle ended by the antidiagonal m+n=10. If we need to know all p-tables it is recommended to use any efficient recursive algorithm (see [10, 11, 20]) computing the so-called L-triangle in the p-table knowing L+1 first coefficients of the power series of f. To do this it is also useful to know the generalization of the Wynn cross identity (20) obtained by Florent Cordellier (see [11, page 369]) for the Padé approximants surrounding a block (m,n;k) in the p-table:
(42)i=1,2,…,k:(Si-C)-1+(Ni-C)-1=(Wi-C)-1(Ei-C)-1,
where C=[m/n], Si=[m+k/n+k-i], Ni=[m-1/n+i-1], Wi=[m+i-1/n-1], and Ei=[m+k-i/n+k] occupied symmetric positions around the block as indicated in Figure 6.
Location of Padé approximants around the block in the Cordellier identity.
6. Best Padé Approximant (BPA)
The Padé approximant to a function f is the best local approximation of f with respect to the norm of uniform convergence. However in practice we are commonly interested in the nonlocal quality of this approximation as, for instance, an analytic continuation of f. Knowing L+1 first coefficients cj of power expansion (1) of f we can compute all Padé approximants [m/n] with m+n≤L, that is, the so-called L-triangle in the p-table. The entries on the last antidiagonal m+n=L contain complete initial information. The natural question is: where is the BPA on each antidiagonal? The answer to this question is given in [11] where four empirical algorithms of choice of BPA, based on the numerical experiments and justified for few classes of functions, are proposed:
method ρ: analysis of the behavior of the sequence {|cn/cn+1|} which also allows the elimination of badly computed coefficients;
method of valleys: the minima of |Cnm| on the antidiagonals indicate the positions of BPA and/or the positions of the blocks (see Example 7);
method of coefficients of PA: estimation of coefficients which can be neglected allowing the detection of the blocks;
method of Gram matrix: analysis of the eigenvalues of G=AAT, where A is the matrix of the system (10); this shows if |Cnm|=(Πi=1nλi)1/2 is equal to zero or not.
In numerous scientific papers where the Padé approximation method is applied, the authors automatically use the diagonal Padé approximants [n/n] without any justification. This frequently leads to erroneous conclusions as those of Van Dyke (reported in [11, page 414]) who, after selecting for his problem the [2/2] PA, claimed that PA method is not satisfactory in his case. Curiously, the [2/2] PA is the worst choice among all possible elements in the p-table and the BPA gives a result ten times better than the better approximation proposed by Van Dyke!
We repeat that our goal is to help the authors wishing to apply correctly the Padé approximation method detecting the BPA quickly.
7. Numerical Observations and Computational Suggestions
In numerical practice the coefficients cj used for the computation of Padé approximants are first computed numerically or determined experimentally. Then they are affected by some noise and some errors, in general increasing with the index. The ρ-method of choice of best Padé approximant (BPA) [11] allows the elimination of the last badly computed coefficients. This empirical method and the recommendation do not compute the approximants. Many papers (see [11, 21–24]) were devoted to analyzing the effect of noise on the Padé approximants. The so-called Froissart doublets (zero-pole doublets) appearing in the Padé approximants are created by the noise. Unfortunately one has not obtained at the present moment an efficient method of filtering the noise from the coefficients: the simple elimination of Froissart doublets spoils the quality of the resulting fraction obtained by the cleaning of the Padé approximant.
8. Conclusion
This text contains a complete list of useful identities and empirical numerical rules. Certain of these are new or were never published in current journals. We hope that the presented strategy of analysis of the c-table before the calculation of the BPA or of the p-table will allow the improvement of the efficient use of Padé approximation method.
Acknowledgments
The second author wishes to thank Professor Luc Wuytack who has encouraged him many years ago to write the unpublished note [25] which is in the origin of this review. The authors would like to thank the referees for their very valuable corrections.
BahugunaD.UjlayanA.PandeyD. N.A comparative study of numerical methods for solving an integro-differential equationJedynakR.GilewiczJ.Approximation of the integrals of the gaussian distribution of asperity heights in the Greenwood-Tripp contact model of two rough
surfaces revisitedJedynakR.GilewiczJ.Approximation of smooth functions by weighted means of N-point Padé approximantsRoyD.Global approximation for some functionsAptekarevA. I.BuslaevV. I.Martines-Finkel'shteĭnA.SuetinS. P.Padé approximants, continued fractions, and orthogonal polynomialsTrefethenL. N.KaliyappanM.PonnusamyS.SundarS.Recursive formulation of the matrix Padé approximation in packed storageGraggW. B.The Padé table and its relation to certain algorithms of numerical analysisGilewiczJ.MagnusA.WuytackL.Valleys in c-tableBaker,G. A.Jr.GilewiczJ.PaszkowskiS.Evaluation of a C-tableGilewiczJ.LeopoldE.Subroutine CTABLE for best Padé approximant detectionpreprint CPT-81/P.1324, 1981GilewiczJ.PindorM.Computation of c-table and detection of valleysLallemandM. H.VignesJ.Review on stochastic approach to round-off error analysis and its applicationsGuzińskiW.AchuthanP.PonnuswamyS.On general two-point continued fraction expansions and Padé tablesGilewiczJ.JedynakR.GautschiW.MastroianniG.RassiasTh. M.Compatibility of continued fraction convergents with Padé approximantsBrezinskiC.Computation of Padé approximants and continued fractionsBeckermannB.BessisD.PerottiL.VrinceanuD.Computing high precision matrix Padé approximantsBessisD.PerottiL.Universal analytic properties of noise: introducing the J-matrix formalismGilewiczJ.PindorM.Padé approximants and noise: a case of geometric seriesGilewiczJ.PindorM.Padé approximants and noise: rational functionsGilewiczJ.Computation of the c-table related to the Padé approximationpreprint CPT-91/P.2901, 1991