Résoudre des équation differentielle matlab
layali4
-
ematene -
ematene -
Bonjour,
je dois résoudre un système d'équation différentielle avec matlab le problème c'est que j'ai un paramètre d'une équation variable càd :
ypoint(1)=y(3).*(b*y(1)-a*y(2)) avec a=1:0.5:10.
je sais que pour résoudre un système à paramètres constants on utilise la commande suivante:
[t,y] = ode23('systeme', [0:dt:tfinal], [y01 y02 y03]);
ma question est comment faire "peut être une boucle for" pour résoudre ce système à paramètre variable le but c'est de faire une concaténation de y1,y2 et y3 pour chaque valeur de a.
merci beaucoup de votre aide
je dois résoudre un système d'équation différentielle avec matlab le problème c'est que j'ai un paramètre d'une équation variable càd :
ypoint(1)=y(3).*(b*y(1)-a*y(2)) avec a=1:0.5:10.
je sais que pour résoudre un système à paramètres constants on utilise la commande suivante:
[t,y] = ode23('systeme', [0:dt:tfinal], [y01 y02 y03]);
ma question est comment faire "peut être une boucle for" pour résoudre ce système à paramètre variable le but c'est de faire une concaténation de y1,y2 et y3 pour chaque valeur de a.
merci beaucoup de votre aide
A voir également:
- Résoudre des équation differentielle matlab
- Editeur d'équation - Télécharger - Vie quotidienne
- Formule équation - Télécharger - Études & Formations
- Equation sinequanone - Télécharger - Calcul & Conversion
- Écrire un programme qui résout une équation du second degré ✓ - Forum C
- Euler : équation différentielle d'ordre 2 - Forum Python
5 réponses
Tu reprends le code que je t'ai déjà fait (ode et parametre variable) en modifiant exemple2x2 pour correspondre à ton équation ypoint.
Apparemment ton équation différentielle est degré 3, tu devrai donc avoir ypoint(1), ypoint(2) et ypoint(3) définis dans une fonction construite de la même manière que moi, (appelons la exemple3x3) si on ne la fait varier que sur a, on a qu'à lui donner comme paramètres (a,t0,u0,t1).
Mes dernières lignes seraient alors :
Mes dernières lignes seraient alors :
u=zeros(n,3*pas); // 3 car l'équation est de degré 3 (j'avais 2 dans mon exemple) for i=1:n do // je parcours tous les a : a(1)=1, a(2)=1.5, ... a(n)=10 u(i,:)=exemple3x3(a(i),t0,u0,t1); // j'attribue le calcul avec a(i) à la ième ligne de u end u // matrice résultat
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question