Vous êtes sur la page 1sur 46

ACCELERATION DE LA CONVERGENCE EN ANALYSE NUMERIQUE.

I. Thorie des rcurrences. II. Leons sur les fractions continues. III. Leons sur les approximants de Pad. IV. Les algorithmes d'acclration de la convergence des suites. V. Applications diverses.

Cours propos par Andr Hautot aux tudiants de dernire anne d'tudes de physique l'Universit de Lige.

Plan du cours. Ce cours sarticule en cinq chapitres : 1. Etude des rcurrences ou quations aux diffrences finies. Un grand nombre dalgorithmes numriques sont rcursifs. Leurs proprits se dduisent de la thorie des rcurrences. Cette thorie fait lobjet du premier chapitre. 2. Etude des fractions continues, simples et gnralises. Celles-ci constituent une mthode classique quoique trop peu connue, dacclration de la convergence. 3. Etude des mthodes classiques de triangles. Les algorithmes de triangles sont en fait des mthodes sommatoires dont certaines, assez anciennes, remontent Euler, Newton et MacLaurin. Dautres (Borel, Cesaro), plus rcentes, datent du dbut de ce sicle. Ces mthodes sont bases sur un ensemble de schmas linaires de construction des suites {ti} partir des suites {si} acclrer. Ils sont relativement peu efficaces. Pourtant, il est particulirement intressant danalyser les raisons de cette relative inefficacit car cela permet de mettre en oeuvre les amliorations possibles. 4. Etude des algorithmes rcents E, , , 2, , Levin, GBW, Steffensen. Ceux-ci sont non linaires. Ils tiennent dailleurs leur efficacit de cette non-linarit. Une attention particulire est accorde lalgorithme particulirement utile aux physiciens. 5. Etude de quelques exemples qui montrent lintrt des mthodes non linaires en analyse numrique (calculs de racines, de valeurs propres, dintgrales, de fonctions, etc...).

Afin de ne pas alourdir lexpos, nous admettrons certains thormes, sans dmonstration. Les nombreux exemples exposs permettent dailleurs den comprendre trs rapidement lnonc avec un maximum defficacit.

Rfrences.

Voici quelques livres de rfrences incontournables qui parlent des sujets classiques abords dans ce cours. Les sujets plus pointus ne sont couverts que par la littrature spcialise. W. B. Jones and W. J. Thron : Continued fractions. Applications. Vol. 11. Addison-Wesley (1980). Encyclopedia of Math. and its

G. A. Baker Jr and P. Graves-Morris : Pade approximants. Ibidem, Vol. 13&14 (1981). C. Brezinski : Acclration de la convergence numrique. Lecture Notes in Math. Vol 584. Springer-Verlag, Berlin (1977). J. Wimp : Sequence transformations and their applications. Math in Science & Engineering. Vol. 514. Academic Press, N-Y (1984). J. Wimp : Computations with recurrence relations. Pitman, Boston (1984).

Introduction.

Un algorithme peut tre considr comme un ensemble ordonn doprations arithmtiques et logiques qui transforment un ensemble de donnes en un ensemble de rsultats.

Donnes Algorithme Rsultats


Un grand nombre dalgorithmes sont itratifs. Cela signifie quon calcule les rsultats par approximations successives, engendrant chaque itration un terme si , de la suite, scalaire ou vectorielle, {s0 , s1 , s2 , ...}, qui converge vers le rsultat cherch s , limite de la suite. Ce schma, simple en thorie, soulve en fait deux questions essentielles : - Le rsultat final est-il fiable ? - Est-il atteint aprs un temps de calcul raisonnable ?

1. Fiabilit des rsultats. Les donnes tant encodes avec n chiffres significatifs (donc la prcision 10-n), le problme se pose tout naturellement de savoir si on est en droit desprer que les rsultats seront galement prcis avec n chiffres. En fait, il nen est rien pour deux raisons : a) Certains problmes sont mathmatiquement mal conditionns. Considrons lexemple trs simple du systme linaire de deux quations deux inconnues : x + 3 y = 14 3.5 x + 10.501 y = 49.004 dont la solution exacte vaut : x = 2 et y = 4. Si on perturbe lgrement le second membre en y remplaant le nombre 49.004 par 49.001, on constate que la solution sen trouve modifie radicalement. Elle vaut, cette fois : x = 11 et y = 1 ! On sait quun ordinateur encode gnralement les donnes dun problme en commettant une erreur de troncature correspondant au premier chiffre nglig. Un problme mal conditionn prsente une grande sensibilit toute erreur dencodage des donnes en sorte que les rsultats sont entachs dune erreur amplifie parfois considrablement. Dans lexemple trait, la cause de lerreur rside dans la valeur proche de zro du dterminant de la matrice du systme. Il en rsulte que la matrice inverse possde de grands coefficients qui amplifient la moindre incertitude sur la valeur des termes du second membre. En effet, on a :

r r r r Ax = b x = A1b r r r r r r Ax* = b + b x* = A1b + A1b r r r r x = x* x = A1b

d' o

Cette erreur cesse dtre ngligeable ds que dtm(A) est proche de zro. Dans lexemple choisi, on a :

b = 0.003

do:

x =

10501 3000 3500 1000

0 9 0.003 = 3

Un autre exemple classique est celui de la matrice n x n de Hilbert Hij = (1/(i+j)) dont les valeurs propres, et par consquent aussi le dterminant, sont tous proches de zro ds que n est grand. Aucun algorithme travaillant avec un nombre limit de chiffres significatifs ne peut viter lcueil que reprsente le mauvais conditionnement dun problme. Sauf si lon peut recourir un logiciel, tel que Mathematica, qui travaille en arithmtique exacte, la seule parade consiste augmenter, parfois de faon considrable, le nombre des chiffres significatifs encods en recourant aux prcisions doubles (16 chiffres) ou quadruples (33 chiffres). Les systmes chaotiques, en physique, sont, eux aussi, des systmes mal conditionns : ils prsentent la sensibilit aux conditions initiales qui rend toute prdiction de lvolution du systme impossible au-del dun temps parfois trs court. b) Certains algorithmes sont instables. On se gardera de confondre cette situation avec celle dcrite au point a) ci-dessus. Cette fois, le problme mathmatique pos est bien conditionn mais cest lalgorithme mis en oeuvre pour le rsoudre qui ne convient pas car il est instable. On rappelle que le calcul par ordinateur engendre invitablement deux sources derreurs : - les erreurs de troncature qui rsultent de larithmtique finie du processeur qui lamne remplacer la fraction 1/3 par 0.33333333, par exemple. - les erreurs darrondi qui proviennent de la soustraction de quantits voisines avec la perte de chiffres significatifs que cela implique. Que deviennent ces erreurs au cours dun calcul un peu long, comportant des milliers doprations arithmtiques lmentaires ? En dautres termes, comment se propagent les erreurs de troncature et darrondi ? On sait que le processeur arrondit par excs ou par dfaut chaque rsultat intermdiaire en sorte que, navement, on pourrait penser quau terme dun calcul comportant un trs grand nombre, N, doprations lmentaires, la compensation est peu prs exacte. Statistiquement, chacun sait quil nen est rien et que ce type derreur crot lentement comme N. Il est plutt rare cependant que cette erreur altre le rsultat de faon grossire. Lerreur quintroduit un algorithme instable est beaucoup plus grave que cela. Elle peut crotre selon une loi f(N), exponentielle, par exemple, beaucoup plus rapidement croissante que N. Nous verrons des exemples o une erreur de troncature initiale explose littralement en cours de calcul au point que plus aucun chiffre calcul nest correct dans le rsultat final.

Lorsquun algorithme prsente une telle instabilit, il est hors de question de lutiliser et il faut en chercher un autre qui effectue le mme travail de manire plus stable. Si cet algorithme nest pas connu, la seule ressource est, nouveau, de travailler avec une rserve accrue de chiffres significatifs. En rsum, on distinguera : - linstabilit intrinsque dun problme lie son mauvais conditionnement mathmatique quaucun algorithme ne peut lever; - linstabilit extrinsque, lie au choix dun mauvais algorithme pour traiter un problme qui, par ailleurs, est mathmatiquement bien conditionn.

