我正在使用以下代码调用 ODE45 的函数来解决:
[outputs]=ode45(@(t,y)ILLYAcoupled(t,y,N,w,g),(0:0.5e-3:50),y0);
我试图让 ode45 在 0 到 50 之间以 0.5e-3 的增量为我提供值,这应该输出大约 10000 的解向量长度,但我得到的解向量只有 2720 点。奇怪的是,我正在调用 ode45 的另一个函数来解决以下问题:
[outputs] = ode45(@HH,(0:0.5e-3:50),y0);
...这给了我想要的 10000 长度的解向量——直到最近。我尝试以这种方式调用它:
[outputs] = ode45(@(t,y)HH(t,y),(0:0.5e-3:50),y0);
...这给了我一个 2720 长度的解向量,现在,即使我将代码本身更改回“@HH”,它仍然给我 2720 长度向量,而不是所需的 10000 长度向量。
我在 ode45 调用期间为被调用函数指定输入和输出的方式似乎把事情搞砸了,但我不知道是什么。
我将非常感谢任何人的建议!谢谢!