methode explicite d'euler
Bonjour ;)
je ne comprends pas comment fonctionne ce programme : Il s'agit de la methode d'euler explicite. Je connais la methode d'euler que je pense avoir compris, mais je ne comprends pas notamment eye(A) en debut...puis comment se constuit le programme petit a petit
je fais appel a vos savoirs faire et competences, et vous serais reconnaissante si vous pourriez m'aider a comprendre
Étant donnés trois nombres réels a, T et x0, ainsi qu’un entier p, on définit comme dans le cours la solution
Code:
1 2
| X0(t) = A(t)X(t) + B(t),
X(0) = X0, |
sur l’intervalle [0, T], par la méthode d’Euler explicite. Le paramètre p indique le nombre de subdivisons
de l’intervalle de temps ; il est lié au paramètre h (pas de la subdivision) par T = hp.
où A et B sont deux fonctions continues à valeurs dans M2(R).
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| function XApprox=EulerExplicite(A, X0, T, p)
I = eye(A)
// On crée un tableau vide de la bonne dimension - 2 lignes et p+1 colonnes
XApprox = zeros(2,p+1);
// On commence par la condition initiale qui occupe la première colonne
XApprox(:,1) = X0 ;
// On calcule l'approximation par la méthode d'Euler implicite
for k=1:p
XApprox(:,k+1) = (I+A*T/p)*XApprox(:,k);
end
endfunction |