【数学建模】微分方程求解 | dsolve函数 | ode45函数
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录
- 前言
- 一、微分方程解析解(dsolve函数)
- 1.1 例子一
- 二、微分方程数值解(ode45函数)
- 1.1例子1
- 1.2 例子2 阿波罗卫星运动轨迹
前言
参考教材。数学实验:基于matlab软件
一、微分方程解析解(dsolve函数)
1.1 例子一
如果不考虑初值条件直接求解:
y=dsolve('D2y=sin(2*x)-y','x');
第一个‘’是微分方程,第二个‘’是自变量
得到结果如下(包含未知参数C1C2):
如果考虑初值条件直接求解:
y=dsolve('D2y=sin(2*x)-y','y(0)=0,Dy(pi)=0','x');
相比于无初值条件只是中间多了‘’
但是此时matlab会报错,是因为新版本matlab在求解微分方程时需要声明“谁是谁的函数”,这里就是y是x的函数
修改后不报错了
syms y(x);
y=dsolve('D2y=sin(2*x)-y','y(0)=0,Dy(pi)=0','x');
y
那如果想画图展示一下呢?如果直接使用plot如下:
syms y(x);
y=dsolve('D2y=sin(2*x)-y','y(0)=0,Dy(pi)=0','x');
plot(0:0.01:pi,y)
直接会报错:
这是因为此时得到的解析解y是字符串,直接画图是不行的。
修改后:
syms y(x);
y=dsolve('D2y=sin(2*x)-y','y(0)=0,Dy(pi)=0','x');
plot(0:0.01:pi,subs(y,0:0.01:pi));
xlabel('x');ylabel('y');title('解析解')
结果如下:
二、微分方程数值解(ode45函数)
1.1例子1
从上面我们可以看到,教材把一个二阶微分方程降阶了,变成了两个微分方程。我们这里编的程序是根据我自己的习惯来的,和教程上不一样。
代码如下(示例):
[t,x] = ode45(@model,[0:0.1:6],[0,1]);
plot(t,x(:,1),t,x(:,2));
legend('y(x)','y\prime(x)')function dx = model(t,x)
dx = zeros(2,1);
dx(1) = x(2);
dx(2) = 4*sin(8*t)-3*x(1);
end
结果如下所示:
1.2 例子2 阿波罗卫星运动轨迹
同理,我们依然给他降降阶,变成下面:
代码如下(示例):
【数学建模】微分方程求解 | dsolve函数 | ode45函数相关推荐
- 数学建模微分方程导弹问题matlab求解,Matlab建模—导弹追踪问题
数学建模期末复习,撰写博客做总结之用,主要侧重于算例的模型建立与部分代码的实现,其中不足之处望读者多多指正. Matlab微分求解工具箱使用 求数值解 dsolve('方程1','方程2',-,'方程 ...
- 数学建模——微分方程模型的求解
文章目录 微分方程的符号解法 微分方程数值解法 一些常用的微分方程模型(学习中,持续更新) Logistics模型 传染病模型 本文介绍微分方程的求解,不介绍微分方程的建立方法 微分方程的符号解法 求 ...
- 想做数学建模?先看看这些MATLAB函数吧!
这里只是大体总结了下,没有给出具体的用法,当你想用某个函数实现某个功能时可以直接 ctrl+Fctrl+Fctrl+F 搜索下面表格中的函数,然后命令行输入 help 函数就可以看其详细具体的用法. ...
- 数学建模——微分方程
目录 常微分方程符号解 常微分方程的数值解 初值问题 边值问题 其他 常微分方程符号解 diff(函数,n)%求函数的n阶导数 dsolve(方程1,方程2,...,方程n,初始条件,自变量) sim ...
- 数学建模微分方程导弹问题matlab求解,数学建模之微分方程(符实现例题和MATLAB源码)...
微分方程的基本概念 微分方程:一般的,凡表示未知函数.未知函数的导数与自变量之间的关系的方程,叫做微分方程,有时也简称方程. 微分方程的阶:微分方程中所出现的未知函数的最高阶导数的阶数,叫做微分方程的 ...
- 数学建模学习(10):函数全解,很重要!!所以我再仔细讲一遍!新手建议收藏。
文章目录 前言 (1)普通函数 (2)匿名函数 (3)主函数和子函数 (4)嵌套函数 (5)私有函数 (6)全局变量 前言 为什么我前面已经讲过一次函数,我现在还要再讲一遍?第一个原因还是我前面讲的太 ...
- 数学建模 --- 蒙特卡洛模拟使用的一些函数
简单思想 蒙特卡洛模拟是在计算机上模拟项目实施了成千上万次,每次输入都随机选择输入值.由于每个输入很多时候本身就是一个估计区间,因此计算机模型会随机选取每个输入的该区间内的任意值,通过大量成千上万甚至 ...
- 目标规划的数学建模及求解
目标规划和线性规划 目标规划是为了解决多个目标问题而产生的一种数学规划方法,是由线性规划发展演变而来.目标规划和线性规划主要有以下区别: 线性规划是在一组线性约束条件下,寻求某一单一目标的最优值,只有 ...
- 数学建模——微分方程、差分方程、数理统计
一.微分方程 常微分方程 [1]一元二次 % ConDiffa.md2y/dt2=1+dy/dt y(0)=1,dy(0)/dt=0clc,clear syms y(t) Dy = diff(y); ...
- [数学建模] 微分方程--捕鱼业的持续发展
问题背景 再生资源应适度开发-------在持续稳产的前提下实现最大产量或者最佳效益 问题及分析 在捕捞量稳定的前提下,如何控制捕捞使得产量最大或者效益最佳? 如果使捕捞量等于自然增长量,渔场鱼量将保 ...
最新文章
- linux6 yum安装mysql_linux CentOS6.5 yum安装mysql5.6
- Geoserver在Linux上的安装(图文教程)
- where 1=1和 0=1 的作用
- java mvc返回js_Java的学习(39)springboot
- NET问答: 是否有通用的方法判断一个 Type 是 Number ?
- 工业交换机防护等级介绍
- OGR示例:写shp,求面与面的交和差操作
- js与php时间戳,js时间戳与日期格式之间的互转
- 1195.最长最短文本
- Java Web ServletResponse
- 分布式系统如何设计,看看Elasticsearch是怎么做的
- 2017 5月12日上午
- 飞机上一旅客突然收到生日蛋糕,是个小惊喜
- java 二叉树运用场景_java二叉树有什么作用?有哪些实际应用?
- 【阿里云】视频点播开通与配置
- 颜色中英文对照表颜色名字色彩名称
- PS 图片添加水印
- mysql my.cnf 字符集_my.cnf 中字符集设置
- 2020手机CPU性能天梯图
- C语言 string.h头文件
热门文章
- es的bucket和metric
- 台式计算机diy,DIY组装台式电脑经验分享学习篇
- html光圈效果,PS新手教程:特效光圈效果
- FAT32中文版分析+补充(3)
- 怎么用计算机算分数加减法,怎么算分数加减法?怎么教给孩子?
- 计算机英语rom是什么意思,涨姿势!电脑里的rom,ram是什么意思?
- 研发工程师历年企业笔试真题汇总
- python 视频清晰度_python识别视频黑屏或者低清晰度
- java随机点名_javascript实现的一个随机点名功能
- [足式机器人]Part3机构运动微分几何学分析与综合Ch01-1 平面运动微分几何学——【读书笔记】