MATLAB解决常微分方程
首先得介绍一下,在matlab中解常微分方程有两种方法,一种是符号解法,另一种是数值解法。在本科阶段的微分数学题,基本上可以通过符号解法解决。
用matlab解决常微分问题的符号解法的关键命令是dslove命令。该命令中可以用D表示微分符号,其中D2表示二阶微分,D3表示三阶微分,以此类推。值得注意的是该微分默认是对自变量t求导,也可以很容易在命令中改为对其他变量求导。
说了半天,该命令的最完整的形式如下。
r=dsolve('eqn1','eqn2',...,'cond1','cond2',...,'var').
解释如下:eqni表示第i个微分方程,condi表示第i个初始条件,var表示微分方程中的自变量,默认为t。
解释了半天,不如用实例来说明。下面以解决一个简单的微分方程入手。方程如下。
首先启动matlab软件,在命令行中欢快地敲入
dslove(‘Dy=3*x*x’,‘x’),然后轻松地摁一下键盘上的enter建,最后答案就蹦出来了。
下面,我们来加大难度,在上面的方程条件下加入初始条件x=0时,y=2。
只需在相同的命令中加入一个条件语句就可以了。命令形式为
dslove(‘Dy=3*x*x’,‘y(0)=2’,‘x’)。可以看到答案中的常数项
C2已经变成了2。
最后,我再加大一下难度。这次来求一个微分方程组。方程组如下。初始条件为x(0)=2,y(0)=1,dy(0)=1.
在命令中只需改一下相应的方程与条件即可以了,由于是对t求导,所以可以用默认,不需要在末尾添加‘t’。
- 9
可以看到用matlab中的dslove命令确实可以解决许多常微分问题。
转载自--CSDN--唐一001
MATLAB解决常微分方程的更多相关文章
- ubuntu 安装Matlab 解决显示中文乱码
在ubuntu 14.04中安装Matlab 2015a打开后发现中文乱码,这主要是由于JAVA中文支持问题. 解决方法如下: 进入Maltab的安装路径: 进入JRE目录: cd Matlab目 ...
- MATLAB求解常微分方程:ode45函数与dsolve函数
ode45函数无法求出解析解,dsolve可以求出解析解(若有),但是速度较慢. 1. ode45函数 ①求一阶常微分方程的初值问题 [t,y] = ode45(@(t,y)y-2*t/y, ...
- Matlab与.NET混编解决人脸识别问题
原文 http://www.cnblogs.com/asxinyu/archive/2013/05/29/3107013.html 如果这些文章对你有用,有帮助,期待更多开源组件介绍,请不要吝啬手中的 ...
- Matlab与.NET混合编程解决人脸识别问题
原文:[原创]Matlab与.NET混合编程解决人脸识别问题 如果这些文章对你有用,有帮助,期待更多开源组件介绍,请不要吝啬手中的鼠标. [原创分享]Matlab.NET混编调用Figure窗体 ht ...
- Matlab学习——求解微分方程(组)
介绍: 1.在 Matlab 中,用大写字母 D 表示导数,Dy 表示 y 关于自变量的一阶导数,D2y 表示 y 关于自变量的二阶导数,依此类推.函数 dsolve 用来解决常微分方程(组)的求解问 ...
- MATLAB入门教程
MATLAB入门教程 1.MATLAB的基本知识 1-1.基本运算与函数 在MATLAB下进行基本数学运算,只需将运算式直接打入提示号(>>)之後,并按入Enter键即可.例如: ...
- MATLAB新手教程
MATLAB新手教程 .MATLAB的基本知识 1-1.基本运算与函数 在MATLAB下进行基本数学运算,仅仅需将运算式直接打入提示号(>>)之後,并按入Enter键就可以.比如 ...
- 史上最全的Matlab资源电子书教程和视频下载合集【超级推荐】
收藏吧,网上搜集的,费了老大劲了,推荐给有需要的人,^_^. MATLAB课件2007北京交通大学.zip 4.87 MB A Guide to MATLAB for Beginners an ...
- (转)MATLAB入门教程
MATLAB入门教程 1.MATLAB的基本知识 1-1.基本运算与函数 在MATLAB下进行基本数学运算,只需将运算式直接打入提示号(>>)之後,并按入Enter键即可.例如: ...
随机推荐
- Java的TCP网络编程
服务端代码: package socket; import java.io.BufferedReader; import java.io.IOException; import java.io.Inp ...
- cssParser
//cssParser.h #include<iostream> using namespace std;struct MyAttribute{ MyAttribute* next; s ...
- JavaUtil_09_email_使用 commons-email 发送邮件
二.参考资料 1.[commons]邮件发送工具——commons-email
- BEC listen and translation exercise 44
But over the past 70 years or so, there's been a massive increase in one type of crime which was wha ...
- 关于c++中命名空间namespace
一.定义命名空间: 步骤一:在.h文件中:namespace ns{.......}//将定义的类和全局变量,全局函数写入花括号内. 步骤二:在.cpp文件中: using namespace ns ...
- 【论文笔记】基于图机构的推荐系统:Billion-scale Commodity Embedding for E-commerce Recommendation in Alibaba
论文:https://arxiv.org/abs/1803.02349 题外话: 阿里和香港理工联合发布的这篇文章,整体来说,还挺有意思的. 刚开始随便翻翻看看结构图的时候,会觉得:这也能发文章 ...
- 05 - Django应用第二步
知识点 1) 数据库的配置 涉及到INSTALL_APPS的配置等 初次创建数据的命令 2) 模型的编写 模型的创建方式, 写一个类继承自models.Model 模型的数据类型 外键 自动创建ID列 ...
- Debian for ARM
/************************************************************************* * Debian for ARM * 说明: * ...
- 关于解决SSHD 连接 认证失败的问题
网上找有很多方法,有时候情况不一样 ,也不实用 其实找到解决问题的思路更总要 首先分析日志文件 less /var/log/secure | grep sshd ,看具体出现什么问题 然后再去搜索相关 ...
- 常用调试工具gdb,dbx,valgrind介绍一
类UNIX下C/C++开发,代码调试比较麻烦,最原始的加跟踪调试很土,也很费时,特别是一个庞大的项目,代码行数非常大的时候调试起来非常费劲,当core dump时定位也不容易,这里介绍几个常用工具: ...