这是我随手百度的——事实上我百度了很多个类似的方程,每一个都出现同样的问题
你这是把函数代码直接贴到MATLAB的命令窗口中运行了吧?
函数代码不能直接贴到命令窗口,应该保存成M文件(例如nark4.m),然后还需要另外定义一个描述微分方程的函数(即函数nark4的输入参数dyfun),可以保存成M文件,也可以使用匿名函数,例如
dy = @ (x,y)[y(2); -5*y(2)+0.8*y(1)+0.26];然后在命令窗口中使用类似如下的调用方式:
[x,y]=nark4(dy,xspan,y0,h)其中,dyfun为定义微分方程的函数,xspan为2个元素的向量,确定了自由变量的范围,y0为初值,h为步长。
不过,题目好像有点问题,要求步长使用0.1,却要求0.02时刻的值,这个时间小于步长,概念上是不合理的。
懂了,已经解决了……
另外步长确实是题目错了