Bonjour dans le cas d'un projet d'analyse numérique, j'ai à étudier le mouvement d'une d'un pendule.
IL s'agit d'un pendule soumis à son poids , les forces de frottements , la tension du fil enfin bref, l'équation différentiel modélisant ce problème est :
Le pendule en question est de longueur variable en effet il prend les valeurs:
td lorsque
ta lorsque
(on prendra
Je cherche donc a représenter graphiquement l'évolution de sur Matlab
pour résoudre l'équation différentielle j'utilise la fonction ode45
Mais mon problème est que je ne sais pas comment programmer l'évolution de au cours de l'évolution de theta.
j'ai procéder de manière usuelle en :
définissant ma fonction Fpendule dans Fpendule.m décrivant l'équation différentielle:
dans un fichier script.m j'effectue la résolution de l'équation avec ode45Code:function dtheta=Fpendule(t,theta) g=9.81; la=2.5; ld=3; w0=sqrt(g/la); k=1.21; m=40000; b=k/(2*m*la); dtheta(1,:)=theta(2); dtheta(2,:)=-w0^2*theta(1)-2*b*sin(theta(2)); end
Quelqu'un saurait-il comment programmer la modification de la valeur de en fonction de theta et theta' au sein de la fonction ode45?Code:%définition de l'intervalle de temps trange = [0 50]; %DÈfinition condition initiale theta0=[0.1 0]; %RÈsolution par la méthode de runge-kutta [tE,thetaE] = ode45(@FbalancoirGrand,trange,theta0);
Merci d'avance.
-----