常微分方程初值问题数值解法MATLAB(泛函微分方程)

Matlab解常微分方程的初值问题题目:Matlab解常微分方程的初值问题设计目的:1、熟练掌握Matlab的基本编程方法,及其编程风格。2、熟练掌握Matlab常用函数的使用。3、与本专业相关知识相结合,掌握其在程序开发中的应用方法以及和word、C语言等接口方法。4、通过计算机数值求解的方式来加深微分方程解的理解。5、熟悉初等方法可获得解析解之外的数值近似解的求解方法,提高对差分格式的认识…

大家好,又见面了,我是你们的朋友全栈君。

Matlab 解常微分方程的初值问题

题目:Matlab 解常微分方程的初值问题

设计目的:

1、熟练掌握Matlab的基本编程方法,及其编程风格。

2、熟练掌握Matlab常用函数的使用。

3、与本专业相关知识相结合,掌握其在程序开发中的应用方法

以及和word、C语言等接口方法。

4、通过计算机数值求解的方式来加深微分方程解的理解。

5、熟悉初等方法可获得解析解之外的数值近似解的求解方法,提

高对差分格式的认识和离散化分析问题的技巧,加深对理论课程的学习和理解,为数学专业和信息与计算科学专业其他后继课程的学习打好基础。

设计内容:

已知一个三阶微分方程:,利用matlab软件求这个三阶微分方程在初值 下的解。

原三阶微分方程可化为:

令 则原三阶微分方程可化为微分方程组 在初值 下的解。

程序流程:

程序代码:

%编写函数文件rigid.m

function dy = rigid(t,y)

dy = zeros(3,1); % a column vector

dy(1) = y(2) ;

dy(2) =y(3);

dy(3) = 2*(1-y(1)^2)*y(3)-y(1)*y(2);

%调用函数ode45求解,时间区间为[0,10]

[t,Y] = ode45(@rigid,[0 10],[1 0 -1])

t =

0

0.0001

0.0001

0.0002

0.0002

0.0005

0.0007

………………

0.9383

1.0665

1.1947

1.2918

1.3889

1.4860

………………

6.2916

6.2922

6.2928

6.2934

6.2940

6.2947

6.

由于数据太多,这里只列举部分

%绘制解的曲线

plot(t,Y(:,1),’-‘,t,Y(:,2),’-.’,t,Y(:,3),’.’)

%给图形加标注

title(‘Solution of Rigid Equation’)

xlabel(‘time T’)

ylabel(‘solution Y’)

legend(‘Y1′,’Y2′,’Y3’)

设计结果:

未加图形标注时的图

加了图形标注后的图

结果分析:

输出结果[T,Y]中T为时间点组成的向量。Y为对应于T中时间点的y(1)、y(2)和y(3)的值。此次利用matlab数值方法来求解微分方程主要是把求解的时间划分成有限步,对应于每一步将计算出一个解,如果求得的解不满足误差限制,则减少步长,再求解。如此重复,直到满足误差限为止。

课设总结:

最初拿到题目后,开始读题,知道题目所表达的意思及我们所要完成的目的,达到的效果后,便开始了做题。

首先是找一个三阶微分方程。然后把它化简为标准形式,再利用matlab软件求解。其中,在利用matlab求解时遇到一些问题,比如画图时调用已经编号的rigid函数时的调用格式不正确,还有就是给图形家标注时程序的引号没有切换成英文输入法状态下的等一些问题。但是经过多次调试,检查,修改后程序运行总算成功。

通过此次课程设计,我已经基本掌握Matlab的基本编程方法,及其编程风格。且能较熟练掌握Matlab常用函数的使用。此次设计后我的收获不少。

参考文献:

[1] 张圣勤编 MATLAB7.0 机械工业出版社

[2]周义仓 靳祯 秦军林编 常微分方程极其应用 科学出版社

[3]韩明 王家宝 李林编 数学实验(matlab版) 同济大学出版社

[4]汪晓银 皱庭荣编 数学软件与数学实验 科学出版社

2、把这个三阶微分方程化为形如 的标准形式

1、已知一个三阶微分方程

3、编写函数文件rigid.m

4、调用函数文件rigid.m,利用ode45求解

5、绘制解的曲线

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/128881.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • Java静态变量存储在内存中的什么位置?「建议收藏」

    Java静态变量存储在内存中的什么位置?「建议收藏」静态成员变量存储在堆的永久生成区域中。这是因为static不属于对象而是属于类,所以它被认为是类定义的一部分。如果静态变量是基元类型,它们将存储在permGen中。如果静态变量是一个引用变量,例如staticPersonobj=newPerson(),那么reference变量obj将被存储在permGen中,新创建的objected将被放置在年轻一代中。…

  • 解决eclipse乱码问题[通俗易懂]

    解决eclipse乱码问题[通俗易懂]本文章主要解决eclipse工程区乱码问题。

  • nginx负载均衡的原理简介_负载均衡原理

    nginx负载均衡的原理简介_负载均衡原理1、Nginx负载均衡的原理是什么?​客户端向反向代理发送请求,接着反向代理根据某种负载机制转发请求至目标服务器(这些服务器都运行着相同的应用),并把获得的内容返回给客户端,期中,代理请求可能根据配置被发往不同的服务器。2、Nginx负载均衡的作用是什么?​负载均衡:分摊到多个操作单元上进行执行,和它的英文名称很匹配。就是我们需要一个调度者,保证所有后端服务器都将性能充分发挥,从而保持服…

  • 预制发票,相关屏幕增强及bapi 增强

    预制发票,相关屏幕增强及bapi 增强MIRO:需要对屏幕增强,实现可以输入xref1,xref2.如下图:图中,参考代码1和参考代码2都是通过隐式增强放出来的,具体操作过程请查看链接:https://blogs.sap.com/2020/11/04/xref1-xref2-xref3-in-miro-the-ultimate-solution/在下列程序中,写隐式增强相关表增强:之所以在这么多表中增强,是为了后面过账的时候,能把参考码传递给财务凭证2.上面…

  • HOG特征提取_模式识别图像处理算法有哪些

    HOG特征提取_模式识别图像处理算法有哪些图像处理之特征提取:HOG特征简单梳理HOG方向梯度直方图,这里分解为方向梯度与直方图。一、方向梯度梯度:在向量微积分中,标量场的梯度是一个向量场。标量场中某一点上的梯度指向标量场增长最快的方向,梯度的长度是这个最大的变化率。更严格的说,从欧几里得空间Rn到R的函数的梯度是在Rn某一点最佳的线性近似。在这个…

    2022年10月26日
  • 记念刘和珍君是什么文体_纪念原版

    记念刘和珍君是什么文体_纪念原版转载自Tony2009年12月15日19:48阅读(6)评论(0)分类:休闲搞笑权限:公开刚和蘑菇头在安中楼楼下聊天,忽闻VeryCD被封的消息,网上骂声一片,满腔愤慨无处发泄,遂成此文。鲁迅先生先知,如今中国的种种奇景,先生几十年前便已洞悉一切。———————————————…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号