Posté par
nakor nakorBonjour!
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.