• Aucun résultat trouvé

différences finies

N/A
N/A
Protected

Academic year: 2022

Partager "différences finies"

Copied!
42
0
0

Texte intégral

(1)

Approximations aux différences finies

A la fin du chapitre, l’étudiant doit être capable de:

1. Etablir une formule aux différences finies pour des dérivées 2. Calculer l’ordre de convergence d’une approximation

3. Calculer la vitesse de propagation effective d’un schéma de discrétisation de l’équation de convection-diffusion 1D

4. Comprendre le lien entre ordre et vitesse de propagation effective

(2)

Motivation

Les équations aux dérivées partielles sont omniprésentes en ingénierie Mécanique des solides

Mécanique des fluides Electromagnétisme,

Elles font en général intervenir des dérivées partielles:

En temps: confère le chapitre sur la « Résolution d’équations différentielles ordinaires »

En espace: ce chapitre

(3)

Différences finies

• L’idée est de remplacer les dérivées partielles aux points de maillage par des développements de Taylor

• Plutôt que de chercher f(x), on cherche les valeurs de f aux nœuds du maillage, soit f=f(x )

i i+1 i +2

1 i

2 i

3

i x

xi xi+1 xi+2 x

1

xi

2

xi

3

xi

(4)

Dérivées premières

• Développement de Taylor au nœud i:

• Ces développements font apparaître les dérivées de f au nœud i uniquement

i i+1 i +2

1 i

2 i

3

i x

( ) ( )

2

( (

1

)

3

)

2 2 1

1

1 2 i i

x i

i x

i i

i

i O x x

dx f d x

x dx

x df x

f f

i i

+ +

+

=

( ) ( )

2

( (

1

)

3

)

2 2 1

1

1 2 i i

x i

i x

i i

i

i O x x

dx f d x

x dx

x df x

f f

i i

+ +

+

= + + +

+

(5)

• Si les nœuds sont régulièrement espacés

i i+1 i +2

1 i

2 i

3

i x

x

( )

3

2 2 2

1 2 O x

dx f d x dx

xdf f

f

i xi

x i

i +

+

+

+ =

( )

3

2 2 2

1 2 O x

dx f d x dx

xdf f

f

i xi

x i

i +

+

=

Dérivées premières

(6)

• Si les nœuds sont régulièrement espacés, la dérivée de f au nœud i est approximée par

• Erreur d’approximation est O(∆𝑥2)

• Schéma centré d’ordre 2

• NOTATION « grand O de X »: O(𝑋) signifie « de l’ordre de X »

) 2 (

1 2

1

O x

x f f

dx

df

i i

xi

 +

=

+

Dérivées premières

(7)

• Maillage régulier

• En conservant plus de termes dans les développements on obtient les schémas à l’ordre 4 et 6 suivants

) 12 (

8

8 1 1 2 4

2 O x

x

f f

f f

dx

df i i i i

xi

 +

+

− +

= − + +

Ordres plus élevés

) 60 (

9 45

45

9 2 1 1 2 3 6

3 O x

x

f f

f f

f f

dx

df i i i i i i

xi

 +

− +

− +

= ++ +

(8)

ordre 1 aval

ordre 1 amont

ordre 2 aval

ordre 2 amont

Formules décentrées

)

1

O ( x

x f f

dx

df

i i

xi

 +

=

+

) 2 (

3

4

1 2

2

O x

x

f f

f dx

df

i i i

xi

 +

− +

= −

+ +

)

1

O ( x

x f f

dx

df

i i

xi

 +

= −

) 2 (

4

3

1 2 2

x x O

f f

f dx

df

i i i

+ 

 +

= −

(9)

Et alors ??

• Plusieurs approximations aux différences finies disponibles pour approximer les dérivées en espace

• Ces dérivées en espace interviennent dans des équations aux dérivées partielles (EDP)

• Quelle erreur faisons-nous en utilisant des différences finies pour résoudre des EDP ?

• Utilisation d’un problème modèle simple …

(10)

Problème modèle

• Equation de convection diffusion 1D dans un domaine infini

2 2

0

x

D f x

U f t

f

= 

 + 

? )

, ( x t f

0 ) , (

lim =



f x t

x

U0

) ( )

0 ,

(x f0 x

f =

(11)

Solution analytique

Si la concentration est initialement de la forme on peut obtenir la solution analytique …

En l’absence de diffusion (𝐷 = 0), l’équation 𝜕𝑓

𝜕𝑡 + 𝑈0 𝜕𝑓

𝜕𝑥 = 0 génère une simple translation à la vitesse 𝑈0 de la condition initiale:

𝑓 𝑥, 𝑡 = 𝑓0exp − 𝑥 − 𝑈0𝑡 2/4𝑎2

( )

( ) 

 

+

− −

= +

Dt a

t U x

Dt a

C a t

x

f

2

2 0 2

2

0

exp 4

) , (

(

2 2

)

0

0( ) exp /4

) 0 ,

