Eclats de vers : Matemat : Algorithmes de résolution d’EDP

Index des Grimoires

Retour à l’accueil

Table des matières

\( \newcommand{\parentheses}[1]{\left(#1\right)} \newcommand{\crochets}[1]{\left[#1\right]} \newcommand{\accolades}[1]{\left\{#1\right\}} \newcommand{\ensemble}[1]{\left\{#1\right\}} \newcommand{\identite}{\mathrm{Id}} \newcommand{\indicatrice}{\boldsymbol{\delta}} \newcommand{\dirac}{\delta} \newcommand{\moinsun}{{-1}} \newcommand{\inverse}{\ddagger} \newcommand{\pinverse}{\dagger} \newcommand{\topologie}{\mathfrak{T}} \newcommand{\ferme}{\mathfrak{F}} \newcommand{\img}{\mathbf{i}} \newcommand{\binome}[2]{ \left\{ \begin{array}{c} #1 \\ #2 \\ \end{array} \right\} } \newcommand{\canonique}{\mathfrak{c}} \newcommand{\tenseuridentite}{\boldsymbol{\mathcal{I}}} \newcommand{\permutation}{\boldsymbol{\epsilon}} \newcommand{\matriceZero}{\mathfrak{0}} \newcommand{\matriceUn}{\mathfrak{1}} \newcommand{\christoffel}[2]{ \left\{ \begin{array}{c} #1 \\ #2 \\ \end{array} \right\} } \newcommand{\lagrangien}{\mathfrak{L}} \newcommand{\sousens}{\mathfrak{P}} \newcommand{\partition}{\mathrm{Partition}} \newcommand{\tribu}{\mathrm{Tribu}} \newcommand{\topologies}{\mathrm{Topo}} \newcommand{\setB}{\mathbb{B}} \newcommand{\setN}{\mathbb{N}} \newcommand{\setZ}{\mathbb{Z}} \newcommand{\setQ}{\mathbb{Q}} \newcommand{\setR}{\mathbb{R}} \newcommand{\setC}{\mathbb{C}} \newcommand{\corps}{\mathbb{K}} \newcommand{\boule}{\mathfrak{B}} \newcommand{\intervalleouvert}[2]{\left] #1 , #2 \right[} \newcommand{\intervallesemiouvertgauche}[2]{ \left] #1 , #2 \right]} \newcommand{\intervallesemiouvertdroite}[2]{\left[ #1 , #2 \right[ } \newcommand{\fonction}{\mathbb{F}} \newcommand{\bijection}{\mathrm{Bij}} \newcommand{\polynome}{\mathrm{Poly}} \newcommand{\lineaire}{\mathrm{Lin}} \newcommand{\continue}{\mathrm{Cont}} \newcommand{\homeomorphisme}{\mathrm{Hom}} \newcommand{\etagee}{\mathrm{Etagee}} \newcommand{\lebesgue}{\mathrm{Leb}} \newcommand{\lipschitz}{\mathrm{Lip}} \newcommand{\suitek}{\mathrm{Suite}} \newcommand{\matrice}{\mathbb{M}} \newcommand{\krylov}{\mathrm{Krylov}} \newcommand{\tenseur}{\mathbb{T}} \newcommand{\essentiel}{\mathfrak{E}} \newcommand{\relation}{\mathrm{Rel}} \DeclareMathOperator*{\strictinferieur}{\ < \ } \DeclareMathOperator*{\strictsuperieur}{\ > \ } \DeclareMathOperator*{\ensinferieur}{\eqslantless} \DeclareMathOperator*{\enssuperieur}{\eqslantgtr} \DeclareMathOperator*{\esssuperieur}{\gtrsim} \DeclareMathOperator*{\essinferieur}{\lesssim} \newcommand{\essegal}{\eqsim} \newcommand{\union}{\ \cup \ } \newcommand{\intersection}{\ \cap \ } \newcommand{\opera}{\divideontimes} \newcommand{\autreaddition}{\boxplus} \newcommand{\autremultiplication}{\circledast} \newcommand{\commutateur}[2]{\left[ #1 , #2 \right]} \newcommand{\convolution}{\circledcirc} \newcommand{\correlation}{\ \natural \ } \newcommand{\diventiere}{\div} \newcommand{\modulo}{\bmod} \DeclareMathOperator*{\pgcd}{pgcd} \DeclareMathOperator*{\ppcm}{ppcm} \newcommand{\produitscalaire}[2]{\left\langle #1 \vert #2 \right\rangle} \newcommand{\scalaire}[2]{\left\langle #1 \| #2 \right\rangle} \newcommand{\braket}[3]{\left\langle #1 \vert #2 \vert #3 \right\rangle} \newcommand{\orthogonal}{\bot} \newcommand{\forme}[2]{\left\langle #1 , #2 \right\rangle} \newcommand{\biforme}[3]{\left\langle #1 , #2 , #3 \right\rangle} \newcommand{\contraction}[3]{\left\langle #1 \odot #3 \right\rangle_{#2}} \newcommand{\dblecont}[5]{\left\langle #1 \vert #3 \vert #5 \right\rangle_{#2,#4}} \DeclareMathOperator*{\major}{major} \DeclareMathOperator*{\minor}{minor} \DeclareMathOperator*{\maxim}{maxim} \DeclareMathOperator*{\minim}{minim} \DeclareMathOperator*{\argument}{arg} \DeclareMathOperator*{\argmin}{arg\ min} \DeclareMathOperator*{\argmax}{arg\ max} \DeclareMathOperator*{\supessentiel}{ess\ sup} \DeclareMathOperator*{\infessentiel}{ess\ inf} \newcommand{\dual}{\star} \newcommand{\distance}{\mathfrak{dist}} \newcommand{\norme}[1]{\left\| #1 \right\|} \newcommand{\normetrois}[1]{\left|\left\| #1 \right\|\right|} \DeclareMathOperator*{\adh}{adh} \DeclareMathOperator*{\interieur}{int} \newcommand{\frontiere}{\partial} \DeclareMathOperator*{\image}{im} \DeclareMathOperator*{\domaine}{dom} \DeclareMathOperator*{\noyau}{ker} \DeclareMathOperator*{\support}{supp} \DeclareMathOperator*{\signe}{sign} \newcommand{\abs}[1]{\left| #1 \right|} \newcommand{\unsur}[1]{\frac{1}{#1}} \newcommand{\arrondisup}[1]{\lceil #1 \rceil} \newcommand{\arrondiinf}[1]{\lfloor #1 \rfloor} \DeclareMathOperator*{\conjugue}{conj} \newcommand{\conjaccent}[1]{\overline{#1}} \DeclareMathOperator*{\division}{division} \newcommand{\difference}{\boldsymbol{\Delta}} \newcommand{\differentielle}[2]{\mathfrak{D}^{#1}_{#2}} \newcommand{\OD}[2]{\frac{d #1}{d #2}} \newcommand{\OOD}[2]{\frac{d^2 #1}{d #2^2}} \newcommand{\NOD}[3]{\frac{d^{#3} #1}{d #2^{#3}}} \newcommand{\deriveepartielle}[2]{\frac{\partial #1}{\partial #2}} \newcommand{\PD}[2]{\frac{\partial #1}{\partial #2}} \newcommand{\dblederiveepartielle}[2]{\frac{\partial^2 #1}{\partial #2 \partial #2}} \newcommand{\dfdxdy}[3]{\frac{\partial^2 #1}{\partial #2 \partial #3}} \newcommand{\dfdxdx}[2]{\frac{\partial^2 #1}{\partial #2^2}} \newcommand{\gradient}{\mathbf{\nabla}} \newcommand{\combilin}[1]{\mathrm{span}\{ #1 \}} \DeclareMathOperator*{\trace}{tr} \newcommand{\proba}{\mathbb{P}} \newcommand{\probaof}[1]{\mathbb{P}\left[#1\right]} \newcommand{\esperof}[1]{\mathbb{E}\left[#1\right]} \newcommand{\cov}[2]{\mathrm{cov} \left( #1 , #2 \right) } \newcommand{\var}[1]{\mathrm{var} \left( #1 \right) } \newcommand{\rand}{\mathrm{rand}} \newcommand{\variation}[1]{\left\langle #1 \right\rangle} \DeclareMathOperator*{\composante}{comp} \DeclareMathOperator*{\bloc}{bloc} \DeclareMathOperator*{\ligne}{ligne} \DeclareMathOperator*{\colonne}{colonne} \DeclareMathOperator*{\diagonale}{diag} \newcommand{\matelementaire}{\mathrm{Elem}} \DeclareMathOperator*{\matpermutation}{permut} \newcommand{\matunitaire}{\mathrm{Unitaire}} \newcommand{\gaussjordan}{\mathrm{GaussJordan}} \newcommand{\householder}{\mathrm{Householder}} \DeclareMathOperator*{\rang}{rang} \newcommand{\schur}{\mathrm{Schur}} \newcommand{\singuliere}{\mathrm{DVS}} \newcommand{\convexe}{\mathrm{Convexe}} \newcommand{\petito}[1]{o\left(#1\right)} \newcommand{\grando}[1]{O\left(#1\right)} \)

\( \newenvironment{Eqts} { \begin{equation*} \begin{gathered} } { \end{gathered} \end{equation*} } \newenvironment{Matrix} {\left[ \begin{array}} {\end{array} \right]} \)

\label{chap:algoedp}

1. Résolution par les caractéristiques

AFAIRE : ARRANGER LE CHAPITRE

Soit une équation du premier ordre à résoudre :

\[a(x,y,u) \ u_x(x,y) + b(x,y,u) \ u_y(x,y) = c(x,y,u)\]

Supposons que l'on connaisse la valeur de la solution :

\[u_{i0} = u(x_{i0},y_{i0})\]

pour \(i = 1,2,...,n\). Les équations :

\[\OD{x}{t} = a \qquad \OD{y}{t} = b \qquad \OD{u}{t} = c\]

nous permettent de construire simultanément les courbes caractéristiques et la solution. Par exemple, si on utilise le schéma d'Euler explicite, on a :

\( x_{i,k+1} = x_{ik} + h_k \ a(x_{ik},y_{ik},u_{ik}) \)

\( y_{i,k+1} = y_{ik} + h_k \ b(x_{ik},y_{ik},u_{ik}) \)

\( u_{i,k+1} = u_{ik} + h_k \ c(x_{ik},y_{ik},u_{ik}) \)

2. Différences finies

On vérifie sur le développement de Taylor de \(u\) que :

\( u_x(x,y) \approx \frac{u(x+h,y) - u(x-h,y)}{2 h} \)

\( u_y(x,y) \approx \frac{u(x,y+h) - u(x,y-h)}{2 h} \)

pour les dérivées premières et :

\begin{align} u_{xx}(x,y) &\approx& \unsur{h^2} \ \left( u(x+h,y) - 2 u(x,y) + u(x-h,y) \right) \\ u_{yy}(x,y) &\approx& \unsur{h^2} \ \left( u(x,y+h) - 2 u(x,y) + u(x,y-h) \right) \\ u_{xy}(x,y) &\approx& \unsur{4h^2} \ \left( u(x+h,y+h) + u(x-h,y-h) - u(x+h,y-h) - u(x-h,y+h) \right) \end{align}

pour les dérivées secondes. L'erreur converge vers \(0\) aussi vite que \(h^2\). Posons :

\[U_{ij} = u(i h, j h)\]

Les dérivées approximatives s'écrivent :

\( u_x \approx \Delta_x U_{ij} = \unsur{2 h} \ (U_{i+1,j} - U_{i-1,j}) \)

\( u_y \approx \Delta_y U_{ij} = \unsur{2 h} \ (U_{i,j+1} - U_{i,j-1}) \)

et :

\( u_{xx} \approx \Delta_x^2 U_{ij} = \unsur{h^2} \ (U_{i+1,j} - 2 U_{ij} + U_{i-1,j}) \)

\( u_{yy} \approx \Delta_y^2 U_{ij} = \unsur{h^2} \ (U_{i,j+1} - 2 U_{ij} + U_{i,j-1}) \)

\( u_{xy} \approx \Delta_x\Delta_y U_{ij} = \unsur{4 h^2} \ (U_{i+1,j+1} - U_{i+1,j-1} - U_{i-1,j+1} + U_{i-1,j-1}) \)

On substitue alors ces expressions dans l'équation :

\[F(x,y,u,u_x,u_y,u_{xx},u_{xy},u_{yy}) = 0\]

et on obtient un système linéaire à résoudre en les \(U_{ij}\).

3. Eléments finis

\label{sec:elements_finis}

Soient des espaces fonctionnels \(F,H\subset\fonction(\Omega,\setR)\) et un opérateur linéaire :

\[L \in \lineaire(F,H)\]

Nous cherchons à résoudre de manière approchée l'équation différentielle associée :

\[L(u) = f\]

où \(f\) est une fonction de \(H\). La méthode des éléments finis consiste à imposer l'annulation de l'intégrale du résidu \(L(u)\), pondéré par des fonctions \(\psi_i\) :

\[\int_\Omega \left[L(u)(x)-f(x)\right] \ \psi_i(x) \ dx = 0\]

pour \(i = 1,2,...,n\). Afin de résoudre ce problème, on discrétise la solution approchée \(u\) :

\[u(x) = \sum_{i=1}^n U_i \ \varphi_i(x)\]

où les \(U_i\) sont des réels et les \(\varphi_i\) des fonctions de \(F\). On définit les grandeurs :

\( A_{ij} = \int_\Omega L(\varphi_i)(x) \ \psi_i(x) \ dx \)

\( F_i = \int_\Omega f(x) \ \psi_i(x) \ dx \)

et les matrices :

\( U = (U_i)_i \)

\( A = (A_{ij})_{i,j} \)

\( F = (F_i)_i \)

En utilisant la linéarité de \(L\), l'équation des résidus pondérés :

\[\int_\Omega L(u)(x) \ \psi_i(x) \ dx = \int_\Omega f(x) \ \psi_i(x) \ dx\]

devient :

\[A \ U = F\]

soit un système linéaire à résoudre en \(U\) :

\[U = A^{-1} \ F\]

ce qui nous donne une forme approchée \(u\) de la solution exacte.

Auteur: chimay

Created: 2025-10-22 mer 12:56

Validate