Matlab - Odeset - Odeplot

时间:2013-05-14 15:27:35

标签: matlab ode

我想使用odeplot,因此逐步获取结果,而不是之后绘制结果。我试着写这样的,但我不能让它工作,所以我会感激一些帮助。

%Parameters

s = 1; 

q = 1; 

w = 0.1610;

y0 = [30 1 30]; % Initial values

tspan = [0 10]; % Time 0<t<10

plot=odeset('OutputFcn','odeplot');

[t, y] = ode45(@(t,y) concentration(t, y, s, q, w), plot, tspan, y0);

1 个答案:

答案 0 :(得分:1)

您需要通过ODE Options参数指定输出函数:

options = odeset('OutputFcn', @odeplot);
[t, y] = ode45(@(t,y)concentration(t, y, s, q, w), tspan, y0, options);

当然,您可以制作自己的自定义输出功能。键入edit odeplot以查看所需内容(可以使用更简单的功能)。另请查看odephas2odephas3