Remarques pratiques : En labsence derreurs, entranant larrt du programme (division par zro, overflow, underflow, ...) un ordinateur poursuit son calcul jusqu son terme et affiche un rsultat sans se proccuper daberrations ventuelles lies au mauvais conditionnement du problme ou linstabilit de lalgorithme utilis. Si on ne dispose daucune procdure de vrification destine sassurer du caractre plausible du rsultat, il est prudent de procder quelques essais numriques qui auront au moins le mrite de mettre en vidence dventuels problmes de prcision: - En modifiant lgrement les conditions initiales (donnes) tout en maintenant la prcision de lordinateur constante, on pourra dtecter si le problme prsente la sensibilit aux conditions initiales. Ce sera le cas toutes les fois que la solution perturbe scartera progressivement et parfois mme violemment de la solution non perturbe. - En maintenant les conditions initiales mais en augmentant le nombre de chiffres significatifs utiliss au cours des calculs, on sassurera du degr dinstabilit induit par lalgorithme luimme en comparant le nombre de chiffres altrs dans les rsultats. On agira en consquence.

2. Problmes lis la vitesse de convergence de lalgorithme. Il nest pas toujours facile destimer le temps qui sera ncessaire un ordinateur pour effectuer un programme donn. Cela dpend en effet de la rapidit avec laquelle le processus itratif mis en oeuvre converge vers sa limite. Lorsque ce temps devient prohibitif, il est draisonnable de poursuivre les calculs sur base dune vitesse de convergence aussi faible. Une stratgie plus efficace consiste rechercher par voie thorique dans quelle mesure il serait possible de remplacer la suite {s0 , s1 , s2 , ...} lentement convergente, par une autre suite {t0 , t1 , t2 , ...} qui convergerait beaucoup plus vite vers la mme limite. De telles transformations {si}{ti} existent effectivement, valables pour une classe tendue dalgorithmes lentement convergents. Certaines sont trs anciennes et remontent Euler et Newton. Dautres, nettement plus efficaces il est vrai, sont beaucoup plus rcentes. Cest un des buts de ce cours de faire le point sur les techniques existantes.

CHAPITRE I THEORIE DES RECURRENCES.


On appelle rcurrence dordre j toute relation du type suivant:

f ( Ck ,Ck 1 ,Ck 2 ,...,Ck j , k ) = hk


qui relie j+1 valeurs conscutives de la suite des Ck pour toutes valeurs entires de k. Cette rcurrence est linaire si la relation f est linaire sur les Ck ; elle est non linaire dans le cas contraire. Dans le cas o elle est linaire, elle est homogne si le terme indpendant des Ck est absent et elle est coefficients constants si f ne dpend pas explicitement de k. On reconnat une terminologie dj utilise dans la thorie des quations diffrentielles. On peut accrotre lanalogie en introduisant la notation de diffrence finie . Pour tre prcis, nous introduisons les oprateurs E et suivants:

ECk = Ck +1

d' o on tire : d' o

E n Ck = C k + n

Ck = Ck + 1 Ck

2Ck = Ck + 2 2Ck + 1 + Ck

etc ...

En fait, on a de toute vidence: =E-1. Aux ordres plus levs, on trouve sans peine:

2 = ( E 1 )2 = E 2 2 E + 1 3 = ( E 1 )3 = E 3 3 E 2 + 3 E 1
etc...

Ces relations sinversent sans peine sous la forme:

E = +1 E 2 = 2 + 2 + 1 E 3 = 3 + 32 + 3 + 1 etc...

Elles permettent deffectuer les changements de notations suivants. Soit par exemple la rcurrence dordre trois :

Ck + 3 + kCk + 2 Ck + 1 + k 2Ck = 0
On peut la rcrire sous la forme quivalente : 7

( E 3 + kE 2 E + k 2 )Ck = 0
ou encore, sous cette autre forme, dite aux diffrences finies, dordre trois :

(I-1)

3Ck + ( k + 3 )2Ck + ( 2k + 2 )Ck + ( k 2 + k )Ck = 0

(I-2)

Les critures (I-1) et (I-2) sont quivalentes. Lcriture (I-2) parat avoir lavantage de simuler un paralllisme plus troit avec la thorie des quations diffrentielles, loprateur prenant la place de loprateur de drivation D. Nous verrons au I-1-1 quil est pourtant prfrable de sen tenir la forme (I-1). Lintrt majeur des rcurrences provient du fait quelles sont facilement programmes sur ordinateur. Alors quil est plutt rare de considrer des quations diffrentielles dordre suprieur deux, nous verrons que les rcurrences dordre plus lev sont dun usage courant. Dans cette tude, nous passerons en revue les rcurrences linaires coefficients constants et variables. Par contre nous passerons sous silence les rcurrences non linaires qui sont nettement plus difficiles traiter et au sujet desquelles il nexiste que trs peu de rsultats connus utilisables.

I-1. Rcurrence linaire dordre n.


Elle scrit sous la forme gnrale suivante:
( ( ( Ak n )Ck + 1 + Ak n 1 )Ck + L + Ak 0 )Ck n + 1 = hk

(I-3)

Dordre n, elle contient n+1 termes plus, ventuellement, un second membre, hk, indpendant des Ck. Ses coefficients peuvent, en gnral, dpendre de k. On peut montrer que les rsultats tablis propos des quations diffrentielles se transposent sans difficult. En particulier on peut montrer que : - cette quation possde n solutions linairement indpendantes fi(k)=Ck(i) (i=1,2,...,n). On contrle lindpendance linaire de ces n solutions en vrifiant que le dterminant Casoratien des fi(k) = Ck(i) est diffrent de zro :

D[ f1 ... f n ] =

f1( k ) f1( k + 1 ) M f1( k + n 1 )

f2( k ) f2( k + 1 ) M

L L

fn( k ) fn( k + 1 ) M fn ( k + n 1 )

f2( k + n 1 ) L

Lanalogie avec la thorie du Wronskien, valable propos des quations diffrentielles, est mieux mise en vidence si on recourt la forme quivalente suivante :
f1 D[ f 1 ... f n ] = f2 L L fn

f 1
n 1

f 2
n 1

f n
n 1

f1 f 2 L f n
- la solution gnrale de lquation homogne est la combinaison linaire des n solutions de base. - la solution gnrale de lquation avec second membre scrit comme la superposition de la solution gnrale de lquation homogne plus une solution particulire de lquation avec ( ( second membre : Ck = 1Ck 1 ) + ... + nCk n ) + sol . part . k . - on dtermine la solution de faon unique en imposant un jeu de n conditions initiales (ou aux limites), par exemple en fixant les valeurs de C0, C1,..., Cn-1 ce qui permet de dterminer la valeur des coefficients i. Le cas o les coefficients de la rcurrence sont constants est particulirement important car il autorise une solution exacte de la rcurrence.

I-1.1. Rcurrence linaire homogne coefficients constants. La rcurrence linaire homogne coefficients constants scrit:

A( n )Ck + 1 + A( n 1 )Ck + L + A( 0 )Ck n + 1 = 0

(I-4)

On peut montrer que lquation (I-4) possde des solutions exactes qui scrivent sous la forme dexponentielles-polynmes. Commenons par rechercher les solutions qui scrivent sous la forme dexponentielles pures de la forme Ck=zk o z est une constante dterminer. Introduisant cette forme dans lquation (I-4), on trouve de suite l quation polynomiale caractristique dont les racines livrent les valeurs permises pour z :

A( n ) z n + A( n 1 ) z n 1 + L + A( 1 ) z + A( 0 ) = 0
Ses racines, relles ou complexes, se notent z1,...,zn. Lorsque ces racines sont toutes distinctes, on a manifestement trouv les solutions cherches sous la forme :
( Ck i ) = zik

( i = 1,..., n )

Elles sont certainement linairement indpendantes car leur Casoratien se rduit un dterminant de Vandermonde, non nul :

k z1

k zn

1
k k = z1 ...zn

L L

1 zn
n 1 n

D=

k k z1 + n 1 L zn + n 1

z1 z
n 1 1

k k = z1 ...zn ( z j zi ) 0 i< j

L z

La solution gnrale scrit alors sous la forme :


k k Ck = 1 z1 + L + n zn

o les coefficients i dpendent des conditions initiales. Lorsque deux ou plusieurs racines sont confondues, on montre quune racine de multiplicit donne naissance solutions indpendantes qui scrivent sous la forme :

zkk w

avec w = 0 ,1,..., 1

Exemple 1 : Pour fixer les ides, rsolvons la rcurrence suivante :

Ck + 1 5Ck + 8Ck 1 4Ck 2 = 0


Lquation caractristique scrit : z3 - 5z2 + 8z - 4 = 0. Ses racines valent :

C ( 1 ) = k 2 k z1 = 2 ( double ) k( 2 ) k Ck = 2 ( z2 = 1 ( simple ) Ck 3 ) = 1k = 1
On vrifie facilement que les 3 solutions trouves satisfont la rcurrence. La solution gnrale scrit donc sous la forme :

