• Aucun résultat trouvé

Nous n’avons jusqu’`a maintenant consid´er´e que les probl`emes lin´eaires qui sont certes importants mais non suffisants pour les applications. En effet, la nature, ou plus pr´ecis´ement les mod`eles que nous utilisons pour d´ecrire les ph´enom`enes naturels, est le plus souvent non lin´eaire. La th´eorie d´evelopp´ee dans les premiers chapitres n’est malheureusement valide que dans le cas lin´eaire. En effet, le th´eor`eme de Lax-Milgram permet de montrer l’existence et l’unicit´e de probl`emes de la forme :

♠trouver une fonctionu∈V telle que :

a(u, w) =l(w) ∀w∈V (8.1)

o`uletasont respectivement des formes lin´eaire et bilin´eaire. Ce ne sera plus le cas dans ce chapitre.

Bien que la th´eorie des probl`emes non lin´eaires soit beaucoup plus complexe, nous nous limite-rons `a une g´en´eralisation formelle de la th´eorie d´evelopp´ee dans le cas lin´eaire. Il faudra toutefois ˆ

etre conscients que les espaces fonctionnels impliqu´es sont parfois plus complexes que les espaces H1(Ω) etH2(Ω) rencontr´es jusqu’`a maintenant.

Le plus simple est de consid´erer imm´ediatement un exemple d’´equation aux d´eriv´ees partielles non lin´eaire :

p(x, u(x))u(x)− ∇ ·(q(x, u(x))∇u(x)) =r(x, u(x))

auquel on ajoute par exemple des conditions aux limites essentielles suru. On remarque la d´ epen-dance des fonctions p,q etr sur la variable inconnueu. C’est ce qui rend le probl`eme non lin´eaire.

La non-lin´earit´e pourra aussi, comme nous le verrons, provenir des conditions aux limites.

Nous proc´ederons comme dans le cas lin´eaire. Multiplions par une fonction test w(x) dans un espace fonctionnelV et int´egrons par parties sur le domaine Ω. On obtient ainsi :

Z

p(x, u(x))u(x)w(x)+q(x, u(x))∇u(x)·∇w(x)dv−

Z

Γ

(q(x, u(x))∇u(x))·nwds= Z

r(x, u(x))w(x)dv Puisque nous avons suppos´e des conditions aux limites essentielles sur toute la fronti`ere, l’int´egrale

de bord s’annule et il reste :

181

♠trouver une fonctionu(x)∈V telle que : Z

p(x, u(x))u(x)w(x) +q(x, u(x))∇u(x)·∇w(x)dv= Z

r(x, u(x))w(x)dv ∀w(x)∈V On constate imm´ediatement que le terme de gauche de cette expression ne repr´esente pas une forme bilin´eaire en raison des coefficients p(x, u) et q(x, u). Par cons´equent, le th´eor`eme de Lax-Milgram ne peut donc pas s’appliquer ici.

Pour r´esoudre, on devra lin´eariser le probl`eme c’est-`a-dire en ramener la solution `a un probl`eme lin´eaire ou plus pr´ecis´ement `a une suite de probl`emes lin´eaires. La convergence de cette suite de probl`emes lin´eaires vers la solution du probl`eme non lin´eaire de d´epart n’est toutefois nullement garantie. On voit imm´ediatement l’analogie avec les syst`emes de fonctions alg´ebriques non lin´eaires :

f(x) = 0

que l’on peut r´esoudre (voir Fortin, r´ef. [17]) par des m´ethodes de points fixes, par la m´ethode de Newton, etc. Toutes ces m´ethodes se g´en´eralisent assez facilement aux probl`emes variationnels.

8.1 Rappel sur les syst` emes d’´ equations non lin´ eaires

Dans cette section, nous rappelons quelques techniques de base pour la r´esolution des ´equations non lin´eaires. Le probl`eme consiste `a trouver le ou les vecteursx= (x1, x2, x3,· · ·, xn) v´erifiant les n´equations non lin´eaires suivantes :

f(x) = 0 ou plus explicitement :













f1(x1, x2, x3,· · · , xn) = 0 f2(x1, x2, x3,· · · , xn) = 0 f3(x1, x2, x3,· · · , xn) = 0

