Inscription / Connexion Nouveau Sujet
Niveau maths spé
Partager :

MAPLE résolution d'un système d'équation par la méthode d'Euler

Posté par
Lisbeth-
19-06-11 à 15:59

Bonjour,

Je cherche à résoudre sur Maple le système différentiel suivant écrit en coordonnées cylindriques à l'aide de la méthode d'Euler:

Citation :
> eq1:=diff(r(t),t)=u(t):
> eq2:=diff(theta(t),t)=v(t):
> eq3:=diff(z(t),t)=w(t):
> eq4:=diff(u(t),t)=(q/m)*(r(t)*v(t)*B[z]-w(t)*B[theta])+r(t)*(v(t))**2:
> eq5:=diff(v(t),t)=((q/m)*(w(t)*B[r]-u(t)*B[z])-2*u(t)*v(t))/r(t):
> eq6:=diff(w(t),t)=(q/m)*(u(t)*B[theta]-r(t)*v(t)*B[r]):


La solution étant la trajectoire d'une particule chargée dans un champ uniforme selon l'axe des z.
J'ai déjà résolu le système en utilisant les coordonnées cartésiennes (plus simple car les équations sont linéaires), et donc je sais que je dois obtenir un cercle comme trajectoire dans un plan orthogonal à l'axe z.

Voici mon programme sur Maple:

Citation :
B[theta]:=0:B[z]:=1:B[r]:=0:q:=1:m:=1:

> f1:=(r,theta,z,u,v,w)->u:
> f2:=(r,theta,z,u,v,w)->v:
> f3:=(r,theta,z,u,v,w)->w:
> f4:=(r,theta,z,u,v,w)->r*v**2+(q/m)(B[z]*r*v-B[theta]*w):
> f5:=(r,theta,z,u,v,w)->(1/r)((q/m)(w*B[r]-u*B[z])-2*u*v):
> f6:=(r,theta,z,u,v,w)->(q/m)(u*B[theta]-r*v*B[r]):
>
>
> Euler:=proc(N,d,r0,theta0,z0,u0,v0,w0);
> r[0]:=r0:theta[0]:=theta0:z[0]:=z0:u[0]:=u0:v[0]:=v0:w[0]:=w0:
> for k from 0 to N-1 do
> r[k+1]:=evalf(r[k]+d*f1(r[k],theta[k],z[k],u[k],v[k],w[k]));
> theta[k+1]:=evalf(theta[k]+d*f2(r[k],theta[k],z[k],u[k],v[k],w[k]));
> z[k+1]:=evalf(z[k]+d*f3(r[k],theta[k],z[k],u[k],v[k],w[k]));
> u[k+1]:=evalf(u[k]+d*f4(r[k],theta[k],z[k],u[k],v[k],w[k]));
> v[k+1]:=evalf(v[k]+d*f5(r[k],theta[k],z[k],u[k],v[k],w[k]));
> w[k+1]:=evalf(w[k]+d*f6(r[k],theta[k],z[k],u[k],v[k],w[k]));
> od;
> [r[N],theta[N],z[N],u[N],v[N],w[N]];
> L:=seq([r[k],theta[k],z[k],u[k],v[k],w[k]], k=0..N);
>
> plot([seq([r[k],theta[k]],k=0..N)],coords=polar);
> end:


Or la courbe que j'obtiens ne semble pas en accord avec ce à quoi je m'attendais, soit un cercle.
J'ai touché un peu à tout, le nombre de points, la précision, les conditions initiales. Rien n'y fait, je n'obtiens pas de cercle ou de courbe s'en rapprochant.
Je ne comprends pas pourquoi ma courbe diverge autant.
Est-ce ma méthode d'Euler qui n'est pas bonne? Ou un problème autre?

Merci d'avance pour votre aide.

Lisbeth

MAPLE résolution d\'un système d\'équation par la méthode d\'Euler



Vous devez être membre accéder à ce service...

Pas encore inscrit ?

1 compte par personne, multi-compte interdit !

Ou identifiez-vous :


Rester sur la page

Inscription gratuite

Fiches en rapport

parmi 1674 fiches de maths

Désolé, votre version d'Internet Explorer est plus que périmée ! Merci de le mettre à jour ou de télécharger Firefox ou Google Chrome pour utiliser le site. Votre ordinateur vous remerciera !