Ck = + 2 k + k 2 k
Les coefficients , et dpendent des conditions initiales. Par exemple, si on impose : C0 = 1, C1 = 3 et C2 = -1, on crit le systme :
C0 = + = 1 C1 = + 2 + 2 = 3 C = + 4 + 8 = 1 2

qui se rsout en : = -9 , = 10 et = -4.

10

Exemple 2 : cet autre exemple montre ce qui se passe lorsque les racines sont complexes. Soit rsoudre :

Ck + 1 2Ck + 2Ck 1 = 0
Lquation caractristique scrit : z2 - 2z + 2 = 0 , dont les racines, simples, valent: z1,2 = 1 i (simples). La solution gnrale de la rcurrence peut scrire sous la forme:

Ck = ( 1 + i )k + ( 1 i )k
On peut lui substituer une forme quivalente qui lude la notation complexe. En effet, on a:
1 i = 2e i / 4 do:

Ck = 2 eik / 4 + 2 e ik / 4

soit encore, en groupant les termes autrement :


Ck = ' 2 cos k4 + ' 2 sin k4
k k

Si les conditions initiales imposes par le problme sont, par exemple : C-1=0 et C0=1, on trouve facilement :
C1 = ( ' / 2 ) cos ( ' / 2 ) sin = 0 4 4 C0 = ' = 1
do : Ck = 2 (cos k4 + sin k4 )
k

d' o :

' = '

soit la suite : C-1 = 0 ; C0 = 1 ; C1 = 2 ; C2 = 2 ; C3 = 0 ; C4 = -4 ; ... qui rsout le problme pos. Cette forme exacte permet le calcul de C100 , par exemple, sans avoir itrer la rcurrence.

I-1.2. Rcurrence linaire coefficients constants avec second membre. Lorsquon adjoint un second membre la rcurrence (I-4), elle cesse dtre homogne. Il convient donc dajouter la solution gnrale de lquation sans second membre, une solution particulire de lquation complte. Cela peut se faire par la mthode de variation des constantes, habituelle en thorie des quations diffrentielles. Nous ninsistons pas sur ce point. Toutefois si le second membre est une exponentielle polynme du type ZkPm(k), une

11

solution particulire k possde la forme : ZkPolm(k)k, o est la multiplicit de Z comme racine de lquation caractristique de la rcurrence homogne. Exemple : Nous avons appliqu cette mthode la rcurrence suivante, prsentant trois seconds membres distincts. Nous avons trouv successivement :

Ck +1 5Ck + 8Ck 1 4Ck 2

k2 +1 k = k ( k 2 + k + ) = ( 1 )k ( k 2 + 1 ) k = ( 1 )k ( k 2 + k + ) 2k ( k 2 + 1 )

k = 2 k k 2 ( k 2 + k + )

Dans chacun des trois cas envisags, il reste substituer la forme trouve pour k dans la rcurrence inhomogne afin de trouver la valeur des coefficients , et qui conviennent. I-1.3. Rcurrence linaire coefficients variables. Lorsque les coefficients de la rcurrence sont variables avec k, les choses se compliquent singulirement. Il nest, en gnral, plus possible de trouver une solution exacte la rcurrence, mme homogne :
( ( ( Ak n )Ck + 1 + Ak n 1 )Ck + L + Ak 0 )Ck n + 1 = 0

(I-5)

Seul le cas de la rcurrence dordre 1 est soluble exactement. En effet, on a :


( ( Ak 1 )Ck + 1 + Ak 0 )Ck = hk

(I-6)

Lquation homogne se rcrit :


( ( Ck + 1 = Ak 0 ) / Ak 1 ) Ck

que lon peut sommer exactement sous la forme :

Ck + 1 = ( 1 )k + 1 C0 Ai( 0 ) / Ai( 1 )
i =0

Reste trouver une solution particulire de lquation complte. On vrifie sans peine que la forme suivante convient :

k +1 = ( 1 )k [Ai( 0 ) / Ai( 1 ) ]
k i =0

(1) l =0 Al

[Ai( 0 ) / Ai( 1 ) ]
l 0

( 1 )l hl

La solution gnrale de lquation (I-6) sobtient en combinant les deux expressions trouves:

12

k k ( 1 ) l hl Ck + 1 = ( 1 )k + 1 Ai( 0 ) / Ai( 1 ) C0 l (1) (0) (1) l = 0 Al [Ai / Ai ] i =0 0

Elle contient videmment une constante arbitraire C0 qui est la valeur initiale de Ck en k = 0. Remarque : En posant k = -1 dans lexpression de la solution gnrale, on retrouve bien la valeur initiale C0 condition de poser conventionnellement : Exemple : soit rsoudre la rcurrence :
1 1

= 0
l =0

et

= 1 .
i =0

Ck + 1 + ( k + 1 )Ck = k
On trouve la solution gnrale :
k ( 1 )l l Ck +1 = ( 1 )k +1 ( k + 1 )! C0 l =0 ( l + 1 )!

Dans les cas o aucune solution exacte nest connue, on est amen rechercher la solution par voie numrique ce qui soulve un certain nombre de problmes que nous allons tudier.

I-2. Comportement asymptotique des solutions dune rcurrence.


Considrons la rcurrence homogne coefficients variables (I-5). Elle possde n solutions linairement indpendantes que nous noterons Ck(1), Ck(2), ..., Ck(n), prises dans un ordre que nous prciserons ultrieurement. Il nest gnralement pas possible de trouver une forme exacte pour les Ck(i). Toutefois, on verra quon peut, dans un grand nombre de cas, dterminer leur comportement asymptotique as(i)(k) dfini de telle manire que : lim Ck(i)/as(i)(k) = constante, pour k tendant vers linfini et pour tout i = 1, ..., n. La rcurrence (I-5) tant linaire, toute combinaison linaire de ces n solutions est encore solution de (I-5). Au total, la rcurrence possde une n-uple infinit de solutions, toutes de la forme :
( 1Ck 1 ) + ... + nCk( n ) .

Le point fondamental est le suivant : toutes ces solutions ne possdent pas ncessairement le mme comportement asymptotique. En fait, il y a, au plus, n asymptotes diffrentes. Nous appellerons systme fondamental de solutions Ck(1), Ck(2), ..., Ck(n) un ensemble de n solutions linairement indpendantes tel que le produit de leurs asymptotes sera de croissance minimum

13

lorsque k tend vers linfini. La numrotation des asymptotes se fait conventionnellement dans lordre des dominances dcroissantes. Symboliquement, on note: as(1)(k) as(2)(k) ... as(n)(k) Lorsque deux asymptotes appartenant au systme fondamental ne sont pas contrastes en module, elles le sont obligatoirement en phase. Le signe = note symboliquement ce cas. La solution Ck(1) , dasymptote as(1)(k), est dite dominante; la solution Ck(n) , dasymptote as(n)(k), est dite domine; les autres solutions Ck(2), ..., Ck(n-1) sont dites intermdiaires, avec Ck(j) qui ne domine jamais Ck(i) lorsque i>j. On dfinit (n-1) facteurs de contraste entre solutions contigus Ck(i) et Ck(i+1):

k(i) = Ck(i+1)/Ck(i)

pour i = 1, 2, ..., n-1.

Lorsque k , les k(i) ne tendent vers zro que si les solutions Ck(i) et Ck(i+1) sont contrastes en module. Pour clarifier ces notions, nous reprenons lexemple de la rcurrence, dj envisage:

Ck + 1 5Ck + 8Ck 1 4Ck 2 = 0


Sa solution gnrale scrit sous la forme :

Ck = + 2 k + k 2 k

(I-7)

Les trois solutions contrastes sont manifestement dans lordre des dominances dcroissantes :
( Ck 1 ) = k 2 k ( Ck 2 ) = 2 k ( Ck 3 ) = 1

Les contrastes valent respectivement 1/k et 2-k. Dans ce cas trs simple, les asymptotes concident avec les solutions exactes mais cela cesse dtre le cas lorsque la rcurrence nest plus coefficients constants. La solution gnrale (I-7) possde un comportement dominant ds que 0 et un comportement sous-dominant ds que =0. Pour y voir plus clair, dterminons les coefficients , et en fonction des conditions initiales. On crit par exemple :

14

C 0 = + 1 1 C 1 = + 2 2 C = + 1 1 4 2 2

= C 0 4C 1 + 4C 2 = 4C 1 4C 2 = 2C 6C + 4C 0 1 2

