logo

van der pol, runge kutta


iutvan der pol, runge kutta

#msg2911119 Posté le 01-03-10 à 23:45
Posté par Profilnakor nakor

Bonjour!
J'aurai besoin d'un peu d'aide pour résoudre numériquement l'oscillateur de Van de Pol.

Pour rappel,
l'oscillateur de VDP est défini par
x''+x-x'*mhu*(1-x^2) avec x'=dx/dt

que l'ont peut ramener a deux équations,
x'=y
y'=-x+mhu(1-x^2)*y

J'utilise la méthode des dérivées décentrées (x'=(x(i+1)-x(i)) * dt) pour le résoudre, ce qui donne:

x(i+1)=y(i)*dt-x(i)
Y(i+1)= (-X(i)+mhu*(1-(X(i)*X(i)))*Y(i))*dt+Y(i)

Mais j'aimerai aussi utiliser Runge-Kutta à l'ordre 2 pour comparer les deux methodes. Mais je ne suis pas sur de son fonctionnement.
est-il correct d'écrire :

x(i+1)=x(i)+0.5(k1+k2)*h
avec k1=y(i) et k2=y(i)+h


y(i+1)=y(i)+0.5(k1+k2)*h

avec k1=-x(i)+mhu(1-x(i)^2)*Y(i) et k2=-(x(i)+h)+mhu(1-(x(i)+h)^2)*(Y(i)+k1*h)

J'utilise comme définition k1=f(xi,yi) et k2=f(xi+h,yi+k1*h) mais je ne suis pas sur d'appliquer l'algorithme correctement, et lorsque je calcul l'erreur je trouve des valeurs bien trop importante, donc il doit y avoir un probleme, si quelqu'un le voit ...
Mais sinon l'algorythme fonctionne, j'ai les bonnes valeurs pour un pas suffisament petit.

Merci de votre aide.

Répondre à ce sujet

réservé Seuls les membres peuvent poster sur le forum !

Vous devez être connecté pour poster
attention Un modérateur est susceptible de supprimer toute contribution qui ne serait pas en relation avec le thème de discussion abordé, la ligne éditoriale du site, ou qui serait contraire à la loi.



maths haut de pagehaut Retrouvez cette page sur ilemaths l'île des mathématiques
© Tom_Pascal & Océane 2012