Salut tous,
si j'ai bien compris, si je veux résoudre une equadiff couplée sous matlab de ce genre :
y1'=a1.y1+a2.y2+3t
y2'=b1.y1+b2.y2+5t
je dois faire un truc dans ce genre :avec pour systeme :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 [t, Y] = ode45(@(t,y) syst(t,y), [t0 tF], [Y1_0 Y2_0]);
ce que je ne comprends pas c'est qu'une equadiff est résolvable que si on a quelque chose dans ce genre :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 function dotY=syst(t,Y) dotY=zeros(2,1); dotY(1)=a1*Y(1)+a2*Y(2)+3*t; dotY(2)=b1*Y(1)+b2*Y(2)+5*t; dotY=dotY'; end
y1'=f(t,y1(t))
or là pour la première equation par exemple on a pas :
y1'=f(t,y1(t))
mais
y1'=f(t,y1(t),y2(t))
donc je ne comprends pas pourquoi ça fonctionnerai correctement ?
Partager