- Toutes les solutions domines sont caractrises par =0 et =0. Elles exigent que lon ait: C0=C-1=C-2. Il y a donc une simple infinit de solutions domines, toutes proportionnelles entre elles. - Les solutions intermdiaires correspondent =0 et 0 do on tire : 2C0-6C-1+4C-2=0 et C-1C-2. Il y a donc une double infinit de solutions intermdiaires. - Les autres solutions, caractrises par 0, sont dominantes. Il y en a une triple infinit. Il est clair que si lon choisit les conditions initiales au hasard, on a toutes les chances dengendrer une solution dominante. Autrement dit, les solutions domines sont beaucoup plus rares que les autres. Il faut savoir que dans un grand nombre dapplications physiques, ce sont prcisment les solutions domines qui sont importantes du fait de leur comportement asymptotique privilgi.

Un problme similaire se prsente, en physique, lorsquon rsout lquation diffrentielle de Schrdinger: +(E-V)=0 . Etant du second ordre, elle possde deux solutions linairement indpendantes 1 et 2 qui possdent des comportements asymptotiques diffrents aux grandes valeurs de x. Prcisment, la solution physiquement acceptable est celle qui dcrot le plus vite linfini : cest la solution domine (cfr V-4 pour un exemple).
On formule la gnralisation de ces rsultats de la manire suivante. Revenons, pour ce faire, la rcurrence (I-5) de solution gnrale : Ck = 1Ck(1) + 2Ck(2) + ...+ nCk(n). Cette solution possde un comportement asymptotique dominant as1(k) si 10. Si 1=0 et 20, elle possde le comportement asymptotique sous-dominant as(2)(k). Si 1=2=0 et 30, etc... . Il existe donc une n-uple infinit de solutions dominantes possdant lasymptote as(1)(k), une (n-1)-uple infinit de solutions dasymptote as(2)(k), ...enfin une simple infinit de solutions domines dasymptote as(n)(k), dailleurs toutes identiques entre elles une constante multiplicative prs. Il est possible dexprimer ces considrations autrement encore : pour engendrer de faon rcurrente une solution particulire de (I-5), il faut partir de n conditions initiales; disons quil faut se donner C0,C-1, ...,C1-n. - Si on veut engendrer une solution domine Ck(n), il nest pas question de choisir ces valeurs arbitrairement. Seul C0 peut tre quelconque mais une fois quil est fix, C-1, ..., C1-n sont imposs. Nous verrons plus loin, un procd numrique permettant de les dterminer. - Si lon veut construire une solution du type Ck(n-1) qui est domine par toutes les autres sauf par Ck(n) quelle domine, il est possible de choisir C0 et C-1 arbitrairement tandis que C-2, ..., C1-n ne peuvent pas prendre de valeurs arbitraires. Parmi toutes les valeurs que C-1 peut prendre, on exclura cependant celle qui engendre une solution domine Ck(n). - Et ainsi de suite pour toutes les solutions intermdiaires.

15

- Enfin, si lon veut construire une solution dominante Ck(1), on peut partir de conditions initiales arbitraires sauf quil faut prendre soin que nexiste pas entre elles une des relations qui caractrise les solutions domines. Les deux exemples qui suivent illustrent la notion de contraste dans deux cas o les solutions exactes de la rcurrence ne sont pas connues. Elles sont contrastes en amplitude dans le premier exemple et en phase dans le deuxime exemple. Exemple 1 : soit la rcurrence dordre 3 :

( k 2 2k + 4 )Ck + 1 3k 2Ck + ( 3k 2 + 2k )Ck 1 ( k 2 + 1 )Ck 2 = 0


Elle possde un systme fondamental de solutions asymptotiques (pour k):
( Ck 1 ) k 11 / 8 exp( 4 k ) = as( 1 ) ( k ) ( Ck 2 ) k 3 / 4 = as( 2 ) ( k )

solution do min ante solution do min e

solution int ermdiaire

( Ck 3 ) k 11 / 8 exp( 4 k ) = as( 3 ) ( k )

On verra plus loin comment obtenir ces comportements asymptotiques. Les solutions sont contrastes en module. Les facteurs de contraste valent respectivement:
( k 1 ) = k 5 / 8 exp( 4 k ) ( k 2 ) = k 5 / 8 exp( 4 k )

Exemple 2 : soit la rcurrence dordre 2 :

( k + 2 )Ck + 1 ( 2k + 1 )Ck + kCk 1 = 0


Elle possde un systme fondamental de solutions asymptotiques (pour k) :
( Ck 1 ) k 3 / 4 exp( 2i k ) ( Ck 2 ) k 3 / 4 exp( 2i k )

as( 1 ) ( k ) = k 3 / 4 as ( 2 ) ( k ) = k 3 / 4

Ces deux solutions ne sont pas contrastes en module et leur numrotation peut, de ce fait, tre inverse. Aucune combinaison linaire ne peut videmment faire apparatre de contraste. Toutefois il existe un contraste de phase qui vaut exp(-4ik). La notion de contraste est essentielle dans la discussion de linstabilit numrique des calculs rcursifs.

16

I-3. Instabilit numrique des calculs rcursifs.


Linformatisation dun algorithme rcursif peut rserver de fcheuses surprises. Le lecteur curieux peut procder lexprience numrique suivante, facile mettre en oeuvre. On programme, en arithmtique flottante, dans le mode progressif, la rcurrence que voici:

Ck + 1 5Ck + 8Ck 1 4Ck 2 = 0

( k = 0 ,1,...,100 )

en partant de deux ensembles de conditions initiales apparemment similaires: - 1er cas: C-2=C-1=C0=1 (ou 1/2) - 2me cas: C-2=C-1=C0=1/3 (ou 1/7) Dans les deux cas, on devrait trouver que la suite Ck reste constante sa valeur initiale. En pratique, on constate que ce nest effectivement vrai que dans le premier cas o lencodage binaire des conditions initiales est exact. Dans le deuxime cas, une erreur se propage et samplifie de faon dramatique dans le calcul. Le programme Mathematica suivant fait quelque chose de similaire en travaillant sur des conditions initiales exactes ou approches. co[k_]:=co[k]=5 co[k-1]-8 co[k-2]+4 co[k-3] {co[0]=1/7;co[1]=1/7;co[2]=1/7}; Table[co[i],{i,0,9}] {1/7,1/7,1/7,1/7,1/7,1/7,1/7,1/7,1/7,1/7}

Clear[co] co[k_]:=co[k]=5 co[k-1]-8 co[k-2]+4 co[k-3] {co[0]=N[1/7,6];co[1]=N[1/7,6];co[2]=N[1/7,6]}; Table[N[co[i],6],{i,10}] {0.142857,0.142857,0.14286,0.1429,0.1429,0.143,0.14,0.1,0.10-1,0.10-1} On observe un phnomne de pollution progressive des rsultats. Pour lucider ce phnomne, nous tudions lexemple similaire de la tabulation de la fonction de Bessel Jn(x). Le problme se pose de la faon suivante : on dsire publier une table de la fonction Jn(x) pour diverses valeurs de la variable x (dans ce qui suit, on se limitera la valeur x=1) et pour n = 0, 1, 2, ..., 10. On sait quentre les Jn dindices n successifs, il existe une relation rcurrente dordre deux que lon compte mettre profit pour calculer J2, J3, J4, ..., J10 une fois connues les valeurs de J0 et J1. Celles-ci doivent faire lobjet dun calcul pralable par une mthode quelconque.

17

Cette rcurrence scrit :

J n+1

2n J n + J n1 = 0 x

(I-8)

Concrtement, on injecte les valeurs J0 et J1, calcules initialement avec m chiffres significatifs, dans la rcurrence (I-8) et on espre que les valeurs suivantes J2, J3, ... sortiront avec m chiffres exacts. Par exemple pour x=1, on a avec huit chiffres corrects : J1(1) = 0.44005058... J0(1) = 0.76519768... et La rcurrence (I-8) applique progressivement ces conditions initiales fournit les valeurs Cn qui sont consignes dans la Table I-1, que lon comparera aux valeurs exactes Jn(1).

n 0 1 2 3 4 5 6 7 8

Jn(1) 7.6519768E-01 4.4005058E-01 1.1490348E-01 1.9563354E-02 2.4766389E-03 2.4975773E-04 2.0938338E-05 1.5023258E-06 9.4223441E-08 Table I-1.

Cn 7.6519768E-01 4.4005058E-01 1.1490348E-01 1.9563340E-02 2.476560E-03 2.49140E-04 1.4840E-05 -7.106E-05 -1.00E-03

