我使用以下代码调用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调用期间,我在调用被调用函数的输入和输出的方式似乎正在搞乱,但我不知道是什么。
我将非常感谢任何人的建议!谢谢!