与 [t,y]=ode45 相比,解结构 sol=ode45 具有不同的时间步数

Solution Structure sol=ode45 has different number of time steps compared to [t,y]=ode45

作为 Matlab 的初学者,我正在探索 ode45 函数 test.m 包含要求解的 ode 方程。

在编辑器中,我通过 2 个选项单独调用此函数。在一种情况下,我有定义 选项 1

t=[0 50];
y0=[0 2];
[t,y]=ode45(@(t,y)test(t,y),t,y0);

在选项 2 中我要求结构输出

t=[0 50];
y0=[0 2];
sol=ode45(@(t,y)test(t,y),t,y0);

但是,与选项 1 相比,结构选项 2 的结果时间步长较少,因此我的绘图“更粗糙”。

我找不到增加步骤数的方法来优化选项 2 的解决方案....有什么想法吗?

deval 函数与 sol 和您选择的时间点一起使用。例如,

tSpan = 0:0.01:50;
y = deval(sol, tSpan);
plot(tSpan,y)

请参阅文档中的 Evaluate and Extend Solution Structure