On constate une forte dgradation des rsultats mesure que n augmente. Cest un exemple de pollution catastrophique des rsultats qui est typique des calculs rcursifs mal matriss. Cette pollution na rien voir avec la classique propagation des erreurs darrondis, inhrente tout calcul numrique, mais qui ne prsente jamais un caractre aussi dramatique. Pour tudier de plus prs les causes profondes de ce type dinstabilit numrique, nous partons de la rcurrence (I-8) qui a servi de base notre exemple :

Cn + 1

2n Cn + Cn 1 = 0 x

(I-9)

Etant dordre deux, cette rcurrence possde deux solutions linairement indpendantes, savoir les fonctions de Bessel de premire et deuxime espce Jn (x) et Yn(x). Sa solution gnrale scrit donc :

Cn = J n ( x ) + Yn ( x )
Les coefficients et se dterminent daprs les conditions initiales imposes. Du fait que lon a choisi C0=J0 et C1=J1, on sattend ce que Cn=Jn pour tout n. Ce serait effectivement le

18

cas si le calcul tait men rigoureusement en arithmtique infinie. Toutefois la ralit est trs diffrente puisque lordinateur travaille toujours en prcision limite (8 chiffres dans notre exemple). Il en rsulte que les conditions initiales rellement encodes sont un peu diffrentes de celles que lon avait en vue. En ralit, elles scrivent :

C0 = J 0 ( 1 ) = J 0 + Y0 C1 = J 1 ( 1 ) = J 1 + Y1

et

o et reprsentent la prcision des conditions initiales, soit ici ,10-8 (des valeurs plus exactes sont 8.6 10-9 et 1.3 10-8). En thorie devrait valoir 1 et devrait valoir 0. En ralit leurs valeurs encodes sont :

= 1+

J 1Y0 J 0Y1
J 0Y1 J 1Y0

et

= ( )

J0 J1 J 1Y0 J 0Y1

Il en rsulte que la solution, que ces conditions initiales lgrement perturbes engendrent, diffre de Cn=Jn et quelle vaut, en ralit :
J Y J 0Y1 J0 J1 Cn = 1 + 1 0 Yn J n + ( ) J 0Y1 J 1Y0 J 1Y0 J 0Y1

A premire vue, on pourrait se montrer satisfait puisque cette expression ne semble diffrer de Cn=Jn que par des termes de lordre de et de , soit la prcision des conditions initiales. Si on y regarde de plus prs, on constate que cela est tout fait faux car la solution Yn domine trs fortement Jn en sorte que lorsque n augmente, la solution dominante non dsire Yn pollue progressivement et dramatiquement la solution domine cherche Jn. Ceci est d la diffrence de comportements asymptotiques de Yn et de Jn. On verra plus loin comment dterminer les asymptotes dune rcurrence telle que (I-9); il suffit pour linstant de savoir quelles scrivent respectivement :
Yn as( 1 ) ( n ) = ( 2 )n ( n ) x
x J n as( 2 ) ( n ) = ( 2 )n / ( n + 1 )

( asymptote do min ante ) ( asymptote do min e )

Le contraste entre Jn et Yn est saisissant; il vaut:

( x / 2 )2 n ( n ) ( n + 1 )

Cest lui qui fixe le degr de pollution de Jn par Yn : lerreur absolue commise est de lordre de PYn, o P est la prcision de lordinateur (soit 10-8 dans lexemple trait ci-dessous). Lerreur relative sen dduit : erreur relative P |Yn/Jn| = P/n Pour x = 1, on trouve : erreur relative n!(n-1)!10-8/0.52n

(I-10) 19

soit en pratique les ordres de grandeur suivants :

n 1 2 3 4 5 6

erreur relative 4. 10-8 3.2 10-7 7.6 10-6 3.6 10-4 3. 10-2 3.5 !! Table I-2

Comparant les valeurs de Jn et celles de Cn telles quelles figurent dans la table I-1, on remarque que la formule (I-10) prdit correctement lordre de grandeur de la catastrophe lorsque n est suffisamment grand. On y voit un premier intrt de pouvoir dterminer les asymptotes dune rcurrence. On en dcouvrira un deuxime lors de ltude de lalgorithme de Miller. Lexemple prcdent rvle une proprit gnrale des rcurrences linaires, savoir : le calcul rcursif progressif nest stable que pour les solutions dominantes Ck(1) de la rcurrence tudie; il est instable pour toutes les solutions non dominantes Ck(i) (i>1) et lerreur relative commise vaut chaque pas de lordre de PCk(1)/Ck(i). Autrement dit, les solutions non dominantes ne peuvent tre calcules de faon stable par la procdure rcursive progressive : elles sont en effet automatiquement pollues par la solution dominante, lordre de grandeur de la pollution tant donn par le facteur de contraste entre la solution cherche et la solution dominante. Si ce contraste nest pas trop svre, on peut quand mme envisager le calcul progressif avec une erreur modre; sil est svre, on doit recourir un algorithme spcial d Miller, que nous allons tudier.

I-4. Algorithme de Miller simple.


Lalgorithme de Miller calcule de faon stable n+1 valeurs C0, C1, ..., Cn de la solution domine dune rcurrence. Lide est des plus simples: elle consiste essayer la rcurrence rebours, donc dans le sens rgressif, en sorte que la solution dominante devienne domine et inversment. Deux questions se posent alors: - A quelle valeur N de n faut-il dmarrer le calcul rgressif ? - Quelles conditions initiales faut-il adopter pour CN et CN+1 ?

20

Nous verrons plus loin comment rpondre la premire question. En attendant contentonsnous de prendre N suffisamment grand, quitte augmenter sa valeur par la suite pour mesurer la modification que cela entrane sur les valeurs cherches de C0, C1, ..., Cn. Miller rpond la deuxime question en choisissant des conditions initiales arbitraires, par exemple CN=1 et CN+1=0 ! Cela implique quau dbut, lalgorithme calcule une combinaison linaire arbitraire des solutions dominantes et domines. Mais, trs vite, la solution domine va polluer toutes les autres au point quelle sera seule prsente larrive pour peu quon ait choisi N suffisamment grand. Il suffit alors de renormaliser la suite trouve en ajustant C0 la condition initiale impose. Si le fait daugmenter N modifie la suite Cn, Cn-1, ..., C1, C0 la prcision demande, e-p, cest que N na pas t choisi suffisamment grand. En pratique, il faut choisir N tel que le contraste entre les solutions dominantes et domines satisfasse la relation suivante qui fixe N :

N +1 / n = e p
Justifions ce qui vient dtre dit. La solution gnrale de la rcurrence (I-9) tudie scrit sous la forme :

Cn = J n + Yn
Considrons la solution particulire correspondant aux conditions particulires imposes par lalgorithme de Miller :

C N = 1 = J N + YN C N + 1 = 0 = J N + 1 + YN + 1
On en dduit les valeurs de et de : YN + 1 = YN J N + 1 YN + 1 J N

J N +1 YN J N + 1 YN + 1 J N

do on dduit la solution engendre dans ces conditions :

Cn =

J N + 1Yn + YN + 1 J n YN J N + 1 + YN + 1 J N

expression que lon modifie comme suit :

21

Cn = =

YN + 1 J J n Yn N + 1 J N YN + 1 YN J N + 1 YN + 1

YN +1 Y J J n 1 n N +1 J N YN + 1 YN J N +1 J n YN + 1

= J n 1 N + 1 n

Si le contraste, , est suffisant et que N est suffisamment grand par rapport n, on voit que la mthode gnre, aux basses valeurs de n, la suite Jn demande une constante multiplicative, , prs que lon dtermine en se servant de la condition initiale C0 = J0 qui doit videmment tre donne. On peut recommencer le mme calcul en partant de conditions initiales quelconques pour CN et CN+1 : les conclusions restent valables. Par cette mthode, Jn et, a fortiori J0, J1, ..., Jn-1, seront corrects la prcision P, condition de choisir N tel que :

N +1 P n
Revenons lexemple de la rcurrence (I-9) de Bessel. Le calcul de Jn pour n = 0, 1, ..., 10 avec huit chiffres exacts, exige le recours lalgorithme de Miller. Le facteur de contraste a t valu :

n =

1 2 ( n 1 )! n!
2n

On dtermine la valeur de N partir de laquelle lalgorithme de Miller doit dmarrer en rsolvant lquation transcendante suivante :

2 2 n ( n 1 )! n! N +1 = 2 N +2 = 10 8 2 N ! ( N + 1 )! n