(x f x f x a

f = =

(12)

Solution analytique

• Effet de la diffusion

D a U

= 0 Re

+

= Re

20 Re =

200 Re=

2 Re =

(13)

• Problème modèle 1D: Eq. de convection pure (sans diffusion)

• Conditions limites et initiale:

• Le domaine [-2 m, 8 m] est discrétisé à l’aide de 100, 200 ou 400 nœuds uniformément répartis

Une expérience numérique

m/s 1 ,

m 8 m

2 ,

0 0

0 = =

+

x U

x U f t

f

(

/4

)

, 0.2m

exp )

0 ,

(x = x2 a2 a =

f f (2,t) = f (8,t) = 0

(14)

• Équation semi-discrète (pas d’erreur associée à la dérivée en temps)

• On approxime 𝜕𝑓

𝜕𝑥 𝑥𝑖 à l’aide de deux schémas:

𝜕𝑓

𝜕𝑥 𝑥𝑖𝑓𝑖−𝑓𝑖−1

∆𝑥 𝜕𝑓

𝜕𝑥 𝑥𝑖𝑓𝑖+1−𝑓𝑖−1

2∆𝑥

• On résout et on compare à la solution analytique …

Test numérique

amont ordre 1 centré ordre 2

𝜕𝑓

𝜕𝑡

+ 𝑈

0 𝜕𝑓

𝜕𝑥 𝑥𝑖

= 0

(15)

Test numérique

amont ordre 1

centré ordre 2

400 noeuds 200 noeuds 100 noeuds

Solution initiale

Solution exacte à t=5 s

Solution

numérique à t=5 s

(16)

Ordre 2 centré / Ordre 1 amont

• Ordre 1 introduit de la diffusion … (cf solution analytique avec Re=2)

• Ordre 2 centré « exact » avec 400 points

• Ordre 2 centré déforme le signal si le nombre de points est plus petit

• Ordre 2 meilleur que ordre 1

(17)

Test numérique

aval ordre 1

centré ordre 2

400 noeuds 200 noeuds 100 noeuds

Solution initiale

Solution exacte à t=5 s

Solution

numérique à t=5 s

1031 !!

(18)

Ordre 2 centré / Ordre 1 aval

• Ordre 1 aval ne permet pas d’obtenir de solution

« acceptable » à t=5 car:

1. L’amplitude obtenue est très grande

2. Le signal n’est pas la forme d’une Gaussienne

(19)

Test numérique

centré ordre 4

centré ordre 2

400 noeuds 200 noeuds 100 noeuds

Solution initiale

Solution exacte à t=5 s

Solution

numérique à t=5 s

(20)

Ordre 2 centré / Ordre 4 centré

• Ordre 4 « exact » dans tous les cas considérés ici

• Ordre 2 centré « exact » avec 400 points

• Ordre 4 meilleur que ordre 2

(21)

Test numérique

amont ordre 2

centré ordre 2

400 noeuds 200 noeuds 100 noeuds

Solution initiale

Solution exacte à t=5 s

Solution

numérique à t=5 s

(22)

Ordre 2 centré / Ordre 2 amont

• Ordre 2 centré et amont « exacts » avec 400 points

• Ordre 2 centré et amont déforment le signal si le nombre de points est plus petit, mais pas de la même manière

• Ordre 2 amont amortit plus le signal

• L’ordre ne dit pas tout sur un schéma …

• Pour comprendre les erreurs associées à un schéma, il faut réaliser une analyse plus poussée, dans une situation encore plus simple. C’est l’objet de l’analyse spectrale.

(23)

Premier bilan

• L’ordre ne dit pas tout sur un schéma: deux schémas de même ordre peuvent avoir des comportements très différents (=

générer des erreurs très différentes)

• Pour comprendre les erreurs associées à un schéma, il faut réaliser une analyse plus poussée, dans une situation encore plus simple. C’est l’objet de l’analyse spectrale.

(24)

Analyse spectrale

• On considère un domaine infini et une fonction harmonique pour laquelle on connait la dérivée exacte:

• Exemple du schéma centré d’ordre 2

𝑓 𝑥 = cos 𝑘𝑥 = Re exp( 𝑗𝑘𝑥) ⇒ 𝑑𝑓

𝑑𝑥 = Re 𝑗𝑘 exp( 𝑗𝑘𝑥) , avec k un paramètre positif fixé (k=nombre d’onde) et j2 = -1

𝑓𝑖 = Re exp( 𝑗𝑘𝑖Δ𝑥) , 𝑑𝑓ቤ 𝑑𝑥 𝑥𝑖

= 𝑓𝑖+1 − 𝑓𝑖−1 2Δ𝑥

𝑑𝑓ቤ 𝑑𝑥 𝑥𝑖

= Re 𝑗𝑘 sin( 𝑘Δ𝑥)

𝑘Δ𝑥 exp( 𝑗𝑘𝑖Δ𝑥)

(25)

Analyse spectrale

• Pour la fonction test 𝑓 𝑥 = cos 𝑘𝑥 , l’erreur numérique commise lorsque l’on utilise le schéma centré d’ordre 2 revient à multiplier 𝑑𝑓

𝑑𝑥 par 𝐸 𝑘∆𝑥 = sin(𝑘Δ𝑥)

𝑘Δ𝑥

• 𝐸 𝑘∆𝑥 est la fonction erreur spectrale.

• Attention: cette fonction vaut 1 lorsqu’il n’y a pas d’erreur !!

• Dans le cas de l’équation de convection pure, multiplier 𝑑𝑓

𝑑𝑥 par 𝐸 𝑘∆𝑥 = sin(𝑘Δ𝑥)

𝑘Δ𝑥 revient aussi à multiplier la vitesse de

(26)

Signification de k  x

• Sinusoïde de période L décrite avec N points

•  x = L / N, k = 2 p /L donc kx = 2 p / N

N

x

k 0

8 4

=

=

N

x

k p

4 2

=

=

N

x

k p

= 2

=

N

x

k p

(27)

Analyse spectrale

• Lorsque l’on remplace la dérivée exacte par une différence finie centrée d’ordre 2, tout se passe comme si on résolvait l’équation

• Les différentes longueurs d’onde ne se déplacent pas à la même vitesse

) 0 sin(

0

=

 + 

x f x

k

x U k

t f

centré exact

(28)

Analyse spectrale

• Équation effective

0

( ) = 0

 

 +

x x f

k E t U

f

SCHEMA

Centré ordre 2

Amont ordre 1

Amont ordre 2

Centré

( )

Re E kx ImE ( k x )

x 0 k

x k

 ) sin(

x k

x k

 ) sin(

x k

x k

 ) 1 cos(

( 2 cos( ) )

)

