[matlab]help me pleazzzz

help me pleazzzz [matlab] - Divers - Programmation

Marsh Posté le 09-05-2005 à 22:10:02    

salut tout le monde voila je dois resoudre sous matlab une equation differentielle , plus precisement il s'agit de l'equation du pendule , mon principal probleme est que je ne suis pas tres fortiche en programmation et donc j'ai pas mal de problemes notemment avec ma variable w , à chaque fois des messages d'erreurs s'affichent, que dois-je faire pour w sacahnt que je suis censée l'entrer moi meme, voici une partie de mon programme:
 
function dz = syst(t,z,w)
 dz=zeros(2,1)
 dz(1)=z(2);
 dz(2)= -w.^2*sin(z(1));
 
options = odeset('reltol',1e-4,'abstol',[1e-4 1e-4 1e-5]);
[t,y] = ode45(@rigid,[0 12],[0 1 1],options)
plot(t,y(:,1),'m-',t,y(:,2),'g-',t,y(:,3),'.')
 
Merci de votre precieuse aide.  :jap:

Reply

Marsh Posté le 09-05-2005 à 22:10:02   

Reply

Marsh Posté le 10-05-2005 à 13:07:39    

lors de l appel de ta fonction, t,z et w sont de quels types? (vecteur, matrice...)
Donne aussi un exemple de comment tu lances lance ta fonction et de l erreur que Matlab te sort. Ca pourrait aider.
J ai essaye le code que tu donnes et Matlab me jette a cause de l appel a rigid (@rigid) ... Je suis alle voire un peu comment marche la fonction ode45 dans l help de Matlab, et OK dans l exemple ils utilisent @rigid, mais si tu regardes 5 lignes au dessus dans l help ils definissent la fonction rigid avant!
Alors dans le code que tu as donne soit il n y a pas tout et tu as defini rigid quelque part, soit rigid n a rien a faire la.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed