Bonjour, voici un petit programme qui marche très bien
avec
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 clear all x0=[1;2]; time=[0;4]; [t,Y]=ode45(@systemODE,time,x0); figure plot(t,Y(:,1)); figure plot(t,Y(:,2));
maitenant, j'aimerais pouvoir choisir entre ode45, ode23tb ode15s etc... (dans ma GUI j'ai une liste déroulante pour choisir le solveur). Comment faire ? Le programme suivant me renvoie une erreur
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 function xdot=systemODE(t,x) xdot=zeros(length(x),1); xdot(1)=x(2); xdot(2)=x(1);
avec l'erreur
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 clear all x0=[1;2]; time=[0;4]; funODE=ode45; [t,Y]=funODE(@systemODE,time,x0); figure plot(t,Y(:,1)); figure plot(t,Y(:,2));
Avez-vous une idée ???? Error using ==> ode45
Not enough input arguments. See ODE45.
Error in ==> prout at 5
funODE=ode45;
Merci.
Partager