【matlab中ode45函数使用的说明】

matlab使用ode45解微分方程组

官方文档链接

使用方式:

[t,y] = ode45(odefun,tspan,y0)
功能为:求微分方程组 y′=f(t,y) 从 t0 到 tf 的积分(y可以是个列向量)
这里求的是数值解,y没有显示公式表达,tspan = [t0 tf]为求解时间

参数说明

y0为初始条件,解数组 y 中的每一行都与列向量 t 中返回的值相对应。
对于方程组(odefun参数)怎么写可参照官方文档
下面为一个常用方式
【matlab中ode45函数使用的说明】_第1张图片函数简单时也可以写成匿名函数在这里插入图片描述写成函数文件时若输入只有t,y,则可以省略@(t,y)

关于@的使用

这是定义函数句柄的标识符
作用是将一个函数封装成一个变量,使其能够像其它变量一样在程序的不同部分传递,所以传递到ode45了嘛
fhandle = @(arglist)body 构造一个匿名函数和该函数的句柄,其中body定义函数的主体,arglist是您可以传递给函数的参数列表
使用时就可以用fhandle(in1,in2,)的形式,body可以是匿名函数也可以是.m文件,相当于重构了函数,( body(in1,in2),相当于在上面重新封装一次 )
简单写法是直接句柄=@函数名
这样写好像还可以提高运行效率啥的这点就不是很清楚了(好像和函数的搜索路径有关)

【matlab中ode45函数使用的说明】_第2张图片

结语

其它关于ode45的高级用法可以再去探索

参考链接:关于@
参考2

你可能感兴趣的:(matlab,矩阵,开发语言)