MATLAB:使用 ODE 求解器?
这是一个非常基本的问题,但这是我第一次使用 MATLAB,我陷入了困境。 我需要使用 3 种不同的数值积分技术来模拟一个简单的串联 RC 网络。 我想我了解如何使用常微分方程求解器,但我不知道如何输入系统的微分方程。 我需要通过 m 文件来完成吗?
它只是一个简单的 RC 电路,其形式为:
RC dy(t)/dt + y(t) = u(t)
初始条件为零。 我有 R、C、步长和仿真时间的值,但我不知道如何特别好地使用 MATLAB。
任何帮助深表感谢!
This is a really basic question but this is the first time I've used MATLAB and I'm stuck.
I need to simulate a simple series RC network using 3 different numerical integration techniques. I think I understand how to use the ode solvers, but I have no idea how to enter the differential equation of the system. Do I need to do it via an m-file?
It's just a simple RC circuit in the form:
RC dy(t)/dt + y(t) = u(t)
with zero initial conditions. I have the values for R, C the step length and the simulation time but I don't know how to use MATLAB particularly well.
Any help is much appreciated!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您将需要一个函数文件,该文件将 t 和 y 作为输入,并提供 dy 作为输出。 它将是它自己的文件,具有以下标头。
将其保存为 MATLAB 路径上的rigid.m。
从那里你可以输入微分方程。 你现在有了一个函数。 这是一个简单的:
从命令行或脚本,您需要通过 ODE45 驱动此函数
这将为您提供从时间 0 到 时间 2 运行的函数 (rigid.m) *pi,初始 y 为零。
绘制此图:
更多 MATLAB 文档位于:
http://www.mathworks.com/access/helpdesk/help/techdoc /ref/ode23tb.html
You are going to need a function file that takes t and y as input and gives dy as output. It would be its own file with the following header.
Save it as rigid.m on the MATLAB path.
From there you would put in your differential equation. You now have a function. Here is a simple one:
From the command line or a script, you need to drive this function through ODE45
This will give you your function (rigid.m) running from time 0 through time 2*pi with an initial y of zero.
Plot this:
More of the MATLAB documentation is here:
http://www.mathworks.com/access/helpdesk/help/techdoc/ref/ode23tb.html