... ...

fn(x1, x2, x3,· · · , xn) = 0

(8.2)

o`u les fi sont des fonctions de n variables que nous supposons diff´erentiables. Contrairement aux syst`emes lin´eaires, il n’y a pas de condition simple associ´ee aux syst`emes non lin´eaires qui permette d’assurer l’existence et l’unicit´e de la solution.

Les m´ethodes de r´esolution des syst`emes non lin´eaires sont nombreuses. Nous pr´esentons ici un cadre relativement g´en´eral pour les m´ethodes it´eratives avec comme cas particulier important la m´ethode de Newton. La pr´esentation incluera toutefois des variantes de cette m´ethode de mˆeme qu’un aper¸cu des m´ethodes de points fixes.

L’application de la m´ethode de Newton `a un syst`eme de deux ´equations non lin´eaires est suffi-sante pour illustrer le cas g´en´eral. Consid´erons donc le syst`eme :

f1(x1, x2) = 0 f2(x1, x2) = 0

Soit (x01, x02), une approximation initiale de la solution de ce syst`eme.Cette approximation initiale est cruciale et doit toujours ˆetre choisie avec soin. Le but de ce qui suit est de d´eterminer une correction (δx1, δx2) `a (x01, x02) de telle sorte que :

f1(x01x1, x02x2) = 0 f2(x01x1, x02x2) = 0

Pour d´eterminer (δx1, δx2), il suffit maintenant de faire un d´eveloppement de Taylor en deux va-riables pour chacune des deux fonctions :

0 = f1(x01, x02) + ∂f1

Dans les relations pr´ec´edentes, les pointill´es d´esignent des termes d’ordre sup´erieur ou ´egal `a deux et faisant intervenir les d´eriv´ees partielles d’ordre correspondant. Pour d´eterminer (δx1, δx2), il suffit de n´egliger les termes d’ordre sup´erieur et d’´ecrire :

∂f1 ou encore sous forme matricielle :

Ce syst`eme lin´eaire s’´ecrit ´egalement sous une forme plus compacte :

Jf(x01, x02x=−f(x01, x02) (8.3) o`u Jf(x01, x02) d´esigne la matrice des d´eriv´ees partielles ou matrice jacobienne ´evalu´ee au point (x01, x02),δx = (δx1, δx2) est le vecteur des corrections relatives `a chaque variable et o`u −f(x01, x02) est le vecteur r´esidu ´evalu´e en (x01, x02). Le d´eterminant de la matrice jacobienne est appel´e le jacobien. Le jacobien doit bien entendu ˆetre diff´erent de 0 pour que la matrice jacobienne soit inversible. On pose ensuite :

x11 = x01x1

x12 = x02x2

qui est la nouvelle approximation de la solution du syst`eme non lin´eaire. On cherchera par la suite

pour en arriver `a l’algorithme g´en´eral suivant extrait de la r´ef´erence [17].

Algorithme 8.1 : M´ethode de Newton 1. ´Etant donn´e , un crit`ere d’arrˆet

2. ´Etant donn´e N, le nombre maximal d’it´erations

3. ´Etant donn´e x0 = [x01 x02 · · · x0n]T, une approximation initiale de la solution du syst`eme

6. Si le nombre maximal d’it´erations N est atteint : – convergence non atteinte en N it´erations – arrˆet

7. Retour `a l’´etape 4

N

La m´ethode de Newton n’est qu’un cas particulier de sch´ema it´eratif pour la r´esolution du syst`eme8.2. De fa¸con plus g´en´erale, on peut ´ecrire un sch´ema it´eratif sous la forme :

Ak(xk+1−xk) +f(xk) = 0 (8.5)

o`u Ak est une matrice non singuli`ere. L’´equation 8.5 a alors comme unique solution :

xk+1 =xk−A−1k f(xk) (8.6)

La m´ethode de Newton n’est qu’un cas particulier o`u Ak=Jf(xk).

Remarque 8.1

Il est bien entendu que l’expression 8.6 ne signifie nullement qu’il faille inverser la matrice Ak ce qui serait terriblement coˆuteux. On r´esoudra en fait le syst`eme lin´eaire8.5.