sin( k x

x k

x

k − 

x k

x k x

k

 +

2

3 )

cos(

4 )

2 cos(

( )

)

sin( kx − 

(29)

Analyse spectrale

(30)

Lien avec l’ordre du schéma

• Dans la limite 𝑘∆𝑥 → 0, la vitesse de propagation effective tend vers U0

• La vitesse avec laquelle l’erreur tend vers zéro lorsque 𝑘∆𝑥 → 0 dépend de l’ordre n du schéma et on montre que:

𝐸 𝑘∆𝑥 = 1 + 𝑂 ∆𝑥

𝑛

• Les schémas centrés sont non dissipatifs: Im 𝐸 𝑘∆𝑥 = 0

si U0>0, les schémas stables sont tels que: Im 𝐸 𝑘∆𝑥 ≤ 0

(31)

Dispersion

• La vitesse de propagation effective n’est égale à la vitesse théorique que dans la limite 𝑘∆𝑥 → 0

• Une perturbation peut donc être propagée trop lentement ou trop vite

• Les fonctions et ne sont pas propagées à la même vitesse en général

• Que se passe-t-il lorsque l’on convecte

f ( x )

?

e

jkx

e

jk'x

, kk '

(32)

Déformation du signal

On peut décomposer cette fonction comme une somme de

fonctions harmoniques (en rendant f périodique éventuellement)

La solution théorique après t secondes de simulation est

Numériquement le mode devient

La solution numérique est donc

= f

k

e

jkx

x

f ( ) ˆ

=

0

) ˆ

( 0 )

