UNIVERSITE DES SCIENCES ET DE LA 1ECH
OLOGIE
HOUARI BOUMEDIENE U.S.T.H.B) ALGER INSTJTUT DE PHYSIQUE THESEPrésentée à l'U.S.T.H.B pour
l'obten!ion du grade de
MAGISTER
Spécialit' Electronique
des systèmes
par
Abderrezak HAD] LARBI
SIMULATION
NUMERIQUE
DEPROCESSUS PHYSIQUE ET
METHODE
MONO
ET
MULTI
PAS:APPLICATION
A UN
ALGORITHME
DECOMMANDE
ADAPTATIVE
D'UN ROBOT DAHEL Abdelhamld PROFESSEUR U.S.T.H.B PRESIDENT TOUMI Redouane M.d CNFERýNCE
U.S.T.H.B RAPPORTEUR SANSAL Boualem PR FESSEUR U.S.T.H.B EXAMINATEURBENDALl Abderahm ne M.de
C NFERENCE U.S.T.H.B
..
KACIMI Messaoud
CHARGF de COURS U.S.T.H.B
"
Soutenue publiquement le 14 ]uln
1987
THESE
devant le jury composé de :
UoSoToHoB)
ALGER
HADJ LARBI par
Electronique des
systèmes
MAGISTER
Abderrezak
Abdelhamid
PROFESSEUR
UoSoToHoBPRESIDENT
Redouane Mode
CONFERENCE
UoSoToHoBRAPPORTEUR
Boualem
PROFESSEUR
U.SoToHoBEXAMINATEUR
Abderahmane
ModeCONFERENCE
UoSoToHoB "Messaoud
CHARGE
deCOURS
UoSoToHoB "HOUARI
BOUMEDIENE
Spécialité
UNIVERSITE DES SCIENCES ET DE LA
TECHNOLOGIE
Pr'sent'e l l'U.S.ToH.B pour l'obtention du grade de "
INSTITUT DE PHYSIQUE
Soutenue publiquement le 14 juin 1987
DAHEL
TOUMI
SANSAL BENDALl KACIMISIMULATION
NUMERIQUE
DE PROCESSUS PHYSIQUE ETMETHODE
MONO
ETMULTI
PAS :APPLICATION
A UNALGORITHME
DECOMMANDE
ADAPTATIVE
Je tiens tout d'abord à. remercier le professeur SANSAL pour m'avoir accueilli dans son laboratoire,et de m'avoir pernns de concretiser ce
t
ravat
l .Je remercie vivement le professeur A.DAHEL de m'avoir fait l'honneur d'assumer la presidence du jury.
Que Monsieur le professeur R TOUMI trouve ici l'expression de ma profonde gratitude pour ses conseils,et l'interet qu'il a toujours porté à ce travail.
Mes profonds remerClements et ma gratitude vont aussi à Mbnsieur le
professeur A. MIGNOT de l)univers1te de RENNES 1 (FRANCE). pour ses
enseignementsýet ses precieux conseils en analyse numerique. J'adresse mes vifs rýrciýts à Mbnsieur le professeur BENDALl pour avoir accepté de faIre partie de ce JUry.
Que Mcnsieur KACINI t.£SSAOUD trouve ici l'expression de rIll
reconnaiss-ance pour avot r accepté
d 'ýtre merrbre du jury.
Enfin je tiens à remercier tous ceux qui de pres ou de loin ont contri-bué à. l'aboutissement de ce trava11,notamment les gens du centre de
INTRODUCTION GlNIRALI
PARTIE A:
INTRODUCTION
CHAPITRE I: MISE EN OEUVRE DES METHODES DE RUNGE-kUTTA A PAS VARIABLES:
1.1 Généralités
1.1.1 Consistance du schéma 1.1.2 Stabilité du schéma 1.1.3 Convergence du schéma
1.2 Sphéma général des méthodes de RUNGE-KUTTA l 9
Ras intermédiaires
I.3 Comportement asymptotique de l'erreur
I.3.1 Expression de l'erreur
1.3.2 Choix optimal du pas hn
1.4 Contrôle du pas
1.4.1 Estimation de l'erreur 1.4.2 Contrôle du pas
1.5 Schéma final de RUNGE-KUTTA adopté
1.5.1 Calcul des coefficients de la -'thode
.I 1.5.2 EstiMation de £n IdeI' 7 Ide-, 8 Ider 10 11 Ide' 13 Idf';1 l.!< 15 16
11.1 Méthode d'ADAMS d'ordre (r+l) à pas variables Ide
11.2 Mýtbýsl!: d'ADAMý !:mI21Q:týý §QYs fQSe P[éSU
ýýIW:-ýSU:-recteur 24
II.2.1 Définition du schéma 25
I1.2.2 Stabilité et ordre du schéma 27
1.6 Diff6rents types de contrale de l'erreur Hi
1.6.1 Premier type de contrale d'erreur 17
1.6.2 Deuxiýme type de contrale d'erreur
le
1.6.3 Choix CVo( tn) IdE
1.6.4 Troisième type de contrôle d'erreur 11)
34
rden 21
22
28
II.3.1.ý Schéma correcteur d'ordre K II .3.1 .3 Expression du schéma P k Ee It E et
résumé des opérations à une étape II.3.1.1 Schéma prédicteur d'ordre K
II.3.2 Calcul des coefficients du sch6ma
II.3.1 Expression du schéma et choix des variables
1.7 ORGANIGRAMME
II.3 Formulation du schéma Prédicteur-correcteur à l'aide
des différences divisées
CHAPITRE II: MISE EN OEUVRE D'UN SCHEMA D'ADAMS A PAS ET ORDRE
CHAPITRE III: COMPORTEMENT EFFECTIF DES METHODES:
PARTIE B:
INTRODUCTION:
CHAPITRE I:
II.4.1 Expression des erreurs de consistance
II.4.2 Algorithme en phase normale de fonc-tionnement
II.4.3 Algorithme en phase de démarrage, choix du 1er pas
a) Comportement de la méthode P" EC k E
b) Comportement de la méthode de RUNGE-KUTTA à pas variable comparée avec la méthode à pas constant
SIMULATION NUMERIQUE DU COMPQRTEMENT DYNAMIQUE D'UN MANIPULATEUR RIGIDE ET ALGORITHME DE COMMANDE ADAP-TATIVE
COMMANDE DYNAMIQUE DE MANIPULATEUR
J. Obtention du modèle dynamique d'un robot .ani-pulateur
1) Forme g6n6rale du modale dyn .. 1que
2) Algorithme
II. Co.mande adaptative
III. Schéma MRAC continu
I. / I:. . l ý. 5' '),
"
.. L 65 "'7CONCLUSION GENERALE:
I. Synoptique du schéma MRAC continu
1. Commande en consigne
2. Stabilité du schéma MRAC
3. Algorithme d'adaptation
II. Résultats de simulation
III. Schéma de commande avec adaptation parýaite
111.1 Résultats de simulation 111.2 CONCLUSION 69 Id 71 Idt ' 72 76 77 78
trer.
moyen très efficace pour la connaissance de l' évol'Jtion de cert.ai ns Fhýno-mènes physiques très complexes, telsque le traitement d'image; le domaine nucléairet l'aérodynsn::'que ýt les systèmes auýomatiques.
Devant un tel problème, en l'occurence la simulation .j'un phénûmène
(ýro-cessus) physique, trois points doivent constituer le centre de ýos
préoc-cupations, il s'agit: de la contrainte de temps réel, de la précision du
calcul et enýin, le modèle du processus physique à simuler lui-rnýme.
En ce qui concerne le temps réel. il s'agit en fait de se doter d'un cal-culateur assez puissant en vitesse de calclJl. et en taille ýémoire,
capa-ble de suivre l'évolution de notre processus physique dans la ýesure 00 ce
dernier évolue rapidement.
Dans le cas contraire. une différence notable apparaîtra entre le
proces-sus physique et le modèle; le développp.ment de la technologie des micro-processus a permis d'associer ·:es derniers, obtenant ainsi dee
arc!'itec-tures de calculateurs dont les performances répondent aux exigences de la
conf:rainte du temps réel.
Le modèle mathématique étant régi par un système
d'équatiorsdifféren-tielles qu'il s'agit de résoudre; pour cela, plusieurs méthodes d'inté-gration numériques ont vu le jour, suivant la nature du problème à
inté-grer (ýquations différentielles ordinaires, raides, implicites différen-tielles .". etc.). Partant de là, suivant la nature du problème à
résou-dre, il s'agit de choisir une méthode qui lui soit adéquate.
Les méthodes qui permettent d'obtenir des solutions avec une grande pré-cision, seront privilégiées afin d'atteindre l'objectif d'une simulation
La solution de ce système traduit en fait le comportement dynamique de
notre manipulateur riaide sous l'effet de la commande adaptative.
m Yo donnée dana R F
(t,y
(t»)
= y (t) d dt y (to)les algorithmes de résolution doivent 8tre týs performante du point
de vue précision et stabilit6;
les alaorithmes doivent @tre compatibles avec la nature du problt.e math6.atique l résoudre.
Ce travail l priori simple, ne peut Itre mené à bien que si on s'assure
trois conditions principales:
Par ailleurs, le modýle étant stable (les systt.es l modtles instables.
pr6sentant peu d'intér8t), la stabilité de méthodes d'intégration est
très importante, elle permet l la méthode de suivre la solution réelle du système mIme en présence de perturbations externes. pourvu que celles-ci
soient de valeurs bornées au cours du temps.
- le modèle mathématique représente assez fidèlement le processus phy-sique;
Enfin. au cours de la simulation. on peut toujours (ce qui es t d'ai Ll eurs
le but d'une simulation), étudier l'effet de la possible modi fi cat i or, dý certains paramètres intervenant dans le modèle. Cela permet une n.e, 11'ý1'1 ,:-0
connaissance du processus réel. Le problème de la conception dl un e arch
-tecture pour s'affranchir de la contrainte de temps réel a été
é
t ud.i (;
p;ý::-de nombreux auteurs entre-autres (G.B.). Dans notre travail, nous r.ous sommes attelés à contribuer à la résolution de deux derniers problèmes (préCision du calcul et modification de paramètres). Lors d'une
simula-tion d'une commande adaptative appliquée à un robot manipulateur rigide,
dont le modèle mathématique est régi par un système d'équations différen-tielles ordinaires de la forme:
Notre travail sera présenté en deux arandes parties:
- Dans la première partie, on étudiera dýs algor:thmes de résolution à
base ne méthodes numériques classiques permettant d'approchp.r ýa Rolu-tion d'un problème différentiel bien cond i t i.onnê, Notre choix ",'ent
por-té sur deux méthodes considérées comme les plus eff.icaces, et les plus
utilisées pour ce genre de problèmes l'une multi-pas, c'eat la mfthode d'ADAMS BASHFORTH-MOULTON; l'autre, mono-pas, c'est la méthode de RUNGE
KUTTA, classique. Ces méthodes sont écrites avec un pas et un ordre
va-riables: ceci correspond à un double but:
1) Minimiser le coat de la résolution pour une précision donnée:
2) Adapter la méthode à la régularité de la solution.
Enfin. un chapitre est consacré à l'étude du comportement effectif de ces méthodes. en traitant certains exemples importants et en mont r-ant.
l'avantage acquis par la méthode de RUNGE-KUTTA à pas variable sur cel l e
à pas r.onstant.
- Dans la deuxiýme partie, on abordera tout d'abord, la modeli5ýýioý du
processus physique, soi.t donc le calcul du modèle dynamique du mari p
u-lateur. Ensuite. on passera à la simulation du comportement uyn ami que
de ce dernier au cours d'un transport de charge variable, BOUri l'effet
d'une commande adaptative.
Nous montrerons qu'en fait, la commande n'est pas améliorée par
l'iden-tificat;on en ligne, car celle-ci est très mauvaise lors d'un déplace-ment rapide du manipulateur. Mais qu'une commande robuste vis-à-vis des
phénomýnes qui apparaissent en réaction au mouvement peut @tre synthp-tiséeen utilisant de grand-gains permettant de réduire les effets des
erreurs de modelisation.
Pour finir, nous présenteron. une conclusion relative l l'ensemble de nos travaux.
.., Z 'Rm
fi
F (t, y) - F (t, Z)Il ý
L "y - zIl
(2) Notre travail conaiate en 1. résolution numérique du probli.e diffýren-tiel suivant: ( 1 ) E. (t) + rt L (t - .)+).f,
1lE.,<s)lIdS
t Ji: r -[0,,.
J
F (t,y (t)' .. r (t, Y\ (t) - Yo donne dan. Rm y (t)ALGORITHMB D'INTEGRATION NUMlRlQUI'
d Y
l
(t) dt4t
d y (0) y CO) .. Yo + lo LTIl
Y (t) - Yl (t)li ý
e
nE,o \l
PARTIE A: INTRODUCTION:Nous dirons que ce problème est "BlIN CONDITIONNE" ai la fonction K est
uniformêment lipschitzienne, c'est-à-dire, qu'il exiete une constante 1 telle que:
on aait alors que le problime (1) admet une aolution unique, de même que le problime perturbé:
ou: F (t,y (t» est continue, définie sur (O,T] x Rm à valeur
dans Rm"
on obtient alore la majoration suivante:
qui permet d'affirmer que ý tend vers Y uniformément, dès que 1""
terme. de perturbation E.
Actuellement. le "" 'thodes num'rique. le. plu. efficaces pour approcher la solution du problý.. diff'rentlel (1), Bont le "" 'thode. de RUNGI-KUTTA
et les m'thodes d'ADAMS.
Ces méthodes marchent bien tant que l'hypothýse (2) est v'rifi'e m8me loca-lement
t1
l
.Elles sont écrites avec un nombre et une taille de pas variable. pour mieux
adapter la méthode l la r6aularit' de la solution, contraire.ent aux
(Jýl) h = max hn et hn .; (t.n , Yn, hn) + donnée dans = Yn = hn = tn + i - tn
MISE EN OEUVRE DIS METHODES DI RUNGE-KUTTA A PAS VARIABLES:
Yn + 1
Yo
tel que:
Le principe consiste. partant d'une approximation ý de Y (tn) pri
se l l'instant tn, à calculer une approximation !!! + 1 de Y (tn ... JJ
l l'instant tn + 1 au moyen d'une relation de r6currence d'ordre 1 de
la forme:
Pour approcher la solution du problème diffýrentiel (i), choisis90ns
une subdivision de I = [O.T]:
o -e t. <. t 2. """""" c: tn <. tn + 1 J. """"""" , t.... " T
ou ý est une fonction continue de [o,T] x Rm x [Oth.] tel que h*
>0.
Cependant, remplacer le système (1) par le sCh6ma, ne va pas sans
in-troduire un terme d'erreur appelée erreur de discr6tisation. L'étude
de cette dernière de par son effet sur l'approximation de la solution
du problème différentiel (1). nous amène l définir les notions de:
- consistance, - stabllit6. - converaence du .ch'..
<1::1).
CHAPITRE I: 1.1 GénéralitEs:(1. 2) N - 1 n = 0 y , (t) = F (t,y (t)) avec y (t) solution de y (tn) = Yn t h tn+1 dýs que hn tn . . .
..
. ....
n = 0 Y (tn + 1) = Y (tn) + hn ,+
(tn,y (tn), hIl) +en
N - 1 N - 1 n = 0 y (t) y (1;.+1) yn + 1 yn = y(tn) Soit donc:L'erreý de consistance ou de troncature est l'erreur qu'on co..et en remplaçant le syatême (1) par le sch6ma (1.1)
d'où:
ý, y (tn + 1)
- y (tn)
-'tin.; (tn,y (tn), hn) \ =
I,ýnt
dire que le sch6ma (1.1) est consistant avec le syetýme diff6rentiel
(1), revient à dire que:
Cette notion est intrinsýque au sch6ma de r6solution numérique, dé-finie comme étant la propri6t6 qui fait que toute petite perturba-tion sur lee donn6es du sch6ma n'entratne qu'une petite perburbatic'
sur la solution. Ceci nous permet de pallier l l'effet des erreurý d'arrondie et leur propaaation au niveau de la r6eolution.
1.1.1 Conaiatance:
Alors l'erreur sera définie ca.me suit: (I.3 b) i =- l,q (1.3 a) Zn' ý Ml I Yo - Zo I + M2
Max'
E.nI
MaxI
Yn h = Max hn--+O o<n.(.N-
-Max
fen'
= Max , Y (tn) - Yn I-40
y (tn) est la solution réelle
ýn = y (tn) - Yn
Ecrivons que:
Le schéma aénéral de RUNGE-KUTTA l g pas intermédiaires est: CI Yn. i = Yn + hn "
I
ai
j " t (tn,j ; Yn ,j ) " j=l ý Yn + 1 " Yn + hn.ý bj¬ (tn,ji
Yn,J)j:!
Soit donc:[Yn
+ l = Yn + hn.' (tn, Yn, hn) Yo fixt§eZn + 1 = Zn +hn " (ý (tn,Zn,hnJ + En> Zo fixée
La stabilité de la méthode est affirmée si pour tout:
hýho, (ho pas maximum), il existe deux constantes Ml et M2 indépendantes
de h , Zo, Yo et En tel que:
I.3
ce résultat a été établi par CROUZEIX, et MINGNorentl], GEARt2].
1.1.3 Converaence:
et Yn est la solution calculée l partir du sch6.. (1.1)
La convergence est alors assurée si:
et comme la méthode de RUNGE-KUTTA eat d'ordre P>l. alora: ( 1.5) i =
1,_.
q " CTe.
-
1 e (1.4) dýs que hn_.O
M2 .. et q Zn + hn "I.
a. i j " f (tn,jJ
Zn.j) j=l = ,("I
--t 0 - partons deell,
(2]:
Iý
f
J(hPn Zn,i q Zn + l:Zn + hn "L
bj. f (tn,jj
Zn,j) + hn £.n j=l CT lU "e.
Il
Yn - ZnIl
ý
ell
Yo - Zo,,+
e,CT -1 !lU U(nIl
c nYn étant supposée connue. le calcul de g quantités auxiliaires Yn,! défi--nies comme solutions de g 6quations (1.3.a) lorsque aprýs permutation éven
tuelle des indices, la matrice
ý des élý",ents aij devient strictement
triangulaire inférieure (i.e ýij = 0 8i iýj), le calcul de Yn,i ne deman
de que des évaluations de f. il en eat de m@me pour Yn + 1 d'après (1.3 b) la méthode est alors explicite.
Il est plus aisé de montrer que le sch'-a (1.3) vérifie les propriýtés précédemment annoncées.
- Etudions la sensibilité du schéma face aux perturbations (dont les valeurs sont bomées dans l'espace et le temps):
On déllOntre (voir annexe
Bt),
le résultat suivant:Ce qui montre la stabilité du sché.a avec:
;.J. !
r
t
Régime permanent
Pas assez arand
c n __ ... 0 Y (tn) = Zn h et qd
Pas assez petit Régime transitoire Y (t) y (to) = Zo = Yo CT (I
ý
Il
::Il
Yn - Y (tn)Il
fe
-1--...;;;_
Pour adapter la méthode à la régularité de la solution. minimiser
son coat calcul t et détecter les éventuelles "SINGULARITES" du
pro-blème différentiel. La mise en oeuvre des méthodes de RUNGE-KUTTA,
se fait avec contrale de pas. Les singularités du problème
différen-tiel sont les points où le schéma a du mal à approcher la solutlon de ce dernier. Le contrale du pas permet alors de choisir au
voisi-naie de ces points un pas ý suffisamment petit pour atteindre la précision exigée ou de cunstater l'impossibilité de l'obtýnir (la
prêcision demandée). Le changement du pas obe î
t à une t echnf uue
ex-pliCite basée sur le comportement asymptotique de l'erreur, donc sur son estimation locale.
Le schêma permet de montrer comment le pas doit évoluer compte-tenu
des évolutions de Y (t).
La converaence est dêduite directement de (1.4) et (1.5)
pour cela, il surfit de poser:
et comme le schêma est consistant, on obtient alors le rêsultat
recher-ché, à savoir, la convergence du schéma (1.1)
I. 3 Comportement .
_ymptotique de l'erreur:
N.B.: La relation (1.6) nous permet de constater que contraler l'erreur
-
locale revient donc essentiellement à contraleI' l'erreur de consis-tance ¬,n.
1.3.2 Choix optimal du Pas hn:
I.a.1 E!pres.ion de l'erreur:
p+l
hP ý 1 (tn) +
(Il
-
'\h) f"o (tn) + 0 (hn ) U.. '}e.
n - Y (tn) - Yno<:9(t) ý 1 et hn == h (&(t) + 0 (h) )
Le pas optimal est celui qui nous permet d'avoir une erreur:
voisine d'un certain seuil de tolérance.
_ (N - Nh)ýo (tn) due à l'impr'cislon sur 1"" conditions initiales.
ýn = Y (tn) - Yn
a-o et ýl sont solutions des équations différentielles suivantes.
Notre préoccupation réside dans le choix du pas'ý, de sorte que
l'erreur soit aussI faible que possible.
Ce résultat est établi dans CROUZEIX, MIGNOT (1) avec:
- hP
Ul
(tn) erreur due à la méthode ou:sachant que pour une méthode d'ordre £, l'erreur de discrétisation obeit à la relation suivante:
Le choix du pu donc. ce lui de fi (t) n'influe pu .ur le terme
(N - Nh)ý (tn), par contre, 11 joue un r&le prfpond6rant dana
l'erreur de méthode.
Pour connattre le comportement de l'erreur, il faut d'abord trouver
son expression, pour cela, donnons-nous une fonction
ý(t)
continue, lipschitzienne sur l telle que:<101(t) =r.)f (t,y (t»)!"o (t)
lO\
(t) =ýf {t,y (t»)Ul (t) +9(t>'Y'p{t,.,·,L.)
ýy ý
(Le)
d6
Jlini ..
f1xé trouver h et !rtel que:
t (t)
r
to+T p ft{I)'YP
(j,y(ý»d"
I
«0
(j) to\
hP ýl (tn) soit minimumSous l'hypothase que
't'
p(A,
y (ý» ne s'annul. PM .t lard. un s 18ft. constant sur I on aura:"
to+T
N = ho + hl + """ + hn-l = 1
rhO
+ hl + """ + hn-l 1=IS
dS + 0 (1)ho hl 'tin-ï il ýo) &(tl) ""(tn-lý Ji J[S) to
Sachant que le coOt de la m'thode en nombre du pas est:
On se demande alors pour un coat donné ! comment choisir les points ý, de sorte que l'erreur finale' Y (tn) - Yn I soit la plu. faible possible.
Ce qui revient l dire:
Pour: !
(+ý
h 8(5)
to
Poe ons "ICt) = h &(t) et cherchons d'abord l'expre.sion de CS'i (tn).
l partir de (1.7 a) et (1. 7b), on démontre (voir Annexe
8
) .P+2 ... 0 (hn) p+2 + 0 (hn) r6.ultat 6tablit = ! ý p+1 p+2 + 0 (hn) ... 'Pn croC tn)
'\
[(0
(4)J
_L = n p+l't'P(6,y(
j»)
N P.+1 E,n .. hn"p
(tn, Yn)La connaissance de l'erreur locale permet le contr81e du pas. Ce
Rtl
dernier nécessite le calcul d'une valeur approché tn de cette erreur
qui eera utilisée dans le programme numérique sur calculateur. fjn reste asymptotiquement constant.
erO(tn}
Ce qui noua amane l prendre:
Noua avona vu que la formule de TAYLOR noua donnait:
p+l p+2 ýn = hn 't' p (tn,y (tn») + 0 ( hn) Avec: t T - 0+ ý = !
J
l''
pl"y
(ýýIp!l dai M<lo
(4) to p+l £n = y (tn+l) - y (tn) - hn1'(tn,Yn,hn) := hn't'
p(tn,Y(tn») p+lý
:::
ý
ô'
0 ( tn)d'autre part, la formule de TAYLOR nous donne:
d'oÙ on tire:
On peut donc en conclure que le choix opt1.. 1 du pas conduit au r6sultat suivant:
1.4 Contrôle du pas:
P+2 o (hn) p o (hn) P .; 2 o (hn)
-=te"
=£n
+ hn't'
p (tn. Yn) ..-a
P+l = hn ['l'
p (tn,Y (tn») -'fi
p (tn, Yn)] + 2 =hn ,J- rt,n supérieure à la précision exigée, alors on diminue le pas.
,J
- f,n Infýrieure à la précision exigée, alors on auamente le pas,
pour cela, nous noterons:
Comparons cette valeur à la précision exlaée. deux cas peuvent
se présenter:
,J *uJ
f, n :al hn' I P (tn, Yn) =
.}
AI
Une fois la valeur approchée &n de l'erreur
tn
e.ti.ée. posons:*
L'erreur obtenue avec le pas hn et qui répond l 1. précision
exilée. Le chanaement du pas se fera arlee l la relation suivante:
ý
t! P+l
un
.. hn",
ýn - ýn
La diffýrence entre l'erreur et l'erreur approch6e noua donn.:
P+l P+2 = hn ý (tn,Yn)
[y
(tn) -yn] + 0 (hn) P Or: y (tn) - yn = 0 (hn)Le thýorème des accroissements finis nous ramène A:
On obtient alors:
ý
d'où
Sn
est une bonne approximation de gn.i " l, -,q i = 1,_,q q Yn + 1 " Yn + hn
.l.
l,j.Kn,j
j-l q Kn, i = f (tn,ij
Yn + hn " ý Qi j "Kn d ) j=l tn,i a tn + CýnLe schéma final adopté est basé sur deux méthodes de RUNGE-KUTTA embottées, l'une d'ordre
E,
l'autre d'ordre au moins p'= P + 1. Ce""
choix est dO au fait qu'il permet le calcul de E;n l un coat moindre.
Dans le programme que nous avons mis en oeuvre sur calculateur, nous avons utili.é RKppi avec p = 3 et pl = 4, la méthode d'ordre 3 per-met le calcul de ý solution approchée de y (tn), celle d'ordre 4
permet l'estimation de l'erreur. Pour faciliter la proarammation de la méthode, nous la résumons graýe aux équations suivantes:
ou Kn,i est vue comme approximation de y' (tn,i).
"
..!.. hn " lm(j)
P+1 .. si,)et
alore hn ý hn ýýý .. si alors hn ý hn1.5 Schéma final de RUNGE-KUTTA adopté:
1.'.1 Calcul dee coefficients de la -'thode:
Le. coefficients suivant. ont 't' calcul'.
parýl].
pour la -'thode d'ordre ý, di.po.'s .oua for.. de tableau, 1 .. coefficients sont:P o (hn) 2 +hn "
ý*
ýE.
n " T (tn ,y (tn), hn) -'fi (tn. Y (tn), hn) - Soit: E,n = Y (tn+l) - Y (tn) -hn.t
( tn " '1 (tn), hn )Pour la méthode d'ordre 3.
- et soit:
tý
= y (tn+l) - Y (tn) -hn.;-
(tn. Y (tn),hn )Pour la _thode d'ordre 4.
avec:
En faisant la différence des deux expressions de l'erreur, on
obtient
[i.]:
Pour la méthode d'ordre 3, Il suffit de supprimer la derniire ligne et la derniare colonne, soit donc: (&'ij, b'j, C'i).
1.5.2 Estimation de £n:
1.6 Différents types de contrale d'erreur:
Nous allons décrire les différents types de contr&le d'erreur
tn + 1 ý 1 (II
ra
(tn»)P+ï' hnc
10 1<}l)M
et on pu.e de la l et ho =bd ýtant connu pour le pas précédent, on calcule:
rJ N Yn +1, Sn. Uo (tn) ý
\
Sn
\:
Ji <r0(tn) ,.Ië
P+l li) \G'O (tn) JI\....L
00 = hn T P (tn, yn) ... hn. \II P+1 ,. p{tn,yn}Valeur approchée de U-o (tn) et de la sorte, on ajuate h de telle maniýre que:
1er type de contrale d'erreur
ttl:
,_/
Basý sur le fait que
\£.n...
(oCtn)\
Boit minilllum constant. Donnons-nousun paramitre
M
qui tend vers zéro, et calculons l chaque pas'"
..,bn
et ý (to).Nous avons d'autre part:
d'un point de vue pratique, l'algorithme est décrit comme suit:
mais alors si ýp (tn, yn) vient à s'annuler, on aura un pas très
grand et de là la relation:
On part avec Ie pas
ainsi:
n'est plus valable du moment que le terme ý 0 (hý) ne peut plus 8tre négligé, afin d'éviter cela, on impose:
.J = hn PL
\GO
(tn>ll-l\
\
ln
,
JP+l alors hn + l paralors on rejette le pas ha. et la valeur
Yn + l et on dýmarre avec:
(
O,I.Jl\ý
,
¬
n , 1v:
ýO,9 J. ý An_ .L 1,1 Il alors hn + 1 = hn on conserve le pas.
ý::'Fo(tn) ý ".
"
hn = hn ..,1,2ý,
-llfô<
tn)ou ý eat un paramýtre qui tend vere zéro, ensuite, on procýde
de la "me maniýre que dana le cas précédent, en re.plaçant:
Choix de G--o (tn) : on va donner le. choix po "" ibl .. det'o<tn)
valeur
approch6e
de<)0
(to):REMARQUE:
L'utilisateur peut choisir les coefficient. (0,9 - 1,1 - 1,2) en fonc-tion de la précision souhaitée.
- Si:
1.6.2 Deux1'" type de contrSle de l'erreur
[1]:
Cette fois le contrSle d'erreur eat relatif
.ur
l'intervalle d'intýaration[to
-
l, tn), on cherche l rendre la quantitéRégion (2)
Pas assez grand
(tn,yn) "Ço (tn)
Région (1)
Il s'-ait de rendre l'erreur ýe consi.tance, abosolue constante.
UO
{to) = 1Cio' (tn)
Supposons que la solution y (t) évolue suivant la ýiaure (2).
y (t) 'i) f = aij alors ý Fig. 2 ý c;-0 (tn) la \ Yn \
Il s'sait de rendre l'erreur de consistance, relative constante; pour cela, il faut d'abord s'assurer au pr6a-lable que \ Yn I ne s'
annule pas sur l'intervalle I = [0,
Tl
Pas assez petit
G-o
(tn) = e...ý
mutn
'---__..---
... t.
Cela est justi f16 par le rôle de ý max.
"
-
Uo
(tn) - 1- ýo (tn) 6tant d6finie comme la solution de:
On peut prendre par exemple pour ýo (tn), la valeur:
Or:
1.6. 4 Troisiame type de contrôle d'erreur:
L'6volution de la solution se traduit par celle de Ba d6riv6e,
on va exploiter ceci pour concevoir une méthode du r6ajustement
du pas, elle est basée essentiellement sur des consid6rations expérimentales:
hn =
Si:
\,
\
ýý alors hn ý< hoSi:
\
,
I 1.1(. alora hn L hoSi:
\ý,:.O
alora hn " hoEvolution rapide qui peut traduire un réaime transitoiýe paý
exeaple, la dérivée est alors très arande en valeur absoluý.
Evolution lente (réaime permanent) qui traduit une solutior:
assez réguliire, d'où une dérivée très faible en valeur ab-solue.
Région (1):
Région (2):
Soit
<p
cette dérivée; et ý le pas maximum autorisé. l'expression du réa-justement du pas est la suivante:"
nouveau Pae .J-l
I Sauft&arde t de i , Yn+1 I -..."
_.-NON..
Intégrat j or .. termi r ',.,. -._ýIrý'.ý
..ý-ý
I STOP END hn+14 à une cer-taine valeur mi-nimale fixée Printer Echec au Pu d'erreur Choix du type de contr8le ý----ýýý----ýý Calcul de Yn..1au moyen du schéma Rkpp' avec
P=3 et P'=P+} = 4 t. 1er ou 2e r-... calcul de .v
En
Etape réussieL'orlaniar ... e suivant rAsume le. dirr'rent. tip" de contrýle
de l'erreur:
In1 tialJ. "" tion
.ll,
ý ý ho " yo J , ., ORýI_QMlIII : Sauvegarde de Yn+l et choix de hn + 1""
I---ýý====ýli;ý====ý---'
-, Rejet de hn et yn+1choix d'un
suivant:
Une subdivision:
MIS! !N OEUVRE D'UN SCHEMA D'ADAMS A PAS ET ORDRE VARIABLES. EXPRIME A L'AIDE DES DIFFERENCES DIVISEES:
CHAPITRE II:
Afin de résoudre le problème différentiel (1). on utilise le schéma
Les méthodes multi-pas d'ordre r permettent de calculer une valeur aoproché,
Yn + l de y (tn+l) en utilisant les valeurs approchées Yn, Yn-d ,__ " Yn
-
r-contrairement aux méthodes mono-pas (telle que la méthode de RUNr.E-K'IT7A), Cl')
n'ut il i sent que la valeur approchée Yn pour pouvoi r calculer Y!.lý h,!I, 1),,'-mýme prýclsion fixée, les premières permetteýt une résolution deý ýqlla' ions
différentielles ordinaires avec un coût plUA fajble.
TO = Oc:tn <.t2ý ".".."" tn c: tn+lc """"" ctn - T de
l'intervalle
I
=-[0, T]
est choi.ie;Parmi ces méthodes. celles d'ADAMS sont les plus connues pour leur préclsion
leur efficacité dans l'intégration d'un système d'équations di f'f é
r-ent i eLl e s 0
"
dinaires non raides. Pour les exprimer, on choisit la formulation de KROGH ba sée sur la décomposition des polynômes à l'aide des différences divisées. Le
choix de cette fo:-mulation est motivé par le fait qu'elle diminue le nombre d(-ý
calculs à faire. SHAMPINE et GORDON
(3]
ont décrit cette formulation pour l,schéma prédicteur-correcteur PkECk+lE. tel que le schéma prédicteur d'ordre K
est celui d'ADAMS-BASHFORTH et le schÉma correcteur d'ordre (K+1) est celui
d'ADAMS-MOIJLTON avec K variant de l à 12.
II.1 Méthode d'ADAMS d'ordre (r+l) à pas variable:
Dans ce chapi t.r-e , nous définissons un programme correspondant au schéma
PkECý:-ý variant de 1 à 12, avec une procédure assez fine pour le démarrage de
l'int-gration. nécessaire pour la précision dans cette phase, surtout dans l'intéýr,-tion des systèmes différentiels instables.
les quantlt's fO, """."." fn (n ý r) 'tant de. valeure approchées de v'{to (11.1 ) (11.2) i =
-
l. ,r - 1 i := o.l._.r V n E(O.N -
1]
Qr,n (tn - 1) = fn - iy' (tn) que l'on suppose connues. on calcule alors une valeur app
ftn
+ 1 Yn + 1 = Yn + R (t) dt tn Pr.n (tn - i) = fn - i tn + 1 - f (tn+1, 1ft+1) r Yn + 1 - Yn + hn.I
bn ,1 "tn - 1 1=0 rl
n.r.1 (t) a::1f
(t - tn-j) / (tn-i - tn-j) j=o i "t j r Pr,n (t) --L
ln.
r
,i (t). fn - 1 1=0 r-l Qr ,n (t ) ::IIL
-L
n + 1. r "i (t ) " fn - i i-I...
, on note alors hn. tn + 1 - tnchée Yn + 1 de Y (tn + 1) au moyen de la relation:
et
,.
Ces polynomes sont dýfin18 par les relation.:
où R (t) est l'un dea polynômes Pr.n (t) ou Qr,n (t) d. de.rés inférieur
ou ýgal l r tel que:
ou ln,r.i (t) est le polynôme de LAGRANGE tel que:
Deux sCh'.as sont alora obtenus l partir de (11.1)
- Dans le pre.1er cas ou ft (t) = Pr,n (t). le .ch'.... t celui d'ADAMS-8ASHFORTH:
(t-tn-j) dt (tn+l-tn-j) (t) dt (t) dt r-l 11'" j=o
"
bn,tom - 1("+1
Jtn tn+lS
l
n+1 ,-r,i tn 1 -hn r-l yn + l :: 'ln + hn " ý i=-1 tn + 1 " f (tn+1, yn+1) .'"
bn,i :a ..L hn bn,! = * * bn '= bn,-l = 1 hn r-l it ý. _ t!tÉ_ 'ln + 1 - hn sbn " f (tn+l. yn+l) :: 'ln + L hn-bn,i-rn - ltQ ,-r,r-,'J i,.ola résolution de l'équation en 'ln + 1 n'est pas illllllédiate, cýest ;;";1\: un .chéma implicite.
La méthode d'ADAMS-NOULTON est plus précise que la méthode
d'ADAMS-BASHrORý1],
[I].
mais son caractère implicite rend 80n emploi plusd61icat: il s'agit en fait de résoudre l'équation en 'ln + 1 suivante: r-l
Yn+l + hn- bý. f(tn+l. yn+l) = 'ln +
1:
ý".
bý. i· fn-i (0t!té. connue). i=oOr, dans la majorité des cas, cette résolution nécessitera l'emploi
d'une .'thode itérative.
avec:
et:
ftn+l
L
n,r.itn
c'est donc un schéma explicite.
- Dans le deuxième cas ou R (t) = Or.n (t), le .ch6ma
e.t celui
d'ADAMS-MOULTON:
on aura alors:
II.2.1 Définition du schéma: - i bn.iom - i (p) rn
hn°2
i=o (p) (p) Yn + l :Ir Yn + fn + 1:: f (tn + 1. Yn + 1) l'ordre maximal. kn = rn + 1 l'ordre à l'instant. tn + 1 et K = r + 1 "m
Yn + 1 ,. Yn+
hn bn fn + 1 "Lee approximations suivante. de Yn+l et m+l .ont obtenues à
l'aide du sch'"" implicite d'ADANS=!QULTON:
rn-l
hn
.1
b:.itrn
1-0
Soit
Aprie une évaluation deý. on obtient:
" schéma correcteur d'ordre (r+l)
La valeur prédite de la solution est donn6e par le .chéma
expli-ci te d' ADAMS-BASHFORTH.
" ,ch'ma Pr6tiete.. d'ordre (r+p
fP (to+l, YO+1) par une évaluation
de
£.
p
Pour initialiser cette dernière, on calcule Yn + 1, une valeur Ilpprochf-::
au moyen d'un schéma explicite appelé schéma prédicteur, puis on obtient
Enfin. les valeurs approchées de Yn+1 et fn+1. Bont obtenues au moyen
d'un schéma implicite appelé schéma correcteur.
Dans notre cas. les schémas prédicteur-correcteur eont re.pectivement
les méthodes d' ADAMS-BASHFOR'nf et d'ADAMS-MOULTON de ml_ ordre. cet ordre peut maintenant varier à chaque pas.
(Correction) (Pr'dictlon)
* bn, i. fn, i " hn ,1 YI (tn - i) m-l (p)
après une évaluation de f on obtient:
rn
y (tn) " hn
l
bn , i " y' (tn - i)1=0
fn + 1 = f (tn + I, yn + 1)
On d6finit l'erreur de consistance du .ch'.. par:
p Zn + 1 = " y (tn+ 1) - Y (tn) - hn.bn f (tn + l, Zn " 1)
-"
"
hn.bn.y' (tn-i) - hn.bn.y (tn-1)
ý p = y (tn+l) - y (tn) -hný bn,hy' (tn-i) = y (tn + 1) - Zn " 1 t .. p ýn "
E,ý
+ hn.bý(f
(tn+l. y (tn+l»-
f
(tn+l. Zn+l}) f (b) - f (a) " (b - a) fi (c) , c.Soi t:
£
n et £,n les erreurs de consistance correspondant respecti ve-·ment au schéma pr6dicteur et au schéma correcteur d'ordre kn = rn·
avec: On obtient alors: 2£:: rn-1 £n = y (tn+l) - y (tn) - hn.bý.f (tn+1, Zý+l) -
m.l
ý.1.y' (tn-i) ... 11111D ln 6crivant gue:E,ý
- y (tn+1) - y (tn) - hn.bý.y' (tn.1) - hn.ý 1-0II.2.1 Ordre et stabilit6 du sch6ma:
(1I.41 K(h)(tn- ý) (.ý,"'
e,
I Yý)lcI'ý .(hr -, kn+lj
£
n = 0 (hn ) " kn+l V1=o(hn)11 existe trois (3) constantes ,.
j3
,ý
tel que:r r-1 POUl' n ý 0 ý lbn,i
\!:
ýj
I
I bý.i 'ý..Bet hn\bý , iao i--1 tn K(h) (tn-to) kf
I y (tn) -
Yn'!:
e..
lIlax I y (to ) - Yo , + C hto kn+2
f,
n =t
ý
+
0 (hn ) cc!'
* '-' p P 2 c-n =(1'1 + hn bn.:.!!.. f (tn+l, yn+l) ýn + 0(hn
(f,n» '\)yLý
or. les schémas
prédicteur-correcteur
sont tous deux d'ordre kt) _. r n + ,on a:
résultats établis dans [1] et
(3]
on obtient alors:
on remarque alors que le schéma prédicteur-eorrecteur con.erve l'ordre
kn et que sa précision est celle du schéma correcteur, en l'occurrence celui d'ADAMS-MOULTON.
Pour la stab iU té. on a Ie résultat sui vant
l1]:
on suppose qu' on intýgre avec Ie schéma PkEOkE
(PrédicteW"-CorI'ecteur
tous deux d'ordre K). depuis to et soit r ... k - l, .i l'.hypothèse
SU1-vante est vérifiée:
REMARQUE:
L'hypothase (11.4) n'est vérifiée que sJ l'auamentation du pas 8st bornée,
c'est-è-dire:
hn + 1 ý
S,V
n = 0,___, N
- 1
""
II.3 Formulation du schéma prédicteur-correcteur à l'aide d8s différences divisées:
,.
La formulation de KROGH permet d'écrire les méthodes d'ADAMS sous une forme adaptée à l'implantation sur calculateur, surtout lorsqu'on souhaite contr81er l'ordre et le pas.
Cette formulation a été entièrement décrite par SHAMPI"! et GORDON(3]
pour le schfma PkECk+l E, on reprend ici la m8me démarche pour le sché-ma PkECkE, du fait que les erreurs estimées Bont celles l l'ordre K.
Dana la formulation naturelle du schéma (décomposition des polynômes
sur les polynýmes de LAGRANGE,vu précédemment), les coefficients
"
(bn,i) et (bn,i) resteront constants, d'un pas è l'autre, tant que
l'ordre ý est conservé, et si le pas est constant depuis kn étapes. Dans le cas contraire, tous les coefficients Bont à calculer. Par
,.
contre, la formulation de ý réduit le nombre des calculs à faire
puisque un chanaement d'ordre n'affecte pas les coefficients et
l'uti-lisation de pas constants dans les dernières étapes réduit notablement
leurs calculs.
II.3.1 Expression du schéma et choix des variabl.s:
(II. cc) ) (Il.6) (II.7) i ý 1 f
t
to._. tr-l) tr - to ='T
i,n (tn+l) i ý2Ti.
n-l (tn) P avec Pn + l = Yn + 1 f [tll_, trJ r+l ]!
Tn.i (t) f (tn. tn -1J-'
t"-1"
\.. i.ldifférence divis'e d'ordre r au point toltil---. tr qui va nour.
permettre d"crire le polynôme Prin (t) repr'.enté par les QU811-tit's (rn-i) 1 :olr aux points (tn-i) i = o.r.
f [to.tl._ I tr] = ýi. n + 1 c tn + 1 - tn + 1 - i c hn + 1 + hn +""""" + hn + 2 - 1 hi " ti - ti - 1 1> 2 )1. n + 1 = 1 )31. n + 1 ..
\f'
1. n+1. """"'fi
1-1) n+1'f'
1. n- '{2.n -'t'i-l.nr
Pn + 1 = Yn + Prin (t) n .Nous avons vu que cette m6thode se traduit par les 'quations
sui-Pr,n (t) "
Ixprim' .oua forme de diff6rence divis6e Pr,n (t) devient:
IT:
Nous verrons plus loin, comment calculer les coefficients al.n. i ý 2 (11.9) (ILB) l'rn,! (tn+l) 11"'n,! (tn+l) " Ci,n (ý) dý
"
gi.n " ýi.n 1=1 Ci, n(,,) d""
Ci,n
(t) f/J i.n r+l " stn+L
ýi.n
i=1 tn Ci.n (t) :a 1-2 (t) " (t-tn) Ct-tn-l )-ýn-tn-i+2)_T
(t-tn-j) j-o Tn.i (t) Tn,i (tn+1)¢;.n
= j3i.n + l ¢i.n tn+1hn·ai,n
-J
tn r+l Pr,n (t) s ý 1=1 r+l Pn + 1 = Yn + hn + l "2.
r+l PrJn (t) ...,1rn,i
(t)th.
L-
- T1"n 1dl Tn-l. i (tn ) Pn + 1 = Yn + avecl partir des d6finitions prýcýdentes (11.7) devient: avec:
-So!t donc:
ý:
Portons: (11.1) dans (11.6). on aura le sch6ma .uivant:
Finalement on obtient:
I
t
ýII.lOl (ILll) (11.12) Cr + 1, n (ý) d4 Qr,n (t) dt - ýý,n-
¢ý,n
(n+1 Jtn = hn.gr+1,n P Yn+1 ý Yn+l + hn+ý.gr+1,n ý r + 2,n + 1Dans ce cas le schéma est le suivant: tn+1 Yn + 1 = Yn + ( )tn P f>i+1, n+1
9
1+1,n+1 P Qr,n (t) ý Pr,n (t) + Cr + l,n (t) ýr + 2,n + 1 P'i+1,n+1 = lfi+1,n+1(t} fP [tn,+l. """ ,tn-i+l] r
or: Qr,n(t) =
L
Tn,i(t)f(tn,_,tn=i+1) /lrr+1,n(t)fP (tn+1,_ltn-ri=1
de la m@me manière gue précédemment, on obtient:
à partir de:
Soit donc:
et en utilisant les définitions (11.5) précédentes, on aura:
de la mArne façon on aboutit à:
P
Il faut maintenant trouver le moyen de calculer
ri
i ,n+1 etfi
,n +1 pourcompléter le pas.
En écrivant que:
P
ý r + 2, n + 1 qui dýcoule directement de (11.11 e
¢r + 2, n + 1
P
cpi,n + 1
Il nous faut trouver
:: p
rp
1 + 1,n + 1 + f =¢l,n+l *tf
i,n r+l 2-i=1 * ¢i.n * -szSi,n au moyen de la relationLa diffýrence entre (11.11) et (11.12), nous amène à:
Il reste maintenant à déterminer la Quantitý:
1=1
e
Pour cela. introduisons une nouvelle variable
t/> i .n+1 différence divi 8éý
de Pr+l.n (t) aux instants tn+l, tn """". utilisant cC + l à tn + 1,
ce qui va nous permettre de passer des:
,s:.
n + 1..a.a
ýý
n + 1C/'ý
.'
l, n + t-¢
Ln
+ 1Homologue de la relation de (11.11) qui devient:
t
¢ý
,n + 1 ="
¢i
+ 1, n + l + i=r+1,r,_,1comme Pr + 1.n (t) est un polyn8me de dear68 4 r soit donc:
1 = K, K-1. ,1 e
'Pt.,n
+ 1)"
,pi.n
i - 1,2, , K + 1 e ý1, N + 1 (1"n + 1 + + gi,n P fn+1 a 0 = P ln +P 1" (tn + l,r
n + 1) P ¢r+2,n+1En utlisant les nouvelles variables pour exprimer le schéma et en
posant K = r + 1, on obtient:
Expression du schéma PkECkE et r'sumé des opérations à une ETAPE:
CALCUL DES COEFFICIENTS;
L
ý i,n + 1 =¢>i.n
1=1 Finalement on obtient: P: ýPREDICTIONý : ..tp
i,n = ý1 ,n+1-'1,n i a 1.2 , K K .. Pn+l = Yn + hn+1.
!
ai,n " 5Di"n 1=1Les diff'rentes 'tapes que nous venons de d'crire seront r'eumées dans le paragraphe suivant.
.I: IVALUATION: 11.3.1".
On remarque que les calculs sont rêalisés de maniýre l ce que les Quantités: i = k, k-l ,_, l e P Yn + 1 ,.. Pn + 1 + hn + 1 ak,n (ln + 1 -'/Jl,n + 1)
e-t/>
i,n + 1 = tj>i ,n + 1 + ; k + 1, n + 1 et/>
k + 1, n + 1 = fn + 1 - ; l ,n + 1 tn+1 hn + 1 ai,n =J
Ci,n (ý) dý . avecci
,» (t) = 1[n,i (t) tn ý Il n "i (tn'" l ) Soit donc:c
gi,n ,..-
1 Ci,n (') dý hn+l n In 2oeant: (1)ý[+1
Ci,n (t) Ci,n (-') d4 (11.13) tn-(1) On a: al,n ,.. 1 Cl,n (tn + 1)-
-hn+1 * e</Ji,n; </>i.n jt/Ji.n + 1 J. ýi.n + 1 puissent ýtre
6Uý-cessivement stockées dans le m@me emplacement mémoire. ce Qui permet unP.
op-timisation de l'espace mêmoire. C: (CORRECTION):
E:(EVALUATION) : tn +
1 = f (tn + l, yn + 1)
II.3.2: CALCUL DES COEFFICIENTS (gi.n) i ý 1:
Nous allons d'abord calculer
ý et &2.q qui Bont indépendan,s du pý3 choisi.
en reportant dans (11.15), on obtient:
r r r. l a2,q " ...;1ý_ q(q+l) q 1
-ý i-I, n+1 gi-1, q+1 avec ý i+1.n+1 = hn+l
o/i-l,n-'-l ai,q = c)!,n+l-l --0 gi,q = gi-l,q D'après (11.15) , on aura: I (q) gi ,q = (q - 1) " Ci,n (tn + 1) l ý+l q q OR: Ct,n (t) = 1ý Ci,n (tn + 1) .. (tn + 1 - tn) 1
-q-r
pour calculerý, on reporte dan. (11.16) en remarquant que:
ET:
=Jn+l
(q-l) q Ci,n (tn + 1) Ci,n (4) d, (II.ILl ) tn de là on tire: (q)ai,q = (q-l) Ci,n (tn+1) ..L (IJ.15)
q hn+1
Il suffit de voir que pour q - 1 , on retombe Bur (11.14), alors la
ai.1 = gi,n l '! 3 1. 2 i " 1 " (t) """""""""""""."""""" K+l
.
."
ii-I, n+1 ai-l, q...1 2 """""""" ai,q "". ai...1,qJI
.1
,Ii ,q+1 " 1 ....L q gi-l,q 1 1i
q ....L q+l .. 1 2 l 2 q K+1 q+1ALGORITHME DE CALCUL DIS COEFFICIENTS:
Introduisons deux vecteurs de coefficients utiles pour la suite [3],
[1]
!
....
ý i,n. hn et Ut,n " (i-1) hn
ITl.n
(tn+1) i ! 1't'
1.nEn disposant les coefficients &1.9 sous forme de tableau. on a la règle de construction suivante:
Dlaprès (11.14), nOUB nlaurons besoin que des Il,1 (Ii.n. li,1).
gi ,q
et q ) l
-1-1._,n'" 1 .1,_.n Pour Pour .. hn + 1 - nA 'i.n - 1 " .) i ,. 1. _ .ný + 1 Pour " .) gi,q = ài-"lýq -_L ai - 1. q + 1 1-1 i = l,K + 1Il s'!&1t donc de con.tru1re:
On suppose que hn - hn - 1 =
Avant de décrire les algorithmes permettant la construcýion de tels coef-ficients, on calcule leur valeur lorsque le pae eat constant depuis
quel-ques étapes, puisque la formulation choiaie (formulation de KROGH) lia
justement été pour réduire ces calcula"
ou ý eat un entier supérieur à ! est inférieur ou éaal l K + l, dans
cette situation on a: La relationa (11.16) devient:
(w
Ti,nli\ :: l,K " (..:III. " " ,.. J .,i,n) i = l,K J <11,n)1 .. l,KJ (u i.n)i:al,K+lj (gi,n)Ut.n,.
1Alors l'algorithme devient comme auit: IT:
-Pour i .. l ný Pour i-
n K foi.n ,. 1 .) 1+1.n =.AS1,n - 't'lin'f'
i ,n-1<ii,n ,. l Ut+1,n ,. Ui,n i ýi ,n
ýi.n ,. lbn
'fi
i+1.n " "'1,n-1 + hnýi.n 1 ý i+1 ,n ,. hnl
'f'
i+1,nWq " Vq,n - 1
de travail de """" d1menss1on que V.,n et de i = ns + l, ,K + 1 l partir des
va-Faire
Pour q = 1,_, K+l - ni) "PARTIE VERTICALE"
i - ný + 1. K + 1 ý: q = K + 2 + i. 1,
-
1 Faire Wq = Wq --Ii-
1, n. Wq + 1 , I. N q = I.K l 2 nj 1 W (1) .. &i ,n lV.,r:l--t
2"
Je Vq,n = gný ,qVq.n .. ak+1 - n,q Pour q = K+l - n6 ,_,K "PARTIE OBLIQUE"
Le vecteur West un vecteur qui permet d. calculer &i,9
leurs stock6es dans W pý l'alaorithme.
Dans la construction du tableau (ai,q), il nous reste à a6n6rer les
co-lonnes de i - na + l jusqu'à i = K + l, il ne sera donc pes nécessaire
de stocker tout le tableau, maia seulement 8a bordure (elle restera
inva-riante al le prochain pas est 6aal au préc6dent). Cette bordure sera
II.4 CONTROLE DE L'ORDRE ET DU PAS: V.,n = gt,q (Augmentation d'l Unité) (hýOlOgUe à a2,q = l ) q(q+l) K = K + 1 Vk,n - l/K (k+l) A
(dans la formulation de KROGH)
Il n'existe pas actuellement dý méthode pour contr81er l'ordre et le pas à partir d'une expression de l'erreur globale.
Cepen-dant, une méthode efficace de choix du pas. consiste à rendre
l'erreur de troncature locale \ýn, ý EPS sur l'intervalle
d'
i11-téaration.
Le contrale du pas et de l'ordre sont nécessaires pour permettre au
schéma de suivre la régularité de la solution.
" si la pas est resté constant et sl l'ordre a di.un' d'une unité,
alors on conserve la partie oblique du vecteur I.
" le pas est changé alors
" si l'ordre et le pas sont
conaerv6s, alors la bordure du vecteur
V.,n correspond au vecteur ! obtenu pour 1. n' + l
" si la pas a été conservé mais
l'ordre a aU&Jllent6 d'un. Unité. on doH
décaler la partie oblique par l'algorithme:
II.4.1 Valeurs approChées des epreurs de consistance: 2uatre (4) 8ituationa peuvent se pr6senter:
ý: q = K - 1, K + J, - ný , - l
= .. p hn " UK+l· IK "
<l'
K+l ,n .. p hn "UK
"I
x-i
.t/)
K,n ERKMl = ai,l - gj.l IRK pEn
(K) = hn (g K+l,l - aK,l) " 4>K+1,n pE;
(K-1) = hn (al<,I - gK-l,l) " 4> K,nt;
(K+l) = hn * ItVken
] 1S K+1(V
fn+1le pas est un 'chec
(1
tnl >EPS),
il faut donc savoir quelle erreW"on peut avoir si on répite l'intéaration avec un autre pas.
le pas est pris <lEn 1
ý
EPS) " et là aussi il faut savoir guelleerreur
on obtient avec un autre pas à l"tape tn + 1 avec un pas hn + 1 et un ordre
-
KLorsque le pas ýst constant, on a:
D'autre part, pour choisir l'ordre, il eBt n'cessaire de connattre des
estimation. d"" erreurs locales (troncature) l l'ordre courant K et aux
ordres (K + 1) et (K - 1).
On note respectivement ces erreurs tn, 4ëri,
éý,
on montre dans(3)
les r6sultats suivants:k
Où: " en est la différence divisée d'ordre ý l l'instant ý
Soit donc:
Le principe eat donc d'accepter ou de refuser le pas si
, £n \ ý EPS
(tn + 1, " tn+1 - k) P t on aura: + 1. n + 1 P f [tn+l._tn+l -K] hn = h * p
avec ERK = I hn UK+1, n+1
'f
Kf
K+1. n+11 etk+l
" r
hn+l=rh
en B!:
Il en serait de m8me pour le cas où il y " BCHIC au pas.
- rý.(jK+1.n+l
de II l'erreur l l'étape tn + 1 devient:
" Contrale du pu:
On a vu qu'un choix efficace du pas con.iste pour une valeur de
tolé-rance IPS fixée l impo8er la condition suivante pour accepter l'ét.pý Aprýs une phase de démarrage décrite au paracraphe .uivant,
l'int6,ra-tion atteint un régime de crotsière, où le pas et l'ordre sont ajustés en fonction des variations de la solution.
p
tPK+1"n+1
- (rh) (2rh) """"""" (krh) £,n+1 (K) = ERK P £n+1 (K) -hn+1.(Jk ...l,1-&k,1) .pK+1,n+l.!!!£:
P ýK+1, n+1 = 't'l,n + 1 """"""""" 't'K,n+1"
Or: quant le pu eat constant .n a gK + 1.1 - ,K, 1.
11 K
l! k+1 *,r- .J.. p
ý c,n + l(K) = r h lf K U K+1. n+1
r
x-i
, n+1" Traitement d'un échec: " Contrale de l'ordre: l =t r = (0.5 EPS) k:l ERK k+l 0.5 EPS ý 2 ERK
(ou ERIC > EPs pour un pas constant), on
res-(ou \ ERK' ý IPS sl le pu est constant)
k+l
r
ERK 4!. 0.5 EPSSoit donc:
sil
e.n
t > EPSSn
+ l =\En' ý
EPSL'ordre étant Ii.ité l 12
il noua faut trouver un ordre pour lequel:
l'ordre conservé;
_ si c'est le 1er ou le 2ème BCHEC, le pas eat r6duit de moitié et
_ si c'est le 3ème ECHEC, le pas est réduit de ýlti6 et l'ordre est ýduit l 1.
titue les inýormations et on procède comme Buit:
on recherche ensuite un pas hn + l = r hn pour l'étapB suivante, tel que:
Ce principe admis, il faut maintenant en préciser les li.ite.
d'applica-tion. En effet, pour assurer la stabilité du schéma lorsque l'ordre est
supérieur à
l,
on impose un maximum au rapport,hn + 1/ hn, pratiquementle pas sera au plus doublé d'une étape à l'autre.
D'autre part, les séquences de pas constant étant particuliarement recher-chées pour l'allègement qu'elles engendrent dans le calcul des coefflcientn, on augmentera le pas que lorsqu'il est possible de le doubler.
Par contre, il n'y a aucune restriction sur les réductions du pas, sauf
+ ,
£,n
I ) Itil
, ý IEn
,
Ibý
Iý
0.5 JEn
, K > 2 K = 2 Si Si I f,n Iý
MINEn fait, on recherche localement le meilleur ordre l partir d'un ordre
donné à plus ou moins une unité, mais rien n'assure qu'un ordre supérieur
ne soit pas meilleur. Cette considération nous incite à favoriser la montée en ordre qui en général accroft la précision; mais d'un autre c8té, on doit
éviter de passer trop facilement sur des "ACCIDENTS" de la solution (point
anauleux, asymptote verticale .". etc), car la suite des calculs en serait très altérée.
1
£;,
.c_ MIN(I
£n
I I* la montée en ordre est favorisé et les résultats obtenus sont très précis
et très efficaces dans le cas régulier. On est ainsi devant le dilemme suivant:
De plus, lorsque l'ordre et le pas augmentent rapidement (surtout en phase
de démarrage), il vaut mieux parfois réduire l'ordre pour partir sur des
va-leurs très fiables.
* pour mieux suivre le cas à "ACCIDENTS", la descente en ordre eat souhaitée, et cela devient Bouvent une politique très coOteuse.
Dan. 1. cas oý il n'y a pas d'ECHEC et 1. pas .st constant depuis! 'tape, r t.n+ ,
on po "" id. alora une "" ti.. tion de ý
Partant de ce raisonnement, on ne peut changer l'ordre que .i l'erreur
pré-dite est réduite; l chaque étape, on considère alors la r6duction de l'ordre
L'a18orltý de la phase noýle d. fonctlonn... nt .. t alý le suivant: ".ý , K. 1 1 ý I <. 12
,
tý'
.(1
En
Ic
1£n
I,
f,ý
I J.. 0,5 ,6n
,
Si Si _ Augmentation de l'ordre: " ALGORITHJR:BLOC 1 BLOC 2 BLJC ý BLOC ý OUI OUI OUI i(n) transformé en PREDICTION
i
(n) trans formé en '} ,C.(,,)CALCUL DES COEFFICIENTS
RETOUR CHOIX DU PAS ET DE
L'OR-DRE POUR L'ETAPE SUIVANT! CORRECTION ET EVALUATION
Si POO
ou nb de pas constant inférie DIMINUTION
de
L'ORDRE
Traitement de l'échec; ý---ýSi POO (proposition de diminution de
l'ordre):
diminution de l'ordre
sont toua deux non j 1 4! tl 1
-2 1 3 I y(3} (..d2)I
et (3) , hý'y
(ý)
/12 ý EPS/2 où ho ho =(6
EPS/!/3)
(62)I)
Ainsi, dana un cas on aura choisi:
et dans l'autre cas:
hg
'y(2)(6")
I 4: EPS/22
en dýmarrant à l'ordre 2, on aurait l choisir h2 tel que: Le schýma est auto-démarrant si on choisit à la premiýre 'tape
l'ordre 1 (on a besoin que de la valeur
initiale l2 pour démarrer
l'intégration). Dans ce caa, il faut choi&ir un
pas h2 tel que:
I (2)
I
Si on suppose que Y (ý1)
nulles et de m8me ordre de grandeur, on conatate le a_in réalisé sur la taille du 1er pas en démarrant à l'ordre g surtout pour EPS trýs
petit.
2
Pour pouvoir d'marrer à l'ordre 2, on choisit la méthode Pl (EC2) E qui posside la m@me erreur de consistance que le sch6ma correcteur, il nous reste la dif'ficultý de l'estillUltion de l'erreur du schéma:
Celle-ci s'exprime en fonction de la dérivée d'ordre 3 de la solution.
Pour cela, on compare les résultats du schéma l un autre du m8me ordre;
le achfma du point-Milieu d'fini par
(.J
"
II.4.3 ALGORITHME EN PHASE DE DEMARRAGE - CHOIX DU
(II.17) 4 I 6 + 0 (hn) k+2 o (hn ) k+2 o (hn ) k+2 + 0 (hn ) nous donne: ,.., 2yn+l) A/ yn + 1 la solution du sCh'.. du point-(k+l) y (tn) k+2 o (hn ) k+1 hn (k+l) ý+1 I y (tn)
I
+ (k+l) h,ý+l , Y (tn)I
+ + yn + l"
- 'Z5'K,nE,n
=1fk,n
1to
I < ý 2On a le rfaultat suivant établi par (1):
Il faut llaintenant choisir le 1er pas pour pouvoir d'marrer
l'in-t'gration); c'e8t-ý-dire, la valeur du pas ho qui nous donnerai + :
Avec un autre pas hln con.tant on aurait:
(1)
Yn + 1 et Yn + 1 les solutions apris la lare et la 2a.. correction
" Choix du 1er pas:
('
( (1)
c,n - yn + 1
On note:
milieu dont l'erreur de consistance est donnée en
(4)
du sch6ma&PS
:>
>-
IPS 8,
£0
I I (3) ýK,n Y'tO»)
=t£ý
(3) y (ta) 3£'0
:II (2 ho)Sl avec le pas ý il Y a 'chec au pas, cela ae traduit pýr.
2 hO' ::r
Cette formule d'coule directement de (11.18). Or, l l'6tape suivante,
l'ordre eat maintenu à 2 et le pas doub16; on ne doit donc prendre que la moit16 de cette valeur (2 ho'/2).
1er CAS - ho est trop &rand:
La correction sur le choix du 1er pas aura lieu al h2 .. t trop irand ou trop petit. On a donc deux cae.
D'oý:
En n'ali,eant le ter.. d'ordre (K + 2), on obtient:
"
"
I ¬nr)
...L h'n -(ýK,n
!PS/2 ý K, k+l hn (11.18) Tel que: I I£n
, .L EPS 2Finalement. on erocède comme suit:
- On estime
E:o
par la relation (11.17)ýyr
accepter ou retuser le pdS et avoir une estimation correcte de I y (tol'.- Cette estimation doit permettre de choisir l nouveau un premier pas pour
(11.19) "
alor. le 1er pas est:
EPS
"
-(!f2
64 3 (4 ho)lEo
I h03 ,Eo
"
"
lfK ei h reste constant d'où le 1er pa8 e.t accepté.
I¬ol
Si avec le pas (4 ho), il n'y. p .. eu 'cbee, cela se traduit
par:
OR;
IK,n-2ème CAS - ho est trop petit:
D'Où:
-£_: EPS'"
1£0
1c
ý-
8 64OR: 1
£0
J " ho3 y(3)(to) en n6aliaeant le teý d'ordre h2,4 .12
, (3)
I
Si on .ffeete l priori la valeur ! l y (ta)
REMARQUI:
Pour cel., l'utili.ateur du proar.... doit d'finir une borne supérieure
pour le choix du 1er pu.
Si la dériv6e d'ordre ý vient l .'annuler en ý, le P" .erait infini
" DESCRIPTION DI LA PHASI DI DEMARRAGE:
Dans cette phase on double le pas et on aue-ente l'ordre d'une unité
à chaque étape. L'opération se poursuivra jusqu'l ce que l'erreur de
consistance que l'on obtiendrait avec le pas conatant h (égale au
dou-ble du pas actuel) et à l'ordre supérieur soit plue arande que EPS/2.
Cette erreur
£ri
ne peut @tre calculée que sous l'hypothýse que, y(k+l) (tn) \ -t \
/k+2>
(tn)'. De ce fait, cette valeur ne sera
pas calculée par contre à chaque étape. La diminution de l'ordre est
envisaaée, elle prend effet dýs qu'elle est retenue, c'eat-l-dire, dý8 que:
\
ýN
1l ) EXEMPLES TRAITES:
Yý(O) " 1.0 YICO) " 1.0
Yt (0) " 0.0 avec
COMPORTEMENT EFFECTIF DES NlTHODIS:
Y'ý(t) S Yý(t) " y, (t)
y'J,(t) .-YI(t). y, (t)
Y',(t) " -0.51 y" (t)y,a, Ct)
(1)
CHAPITRE III:
a.l On désire Intéarer le système suivant:
a) Co_porte.ent de la méthode PaECIE
Dans les tableaux suivante, on donne pour chaque valeur de BPS fixe (erreur de tolérance), le nombre d'évaluations néee"" aires pour l'inté-gration, la solution, et la valeur .axiaale de l'erreur absolue ou
rela-tive commise durant l'intégration.
Les deux m6thodes décrites dans les CHAPITRES précédents ont été implantées sur calculateur, grlce à deux programmes rédigés en FORTRAN.
Le programme contenant la méthode de RUNGE-KUTTA à pas variable à pour nom
SIMUL. Il est appelé à chaque pas avec un pas proposé, et il rend la main
avec de nouvelles valeurs pour le pas suivant.
Par contre, la méthode PýECkE a été implantée dans un sous-programme
ap-pelé ITER. Après chaque pas d'intégration, il donne de nouvelles valeurs
de l'ordre et du pas pour la prochaine intégration (pas et ordre variables).
L'évaluation de la dérivée est très coOteuse, elle conati tue une grande
par--tie du travail effectué lors d'une intégration. De ce fait, le coOt d'une
m'thode est estimé arlce au nombre d'évaluations de la dérivée lors de
l'in-tégration. Dans notre cas, nous avons au minimý deux (2) évaluations par pau
2 yet) / (l-t) (0.5) " 4 \yl(t) "
l
avec Y (AI) 2la aolution du aystame (2) eat y(t). l/(l-t) elle .ýt donc une
_ymptote verticale en t " 1. T
-
1,862640802332139 avec une pr6cl.1on IPS -5 " 10 .4les solution. du syatame (1) .ont:
s « (t) = O.
YJ, (t) = 1
YJ ( t) " l
Sur une p6riode T dont le Quart de la p'rlode e.t:
a.2 Int6,ration du système (2) Bur CO.5 - 1 [ avec contrale d'erreur
relative:
L'intégration sur calculateur du système (1) Bur 4,40, 400 et 4000 pas
fournit les rý.ultats suivants:
Erreurs Nbre. dév .
Nbre. de Pas Solution calculée
co_ises luations (t) -4 Pour 4,40 Y1 = - 0.5120307 E - 04 0.51210 et 400 Pas YII (t) = 0.1001184 E ... 01 11810-5 113 YI (t) ý 0.1000293 E ... 01 2910-5 , --7 Pour YIf (t) = 0.1802303 E ... 07 0.18 10 4000 Pas -6 I YJ, (t) = 0.1000002 E ... 01 210 881 YJ (t) = 0.1000000 E ... 01
c
10-6-a.3 lntéarons le système (3) sur [0.4] avec contrale d'erreur absolue: -5
Pour EPS = 10 l'int'aratlon a proaress' juaqu'ý
t " 0.9999999999995035 hn " 0.9443 I - 13 = 1 - 2 (t-4) (y-t) -16 = 0 + 10
e..
{y' (t) y (0) 2La solution est alors y(t) = t + 10 exp (-(t-4)'et Y(4) = 14
Lea r'ault.ts fournis par l'int6aratlon sont: (3)
avec comme dernier Pas r'ussi
Les résultats obtenue sont:
t Solution calculýe Erreurs NOilbre
conunises d"valuations 0.5 4 0 0 0.6 0.6244567 E + 01 0.0054 30 0.7 0.1103490 E + 02 0.075 42 0.8 0.2498775 E + 02 0.012 52 0.9 0.9998045 E + 02 0.019 62
1 ECHEC AU PAS AVEC T = 0.1000000
I + 01
Nombre Erreur
EPS Solution calcu16e
.... lye d'évaluations 10-3 42 0.8A75248 I + 01 5.525 -5 0.1318956 I + 02 0.82 10 87 10-7 149 0.1388510 E + 02 0.12 10-16 506 0.14ý9 I +02 0.49 10-3