Salut tous,
je suis un peu en galère avec matlab, je voudrais résoudre un systeme d'equations différentielles et je n'arrive pas à trouver la bonne syntaxe...
voici mon systeme:
==> voir PJ
voici ma résolution:
voici comment j'ai fais pour essayer de résoudre mais la syntaxe est mauvais et après pas mal de bidouillage je n'ai pas compris comment faire:
main.m
syst.m
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 X1=10; X2=25; X3=4; X4=4; G1=0; G2=1; coeffDirecteur=0.5; t0=0; tF=100; Y1_0=4; Y2_0=10; [t, Y] = ode45(@syst(X1,X2,X3,X4,G1,G2,coeffDirecteur,t,Y), [t0 tF], [Y1_0 Y2_0]);
fctG.m
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 function dotY=syst(X1,X2,X3,X4,coeffDirecteur,t,Y) dotY=zeros(2,1); dotY(1)=X1*Y(1)+X2*Y(2)+G1*fctG(coeffDirecteur,t); dotY(2)=X3*Y(1)+X4*Y(4)+G2*fctG(coeffDirecteur,t); dotY=dotY'; end
pourriez vous me dire comment modifier ce code pour qu'il fonctionne ? je n'ai pas compris la syntaxe à utiliser
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 function G=fctG(coeffDirecteur,t) G=coeffDirecteur*t; end
merci d'avance
Partager