avec

n = 10

On trouve N = 12. Il importe de bien voir que lalgorithme engendre la suite complte, normalise C0 = J0, soit : C13 = 0, C12 = *, C11, C10, C9, ..., C2, C1, C0 = J0. et que cette valeur de N est telle que C10 est tout juste correct avec 8 chiffres; les termes Cn prcdents (n>10) sont dautant moins prcis que n est grand tandis que les termes Cn suivants (n<10) sont de prcision croissante mesure que n diminue. Cela est visible dans la table I-3 qui liste les valeurs obtenues par cette procdure. Les chiffres en gras sont exacts.

22

n 13 12 11 10 9 8 7 6 5 4 3 2 1 0

Cn J0(1)/C0 0.000000000000000E+00 4.991679516745441E-13 1.198003084018906E-11 2.630615105324847E-10 5.249250179809506E-09 9.422344172603863E-08 1.502325817436808E-06 2.093833800238928E-05 2.497577302112345E-04 2.476638964109956E-03 1.956335398266841E-02 1.149034849319005E-01 4.400505857449337E-01 7.651976865579670E-01 Table I-3

Remarque : Cet algorithme prsente une caractristique tout fait remarquable que lon peut dailleurs observer sur lexemple du calcul de Jn. Alors que le calcul progressif de Jn aurait ncessit la connaissance de deux conditions initiales, par exemple J0 et J1, le calcul rgressif bas sur lalgorithme de Miller nen ncessite plus quune seule : J0 dans lexemple choisi. En particulier, la valeur de C1 = J1 surgit tout naturellement de lalgorithme de Miller. En rsum, quand on calcule la solution domine dune rcurrence par lalgorithme de Miller, une seule condition initiale suffit, ce qui est bien naturel puisque la solution domine est unique un facteur multiplicatif prs. Thoriquement, on pourrait mme imaginer se passer de toute condition initiale du fait que les fonctions Jn obissent, comme dailleurs la plupart des fonctions transcendantes, des formules sommatoires dont un exemple est donn par la relation :

J0 ( z ) + 2J 2( z ) + 2J 4 ( z ) + L = 1 / 2 quel que soit z. La mise en pratique de cette remarque exige toutefois de prendre en compte la vitesse de convergence de cette srie. A cet gard, la formule sommatoire suivante devrait tre plus performante, vu le comportement asymptotique rapidement dcroissant de Jn :
2 J 02 ( z ) + 2 J 12 ( z ) + 2 J 2 ( z ) + L = 1

23

I-4.1 Application au calcul dintgrales compliques. Soit calculer les intgrales suivantes (n entier positif) :
In = 1

e t t n1 / 2 dt ( t + 1 / 2 )n

(I-11)

Analytiquement, seule I0 se calcule aisment. On trouve classiquement :

I0 =

et

dt =1 t

On peut montrer que les In obissent une rcurrence dordre 2 :

nI n + 1 2 nI n + ( n 1 / 2 )I n 1 = 0

(I-12)

La dmonstration en est la suivante. On considre, simultanment, les familles dintgrales In et Jn dfinies par les relations:
In = 1

e t t n1 / 2 dt ( t + 1 / 2 )n

et

Jn =

e t t n +1 / 2 dt ( t + 1 / 2 )n

On commence par intgrer In par parties. On pose, pour cela :

u=

e t e t et du = n 1 ( t + 2 )n ( t + 1 )n ( t + 1 )n + 1 2 2 1 dv = t n1 / 2 dt v = t n+1 / 2 n+1/ 2

On trouve :
1 e t t n+1 / 2 e t t n+1 / 2 I n = uv ] + 0 ( t + 1 / 2 )n dt + n 0 ( t + 1 / 2 )n+1 dt n +1/ 2 0

( =0 )

do on tire :

(n+

1 )I n = J n + nI n+1 2

(I-13)

Par ailleurs, on a aussi, en travaillant Jn :

24

Jn =

t n 1 / 2 e t e t t n+1 / 2t (t +1/ 2 1/ 2 ) dt = dt n 0 (t +1/ 2 ) ( t + 1 / 2 )n

e t t n1 / 2 1 e t t n1 / 2 dt dt ( t + 1 / 2 )n1 2 0 ( t + 1 / 2 )n

qui se rduit :

J n = J n1

1 In 2

(I-14)

Eliminant Jn entre (I-13) et (I-14), on trouve la relation cherche :

nI n + 1 2 nI n + ( n 1 / 2 )I n 1 = 0
Accessoirement, on trouve, simultanment, la rcurrence satisfaite par les Jn :

nJ n+1 ( 2 n + 1 )J n + ( n + 1 / 2 )J n1 = 0
La rcurrence satisfaite par la suite des In possde deux solutions linairement indpendantes. On verra plus loin comment dterminer leurs asymptotes qui valent respectivement :

as ( 1 ) ( n ) e as ( 2 ) ( n ) e

2n 2n

( solution do min ante ) ( solution do min e )


2n

Le contraste entre ces deux asymptotes vaut : n= e 2


3

Il est donc assez fortement polluant ( 7.6 10 pour n = 10), soit une perte de 4 chiffres significatifs si on calcule par erreur la solution domine de faon progressive. Toute la question est donc de savoir si la suite In est solution dominante ou domine de la rcurrence (I12). Le recours lalgorithme de Miller savrera indispensable dans la deuxime ventualit. Prcisment, on dtermine le comportement asymptotique des intgrales In en posant dans leur dfinition (I-11) : t = nu2 do : dt = 2nu du. On trouve :

In =

e nu n n 1 / 2u 2 n 1 2nu du ( nu 2 + 1 / 2 )n
2

Aux grandes valeurs de n, le dnominateur se comporte comme :

1 n ) n nu 2 n exp( 1 / 2u 2 ) 2nu 2 Lintgrale In est ds lors asymptotique : n nu 2 n ( 1 +


25

I n 2 n / exp( nu 2 1 / 2u 2 )du e
0

2n

o on a utilis ce rsultat connu :

exp( ax 2 b / x 2 )dx =

1 exp( 2 ab ) 2 a

On observe que lintgrale In se comporte effectivement comme une solution domine de la rcurrence (I-12), ce qui entrane le recours oblig lalgorithme de Miller. Supposons, pour fixer les ides, que lon veuille calculer la suite I0, I1, ..., I10 avec 8 chiffres. Il faut dmarrer le calcul rgressif partir de IN = 1 et IN+1 = 0 (par exemple), avec N solution de lquation transcendante suivante :
e 2 2 N + 2 10 8 2 20 e d' o N = 92 .

En fin de calcul rgressif, on renormalise toute la suite I0, I1, ..., I10 obtenue en la divisant par le facteur, I0, quil faut pour que la condition initiale I0 = 1 soit satisfaite. Remarques: 1) Bien que la rcurrence soit dordre 2, on a eu considrer quune seule condition initiale, savoir I0 = 1; ceci tait d au fait que la suite cherche tait domine. Si on lavait trouve dominante, deux conditions initiales, soit par exemple I0 et I1 , auraient t ncessaires et on naurait pas eu besoin de recourir lalgorithme de Miller. 2) On peut tenter de bnficier de la connaissance du comportement asymptotique de la solution domine pour acclrer lgrement lalgorithme de Miller : il suffit de partir des conditions initiales suivantes, plus optimales pour des raisons videntes :

C N = as( 2 ) ( N )

et

C N +1 = as ( 2 ) ( N + 1 )

Le gain en prcision nexcde cependant gure un chiffre dcimal en sorte que cette remarque est ignore la plupart du temps.

1-5. Algorithme de Miller gnralis.


Le cas des rcurrences dordre 2 est simple en ce quune solution dominante se calcule par le mode progressif tandis quune solution domine se calcule par le mode rgressif. Le cas des rcurrences dordre suprieur 2 est nettement plus complexe du fait de lexistence de solutions intermdiaires qui ne peuvent se calculer de faon stable dans aucun des deux modes. Il faut, pour les dterminer, recourir un algorithme de porte plus gnrale que nous nous bornons prsenter sans dmonstration. On procde comme suit : soit les n solutions de la rcurrence ranges dans lordre des dominances dcroissantes : Ck(1) Ck(2) ... Ck(n) . 26

Devant dterminer de faon stable la solution Ck(i) , on rcrit la rcurrence sous la forme dun systme linaire infini obtenu en posant successivement dans la rcurrence : k = i - 1, i, i +1, ... . Hors de ce systme infini, on extrait le systme tronqu K x K (K suffisamment grand) qui nglige les Ck dindice k > K . En notation matricielle, cela donne :
Ai(n1 i + 1 ) M A( 0 ) n 0 0 0 0 L O L O 0 0 0 A
(0 ) K 1