Les variantes de la relation 8.5sont nombreuses. L’id´ee de base ´etant toujours de diminuer les coˆuts de calcul et de m´emoire. En effet, le calcul de la matrice jacobienne est une op´eration coˆuteuse qui doit ˆetre effectu´ee `a chaque it´eration. On a alors imagin´e des variantes qui contournent cette difficult´e au moins en partie. Ces variantes d´ependent de la forme de la fonctionf(x). Par exemple, si on a :

f(x) =B(x)x−g(x) (8.7)

o`uB(x) est une matrice dont les coefficients peuvent d´ependre eux-mˆemes de la solution (mais pas forc´ement) et que l’on suppose inversible et g(x) est une autre fonction non lin´eaire. En prenant Ak=B(xk), l’´equation 8.6devient :

xk+1=xk−B−1(xk)

B(xk)xk−g(xk)

=B−1(xk)g(xk) qui revient au syst`eme lin´eaire :

B(xk)xk+1 =g(xk) (8.8)

En particulier, siB =I, on a la m´ethode des points fixes classique. Si la matriceB ne d´epend pas de x, la convergence de l’algorithme 8.8vers la solution (le point fixe) rest li´ee au rayon spectral ρ(voir Fortin [17]) de la matriceB−1(Jg(r)) (Jg est la matrice jacobienne associ´ee `a la fonctiong).

Plus pr´ecis´ement, on doit avoir :

ρ B−1(Jg(r))

<1

pour que l’algorithme puisse converger. Encore faut-il que l’estimation de d´epart x0 ne soit pas trop loin de la solution. En pratique, il est extrˆemement difficile de s’assurer que cette condition est satisfaite.

De nombreuses autres variantes entrent dans ce cadre g´en´eral. Par exemple, on peut prendre Ak =Jf(x0) =A0 ce qui revient `a fixer la matrice la matrice it´erative Ak `a la premi`ere matrice

jacobienne. Cela ´evite de r´eassembler et refactoriser une nouvelle matrice jacobienne `a chaque nouvelle it´eration. Il peut en r´esulter un gain important en temps de calcul au risque d’une plus grande vuln´erabilit´e au niveau des propri´et´es de convergence. On peut aussi remettre `a jour cette matrice de temps `a autre. Cette variante est parfois int´eressante pour les probl`emes instationnaires o`u il n’est pas forc´ement n´ecessaire de calculer la matrice jacobienne `a chaque it´eration de chaque pas de temps.

8.2 D´ eriv´ ee d’une fonctionnelle

Pour ´eventuellement appliquer la m´ethode de Newton `a la r´esolution dans le cas d’une formula-tion variaformula-tionnelle non lin´eaire, nous devons ´etendre le concept de d´eriv´ee aux fonctionnelles. C’est l’objectif des d´efinitions suivantes.

D´efinition 8.1

Soit G(v) une fonctionnelle d´efinie sur un espace de HilbertV. On dit queG est d´erivable env0 s’il existe une fonctionnelle lin´eaire de V dansRnot´eeDvG(v0) telle que :

G(v0v) =G(v0) +DvG(v0)[δv] +||δv||o(δv) (8.9) o`u o(δv) est une fonctionnelle v´erifiant :

δlimv→0o(δv) = 0

Cette d´efinition revient `a supposer l’existence d’une forme de d´eveloppement de Taylor puisque le dernier terme de droite doit ˆetre petit pour des δv petits. Il reste `a d´efinir le sens de l’expression :

DvG(v0)[δv]

D´efinition 8.2

Soit G(v) une fonctionnelle d´erivable en v0. La d´eriv´ee de Gateaux de la fonctionnelle G par rapport `av en v0 et dans la directionδv est d´efinie par :

DvG(v0)[δv] = ∂G

∂v (v0) [δv] = lim

→0

G(v0v)−G(v0)

= d

d[G(v0v)]

=0

(8.10) si cette limite existe. Si la limite existe∀δv ∈V, alors on dit queGposs`ede une d´eriv´ee de Gateau en v0.