ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/REPOS_ERICCA/document/GMC1035/equadiff.tex
Revision: 1073
Committed: Wed Aug 4 19:38:16 2021 UTC (4 years ago) by francois
Content type: application/x-tex
File size: 44281 byte(s)
Log Message:
mise à jour des notes de cours de GMC1035

File Contents

# Content
1 \begin{encadre}{Objectif du chapitre}
2 Plusieurs problèmes d'ingénierie mélangent dans la modélisation des inconnues qui sont des dérivées les unes des autres. (Cas de la position, vitesse et accélération). Dans ces cas, nous avons des équations avec comme inconnue une variable, sa dérivée première, deuxième..... .
3 Ce sont des équations différentielles. Au niveau théorique, seuls quelques rares cas sont solvables. Ce chapitre montre des manières de résoudre toute les équations différentielles de manière numérique.
4 \end{encadre}
5 \\[1cm]
6 \begin{encadre}{Connaissances antérieures nécessaires}
7 \begin{itemize}
8 \item les mathématiques : équations différentielles du premier ordre et d'ordre supérieur. Système d'équations différentielles. Conditions aux limites. Conditions aux frontières.
9 \item programmation de base en Basic ou C : les types, les opérations élémentaires et la structuration de programme en mode console
10 \end{itemize}
11
12 \end{encadre}
13
14
15
16
17 \section{Mise en situation}
18 Le problème du pendule est le problème de base pour illustrer les équations différentielles.
19 Soit une masse $m$ suspendue à une corde de longueur $l$. Au temps $t=0$, la corde a une position qui fait un angle $\theta (0)=\theta_0$ avec la verticale.
20 Les forces en présence sont le poids de la masse $m$ et la force de friction $F_f$ qui s'oppose au mouvement.
21 \begin{figure}[h]
22
23 \begin{center}
24 \includegraphics[width=4cm,bb=0 0 143 257]{./pendule.jpg}
25 % pendule.jpg: 190x342 pixel, 96dpi, 5.03x9.05 cm, bb=0 0 143 257
26 \end{center}
27 \caption{Problème du pendule}
28 \end{figure}
29 \\En faisant l'équilibre selon la direction tangentielle, il vient que
30 \begin{eqnarray*}
31 \overrightarrow{F}=m\overrightarrow{\gamma}\\
32 -P\sin \theta -F_fl\theta'=ml\theta''\\
33 \theta''=\frac{-g\sin \theta}{l} +\frac{-F_f\theta'}{m}\\
34 \end{eqnarray*}
35 On a dans ce cas une équation différentielle d'ordre 2 avec conditions initiales connues :
36 \begin{eqnarray*}
37 \left \{
38 \begin{array}{l}
39 \theta''=\frac{-g\sin \theta}{l} +\frac{-F_f\theta'}{m}\\
40 \theta(0)=\theta_0\\
41 \theta'(0)=\theta_0'\\
42 \end{array}
43 \right.
44 \end{eqnarray*}
45 L'objectif de ce chapitre est de résoudre de telle équation de manière numérique. Nous commençons par les équations différentielles d'ordre 1 pour généraliser ensuite.
46 \section{Résolution d'équation différentielle d'ordre 1}
47 \subsection{Méthode d'Euler explicite}
48 \subsubsection{La méthode}
49 D'une manière générale, le problème s'écrit
50 \begin{eqnarray*}
51 \left \{
52 \begin{array}{l}
53 y'(x)=f\left(x,y(x)\right)\\
54 y(0)=y_0\\
55 \end{array}
56 \right.
57 \end{eqnarray*}
58
59 L'idée est de partir de la condition initiale est de trouver une solution proche d'un pas $h$.
60 \\Tout au long de ce chapitre, on note $y_t$ la valeur numérique et $y(t)$ la valeur réelle de la solution.
61 \\Au départ on $y_0=y(0)$.
62 \\ En constatant que la pente de la courbe en $0$ est $y'(0)=\frac{y_1-y_0}{x_1-x_0}$ il vient que
63 \begin{eqnarray*}
64 y_1-y_0&=&y'(0)(x_1-x_0)\\
65 y_1&=&y_0+hy'(0)\\
66 y_1&=&y_0+hf\left(0,y(0)\right)\\
67 y_1&=&y_0+hf(0,y_0)\\
68 \end{eqnarray*}
69 $y_1$ est une solution approchée de $y(x_1)$.
70 On continue ensuite selon le schéma
71 \begin{eqnarray*}
72 y_n&=&y_{n-1}+hf(x_{n-1},y_{n-1})\\
73 \end{eqnarray*}
74 $y_n$ est une solution approchée de $y(x_n)$.\\
75 \begin{encadre2}
76 \textbf{Méthode d'euler explicite}\\[1cm]
77 $y0$ est donné\\
78 $y_{n+1}=y_{n}+hf(x_{n},y_{n})$\\
79 \end{encadre2}
80
81 \subsubsection{Exemple}
82 Soit l'équation différentielle d'ordre 1 suivante
83
84 \begin{eqnarray*}
85 \left \{
86 \begin{array}{l}
87 y'(x)=-y(x)+x+1\\
88 y(0)=1\\
89 \end{array}
90 \right.
91 \end{eqnarray*}
92 La solution exacte est $y(x)=e^{-x}+x$
93 \\La solution numérique est calculée avec $h=0.1$ :\\
94 \footnotesize
95 \begin{tabular}{|r|r|r|r|}
96 \hline
97 $x_i$ & $y_i=y_{i-1}+hf(x_{i-1},y_{i-1})$ &$e^{-x}+x$ & $\frac{y_i-y(x_i)}{y(x_i)}$ \\
98 \hline
99 $0$&$ 1$&$ 1$&$ 0$\\ \hdashline
100 $0,1$&$ 1$&$ 1,004837418$&$ 0,0048141301$ \\
101 $0,2$&$ 1,01$&$ 1,0187307531$&$ 0,0085702263$ \\
102 $0,3$&$ 1,029$&$ 1,0408182207$&$ 0,0113547404$ \\
103 $0,4$&$ 1,0561$&$ 1,070320046$&$ 0,0132857888$ \\
104 $0,5$&$ 1,09049$&$ 1,1065306597$&$ 0,0144963536$ \\
105 $0,6$&$ 1,131441$&$ 1,1488116361$&$ 0,0151205259$ \\
106 $0,7$&$ 1,1782969$&$ 1,1965853038$&$ 0,0152838279$ \\
107 $0,8$&$ 1,23046721$&$ 1,2493289641$&$ 0,0150975081$ \\
108 $0,9$&$ 1,287420489$&$ 1,3065696597$&$ 0,0146560657$ \\
109 $1$&$ 1,3486784401$&$ 1,3678794412$&$ 0,0140370566$ \\
110 $1,1$&$ 1,4138105961$&$ 1,4328710837$&$ 0,0133023046$ \\
111 $1,2$&$ 1,4824295365$&$ 1,5011942119$&$ 0,012499832$ \\
112 $1,3$&$ 1,5541865828$&$ 1,572531793$&$ 0,0116660345$ \\
113 $1,4$&$ 1,6287679245$&$ 1,6465969639$&$ 0,0108278102$ \\
114 $1,5$&$ 1,7058911321$&$ 1,7231301601$&$ 0,010004484$ \\
115 $1,6$&$ 1,7853020189$&$ 1,801896518$&$ 0,0092094629$ \\
116 $1,7$&$ 1,866771817$&$ 1,8826835241$&$ 0,0084516101$ \\
117 $1,8$&$ 1,9500946353$&$ 1,9652988882$&$ 0,0077363565$ \\
118 $1,9$&$ 2,0350851718$&$ 2,0495686192$&$ 0,0070665833$ \\
119 $2$&$ 2,1215766546$&$ 2,1353352832$&$ 0,0064433107$ \\
120 $2,1$&$ 2,2094189891$&$ 2,2224564283$&$ 0,0058662293$ \\
121 $2,2$&$ 2,2984770902$&$ 2,3108031584$&$ 0,0053341056$ \\
122 $2,3$&$ 2,3886293812$&$ 2,4002588437$&$ 0,0048450868$ \\
123 $2,4$&$ 2,4797664431$&$ 2,4907179533$&$ 0,0043969291$ \\
124 $2,5$&$ 2,5717897988$&$ 2,5820849986$&$ 0,0039871654$ \\
125 $2,6$&$ 2,6646108189$&$ 2,6742735782$&$ 0,0036132277$ \\
126 $2,7$&$ 2,758149737$&$ 2,7672055127$&$ 0,0032725346$ \\
127 $2,8$&$ 2,8523347633$&$ 2,8608100626$&$ 0,0029625523$ \\
128 $2,9$&$ 2,947101287$&$ 2,9550232201$&$ 0,0026808362$ \\
129 $3 $&$ 3,0423911583$&$ 3,0497870684$&$ 0,0024250579$ \\
130
131 \hline
132 \end{tabular}
133 \normalsize
134 \begin{center}
135 \includegraphics[width=10cm,bb=0 0 611 400]{./eulerexplicite.jpg}
136 % eulerexplicite.jpg: 815x533 pixel, 96dpi, 21.56x14.10 cm, bb=0 0 611 400
137 \end{center}
138
139 \subsubsection{Erreur de la méthode}
140 Dans les résultats précédents nous avons montré l'erreur sur la valeur de $y_i$. Dans ce cas cette erreur est cumulée puisque $y_i$ est réutilisée dans les pas suivants.
141 \\Nous allons chercher à trouver l'erreur d'un pas de manière indépendante des pas précédents.
142 Pour cela nous allons utiliser le développement en série de Taylor de $y(x_{n+1})$ :
143 \begin{eqnarray*}
144 y(x_{n+1})=y(x_n+h)&=&y(x_n)+y'(x_n)h+\frac{y''(x_n)}{2!}h^2+O(h^3)\\
145 &=&y(x_n)+f(x_n,y(x_n))h+\frac{y''(x_n)}{2}h^2+O(h^3)\\
146 \frac{y(x_{n+1})-y(x_n)}{h}-f(x_n,y(x_n))&=&\frac{y''(x_n)}{2}h+O(h^2)\\
147 \end{eqnarray*}
148 On appelle l'erreur de troncature d'un pas de la méthode d'Euler explicite $\tau_{n+1}(h)$.
149 \begin{eqnarray*}
150 \tau_{n+1}(h)=\frac{y(x_{n+1})-y(x_n)}{h}-f(x_n,y(x_n))&=&\frac{y''(x_n)}{2}h+O(h^2)\\
151 \end{eqnarray*}
152 On constate que le méthode a une convergence d'ordre 1.
153 \subsection{Méthode de Taylor}
154 \subsubsection{La méthode}
155 La méthode de Taylor est la généralisation de la méthode d'Euler explicite pour tenter d'obtenir une méthode d'ordre de convergence plus élevée.
156 \\On part du développement de Taylor
157 \begin{eqnarray*}
158 y(x_{n+1})=y(x_n+h)&=&y(x_n)+y'(x_n)h+\frac{y''(x_n)}{2!}h^2+O(h^3)\\
159 \end{eqnarray*}
160 En injectant l'équation différentielle et en écrivant que
161 \begin{eqnarray*}
162 f'(x_n,y(x_n))&=&\frac{\partial f}{\partial x}+\frac{\partial f}{\partial y}\frac{\partial y}{\partial x}=\frac{\partial f}{\partial x}+\frac{\partial f}{\partial y}y'\\
163 &=&\frac{\partial f}{\partial x}+\frac{\partial f}{\partial y}f\\
164 \end{eqnarray*}
165 On a
166 \begin{eqnarray*}
167 y(x_{n+1})&=&y(x_n)+f(x_n,y(x_n))h+\frac{h^2}{2}f'(x_n,(y(x_n))+O(h^3)\\
168 &=&y(x_n)+f(x_n,y(x_n))h+\frac{h^2}{2}\left(\frac{\partial f(x_n,y(x_n))}{\partial x}+\frac{\partial f(x_n,y(x_n))}{\partial y}f(x_n,y(x_n))\right)+O(h^3)\\
169 \end{eqnarray*}
170 On en déduit que
171 \begin{eqnarray*}
172 y_{n+1}&=&y_n+hf(x_n,y_n)+\frac{h^2}{2}\left(\frac{\partial f(x_n,y_n)}{\partial x}+\frac{\partial f(x_n,y_n)}{\partial y}f(x_n,y_n)\right)+O(h^3)\\
173 \tau_{n+1}(h)&=&\frac{y_{n+1}-y_n}{h}-f(x_n,y(x_n))-\frac{h}{2}\left(\frac{\partial f(x_n,y(x_n))}{\partial x}+\frac{\partial f(x_n,y(x_n))}{\partial y}f(x_n,y(x_n))\right)=O(h^2)
174 \end{eqnarray*}
175 L'ordre de convergence de la méthode est 2 mais la méthode nécessite le calcul des dérivée de $f$.
176 \\
177 \begin{encadre2}
178 \textbf{Méthode de Taylor}\\[1cm]
179 $y0$ est donné\\
180 $y_{n+1}=y_n+hf(x_n,y_n)+\frac{h^2}{2}\left(\frac{\partial f(x_n,y_n)}{\partial x}+\frac{\partial f(x_n,y_n)}{\partial y}f(x_n,y_n)\right)$\\
181 \end{encadre2}
182 \subsubsection{Exemple}
183 On reprend le même exemple que lors de la méthode d'Euler explicite et on trouve \\
184 \footnotesize
185 \begin{tabular}{|r|r|r|r|}
186 \hline
187 $x_i$ & $y_i=y_{i-1}+hf(x_{i-1},y_{i-1})$ &$e^{-x}+x$ & $\frac{y_i-y(x_i)}{y(x_i)}$ \\
188 & $+\frac{h^2}{2}\left(\frac{\partial f(x_{i-1},y_{i-1})}{\partial x}+\frac{\partial f(x_{i-1},y_{i-1})}{\partial y}f(x_{i-1},y_{i-1})\right)$ & & \\
189 \hline
190
191
192 $0$&$ 1$&$ 1$&$ 0$\\ \hdashline
193 $0,1$&$ 1,005$&$ 1,004837418$&$ 0,0001617993$\\
194 $0,2$&$ 1,019025$&$1,018730753 $&$ 0,0002888368$\\
195 $0,3$&$ 1,041217625$&$1,040818221 $&$ 0,0003837407$\\
196 $0,4$&$ 1,0708019506$&$1,070320046 $&$ 0,0004502434$\\
197 $0,5$&$ 1,1070757653$&$1,10653066 $&$ 0,0004926258$\\
198 $0,6$&$ 1,1494035676$&$1,148811636 $&$ 0,0005152555$\\
199 $0,7$&$ 1,1972102287$&$1,196585304 $&$ 0,0005222569$\\
200 $0,8$&$ 1,249975257$&$1,249328964 $&$ 0,000517312$\\
201 $0,9$&$ 1,3072276076$&$1,30656966 $&$ 0,0005035689$\\
202 $1$&$ 1,3685409848$&$1,367879441 $&$ 0,0004836272$\\
203 $1,1$&$ 1,4335295913$&$1,432871084 $&$ 0,0004595721$\\
204 $1,2$&$ 1,5018442801$&$1,501194212 $&$ 0,000433034$\\
205 $1,3$&$ 1,5731690735$&$1,572531793 $&$ 0,0004052576$\\
206 $1,4$&$ 1,6472180115$&$1,646596964 $&$ 0,0003771704$\\
207 $1,5$&$ 1,7237323004$&$1,72313016 $&$ 0,0003494456$\\
208 $1,6$&$ 1,8024777319$&$1,801896518 $&$ 0,0003225567$\\
209 $1,7$&$ 1,8832423473$&$1,882683524$&$ 0,0002968227$\\
210 $1,8$&$ 1,9658343244$&$1,965298888 $&$ 0,0002724451$\\
211 $1,9$&$ 2,0500800635$&$2,049568619 $&$ 0,0002495375$\\
212 $2$&$ 2,1358224575$&$2,135335283 $&$ 0,0002281488$\\
213 $2,1$&$ 2,222919324$&$2,222456428 $&$ 0,0002082812$\\
214 $2,2$&$ 2,3112419883$&$2,310803158 $&$ 0,0001899036$\\
215 $2,3$&$ 2,4006739994$&$ 2,400258844$&$ 0,0001729629$\\
216 $2,4$&$ 2,4911099694$&$2,490717953 $&$ 0,0001573908$\\
217 $2,5$&$ 2,5824545223$&$2,582084999 $&$ 0,0001431106$\\
218 $2,6$&$ 2,6746213427$&$2,674273578 $&$ 0,0001300407$\\
219 $2,7$&$ 2,7675323152$&$2,767205513 $&$ 0,0001180984$\\
220 $2,8$&$ 2,8611167452$&$2,860810063 $&$ 0,0001072013$\\
221 $2,9$&$ 2,9553106544$&$2,95502322 $&$ 9,72697479658594E-005$\\
222 $3$&$ 3,0500561423$&$ 3,0497870684$&$ 8,82271045273683E-005$\\
223
224 \hline
225 \end{tabular}
226 \normalsize
227
228 \begin{center}
229 \includegraphics[width=10cm,bb=0 0 614 399]{./taylor.jpg}
230 % taylor.jpg: 818x532 pixel, 96dpi, 21.64x14.08 cm, bb=0 0 614 399
231 \end{center}
232
233 \subsection{Méthodes de Runge-Kutta}
234 \subsubsection{Méthode de Runge-Kutta d'ordre 2 : RK2}
235 L'idée est de retrouver la méthode de Taylor en s'affranchissant du calcul des dérivée de $f$.
236 La méthode de Taylor est basé sur le développement de Taylor.
237 \begin{eqnarray*}
238 y(x_{n+1})&=&y(x_n)+f(x_n,y(x_n))h+\frac{h^2}{2}\left(\frac{\partial f(x_n,y(x_n))}{\partial x}+\frac{\partial f(x_n,y(x_n))}{\partial y}f(x_n,y(x_n))\right)+O(h^3)\\
239 \end{eqnarray*}
240 Pour éviter d'avoir des dérivées à calculer, on voudrait remplacer cette expression par
241 \begin{eqnarray*}
242 y(x_{n+1})&=&y(x_n)+a_1hf(x_n,y(x_n))+a_2hf(x_n+a_3h,y(x_n)+a_4h)+O(h^3)\\
243 \end{eqnarray*}
244 On développe en série de Taylor $f(x_n+a_3h,y(x_n)+a_4h)$
245 \begin{eqnarray*}
246 f(x_n+a_3h,y(x_n)+a_4h)=f(x_n,y(x_n))+a_3h\frac{\partial f(x_n,y(x_n))}{\partial x}+a_4h\frac{\partial f(x_n,y(x_n))}{\partial y}+O(h^2)\\
247 \end{eqnarray*}
248 En regroupant les deux dernières équations on a
249 \begin{eqnarray*}
250 y(x_{n+1})&=&y(x_n)+a_1hf(x_n,y(x_n))+a_2hf(x_n,y(x_n)+a_2a_3h^2\frac{\partial f(x_n,y(x_n))}{\partial x}\\& &+a_2a_4h^2\frac{\partial f(x_n,y(x_n))}{\partial y}+O(h^3)\\
251 &=&y(x_n)+h(a_1+a_2)f(x_n,y(x_n))+a_2a_3h^2\frac{\partial f(x_n,y(x_n))}{\partial x}+a_2a_4h^2\frac{\partial f(x_n,y(x_n))}{\partial y}+O(h^3)
252 \end{eqnarray*}
253 En identifiant cette dernière relation avec la série de Taylor, on obtient le système
254 \begin{eqnarray*}
255 \left \{
256 \begin{array}{l}
257 a_1+a_2=1\\
258 a_2a_3=\frac{1}{2}\\
259 a_2a_4=\frac{f(x_n,y(x_n))}{2}\\
260 \end{array}
261 \right.
262 \end{eqnarray*}
263 On a un système à 3 équations et 4 inconnues. Il y a donc plusieurs solutions.
264 Si on prend comme solution $a_1=a_2=\frac{1}{2}$, $a_3=1$ et $a_4=f(x_n,y(x_n))$ on obtient la méthode d'Euler modifiée :
265 \begin{eqnarray*}
266 y_{n+1}&=&y_n+\frac{h}{2}f(x_n,y_n)+\frac{h}{2}f(x_n+h,y_n+hf(x_n,y_n))
267 \end{eqnarray*}
268 Soit $\widehat{y}=hf(x_n,y_n)$ alors la dernière équation devient
269 \begin{eqnarray*}
270 \left \{
271 \begin{array}{l}
272 \widehat{y}=y_n+hf(x_n,y_n)\\
273 y_{n+1}=y_n+\frac{h}{2}f(x_n,y_n)+\frac{h}{2}f(x_n+h,\widehat{y})\end{array}
274 \right.
275 \end{eqnarray*}
276 Le calcul de $\widehat{y}$ correspond au calcul de la méthode d'Euler explicite. En fait, cette méthode consiste à faire une prédiction avec la méthode d'Euler explicite et de corriger cette prédiction par la deuxième formule.
277 On parle de méthode de prédiction-correction.
278 \\
279 \begin{encadre2}
280 \textbf{Méthode de Runge Kutta 2}\\[1cm]
281 $y0$ est donné\\
282 $\widehat{y}=y_n+hf(x_n,y_n)$\\%
283 $y_{n+1}=y_n+\frac{h}{2}f(x_n,y_n)+\frac{h}{2}f(x_n+h,\widehat{y})$
284 \end{encadre2}
285 \subsubsection{Exemple de RK2}
286 On reprend le même exemple que lors de la méthode d'Euler explicite et on trouve \\
287 \footnotesize
288 \begin{tabular}{|r|r|r|r|r|}
289 \hline
290 $x_i$ & $\widehat{y}=y_n+hf(x_{i-1},y_{i-1})$& $y_i=y_{i-1}+\frac{h}{2}f(x_{i-1},y_{i-1})$ & $e^{-x}+x$ & $\frac{y_i-y(x_i)}{y(x_i)}$ \\
291 & & $+\frac{h}{2}f(x_{i-1}+h,\widehat{y}) $ & & \\
292 \hline
293
294 $0$&&$1$& $1$&$ 0$\\ \hdashline
295 $0,1$&$1$&$ 1,005$& $1,004837418$&$0,0001617993$\\
296 $0,2$&$ 1,0145 $&$ 1,019025$&$ 1,0187307531$&$ 0,0002888368$\\
297 $0,3$&$ 1,0371225$&$ 1,041217625$&$ 1,0408182207$&$ 0,0003837407$\\
298 $0,4$&$ 1,0670958625$&$ 1,0708019506$&$ 1,070320046$&$ 0,0004502434$\\
299 $0,5$&$ 1,1037217556$&$ 1,1070757653$&$ 1,1065306597$&$ 0,0004926258$\\
300 $0,6$&$ 1,1463681888$&$ 1,1494035676$&$ 1,1488116361$&$ 0,0005152555$\\
301 $0,7$&$ 1,1944632108$&$ 1,1972102287$&$ 1,1965853038$&$ 0,0005222569$\\
302 $0,8$&$ 1,2474892058$&$ 1,249975257$&$ 1,2493289641$&$ 0,000517312$\\
303 $0,9$&$ 1,3049777313$&$ 1,3072276076$&$ 1,3065696597$&$ 0,0005035689$\\
304 $1$&$ 1,3665048468$&$ 1,3685409848$&$ 1,3678794412$&$ 0,0004836272$\\
305 $1,1$&$ 1,4316868864$&$ 1,4335295913$&$ 1,4328710837$&$ 0,0004595721$\\
306 $1,2$&$ 1,5001766321$&$ 1,5018442801$&$ 1,5011942119$&$ 0,000433034$\\
307 $1,3$&$ 1,5716598521$&$ 1,5731690735$&$ 1,572531793$&$ 0,0004052576$\\
308 $1,4$&$ 1,6458521661$&$ 1,6472180115$&$ 1,6465969639$&$ 0,0003771704$\\
309 $1,5$&$ 1,7224962104$&$ 1,7237323004$&$ 1,7231301601$&$ 0,0003494456$\\
310 $1,6$&$ 1,8013590704$&$ 1,8024777319$&$ 1,801896518$&$ 0,0003225567$\\
311 $1,7$&$ 1,8822299587$&$ 1,8832423473$&$ 1,8826835241$&$ 0,0002968227$\\
312 $1,8$&$ 1,9649181126$&$ 1,9658343244$&$ 1,9652988882$&$ 0,0002724451$\\
313 $1,9$&$ 2,0492508919$&$ 2,0500800635$&$ 2,0495686192$&$ 0,0002495375$\\
314 $2$&$ 2,1350720572$&$ 2,1358224575$&$ 2,1353352832$&$ 0,0002281488$\\
315 $2,1$&$ 2,2222402118$&$ 2,222919324$&$ 2,2224564283$&$ 0,0002082812$\\
316 $2,2$&$ 2,3106273916$&$ 2,3112419883$&$ 2,3108031584$&$ 0,0001899036$\\
317 $2,3$&$ 2,4001177894$&$ 2,4006739994$&$ 2,4002588437$&$ 0,0001729629$\\
318 $2,4$&$ 2,4906065994$&$ 2,4911099694$&$ 2,4907179533$&$ 0,0001573908$\\
319 $2,5$&$ 2,5819989725$&$ 2,5824545223$&$ 2,5820849986$&$ 0,0001431106$\\
320 $2,6$&$ 2,6742090701$&$ 2,6746213427$&$ 2,6742735782$&$ 0,0001300407$\\
321 $2,7$&$ 2,7671592084$&$ 2,7675323152$&$ 2,7672055127$&$ 0,0001180984$\\
322 $2,8$&$ 2,8607790836$&$ 2,8611167452$&$ 2,8608100626$&$ 0,0001072013$\\
323 $2,9$&$ 2,9550050707$&$ 2,9553106544$&$ 2,9550232201$&$ 9,7269E-005$\\
324 $3$&$ 3,049779589$&$ 3,0500561423$&$ 3,0497870684$&$ 8,8227E-005$\\
325
326 \hline
327 \end{tabular}
328 \normalsize
329 \subsubsection{Méthode de Runge-Kutta d'ordre 4 : RK4}
330 En reprenant la même méthodologie que pour RK2 et en utilisant une série de Taylor de l'ordre 5 on obtient un système de 8 équations à 10 inconnues.
331 On obtient ainsi une méthode de RK4 :
332 \begin{eqnarray*}
333 \left \{
334 \begin{array}{l}
335 k_1=hf(x_n,y_n)\\
336 k_2=hf(x_n+\frac{h}{2},y_n+\frac{k_1}{2})\\
337 k_3=hf(x_n+\frac{h}{2},y_n+\frac{k_2}{2})\\
338 k_4=hf(x_n+h,y_n+k_3)\\
339 y_{n+1}=y_n+\frac{1}{6}(k_1+2k_2+2k_3+k_4)\\
340 \end{array}
341 \right.
342 \end{eqnarray*}
343
344 \begin{encadre2}
345 \textbf{Méthode de Runge Kutta 4}\\[1cm]
346 $y0$ est donné\\
347 $k_1=hf(x_n,y_n)$\\
348 $k_2=hf(x_n+\frac{h}{2},y_n+\frac{k_1}{2})$\\
349 $k_3=hf(x_n+\frac{h}{2},y_n+\frac{k_2}{2})$\\
350 $k_4=hf(x_n+h,y_n+k_3)$\\
351 $y_{n+1}=y_n+\frac{1}{6}(k_1+2k_2+2k_3+k_4)$\\
352 \end{encadre2}
353
354
355 et on obtient le résultat suivant sur le même exemple que précédemment \\ \\
356 \scriptsize
357 \begin{tabular}{|r|r|r|r|r|r|r|r|}
358 \hline
359 $x_i$ & $k_1$ & $k_2$ & $k_3$ & $k_4$ & $y_i$ & $y(x_i)$ & $\frac{y_i-y(x_i)}{y(x_i)}$ \\
360 \hline
361
362 $0$&&&&&$1$&$1$&$0$\\ \hdashline
363 $0,1$&$ 0$&$ 0,005$&$ 0,00475$&$ 0,009525$&$ 1,0048375$&$ 1,004837418$&$ 8,1569E-008$\\
364 $0,2$&$ 0,00951625$&$ 0,0140404375$&$ 0,0138142281$&$ 0,0181348272$&$ 1,0187309014$&$ 1,0187307531$&$ 1,4560E-007$\\
365 $0,3$&$ 0,0181269099$&$ 0,0222205644$&$ 0,0220158816$&$ 0,0259253217$&$ 1,040818422$&$ 1,0408182207$&$ 1,9343E-007$\\
366 $0,4$&$ 0,0259181578$&$ 0,0296222499$&$ 0,0294370453$&$ 0,0329744533$&$ 1,0703202889$&$ 1,070320046$&$ 2,2692E-007$\\
367 $0,5$&$ 0,0329679711$&$ 0,0363195726$&$ 0,0361519925$&$ 0,0393527719$&$ 1,1065309344$&$ 1,1065306597$&$ 2,4826E-007$\\
368 $0,6$&$ 0,0393469066$&$ 0,0423795612$&$ 0,0422279285$&$ 0,0451241137$&$ 1,1488119344$&$ 1,1488116361$&$ 2,5964E-007$\\
369 $0,7$&$ 0,0451188066$&$ 0,0478628662$&$ 0,0477256633$&$ 0,0503462402$&$ 1,1965856187$&$ 1,1965853038$&$ 2,6314E-007$\\
370 $0,8$&$ 0,0503414381$&$ 0,0528243662$&$ 0,0527002198$&$ 0,0550714162$&$ 1,2493292897$&$ 1,2493289641$&$ 2,6063E-007$\\
371 $0,9$&$ 0,055067071$&$ 0,0573137175$&$ 0,0572013852$&$ 0,0593469325$&$ 1,3065699912$&$ 1,3065696597$&$ 2,5368E-007$\\
372 $1$&$ 0,0593430009$&$ 0,0613758508$&$ 0,0612742083$&$ 0,06321558$&$ 1,3678797744$&$ 1,3678794412$&$ 2,4361E-007$\\
373 $1,1$&$ 0,0632120226$&$ 0,0650514214$&$ 0,0649594515$&$ 0,0667160774$&$ 1,4328714154$&$ 1,4328710837$&$ 2,3148E-007$\\
374 $1,2$&$ 0,0667128585$&$ 0,0683772155$&$ 0,0682939977$&$ 0,0698834587$&$ 1,5011945393$&$ 1,5011942119$&$ 2,1809E-007$\\
375 $1,3$&$ 0,0698805461$&$ 0,0713865188$&$ 0,0713112201$&$ 0,0727494241$&$ 1,572532114$&$ 1,572531793$&$ 2,0408E-007$\\
376 $1,4$&$ 0,0727467886$&$ 0,0741094492$&$ 0,0740413161$&$ 0,075342657$&$ 1,6465972767$&$ 1,6465969639$&$ 1,8992E-007$\\
377 $1,5$&$ 0,0753402723$&$ 0,0765732587$&$ 0,0765116094$&$ 0,0776891114$&$ 1,7231304633$&$ 1,7231301601$&$ 1,7594E-007$\\
378 $1,6$&$ 0,0776869537$&$ 0,078802606$&$ 0,0787468234$&$ 0,0798122713$&$ 1,8018968106$&$ 1,801896518$&$ 1,6239E-007$\\
379 $1,7$&$ 0,0798103189$&$ 0,080819803$&$ 0,0807693288$&$ 0,0817333861$&$ 1,8826838054$&$ 1,8826835241$&$ 1,4942E-007$\\
380 $1,8$&$ 0,0817316195$&$ 0,0826450385$&$ 0,0825993675$&$ 0,0834716827$&$ 1,9652991577$&$ 1,9652988882$&$ 1,3714E-007$\\
381 $1,9$&$ 0,0834700842$&$ 0,08429658$&$ 0,0842552552$&$ 0,0850445587$&$ 2,0495688766$&$ 2,0495686192$&$ 1,2559E-007$\\
382 $2$&$ 0,0850431123$&$ 0,0857909567$&$ 0,0857535645$&$ 0,0864677559$&$ 2,1353355284$&$ 2,1353352832$&$ 1,1482E-007$\\
383 $2,1$&$ 0,0864664472$&$ 0,0871431248$&$ 0,0871092909$&$ 0,0877555181$&$ 2,2224566612$&$ 2,2224564283$&$ 1,0481E-007$\\
384 $2,2$&$ 0,0877543339$&$ 0,0883666172$&$ 0,088336003$&$ 0,0889207336$&$ 2,3108033792$&$ 2,3108031584$&$ 9,5557E-008$\\
385 $2,3$&$ 0,0889196621$&$ 0,089473679$&$ 0,0894459781$&$ 0,0899750643$&$ 2,4002590526$&$ 2,4002588437$&$ 0,000000087$\\
386 $2,4$&$ 0,0899740947$&$ 0,09047539$&$ 0,0904503252$&$ 0,0909290622$&$ 2,4907181505$&$ 2,4907179533$&$ 7,9183E-008$\\
387 $2,5$&$ 0,0909281849$&$ 0,0913817757$&$ 0,0913590962$&$ 0,0917922753$&$ 2,5820851845$&$ 2,5820849986$&$ 0,000000072$\\
388 $2,6$&$ 0,0917914815$&$ 0,0922019075$&$ 0,0921813862$&$ 0,0925733429$&$ 2,6742737531$&$ 2,6742735782$&$ 6,5411E-008$\\
389 $2,7$&$ 0,0925726247$&$ 0,0929439935$&$ 0,092925425$&$ 0,0932800822$&$ 2,7672056771$&$ 2,7672055127$&$ 5,9399E-008$\\
390 $2,8$&$ 0,0932794323$&$ 0,0936154607$&$ 0,0935986593$&$ 0,0939195664$&$ 2,8608102169$&$ 2,8608100626$&$ 5,3913E-008$\\
391 $2,9$&$ 0,0939189783$&$ 0,0942230294$&$ 0,0942078268$&$ 0,0944981956$&$ 2,9550233646$&$ 2,9550232201$&$ 4,8914E-008$\\
392 $3$&$ 0,0944976635$&$ 0,0947727804$&$ 0,0947590245$&$ 0,0950217611$&$ 3,0497872037$&$ 3,0497870684$&$ 4,4363E-008$\\
393 $3,1$&$ 0,0950212796$&$ 0,0952702157$&$ 0,0952577689$&$ 0,0954955027$&$ 3,1450493289$&$ 3,1450492024$&$ 4,0223E-008$\\
394 $3,2$&$ 0,0954950671$&$ 0,0957203138$&$ 0,0957090514$&$ 0,095924162$&$ 3,2407623221$&$ 3,240762204$&$ 3,6459E-008$\\
395 $3,3$&$ 0,0959237678$&$ 0,0961275794$&$ 0,0961173888$&$ 0,0963120289$&$ 3,3368832777$&$ 3,3368831674$&$ 0,000000033$\\
396
397 \hline
398 \end{tabular}
399 \normalsize
400 \\
401
402 On remarque que la méthode est assez précise c'est pourquoi c'est une méthode très employée en ingénierie.
403
404 \subsection{Système d'équations différentielles d'ordre 1}
405 \label{sysordre1}
406 \subsubsection{La méthode}
407 Soit à résoudre le système à $m$ équations suivant
408 \begin{eqnarray*}
409 \left \{
410 \begin{array}{l}
411 y_1'(x)=f_1\left(x,y_1(x),y_2(x),...,y_m(x)\right)\quad y_1(x_0)=y_{1,0}\\
412 y_2'(x)=f_2\left(x,y_1(x),y_2(x),...,y_m(x)\right)\quad y_2(x_0)=y_{2,0}\\
413 \vdots\\
414 y_m'(x)=f_m\left(x,y_1(x),y_2(x),...,y_m(x)\right)\quad y_m(x_0)=y_{m,0}
415 \end{array}
416 \right.
417 \end{eqnarray*}
418 On donne ici l'algorithme de RK4 pour ce système d'équations différentielles couplées (attention ici i est l'itérateur de fonction et n l'itérateur de pas de calcul).
419 \begin{eqnarray*}
420 \left \{
421 \begin{array}{l}
422 k_{i,1}=hf_i(x_n,y_{1,n},y_{2,n},...,y_{m,n})\quad 1\le i\le m\\
423 k_{i,2}=hf_i(x_n+\frac{h}{2},y_{1,n}+\frac{k_{1,1}}{2},y_{2,n}+\frac{k_{2,1}}{2},...,y_{m,n}+\frac{k_{m,1}}{2})\quad 1\le i\le m\\
424 k_{i,3}=hf_i(x_n+\frac{h}{2},y_{1,n}+\frac{k_{1,2}}{2},y_{2,n}+\frac{k_{2,2}}{2},...,y_{m,n}+\frac{k_{m,2}}{2})\quad 1\le i\le m\\
425 k_{i,4}=hf_i(x_n+h,y_{1,n}+k_{1,3},y_{2,n}+k_{2,3},...,y_{m,n}+k_{m,3})\quad 1\le i\le m\\
426 y_{i,n+1}=y_{i,n}+\frac{1}{6}(k_{i,1}+2k_{i,2}+2k_{i,3}+k_{i,4})\quad 1\le i\le m\\
427 x_{n+1}=x_n+h
428 \end{array}
429 \right.
430 \end{eqnarray*}
431
432 \begin{encadre2}
433 \textbf{Méthode de Runge Kutta 4 à m équations couplées}\\[1cm]
434 $y0$ est donné\\
435 $k_{i,1}=hf_i(x_n,y_{1,n},y_{2,n},...,y_{m,n})\quad 1\le i\le m$\\
436 $k_{i,2}=hf_i(x_n+\frac{h}{2},y_{1,n}+\frac{k_{1,1}}{2},y_{2,n}+\frac{k_{2,1}}{2},...,y_{m,n}+\frac{k_{m,1}}{2})\quad 1\le i\le m$\\
437 $k_{i,3}=hf_i(x_n+\frac{h}{2},y_{1,n}+\frac{k_{1,2}}{2},y_{2,n}+\frac{k_{2,2}}{2},...,y_{m,n}+\frac{k_{m,2}}{2})\quad 1\le i\le m$\\
438 $k_{i,4}=hf_i(x_n+h,y_{1,n}+k_{1,3},y_{2,n}+k_{2,3},...,y_{m,n}+k_{m,3})\quad 1\le i\le m$\\
439 $y_{i,n+1}=y_{i,n}+\frac{1}{6}(k_{i,1}+2k_{i,2}+2k_{i,3}+k_{i,4})\quad 1\le i\le m$\\
440 \end{encadre2}
441
442
443 \subsubsection{Exemple}
444
445 On cherche à résoudre\\
446 \begin{eqnarray*}
447 \left \{
448 \begin{array}{l}
449 y_1'(x)=y_2(x)\\
450 y_2'(x)=2y_2(x)-y_1(x)\\
451 y_1(0)=2\\
452 y_2(0)=1\\
453 \end{array}
454 \right.
455 \end{eqnarray*}
456 On calcule le résultat toujours pour $h=0.1$.
457 \\On pose
458 \begin{eqnarray*}
459 \left \{
460 \begin{array}{l}
461 f_1(x,y_1,y_2)=y_2\\
462 f_2(x,y_1,y_2)=2y_2-y_1\\
463 k_{1,1}=hf_1(x_n,y_{1,n},y_{2,n})\\
464 k_{2,1}=hf_2(x_n,y_{1,n},y_{2,n})\\
465 k_{1,2}=hf_1(x_n+\frac{h}{2},y_{1,n}+\frac{k_{1,1}}{2},y_{2,n}+\frac{k_{2,1}}{2})\\
466 k_{2,2}=hf_2(x_n+\frac{h}{2},y_{1,n}+\frac{k_{1,1}}{2},y_{2,n}+\frac{k_{2,1}}{2})\\
467 k_{1,3}=hf_1(x_n+\frac{h}{2},y_{1,n}+\frac{k_{1,2}}{2},y_{2,n}+\frac{k_{2,2}}{2})\\
468 k_{2,3}=hf_2(x_n+\frac{h}{2},y_{1,n}+\frac{k_{1,2}}{2},y_{2,n}+\frac{k_{2,2}}{2})\\
469 k_{1,4}=hf_1(x_n+h,y_{1,n}+k_{1,3},y_{2,n}+k_{2,3})\\
470 k_{2,4}=hf_2(x_n+h,y_{1,n}+k_{1,3},y_{2,n}+k_{2,3})\\
471 \end{array}
472 \right.
473 \end{eqnarray*}
474
475
476
477
478
479 \footnotesize
480 \begin{turn}{-90}
481 \begin{tabular}{|r|r|r|r|r|r|r|r|r|r|r|}
482 \hline
483 $x_i$ & $k_{1.1}$ & $k_{2.1}$ & $k_{1.2}$ & $k_{2.2}$ & $k_{1.3}$ & $k_{2.3}$ & $k_{1.4}$ & $k_{2.4}$ & $y_{1,i}$ & $y_{2.i}$ \\
484 \hline
485
486 $0$&&&&&&&&&$2$&$1$\\ \hdashline
487 $0,1$&$ 0,1$&$ 0$&$ 0,1$&$ -0,005$&$ 0,09975$&$ -0,0055$&$ 0,09945$&$ -0,011075$&$ 2,099825$&$ 0,9946541667$\\
488 $0,2$&$ 0,0994654167$&$ -0,0110516667$&$ 0,0989128333$&$ -0,0171301042$&$ 0,0986089115$&$ -0,0177103188$&$ 0,0976943848$&$ -0,0244546216$&$ 2,1985255485$&$ 0,9771229777$\\
489 $0,3$&$ 0,0977122978$&$ -0,0244279593$&$ 0,0964908998$&$ -0,0317563701$&$ 0,0961244793$&$ -0,0324281413$&$ 0,0944694836$&$ -0,0405260355$&$ 2,2947609718$&$ 0,9449024747$\\
490 $0,4$&$ 0,0944902475$&$ -0,0404956022$&$ 0,0924654674$&$ -0,0492696748$&$ 0,0920267637$&$ -0,0500458431$&$ 0,0894856632$&$ -0,0597074472$&$ 2,3869210339$&$ 0,8950967938$\\
491 $0,5$&$ 0,0895096794$&$ -0,0596727446$&$ 0,0865260421$&$ -0,0701155031$&$ 0,0860039042$&$ -0,071010597$&$ 0,0824086197$&$ -0,0824752545$&$ 2,4730840659$&$ 0,8243634273$\\
492 $0,6$&$ 0,0824363427$&$ -0,0824357211$&$ 0,0783145567$&$ -0,0948011104$&$ 0,0776962872$&$ -0,09583156$&$ 0,0728531867$&$ -0,1093716619$&$ 2,5509692687$&$ 0,7288513066$\\
493 $0,7$&$ 0,0728851307$&$ -0,1093266655$&$ 0,0674187974$&$ -0,1239035886$&$ 0,0666899512$&$ -0,1250879643$&$ 0,0603763342$&$ -0,1410132535$&$ 2,6178824291$&$ 0,6041308025$\\
494 $0,8$&$ 0,0604130802$&$ -0,1409620824$&$ 0,0533649761$&$ -0,1580789447$&$ 0,052509133$&$ -0,1594382257$&$ 0,0444692577$&$ -0,1781006408$&$ 2,6706541885 $&$0,4451146252$\\
495 $0,9$&$ 0,0445114625$&$ -0,1780424938$&$ 0,0356093378$&$ -0,1980723163$&$ 0,0346078467$&$ -0,1996301923$&$ 0,0245484433$&$ -0,221429317$&$ 2,7055699009$&$ 0,2459684872$\\
496 $1$&$ 0,0245968487$&$ -0,2213632927$&$ 0,0135286841$&$ -0,2447294644$&$ 0,0123603755$&$ -0,2465126733$&$ -5,4418E-005$&$ -0,2719018649$&$ 2,7182899925$&$ 1,0248E-005$\\
497 $1,1$&$ 1,0248E-006$&$ -0,2718269496$&$ -0,0135903226$&$ -0,2990096958$&$ -0,01494946$&$ -0,301048403$&$ -0,0301038155$&$ -0,3305416842$&$ 2,7037595998$&$ -0,3004038902$\\
498 $1,2$&$ -0,030040389$&$ -0,330456738$&$ -0,0465632259$&$ -0,3620003924$&$ -0,0481404086$&$ -0,364328616$&$ -0,0664732506$&$ -0,3985084204$&$ 2,656106115$&$ -0,6640077527$\\
499 $1,3$&$ -0,0664007753$&$ -0,3984121621$&$ -0,0863213834$&$ -0,4349333395$&$ -0,0881474422$&$ -0,4375894268$&$ -0,110159718$&$ -0,4771153032$&$ 2,568523091$&$ -1,1007699191$\\
500 $1,4$&$ -0,1100769919$&$ -0,4770062929$&$ -0,1339273066$&$ -0,5192030726$&$ -0,1360371455$&$ -0,5222302348$&$ -0,1623000154 $&$-0,5678486253$&$ 2,4331387724$&$ -1,6220568412$\\
501 $1,5$&$ -0,1622056841$&$ -0,5677252455$&$ -0,1905919464$&$ -0,6163874858$&$ -0,1930250584$&$ -0,6198343967$&$ -0,2241891238$&$ -0,672389619$&$ 2,2408673028$&$ -2,2408166128$\\
502 $1,6$&$ -0,2240816613$&$ -0,6722500528$&$ -0,2576941639$&$ -0,7282709751$&$ -0,26049521$&$ -0,7321924422$&$ -0,2973009055$&$ -0,7926390203$&$ 1,981240417$&$ -2,9717859308$\\
503 $1,7$&$ -0,2971785931$&$ -0,7924812279$&$ -0,3368026545$&$ -0,856870421$&$ -0,3400221141$&$ -0,8613281372$&$ -0,3833114068$&$ -0,9307446439$&$ 1,6422171608$&$ -3,8317230955$\\
504 $1,8$&$ -0,3831723095$&$ -0,9305663352$&$ -0,4297006263$&$ -1,0044643532$&$ -0,4333955272$&$ -1,0095277392$&$ -0,4841250835$&$ -1,0891323303$&$ 1,2099688775$&$ -4,8396702372$\\
505 $1,9$&$ -0,4839670237$&$ -1,0889309352$&$ -0,5384135705$&$ -1,1736256775$&$ -0,5426483076$&$ -1,1793728244$&$ -0,6019043062$&$ -1,2705406693$&$ 0,6686363631$&$ -6,0172483386$\\
506 $2$&$ -0,6017248339$&$ -1,270313304$&$ -0,6652404991$&$ -1,3672583927$&$ -0,6700877535$&$ -1,3737771184$&$ -0,7391025457$&$ -1,4780599524$&$ 5,5715E-005$&$ -7,3889890517$\\
507
508 \hline
509 \end{tabular}
510 \end{turn}
511 \normalsize
512 \\ \\
513 La solution exacte de ce système est
514 \begin{eqnarray*}
515 \left \{
516 \begin{array}{l}
517 y_1(x)=2e^x-xe^x\\
518 y_2(x)=e^x-xe^x\\
519 \end{array}
520 \right.
521 \end{eqnarray*}
522 et le tracé des résultats permet de montrer la bonne précision de cette méthode.
523 \begin{figure}
524 \begin{center}
525 \includegraphics[width=12cm,bb=0 0 623 356]{./rk4couple.jpg}
526 % rk5couple.jpg: 831x475 pixel, 96dpi, 21.99x12.57 cm, bb=0 0 623 356
527 \end{center}
528 \caption{Solution du problème de RK4 couplé et comparaison avec la solution exacte}
529 \end{figure}
530
531 \section{Résolution d'équation différentielle d'ordre supérieur}
532 Il existe deux types d'équation différentielle d'ordre supérieur :
533 \begin{itemize}
534 \item Les équations où les conditions initiales sont connues.
535 \item Les équations où les conditions aux frontières sont connues.
536 \end{itemize}
537 \subsection{Équations différentielles avec conditions initiales}
538 \subsubsection{La méthode}
539 Ce système d'équations s'écrit
540 \begin{eqnarray*}
541 \left \{
542 \begin{array}{l}
543 y^{(m)}=f(x,y(x),y'(x),...,y^{(m-1)})\\
544 y(x_0)=y_0\\
545 y'(x_0)=y_0'\\
546 \vdots\\
547 y^{(m-1)}(x_0)=y_0^{(m-1)}
548 \end{array}
549 \right.
550 \end{eqnarray*}
551 Pour résoudre ce système on écrit les changements de variables suivants
552 \begin{eqnarray*}
553 \left \{
554 \begin{array}{l}
555 y_1(x)=y(x)\\
556 y_2(x)=y'(x)=y_1'(x)\\
557 y_3(x)=y''(x)=y_2'(x)\\
558 \vdots\\
559 y_m(x)=y^{(m-1)}(x)=y_{m-1}'(x)
560 \end{array}
561 \right.
562 \end{eqnarray*}
563 Le système de départ devient alors\\
564 \begin{eqnarray*}
565 \left \{
566 \begin{array}{l}
567 y_1'(x)=y_2(x)\\
568 y_2'(x)=y_3(x)\\
569 \vdots \\
570 y_{m-1}'=y_m(x)\\
571 y_{m}'=f(x,y_1(x),y_2(x)...,y_{m}(x))\\
572 y_1(x_0)=y(x_0)=y_0\\
573 y_2(x_0)=y(x_0)'=y_0'\\
574 y_3(x_0)=y(x_0)''=y_0''\\
575 \vdots\\
576 y_m(x_0)=y^{(m-1)}(x_0)=y_0^{m-1}
577 \end{array}
578 \right.
579 \end{eqnarray*}
580 On aboutit à un système de m équations différentielles d'ordre 1 couplées qui correspond au cas étudié à la section \ref{sysordre1}.
581 \subsubsection{Exemple}
582 Soit à résoudre
583 \begin{eqnarray*}
584 \left \{
585 \begin{array}{l}
586 y''(x)=-y'(x)+(y(x))^2+x^2-5\\
587 y(0)=1\\
588 y'(0)=2\\
589 \end{array}
590 \right.
591 \end{eqnarray*}
592 On pose
593 \begin{eqnarray*}
594 \left \{
595 \begin{array}{l}
596 y_1(x)=y(x)\\
597 y_2(x)=y'(x)=y_1'(x)\\
598 y_2'(x)=-y_2(x)+(y_1(x))^2+x^2-5\\
599 y_1(0)=y(0)=1\\
600 y_2(0)=y'(0)=2\\
601 \end{array}
602 \right.
603 \end{eqnarray*}
604 Ce système peut être résolu avec la méthode RK4 couplée de la section \ref{sysordre1}
605 \newpage
606 \footnotesize
607 \begin{turn}{-90}
608 \begin{tabular}{|r|r|r|r|r|r|r|r|r|r|r|}
609 \hline
610 $x_i$ & $y_{1} = y$ & $y_{2}= y'$& $k_{1.1}$ & $k_{2.1}$ & $k_{1.2}$ & $k_{2.2}$ & $k_{1.3}$ & $k_{2.3}$ & $k_{1.4}$ & $k_{2.4}$ \\
611 \hline
612 $0$ & $1$ & $2$ & $0,2$ & $-0,6$ & $0,17$ & $-0,54875$ & $0,1725625$ & $-0,55459$ & $0,144541$ & $-0,506050718$\\
613 $0,1$ & $1,171611$ & $1,447878214$ & $0,144787821$ & $-0,506520588$ & $0,119461792$ & $-0,46245697$ & $0,121664973$ & $-0,467794686$ & $0,098008353$ & $-0,426752079$\\
614 $0,2$ & $1,292452617$ & $0,982248884$ & $0,098224888$ & $-0,427181512$ & $0,076865813$ & $-0,390636131$ & $0,078693082$ & $-0,395317454$ & $0,058693143$ & $-0,36168909$\\
615 $0,3$ & $1,370458587$ & $0,588785922$ & $0,058878592$ & $-0,362062918$ & $0,040775446$ & $-0,332554038$ & $0,04225089$ & $-0,336555544$ & $0,025223038$ & $-0,309648231$\\
616 $0,4$ & $1,412150971$ & $0,253797536$ & $0,025379754$ & $-0,309962717$ & $0,009881618$ & $-0,286614474$ & $0,01104903$ & $-0,289984119$ & $-0,003618658$ & $-0,268831517$\\
617 $0,5$ & $1,422754703$ & $-0,0348677$ & $-0,00348677$ & $-0,269090135$ & $-0,016941277$ & $-0,250881407$ & $-0,01603084$ & $-0,253699218$ & $-0,028856692$ & $-0,237256106$\\
618 $0,6$ & $1,40637342$ & $-0,287452282$ & $-0,028745228$ & $-0,237466152$ & $-0,040618536$ & $-0,22336484$ & $-0,03991347$ & $-0,225719146$ & $-0,051317143$ & $-0,212961578$\\
619 $0,7$ & $1,36618569$ & $-0,512218233$ & $-0,051221823$ & $-0,213131843$ & $-0,061878415$ & $-0,202157511$ & $-0,061329699$ & $-0,204131984$ & $-0,071635022$ & $-0,194100063$\\
620 $0,8$ & $1,304640178$ & $-0,715520049$ & $-0,071552005$ & $-0,194239396$ & $-0,081263975$ & $-0,185484396$ & $-0,080826225$ & $-0,187152105$ & $-0,090267215$ & $-0,178960726$\\
621 $0,9$ & $1,223640241$ & $-0,901932236$ & $-0,090193224$ & $-0,179077232$ & $-0,099147085$ & $-0,171706406$ & $-0,098778544$ & $-0,173128195$ & $-0,107506043$ & $-0,165962573$\\
622 $1$ & $1,124715154$ & $-1,074383737$ & $-0,107438374$ & $-0,166063209$ & $-0,115741534$ & $-0,15930523$ & $-0,115403635$ & $-0,16053067$ & $-0,123491441$ & $-0,153637585$\\
623 $1,1$ & $1,009178461$ & $-1,234279169$ & $-0,123427917$ & $-0,153727966$ & $-0,131114315$ & $-0,146866786$ & $-0,130771256$ & $-0,147936627$ & $-0,13822158$ & $-0,140618499$\\
624 $1,2$ & $0,878275021$ & $-1,381604718$ & $-0,138160472$ & $-0,140702827$ & $-0,145195613$ & $-0,133074767$ & $-0,14481421$ & $-0,134024212$ & $-0,151562893$ & $-0,125640631$\\
625 $1,3$ & $0,733317853$ & $-1,515028287$ & $-0,151502829$ & $-0,125721664$ & $-0,157788912$ & $-0,116721726$ & $-0,157338915$ & $-0,117584087$ & $-0,163261237$ & $-0,107563589$\\
626 $1,4$ & $0,575814566$ & $-1,6320111$ & $-0,16320111$ & $-0,107642648$ & $-0,168583242$ & $-0,096742009$ & $-0,16803821$ & $-0,097552309$ & $-0,172956341$ & $-0,085415503$\\
627 $1,5$ & $0,407581173$ & $-1,728952232$ & $-0,172895223$ & $-0,085492536$ & $-0,17716985$ & $-0,072267474$ & $-0,176508597$ & $-0,073065543$ & $-0,180201777$ & $-0,058458769$\\
628 $1,6$ & $0,230838858$ & $-1,801388454$ & $-0,180138845$ & $-0,058532497$ & $-0,18306547$ & $-0,042702926$ & $-0,182273992$ & $-0,043535389$ & $-0,184492384$ & $-0,026271761$\\
629 $1,7$ & $0,048287165$ & $-1,844268602$ & $-0,18442686$ & $-0,026339975$ & $-0,185743859$ & $-0,007813189$ & $-0,18481752$ & $-0,0087337$ & $-0,18530023$ & $0,011164284$\\
630 $1,8$ & $-0,136854476$ & $-1,852313514$ & $-0,185231351$ & $0,011104266$ & $-0,184676138$ & $0,032191793$ & $-0,183621762$ & $0,031124684$ & $-0,182118883$ & $0,053389385$\\
631 $1,9$ & $-0,320845482$ & $-1,82045908$ & $-0,182045908$ & $0,05334009$ & $-0,179378903$ & $0,076592464$ & $-0,178216285$ & $0,075320178$ & $-0,17451389$ & $0,099420155$\\
632 $2$ & $-0,499470511$ & $-1,744361492$ & $-0,174436149$ & $0,099383228$ & $-0,169466988$ & $0,124137337$ & $-0,168229282$ & $0,122608714$ & $-0,162175278$ & $0,147757579$\\
633 $2,1$ & $-0,668137838$ & $-1,620922673$ & $-0,162092267$ & $0,147733084$ & $-0,154705613$ & $0,173083275$ & $-0,153438104$ & $0,171263734$ & $-0,144965894$ & $0,196464597$\\
634 $2,2$ & $-0,822028771$ & $-1,448774057$ & $-0,144877406$ & $0,196450536$ & $-0,135054879$ & $0,221312085$ & $-0,133811801$ & $0,219192827$ & $-0,122958123$ & $0,243321243$\\
635 $2,3$ & $-0,956290252$ & $-1,22864379$ & $-0,122864379$ & $0,243313484$ & $-0,110698705$ & $0,266524602$ & $-0,109538149$ & $0,264129618$ & $-0,096451417$ & $0,286050435$\\
636 $2,4$ & $-1,06625517$ & $-0,96353173$ & $-0,096353173$ & $0,286043182$ & $-0,082051014$ & $0,306496828$ & $-0,081028332$ & $0,303885381$ & $-0,065964635$ & $0,322590578$\\
637 $2,5$ & $-1,147667919$ & $-0,658632034$ & $-0,065863203$ & $0,322577369$ & $-0,049734335$ & $0,339365858$ & $-0,04889491$ & $0,336628763$ & $-0,032200327$ & $0,351376588$\\
638 $2,6$ & $-1,196888256$ & $-0,320974834$ & $-0,032097483$ & $0,351351633$ & $-0,014529902$ & $0,363901518$ & $-0,013902407$ & $0,361150902$ & $0,004017607$ & $0,371583796$\\
639 $2,7$ & $-1,211045672$ & $0,041198544$ & $0,004119854$ & $0,371543308$ & $0,02269702$ & $0,379717633$ & $0,023105736$ & $0,377071592$ & $0,041827014$ & $0,383293116$\\
640 $2,8$ & $-1,188120275$ & $0,41926769$ & $0,041926769$ & $0,38323621$ & $0,06108858$ & $0,387386941$ & $0,061296116$ & $0,3849521$ & $0,080421979$ & $0,38755129$\\
641 $2,9$ & $-1,126933919$ & $0,805178621$ & $0,080517862$ & $0,387480144$ & $0,099891869$ & $0,388444384$ & $0,099940081$ & $0,386300231$ & $0,119147885$ & $0,386323749$\\
642 $3$ & $-1,027045644$ & $1,192394141$ &&&&&&&&\\ \hline
643 \end{tabular}
644 \end{turn}
645 \normalsize
646 \begin{center}
647 \includegraphics[width=13cm,bb=0 0 733 477]{equadiffordre2.jpg}
648 % equadiffordre2.jpg: 977x636 px, 96dpi, 25.85x16.83 cm, bb=0 0 733 477
649 \end{center}
650
651
652
653
654
655 \subsection{Équations différentielles avec conditions aux frontières}
656 Contrairement aux différents cas dans ce chapitre, quelques fois nous connaissons les conditions aux frontières au lieu des conditions initiales.
657 Le cas le plus courant en mécanique est l'équation de la flèche d'une poutre de longueur $L$ en flexion appuyée sur deux appuis simples. L'équation est $y''=\frac{M}{EI}$ avec $y(0)=y(L)=0$.
658 \\En règle générale un tel problème s'écrit à l'ordre 2
659 \begin{eqnarray*}
660 \left \{
661 \begin{array}{l}
662
663 y''(x)=f(x,y(x),y'(x))\\
664 y(x_0)=y_0\\
665 y(x_n)=y_n\\
666 \end{array}
667 \right.
668 \end{eqnarray*}
669
670 \subsubsection{Méthode de TIR}
671 Dans ce cas, on a appris à résoudre les cas ou les conditions initiales sont connues. On va donc essayer de se ramener à ce cas.
672 On va poser la condition initiale manquante $y'(0)=y'_0$ et on teste (on dit qu'on tire) le résultat via une méthode RK4 couplée puis on rectifie le résultat.
673 \\
674 Si la fonction $f$ est linéaire pour les différentes dérivées de $y$ alors il suffit de tirer deux fois pour obtenir la solution. Le premier tir avec $y'(0)=0$ donne une solution $y_{s1}(x)$ et le deuxième tir avec $y'(0)=1$ donne une solution $y_{s2}(x)$ .
675 La solution est alors
676 \begin{eqnarray*}
677 y(x)=\frac{y_n-y_{s2}(x_n)}{y_{s1}(x_n)-y_{s2}(x_n)}y_{s1}(x)+\frac{y_{s1}(x_n)-y_n}{y_{s1}(x_n)-y_{s2}(x_n)}y_{s2}(x)
678 \end{eqnarray*}
679
680 Si la fonction $f$ est non linéaire, le problème est plus complexe parce qu'il faut tirer plusieurs fois. On pose $y'(0)=\beta$ et effectue un tir et on obtient $y_\beta(x)$ et on construit la fonction $g(\beta)=y_\beta(x_n)-y_n$. On recherche $\beta$ pour annuler la fonction $g$,
681 Cette fonction $g$ est une fonction non linéaire et les méthodes du chapitre \ref{equanonli} doivent être employées:
682 \begin{itemize}
683 \item la méthode de la bissection pose le problème de choisir adéquatement les bornes $\beta_0$ et $\beta_1$ de la recherche de la racine.
684 \item la méthode du point fixe ne peut être utilisé parce que la fonction $g$ ne peut pas être mise sous la forme $\beta=h(\beta)$.
685 \item la méthode de Newton nécessite de connaître $g'(\beta)=\left[y_\beta(x_n)-y_n\right]')$. Comme nous ne connaissons pas la fonction $g$ de manière littérale, nous ne pouvons pas la dériver. Il faut donc utiliser une méthode numérique de dérivation. Par exemple on peut définir $g'(\beta)=\frac{g(\beta+\epsilon)-g(\beta)}{\epsilon}$.
686 \end{itemize}
687 Cette méthode de TIR dans le cas d'une fonction $f$ non linéaire consiste à effectuer une recherche de racine où à chaque itération de la solution on doit résoudre un (ou plusieurs pour obtenir $g'(\beta)$) système d'équations linaires d'ordre 1 par la méthode de RK4 couplée.
688 \subsubsection{Exemple méthode de TIR}
689
690 \textbf{}\\
691 \textbf{Énoncé}\\
692 L'objectif est de trouver la flèche d'une poutre ($E=200GPa$ et $I=2.56$ $10^{-6}mm^4$) sur deux appuis.
693 \begin{center}
694 \includegraphics[width=10cm,bb=0 0 276 164]{./poutrefleche.jpg}
695 % poutrefleche.jpg: 368x218 pixel, 96dpi, 9.74x5.77 cm, bb=0 0 276 164
696 \end{center}
697
698 La flèche est donné par l'expression
699 \begin{eqnarray*}
700 y''(x)=\frac{M(x)}{EI}
701 \end{eqnarray*}
702 où M est le moment fléchissant de la poutre. \\
703 Les conditions initiales sont $y(0)=y(4)=0$\\
704
705 Dans ce cas le moment fléchissant vaut
706 \begin{eqnarray*}
707 \left \{
708 \begin{array}{l}
709 M(x)=\frac{12000x}{EI}\text{ si $x\leq$1}\\
710 M(x)=\frac{12000x-16000(x-1)}{EI}=\frac{-4(x-4)}{EI}\text{ si $x$>1}\\
711 \end{array}
712 \right.
713 \end{eqnarray*}
714
715 Le problème se met en équation selon la manière suivante :
716 \begin{eqnarray*}
717 \left \{
718 \begin{array}{l}
719 y''(x)=\frac{M(x)}{EI}\\
720 y(0)=y(4)=0\\
721 \end{array}
722 \right.
723 \end{eqnarray*}
724 et il se transforme un problème du premier ordre couplé :
725 \begin{eqnarray*}
726 \left \{
727 \begin{array}{l}
728 y'_1(x)=y_2(x)\\
729 y'_2(x)=\frac{M(x)}{EI}\\
730 y_1(0)=0\\
731 y_2(0)=\beta\\
732 \end{array}
733 \right.
734 \end{eqnarray*}
735 La solution du problème est $y_1(x)$ et on doit retrouver $y_1(4)=0$ en choisissant le bon $\beta$.
736
737 \textbf{Résolution linéaire}\\
738 La solution consiste à tirer avec $\beta=0$ en appliquant la méthode RK4 couplée.
739 \begin{center}
740 \includegraphics[width=10cm,bb=0 0 734 478]{./libeta0.jpg}
741 % libeta0.jpg: 978x637 pixel, 96dpi, 25.88x16.85 cm, bb=0 0 734 478
742 \end{center}
743 puis avec $\beta=1$
744 \begin{center}
745 \includegraphics[width=10cm,bb=0 0 734 478]{./libeta1.jpg}
746 % libeta1.jpg: 978x637 pixel, 96dpi, 25.88x16.85 cm, bb=0 0 734 478
747 \end{center}
748 La combinaison des 2 donne le résultat final
749 \begin{center}
750 \includegraphics[width=10cm,bb=0 0 734 478]{./liy.jpg}
751 % liy.jpg: 978x637 pixel, 96dpi, 25.88x16.85 cm, bb=0 0 734 478
752 \end{center}
753 La solution est obtenue en 2 tirs (RK4 couplée).\\
754 \textbf{Résolution non linéaire}\\
755 On tire avec $\beta=1$ et avec $\beta=1.001$($\epsilon=0.001$) et on a
756 \begin{center}
757 \includegraphics[width=10cm,bb=0 0 734 478]{./nonliyb1.jpg}
758 % nonliyb1.jpg: 978x637 pixel, 96dpi, 25.88x16.85 cm, bb=0 0 734 478
759 \end{center}
760 \begin{center}
761 \includegraphics[width=10cm,bb=0 0 734 478]{./nonliybeps1.jpg}
762 % nonliybeps1.jpg: 978x637 pixel, 96dpi, 25.88x16.85 cm, bb=0 0 734 478
763 \end{center}
764 on résout la fonction $g(\beta)=y_\beta(x_n)-y_n$ par la méthode de Newton. on a \\
765 \begin{eqnarray*}
766 \beta_{i+1}&=&\beta_i-\frac{g(\beta_i)}{g'(\beta_i)}\\
767 g'(\beta_i)&=&\frac{g(\beta_i+\epsilon)-g(\beta_i)}{\epsilon}\\
768 \beta_{i+1}&=&\beta_i-\frac{g(\beta_i)\epsilon}{g'(\beta_i+\epsilon)-g(\beta_i)}\\
769 \beta_{i+1}&=&1-\frac{4.1093749999*0.001}{4.11337499999-4.1093749999}=-0.0273437499999
770 \end{eqnarray*}
771 On tire avec cette dernière valeur de $\beta$ et $\beta+\epsilon$
772 \begin{center}
773 \includegraphics[width=10cm,bb=0 0 734 478]{./nonliyb2.jpg}
774 % nonliyb2.jpg: 978x637 pixel, 96dpi, 25.88x16.85 cm, bb=0 0 734 478
775 \end{center}
776 \begin{center}
777 \includegraphics[width=10cm,bb=0 0 734 478]{./nonliybeps2.jpg}
778 % nonliybeps2.jpg: 978x637 pixel, 96dpi, 25.88x16.85 cm, bb=0 0 734 478
779 \end{center}
780 on résout à nouveau la fonction $g(\beta)=y_\beta(x_n)-y_n$ par la méthode de Newton et on a \\
781 \begin{eqnarray*}
782 \beta_{i+1}=-0.0273437499999-\frac{0.000000000001375759*0.001}{0.0004000000001375}=-0.0273437499999
783 \end{eqnarray*}
784 $\beta$ ne change plus la solution est convergée et le résultat obtenu est le résultat final.
785 La solution est obtenue en 4 tirs (RK4 couplée).
786 \subsubsection{Méthode des différences finies}
787 On considère ici l'équation différentielle avec conditions aux frontières suivante :
788 \begin{eqnarray*}
789 \left \{
790 \begin{array}{l}
791 y''(x)=a_2(x)y'(x)+a_1(x)y(x)+a_0(x)\\
792 y(a)=y_a\\
793 y(b)=y_b\\
794 \end{array}
795 \right.
796 \end{eqnarray*}
797 On récrit ce problème sous la forme suivante
798 \begin{eqnarray*}
799 \left \{
800 \begin{array}{l}
801 y''(x)-a_2(x)y'(x)-a_1(x)y(x)=a_0(x)\\
802 y(a)=y_a\\
803 y(b)=y_b\\
804 \end{array}
805 \right.
806 \end{eqnarray*}
807 et on introduit les différences centrées d'ordre 2 calculées dans le chapitre \ref{diffinte}. Pour cela on divise l'intervalle $[a,b]$ en $n$ sous intervalle de longueur $h=\frac{b-a}{h}$ et on a $x_i=a+ih$ et $x_n=a+nh=b$.
808 \begin{eqnarray*}
809 y''(x_i)&=&\frac{y_{i+1}-2y_i+y_{i-1}}{h^2}+O(h^2)\\
810 y'(x_i)&=&\frac{y_{i+1}-y_{i-1}}{2h}+O(h^2)\\
811 \end{eqnarray*}
812 L'équation différentielle devient
813 \begin{eqnarray*}
814 \frac{y_{i+1}-2y_i+y_{i-1}}{h^2}-a_2(x_i)\frac{y_{i+1}-y_{i-1}}{2h}-a_1(x_i)y(x)=a_0(x_i)\quad 1 \le i \le n-1\\
815 -(2+ha_2(x_i))y_{i-1}+(4+2h^2a_1(x_i))y_i+(-2+ha_2(x_i))y_{i+1}=-2h^2a_0(x_i)\quad 1 \le i \le n-1\\
816 \end{eqnarray*}
817 On obtient ainsi $n-1$ équations pour $n-1$ inconnues ($(n+1)$ $y_i$ dont 2 connues $y_0$ $y_n$). Nous avons affaire un système d'équations linéaires que nous pouvons résoudre avec une méthode du chapitre \ref{equalgebrique}
818
819 Ce système est un système tridiagonal, il se résout à l'aide de l'algorithme \ref{LUtri}. Il s'écrit\\
820 \begin{turn}{-90}
821 \begin{minipage}[c][15cm][c]{20cm}
822 \footnotesize
823 \begin{eqnarray*}
824 \begin{pmatrix}
825 4+2h^2a_1(x_1) & -2+ha_2(x_1) & 0 & 0 & ... & 0\\
826 -2-ha_2(x_2) & 4+2h^2a_1(x_2) & -2+ha_2(x_2)&0 & ... & 0\\
827 \vdots& &\ddots & & & &\vdots\\
828 0 & ...& 0& -2-ha_2(x_{n-2}) & 4+2h^2a_1(x_{n-2}) & -2+ha_2(x_{n-2})\\
829 0 & ...& 0 &0& & -2-ha_2(x_{n-1}) & 4+2h^2a_1(x_{n-1}) \\
830 \end{pmatrix}
831 \begin{pmatrix}
832 y_1\\
833 y_2\\
834 \vdots\\
835 y_{n-2}\\
836 y_{n-1}\\
837 \end{pmatrix}
838 =
839 \begin{pmatrix}
840 -2h^2a_0(x_1)+(2+ha_2(x_1))y_0\\
841 -2h^2a_0(x_2)\\
842 \vdots\\
843 -2h^2a_0(x_{n-2})\\
844 -2h^2a_0(x_{n-1})+(2+ha_2(x_{n-1}))y_n\\
845 \end{pmatrix}
846 \end{eqnarray*}
847 \end{minipage}
848 \end{turn}
849 \\En prenant des différences centrées d'ordre 2, nous obtenons une méthode moins précise que la méthode de RK4 couplée qui est d'ordre 4. On peut augmenter la précision de la méthode des différences finies en prenant des différences centrées plus élevées.
850 \\[2cm]
851 \begin{encadre}{À retenir}
852 La résolution de systèmes d'équations différentielles est la base de beaucoup de modélisation d'ingénierie. Souvent ces systèmes se complexifient, quand le nombre d'inconnues augmentent, pour devenir des systèmes aux dérivées partielles. La méthode des différences fines est une introduction à cette généralisation.
853 Dans cet optique la méthode Runge Kutta 4 (RK4) doit être comprise.
854 \end{encadre}