Ai(n1) O

0 O L O L O 0 A

0 0 A
(n) n

0 0 0 O L O L

O
(0 ) K +i 2

0 0

0 0 0 ( AKn)1 M ( AKn+i i+21 ) 0

C1 C2 M M = M M CK

Ai(n1 i )C0 + L + Ai(01)Ci n ( n i 1 ) C0 + L + Ai( 0 )Ci + 1 n Ai M ( ) An 0 1C0 0 M 0

Les coefficients C0, C-1, ..., Ci-n qui figurent au second membre sont les conditions initiales qui, vu ltat de dominance de la solution que lon a en vue, peuvent tre choisies arbitrairement afin que le problme nait quune solution. Une fois ces valeurs dcides, il suffit de rsoudre le systme pour obtenir C1(i), ..., Ck(i) de faon gnralement stable. Si on augmente la valeur de K, les Ck(i) dindice k petit tendent vers des valeurs fixes qui sont les valeurs cherches. Naturellement, ce procd ne donne correctement Ck(i) que pour k suffisamment petit devant K. Il est clair, en effet, que CK(i) ne peut en aucun cas tre correct puisque dans les dernires quations du systme, on a ignor des termes. En pratique, lerreur relative commise sur Ck(i) vaut dans tous les cas o il existe un contraste entre les solutions Ck(i) et Ck(i-1) : prcision sur C
(i) k ( ( ( CKi ) Ck i1 ) Ki1 ) ( i1 ) = ( i1 ) ( k CK Ck i )

(i = 2, 3, ..., n).

Cette relation est utile en ce quelle permet destimer la dimension K du sous-systme rsoudre pour obtenir C1(i), ..., Ck(i) avec une prcision donne. Lerreur relative sur Ck(1) est videmment nulle puisque lalgorithme de Miller gnralis est quivalent, dans ce cas, au calcul progressif qui est stable pour la solution dominante.

Exemple 1: soit la rcurrence dordre trois dj voque prcdemment :

( k 2 2k + 4 )Ck + 1 3k 2Ck + ( 3k 2 + 2k )Ck 1 ( k 2 + 1 )Ck 2 = 0


qui, rappelons-le, possde trois solutions linairement indpendantes respectivement asymptotiques :

27

( Ck 1 ) k 11 / 8 exp( 4 k ) = as ( 1 ) ( k )

solution do min ante solution do min e

(2) k

3/ 4

= as

(2)

(k )

solution int ermdiaire

( Ck 3 ) k 11 / 8 exp( 4 k ) = as( 3 ) ( k )

Toute solution intermdiaire est du type Ck(2) + Ck(3) et exige deux conditions initiales pour fixer et . Pour obtenir cette solution avec dix chiffres exacts dans le domaine k = 1, 2, ..., 50, il y a lieu de recourir lalgorithme de Miller gnralis avec K fix la valeur, qui est solution de lquation transcendante suivante :
( (1 10 10 K1 ) / 50 ) =

K 5 / 8 exp( 4 K ) 50 5 / 8 exp( 4 50 )

On trouve K = 160. Il faut donc rsoudre un sous-systme de dimension 160 pour obtenir C1(2), ..., C50(2) avec la prcision de 10-10 exige. En fait les Ck(2) tels que k < 50 sont corrects avec une prcision meilleure que 10-10 tandis que les Ck(2) (avec k > 50) sont corrects avec une prcision moindre.

Exemple 2 : Reconsidrons la rcurrence coefficient constant, tudie au I-3 :

Ck + 1 9Ck + 26 Ck 1 24Ck 2 = 0
Soit dterminer numriquement les solutions suivantes : - La solution dominante telle que : C-2 = C-1 = C0 = 1. Son expression exacte est : Ck(1) = 12 2k - 27 3k + 16 4k d'o: C10(1) = 15195181. - La solution intermdiaire telle que : C-1 = C0 = 1. Son expression exacte est : Ck(2) = 4 2k - 3 3k d'o: C10(2) = -173051. - La solution domine telle que C0 = 1. Son expression exacte est : Ck(3) = 2k d'o: C10(3) = 1024. Dmarrant lalgorithme de Miller gnralis K = 40, on trouve respectivement : C10(1) = 15195181 (valeur exacte). C10(2) = -173029.26... (p = 9). C10(3) = 1023.993... (p = 11.9). On vrifie sans peine que les prcisions p obtenues sont compatibles avec le modle thorique. En effet, les facteurs de contraste valent respectivement (3/4)k et (2/3)k et on a bien : e-p (3/4)K-k do pint (K-k) ln(4/3) = 8.6, pour la solution intermdiaire. e-p (2/3)K-k do pdomine (K-k) ln(3/2) = 12.2, pour la solution domine.

28

Lalgorithme de Miller simple ne fonctionnerait que pour la solution domine avec le mme indice de performance. On voit sur ces exemples que la notion de contraste entre les solutions dune rcurrence est trs importante car elle permet dvaluer le degr de prcision des algorithmes de Miller simple et gnralis. Encore faut-il pouvoir dterminer les comportements asymptotiques des solutions dune rcurrence. Ce point fait lobjet de ltude des paragraphes suivants. Avant cela, il reste un mot dire des rcurrences non homognes. Le principe de la discussion dans ce cas un peu plus complexe est analogue: il faut connatre le comportement asymptotique de la solution particulire de lquation avec second membre et le comparer ceux des n solutions de lquation homogne. Lalgorithme de Miller doit alors tre adapt en fonction des dominances observes. Nous nen disons pas davantage ici du fait que nous ne rencontrerons pas ce cas dans la suite du cours. Le lecteur intress se rapportera louvrage fondamental de Wimp cit en rfrence. Une alternative existe cependant : soit la rcurrence inhomogne :
( ( Ak n )Ck + 1 + ... + Ak 0 )Ck n + 1 = hk

en abrg : L (Ck) = h(k) soit encore : L (Ck) / h(k) = 1 On a aussi : L (Ck+1) / h(k+1) = 1 On peut alors ramener le problme au calcul des solutions dune quation homogne dordre suprieur dune unit celui de lquation de dpart : L (Ck+1) / h(k+1) - L (Ck) / h(k) = 0.

I-6. Dtermination des asymptotes dune classe tendue de rcurrences linaires homognes.
Il est effectivement possible de dterminer les asymptotes dune classe assez vaste de rcurrences du type (I-5) telles que leurs coefficients peuvent scrire sous la forme canonique gnrale:
( Ak j ) = a j , p k p / r p =0

(I-15)

o r est un entier fix et o les aj,0 ne sont pas tous simultanment nuls. Une telle rcurrence est dite de Poincar de type r. Le cas particulier r=1 est important car il regroupe les rcurrences coefficients rationnels sur la variable k. On a lexemple suivant:

( k 2 + 1 )Ck + 1 + ( 3k 1 )Ck + k 2Ck 1 = 0 dune rcurrence qui peut effectivement se rcrire sous la forme canonique de type un :
29

(1+

1 3 1 )Ck + 1 + ( 2 )Ck + Ck 1 = 0 2 k k k

(I-16)

Une rcurrence de Poincar de type r est dite rgulire si on a en plus que a0,00 et que an,00. Elle est dite irrgulire dans le cas contraire. La rcurrence (I-16) est rgulire.

I-6.1. Asymptotes des rcurrences rgulires. On appelle quation caractristique de la rcurrence rgulire (I-5) lquation algbrique :

an ,0 z n + an 1,0 z n 1 + L + a0 ,0 = 0
Vu que a0,0 0 et que an,0 0, cette quation est polynomiale de degr n. Elle possde donc n racines, distinctes ou non, relles ou complexes, peu importe. Dans le cas particulier o la rcurrence est coefficients constants, on retrouve lquation caractristique dj tudie et les solutions asymptotiques sont exactes dans ce cas. Plusieurs tudes, dues Nrlund, Birkhoff, Culmer et Turrittin, ont montr que les asymptotes des n solutions linairement indpendantes de la rcurrence sont toutes du type :
m2 1 mm 1 m m as( k ) = z k exp k + k + L + k (ln k )g (I-17) o m est un entier infrieur ou gal au produit r , tant la multiplicit de z comme solution de lquation caractristique, et o les constantes w, , , ..., , g doivent tre dtermines par le calcul. En thorie, on procde cette dtermination comme suit : on introduit lasymptote (I-17) dans la rcurrence et on dveloppe tous les termes en puissances de k-1/m. Ensuite, on identifie zro les coefficients des puissances de k des rangs les plus levs, ce qui livre en gnral les relations qui permettent de dterminer les constantes w, , , ..., , g. En pratique, on a effectu ces calculs lourds, une fois pour toutes, dans le plus grand nombre de cas possibles. Les tables I-4 en annexe livrent le rsultat complet des calculs pour les rcurrences rgulires au sens de Poincar du type un (racine z simple, double, triple ou quadruple) et des types deux, trois et quatre (racine z simple). Le mode demploi de ces tables est le suivant : soit la rcurrence rgulire (I-5) telle que ses coefficients revtent tous la forme (I-15). On forme lquation caractristique possdant n racines : k w

