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 : Sélectionner tout - Visualiser dans une fenêtre à part
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 : Sélectionner tout - Visualiser dans une fenêtre à part
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