用matlab可以解决很多数学问题,若是用得好的话,教员安插的数学功课就不消愁了。
首先得介绍一下,在matlab中解常微分方程有两种方式,一种是符号解法,另一种是数值解法。在本科阶段的微分数学题,根基上可以经由过程符号解法解决。
用matlab解决常微分问题的符号解法的关头号令是dsolve号令。该号令中可以用D暗示微分符号,此中D2暗示二阶微分,D3暗示三阶微分,以此类推。值得注重的是该微分默认是对自变量t求导,也可以很轻易在号令中改为对其他变量求导。
说了半天,该号令的最完整的形式如下。
r=dsolve('eqn1','eqn2',...,'cond1','cond2',...,'var').
诠释如下:eqni暗示第i个微分方程,condi暗示第i个初始前提,var暗示微分方程中的自变量,默认为t。
诠释了半天,不如用实例来申明。下面以解决一个简单的微分方程入手。方程如下。
首先启动matlab软件,在号令行中欢畅地敲入
dsolve(‘Dy=3*x*x’,‘x’),然后轻松地摁一下键盘上的enter建,最后谜底就蹦出来了。
下面,我们来加浩劫度,在上面的方程前提下插手初始前提x=0时,y=2。
只需在不异的号令中插手一个前提语句就可以了。号令形式为
dsolve(‘Dy=3*x*x’,‘y(0)=2’,‘x’)。可以看到谜底中的常数项
C2已经酿成了2。
最后,我再加年夜一下难度。此次来求一个微分方程组。方程组如下。初始前提为x(0)=2,y(0)=1,dy(0)=1.
在号令中只需改一下响应的方程与前提即可以了,因为是对t求导,所以可以用默认,不需要在末从头至尾添加‘t’。
可以看到用matlab中的dsolve号令确实可以解决很多常微分问题。
0 篇文章
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!