Scilab résolution d'équation différentielle

Fermé
chimiste.déséspérée Messages postés 1 Date d'inscription lundi 26 novembre 2007 Statut Membre Dernière intervention 26 novembre 2007 - 26 nov. 2007 à 19:01
 zallouz - 9 déc. 2008 à 16:52
Bonjour,

voici le programme que j'ai élaboré pour résoudre 2 équations différentielles par la méthode RK4 : (pour ne pas encombrer j'ai pas mis tous les paramètres). le probleme réside essentiellement dans les 2 dernières lignes.merci de m'aider.

function f=fun (y,t)
f(1)=-k*2*Concb^2*(1-y(1))*(M-y(1)); // la derivée par rapport à la fraction molaire
f(2)=((-ra*V*DHr)-Ua*(y(2)-Tp)-Qevac)/(CpA*Noncb+CpB*Nnh3+Nh2o*CpW); // la derivée par rapport à la temperature
endfunction

for i=1:1:n // la grande boucle : variation du temps
for j=1:1:nb // K1 pour les deux équations
ya(j)=y(i,j);
end
K1=fun(ya,t(i));

for j=1:1:nb //
k2(j) = Dt * K1(j);
yb(j)= y(i)+k2(j);
t(i)=t(i)+Dt;
end
K2=fun(yb,t(i));

for j=1:1:nb
k3(j) = Dt * K2(j);
yc(j)= y(i)+k3(j);
t(i)=t(i)+Dt;
end
K3=fun(yc,t(i));

for j=1:1:nb
k4(j)=h*K3(j);
yd(j)=y(i)+k4(j);
t(i)=t(i)+h;
end
K4=fun(yd,t(i));

p=(K1+2*K2+2*K3+K4)/6;

y(i+1)=y(i)+p(1,i)*h; //le probleme est dans cette ligne

t(i+1)=t(i)+h;

end

4 réponses

Bonjour,

En faite je n'arrive pas à résoudre un systeme déquation (merci de me mettre les détails des calculs)

7x + 4y=14
10x -2y=9
1
Euh...c'est pas vraimment une équation différentielle ça :-)
Bon, alors on va réecrire tout ça :

(1) 7x + 4y = 14
(2) 10x - 2y = 9

On prend la ligne (2), on la multiplie par 2 et on l'ajoute à la (1) :
7x + 4y + 2*(10x - 2y) = 14 - 2*9
<=> -13x = - 4
<=> x = 4/13

Et puis on remplace dans la (1) :

7*(4/13) + 4y = 14
<=> 4y = 14 - (28/13)
<=> y=154/52

Et voilà
0
bonjour est ce que je peux telecharger logiciel Rk4 et merci
0
RK4 = Runge et Kutta 4 : méthode de résolution
0
7x+4y=14
10x-2y=9
0
bonjour,

essaie de me joindre sur msn car moi aussi je travaille avec RK4 sur scilab

Cordialement
0