Différences finies et conditions aux limites

Tout ce qui concerne les logiciels mathématiques (Matlab, Maxima, Scilab, R, ...) et les calculatrices scientifiques.
[forum modéré par les modérateurs globaux du site]
Règles du forum
Merci de soigner la rédaction de vos messages et de consulter ce sujet avant de poster. Pensez également à utiliser la fonction recherche du forum.
Hayabusa
Utilisateur débutant
Utilisateur débutant
Messages : 5
Inscription : dimanche 08 mai 2011, 17:01

Différences finies et conditions aux limites

Message par Hayabusa »

Bonjour,

Dans le cadre de la résolution numérique d'une équation différentielle avec un schéma aux différences finies, je dois implémenter la condition au bord $\left.\frac{\partial w}{\partial z}\right|_{z=1} = 1$. Pour cela, j'utilise premièrement une discrétisation classique :
$\frac{w_L - w_{L-1}}{dz} = 1$
où L est l'indice de la discrétisation au point z=1.
Cette condition devient $w_l = w_{L-1} + dz$.

Utilisant cette condition au bord, je fait un plot de l'erreur entre ma solution numérique et la solution analytique, dont je dispose. Ok, tout va bien :-)

Maintenant, un ami m'a donné un piston trouvé sur internet. Au lieu d'implémenter la condition au bord de la façon donnée ci-dessus, i.e. $w_l = w_{L-1} + dz$, il utilise plutot
$
w_L = \frac{4 w_{L-1} - w_{L-2} + 2 dz}{3}
$
soit encore
$
\frac{3 w_L - 4 w_{L-1} + w_{L-2}}{2 dz} = 1
$

La surprise, c'est que en utilisant cette condition au bord, j'obtiens une erreur relative qui est de un à deux ordres de grandeur inférieur à ce que j'obtenais avec l'autre condition.

Ma question est (parce que j'ai bien une question ;-) )
D'où vient cette formulation de condition aux limites ? Ça sort d'où ? Pourquoi ça marche mieux ?

Voilà :-) Merci d'avance à ceux qui me donneront des pistes de réponses !

Hayabusa

OG
Modérateur
Modérateur
Messages : 2293
Inscription : lundi 12 mars 2007, 11:20
Localisation : Rouen

Re: Différences finies et conditions aux limites

Message par OG »

Il suffit de faire un DL

O.G.

Hayabusa
Utilisateur débutant
Utilisateur débutant
Messages : 5
Inscription : dimanche 08 mai 2011, 17:01

Re: Différences finies et conditions aux limites

Message par Hayabusa »

euh ... merci pour ta répondre mais c'est quoi un DL ?

guiguiche
Modérateur global
Modérateur global
Messages : 8074
Inscription : vendredi 06 janvier 2006, 15:32
Statut actuel : Enseignant
Localisation : Le Mans

Re: Différences finies et conditions aux limites

Message par guiguiche »

développement limité :wink:
Pas d'aide par MP : les questions sont publiques, les réponses aussi.
Tu as apprécié l'aide qui t'a été fournie ? Alors n'hésite pas à rendre la pareille à quelqu'un d'autre.
Un peu d'autopromotion.

Hayabusa
Utilisateur débutant
Utilisateur débutant
Messages : 5
Inscription : dimanche 08 mai 2011, 17:01

Re: Différences finies et conditions aux limites

Message par Hayabusa »

désolé mais je comprends pas vraiment en quoi ça peut m'aider :/

OG
Modérateur
Modérateur
Messages : 2293
Inscription : lundi 12 mars 2007, 11:20
Localisation : Rouen

Re: Différences finies et conditions aux limites

Message par OG »

Bonjour

Ma réponse était un peu elliptique, merci à guiguiche d'avoir traduit le terme DL.
Comme tu disais
Hayabusa a écrit : Pour cela, j'utilise premièrement une discrétisation classique :
$\frac{w_L - w_{L-1}}{dz} = 1$
je pensais que tu comprendrais.

En général on préfère les conditions de Dirichlet, là tu as un Neumann non homogène en $\partial_x u(x=1)=1$
pour compléter le système linéaire venant de l'EDP dans le domaine il faut prendre en compte cette condition
aux limites. Le truc classique que tu cites consiste juste à écrire le DL à l'ordre 1, soit $f(1-h)=f(1)-hf'(1)+o(h)$
d'où l'approximation à l'ordre de 1 de la dérivée de $u$ en 1, ce qui induit que l'approximation sera d'ordre 1.
Le tuyau de ton ami, trouvé sur Internet, consiste juste à écrire une approximation de $u'(1)$ d'ordre
supérieure à l'aide de $u(1)$, $u(1-h)$ et $u(1-2h)$, c'est assez classique et c'est le principe même des
différences finies.
Hayabusa a écrit :$ \frac{3 w_L - 4 w_{L-1} + w_{L-2}}{2 dz} = 1 $
Comme cette approximation de $u'(1)$ est d'order supérieur et qu'à l'intérieur
pour l'EDP tu as une approximation de $u_{xx}$ à 3 points d'ordre 2 aussi
le tout sera meilleur (à condition que la solution soit suffisamment régulière).


Il doit y avoir des livres, des polycopiés...

Est-ce plus clair ?

O.G.

Hayabusa
Utilisateur débutant
Utilisateur débutant
Messages : 5
Inscription : dimanche 08 mai 2011, 17:01

Re: Différences finies et conditions aux limites

Message par Hayabusa »

Bonjour,

Oui c'est plus clair, merci beaucoup !
Mais j'ai un doute sur la façon dont on fait apparaitre des u(1-2h) dans l'approximation de u'(1).

En fait quand tu dis "écrire une approximation de $u'(1)$ d'ordre supérieur", c'est bien mettre un terme de plus dans le développement en série de taylor c'est à dire la dérivée seconde u''(1) ? Et puis il faut à nouveau décomposer cette dérivée comme pour la dérivée première, c'est à ça ?

En faisant ça j'arrive à un truc qui ressemble à ma condition, mais c'est pas encore ça :(

OG
Modérateur
Modérateur
Messages : 2293
Inscription : lundi 12 mars 2007, 11:20
Localisation : Rouen

Re: Différences finies et conditions aux limites

Message par OG »

Tu fais $u(1-2h)$ ordre 3 en 1, $u(1-h)$ ordre 3 en 1 et la combinaison linéaire qui va bien c'est à dire faisant disparaître $u(1)$ et $u''(1)$ te donne ce qu'il faut. C'est classique et doit se trouver sur internet. Et c'est plutôt la condition sur le problème continu à savoir $u'(1)=1$ donne la condition (trouvée sur internet) qui est à l'ordre 2 la version discrète de la condition continue.

En éléments finis la condition de Neumann est incluse dans la formulation variationnelle.

O.G.

Hayabusa
Utilisateur débutant
Utilisateur débutant
Messages : 5
Inscription : dimanche 08 mai 2011, 17:01

Re: Différences finies et conditions aux limites

Message par Hayabusa »

Toutou bon j'ai compris !

Merci beaucoup :-)