( x U t f

k

e

jk x U t

f

) ) (

(x E k x U0t

e

jk

e

jkx

) ˆ (

)

( x U

0

t f e

(1 ( )) 0

e

( 0 )

f x U

0

t

g − = 

k

 

jk

E

 

kx

U t jk xU t

 −

(33)

• Maillage régulier

• On utilise le fait que

• En appliquant l’opérateur 2 fois le schéma centré d’ordre 2:

Dérivées secondes

) 2 (

2 '

1 '

1 2

2

x x O

f f

dx f

d

i i

xi

 +

+

i xi

x dx

df dx

d dx

f

d 



2 =

2

2

2

2

f f f f

d − + + 

=

+

(34)

• Si les nœuds sont régulièrement espacés

i i+1 i +2

1 i

2 i

3

i x

x

Problème de localité

2

2 2

2 2

4 2

x

f f

f dx

f

d i i i

xi

+

+

x

La dérivée seconde approximée de cette fonction est nulle !!

(35)

• Déduire la dérivée seconde des développements de Taylor

i i+1 i +2

1 i

2 i

3

i x

( )

4

3 3 3 2

2 2

1 2 6 O x

dx f d x dx

f d x dx

xdf f

f

i

i xi x

x i

i +

+ +

+

+ =

( )

4

3 3 3 2

2 2

1 2 6 O x

dx f d x dx

f d x dx

xdf f

f

i

i xi x

x i

i +

+

=

Dérivées secondes

+

(36)

• Si les nœuds sont régulièrement espacés

i i+1 i +2

1 i

2 i

3

i x

x

Problème de localité

2

1 1

2

2 2

x

f f

f dx

f

d i i i

xi

+

+

x

La dérivée seconde approximée de cette fonction est non nulle, mais pas infinie …

(37)

Analyse spectrale

• Cas d’une fonction harmonique

• Schéma centré d’ordre 2 à 2

• L’erreur numérique commise revient à multiplier par

exp( )

Re

exp( )

Re )

( 2 2

2

jkx dx k

f jkx d

x

f = =

exp( )

, 2 2 1 2 2 1

Re x

f f

f dx

f x d

jki

f i i i

x i

i

+

= +





cos( ) 1exp( ) 2

Re 2

2 2

x x jki

x k dx

f d

xi

) cos(

1 kx

2 f d

(38)

Analyse spectrale

• Schéma centré d’ordre 2 à 4

• L’erreur numérique commise revient à multiplier par

 

2 2 2 2 2

4 , 2

) exp(

Re x

f f

f dx

f x d

jki

f i i i

x i

i

+

= +





cos(2 ) 1exp( ) 2

Re 1 2

2 2

x x jki

x k dx

f d

xi

2

2 2

) 2

cos(

1

x k

x k

2 2

dx f d

(39)

Analyse spectrale

• Les erreurs sont réelles uniquement, donc pas de convection numérique

2

4

(40)

Retour sur le schéma amont ordre 1

• Rappel: ce schéma introduit beaucoup de dissipation par comparaison avec le centré d’ordre 2

• En effet:

• Utiliser ce schéma revient donc à résoudre

avec un schéma centré d’ordre 2

2

1 1

1 1

1

2

2

2 x

f f

f x x

f f

x f

f

i i i i i i i

+

− 

= −

+ +

2 2 0

0

2 x

f x

U x

U f t

f

D

= 

 + 

(41)

i i+1 i +2

1 i

2 i

3

i x

Laplacien

2

2 f f f f f

f − + − +

j

1 j

2 j

+1 j

+ 2 j

x

y

(42)

Réalisations sous Matlab

1. Créer un programme qui trace une fonction analytique et sa dérivée analytique

2. Créer une fonction qui calcule par différences finies (DF) la dérivée d’une fonction f sur maillage uniforme.

3. Pour différentes fonctions f, tracer sur le même graphe la dérivée analytique de f et la dérivée issue d’une formule aux DF

4. Vérification de l’ordre de convergence:

1. En vérifiant que l’écart entre DF et analytique est « nul » pour une fonction polynomiale bien choisie

2. En traçant l’évolution de l’écart entre DF et analytique pour différentes valeurs de dx pour une fonction non polynomiale

5. Vérifier numériquement les expressions théoriques des fonctions erreurs issues de l’analyse spectrale. On utilisera pour cela des formules aux

différences finies de type périodique sur un domaine de longueur 2p/k appliquées à la fonction test sin kx.

Références

Documents relatifs

A chaque commande de Staltolight ® , un plan de pose détaillé ainsi qu'un guide de pose vous seront transmis.

Reste à savoir toutefois si la nouvelle vague saura constituer un gouvernement stable pour faire face aux défis urgents qui se profilent à l’approche de l’hiver – une inflation

Cet article a pour objectif de vous aider à comprendre votre code, et à corriger vous-même vos erreurs les plus simples.. Les prérequis sont les

Pile 2 piles au lithium AA (L91) / remplaçables par l'utilisateur (non incluses) Matériel Polycarbonate résistant aux UV. Couleur International

[r]

Le cercle de centre D et de rayon DA coupe la droite [BC] en un point P du même côté que B par rapport à D.. Le cercle circonscrit au triangle AEP coupe la droite [BC] en un

Une première évaluation formative suivie d'une analyse des erreurs et de la mise en place des activités de remédiation et une seconde évaluation sommative prenant en compte

Lorsque la matrice A est sym´ etrique d´ efinie positive (comme par exemple pour la discr´ etisation implicite de l’´ equation de la chaleur en dimension 1 ou 2, cf. sections 2.2.3