an ,0 z n + an 1,0 z n 1 + L + a0 ,0 = 0
Chaque racine z est obtenue avec sa multiplicit . On peut alors modifier la rcurrence en posant : Ck = zk k . On obtient une nouvelle rcurrence en k dont lquation caractristique possde obligatoirement une racine de multiplicit en z = 1. Les tables I-4 ne sont valables que 30

lorsque cette opration pralable a t effectue. En fait, elle doit tre recommence pour chaque racine z. Il suffit alors dcrire directement lasymptote en se conformant scrupuleusement aux branchements prvus dans les tableaux I-4. Tous les rsultats sont exprims en termes des symboles (p,q) dfinis par :

( p , q ) = j p a j ,q
j =0

(avec 00 = 1 lorsque j et p sont simultanment nuls). Exemple 1 : Considrons la rcurrence rgulire au sens de Poincar, de type un :

( 1 2k 1 + 4 k 2 )Ck +1 3Ck + ( 3 + 2k 1 )Ck 1 ( 1 + k 2 )Ck 2 = 0 j=3 j=2 a3 ,0 = 1 a2 ,0 = 3 a3 ,1 = 2 autres = 0 a3 ,2 = 4 autres = 0 j =1 a1,0 = 3 a1,1 = 2 autres = 0 j =0 a0 ,0 = 1 a0 ,1 = 0 a0 ,2 = 1 autres = 0

Lquation caractristique scrit : z3 - 3z2 + 3z - 1 = 0 dont la racine z = 1 est triple. On calcule sans peine :

( 0 ,0 ) = ( 1,0 ) = ( 2 ,0 ) = 0 ( 3,0 ) = 6 ( 0 ,1 ) = 0 ( 2 ,1 ) = 16 ( 4 ,0 ) = 36 ( 1,1 ) = 4 ( 0 ,2 ) = 3


Consultant les tables I-4, on trouve les asymptotes correspondant ce cas sous la rubrique: type un, racine triple, avec Q2 = -5/2. Les asymptotes valent :
( Ck 1 ) k 11 / 8 exp( 4 k ) ( Ck 2 ) k 3 / 4

Ck3 k 11 / 8 exp( 4 k )

Exemple 2 : Pour bien fixer les ides, traitons encore cet exemple o une racine de lquation caractristique nest pas gale 1. Soit la rcurrence rgulire de type un :

31

Ck +1 ( 3 + j=2 a2 ,0 = 1 a2 ,1 = 0

2 )Ck + 2Ck 1 = 0 k j =1 j =0 a1,0 = 3 a1,1 = 2 a0 ,0 = 2 a0 ,1 = 0

autres = 0 autres = 0 autres = 0

Lquation caractristique scrit : z2 - 3z + 2 = 0. Ses racines sont z1 = 1 et z2 = 2. Lasymptote qui correspond z1 = 1 se dtermine immdiatement en consultant les tables I-4 la rubrique type un, racine simple. On trouve sans peine :

Ck k w avec w = ( 0 ,1 ) / ( 1,0 ) = ( 2 ) /( 1 ) = 2
La dtermination de lautre asymptote, qui correspond z2 = 2, ncessite de poser pralablement Ck = 2k k . On cherche alors la rcurrence satisfaite par k . On trouve sans difficult :
2 k + 1 ( 3 + j=2 a2 ,1 = 0 2 ) k + k 1 = 0 k j =1 j =0

a2 ,0 = 2 a1,0 = 3 a0 ,0 = 1 a1,1 = 2 a0 ,1 = 0

do: (0,1) = -2 et (1,0) = 1. Consultant les tables I-4, on trouve cette fois: k k2 do: Ck 2k k2. La rcurrence initiale possde donc deux solutions contrastes asymptotiques :
( Ck 1 ) 2 k k 2

( solution do min ante ) ( solution do min e ).

et

(2) k

I-6.2. Asymptotes des rcurrences irrgulires. Dans les cas trs nombreux o la rcurrence nest pas rgulire au sens de Poincar, soit que an,0 est nul ou que a0,0 lest (ou les deux), on procde comme suit. On commence par former lquation caractristique :
( ( ( Ak n ) z n + Ak n 1 ) z n 1 + L + Ak 0 ) = 0

32

en ne retenant que le terme principal en k dans chacun des coefficients Ak(j), cest--dire le permier terme aj,pk-p/r non nul. Il est possible de montrer que lquation caractristique possde n racines de la forme approche: z k (k tant suppos trs grand), de multiplicit . Pour dcouvrir les asymptotes associes chacune des racines revtant cette forme, on pose: Ck = k [(k)] k, que lon introduit dans la rcurrence de dpart. On obtient ainsi une nouvelle rcurrence portant sur k. Lquation caractristique de cette nouvelle rcurrence possde ncessairement une racine de multiplicit en z = 1. Les asymptotes qui lui sont associes se calculent par la mthode dcrite plus haut comme si la rcurrence satisfaite par k tait rgulire au sens de Poincar. Son type dpend des valeurs trouves pour . Exemple 1 : Soit la rcurrence :

qCk + 1 + 4( k + 1 )2 Ck + qCk 1 = 0
o q est une constante quelconque; cette rcurrence intervient dans la thorie des fonctions de Mathieu. Elle nest pas rgulire. On forme son quation caractristique :

qz 2 + 4 k 2 z + q = 0
dont on cherche le comportement asymptotique des racines sous la forme : z = k. On a donc:

q 2 k 2 + 4 k + 2 + qk 0 = 0
- 2 = 0 est impossible. - 2 = + 2, do = 2 est possible condition de prendre : = -4/q . - + 2 = 0, do = -2 est possible condition de prendre : = -q/4 . Les racines cherches sont donc asymptotiques : z1 -(4/q)k2 et z2 -(q/4)k-2 Considrant z1, on a: = -4/q et = 2. On pose donc :
Ck = ( 4 / q )k [ ( k )] k
2

On trouve pour k , la rcurrence :

33

k + 1 ( 1 + k 1 )2 k +
j=2 j =1

q2 2 k ( k 1 ) 2 k 1 = 0 16 j =0

a2 ,0 = 1 a1,0 = 1 a0 ,0 = 0 a2 ,1 = 0 a1,1 = 2 a0 ,1 = 0 a2 ,2 = 0 a1,2 = 1 a0 ,2 = 0


On dtermine lasymptote correspondante comme indiqu prcdemment (cfr tables I-4, type un, racine simple), savoir : k k2, soit au total :
( Ck 1 ) ( 4 / q )k k ! 2

Considrant lautre racine z2, on trouverait pour lautre solution le comportement asymptotique suivant :
( Ck 2 ) ( q / 4 )k k ! 2 k 2

On note que la numrotation des solutions tient compte de ce que Ck(1) domine effectivement Ck(2).

Exemple 2 : Considrons la rcurrence de Bessel dj envisage prcdemment :

Ck + 1

2k Ck + Ck 1 = 0 x

Lquation caractristique scrit :

z2

2k z +1=0 x

On pourrait trouver le comportement asymptotique de ses racines en procdant comme dans lexemple prcdent. On peut aussi rsoudre lquation du second degr et trouver :

k k2 z1 = 1 2 x x2
Aux grandes valeurs de k, on trouve respectivement : z1 2k/x soit : = 2/x et = 1 z2 x/(2k) soit : = x/2 et = -1.

34

Traitant sparment chaque racine, on trouve les asymptotes :


( ( C k 1 ) ( 2 / x )k ( k ) et C k 2 ) ( x / 2 )k / ( k + 1 ) Nous livrons, en annexe, le contenu des tables I-4 qui permettent de dterminer le comportement asymptotique des solutions dune rcurrence linaire de Poincar.

35

36

37

38

39

40

41

42

43

44

45

46