Bonjour,
Je travaille avec deux équa diff. En faisant un dsolve numeric je peux tracer l'évolution de mes deux variables en fonction du temps (theta(1) et theta(2). Toutefois étant donné qu'il s'agit d'angles, j'aimerais que le tracé en prenne compte et évite de me représenter des angles de 10 ou 20 radians mais que tout reste dans l'intervalle -2*pi..+2*Pi ...
Voici mon code :
ED1:=(m1+m2)*l1*diff(theta1(t),t,t)+m2*l2*diff(theta2(t),t,t)*cos(theta1(t)-theta2(t))
+m2*l2*diff(theta2(t),t)^2*sin(theta1(t)-theta2(t))+(m1+m2)*g*sin(theta1(t))=0:
ED2:=l1*diff(theta1(t),t,t)*cos(theta1(t)-theta2(t))+l2*diff(theta2(t),t,t)-
l1*diff(theta1(t),t)^2*sin(theta1(t)-theta2(t))+g*sin(theta2(t))=0:
CI:=theta1(0)=theta[10], theta2(0)=theta[20], D(theta1)(0)=0, D(theta2)(0)=0:
m1:=1:
g:=9.8:
m2:=1:
l1:=2:
l2:=2:
theta[10]:=1.2:
theta[20]:=1.40524:
soln:=dsolve({ED1,ED2, CI},{theta1(t),theta2(t)},type=numeric, maxfun=500000):
a:=odeplot (soln,[t,theta1(t)] , 0..500 , numpoints=1000, color=blue):
b:=odeplot (soln,[t,theta2(t)] , 0..500 , numpoints=1000, color=green):
theta[20];
theta[20]*180/3.14;
display(a,b);
Est-ce que quelqu'un pourrait me donner un coup de main svp ? Merci !
Siriusmath
Vous devez être membre accéder à ce service...
Pas encore inscrit ?
1 compte par personne, multi-compte interdit !
Ou identifiez-vous :