- 1、本文档共59页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第十章常微分方程(组)求解
微分方程在科技、工程、经济管理以及生态、环境、人口、交通等各个领域中常用于建立数学模型,它是研究函数变化规律的有力工具.如在研究弹性物体的振动,电阻、电容、电感电路的瞬变,热量在介质中的传播,抛射体的轨迹,以及污染物浓度的变化,人口增长的预测,种群数量的演变,交通流量的控制等等过程中,作为研究对象的函数,要和函数的导数一起,用一个符合其内在规律的方程,即微分方程来描述.
建立微分方程只是解决问题的第一步,通常需要求出方程的解来说明实际现象,并加以检验.如果能得到解析解固然是便于分析和应用的,但是我们知道,只有线性常系数微分方程,并且自由项是某些特殊类型的函数时,才可以肯定得到这样的解,而绝大多数变系数方程、非线性方程都很难得到解析解.另外,有时即使能求出解析解,也会由于很难从解析解中计算函数的值而不实用.例如,容易求出初值问题
的解为
eed.
但是,对于给定的,要计算函数值还需要用数值积分的方法.于是对于用微分方程解决实际问题来说,数值解法就是一个十分重要的手段.为了将微分方程的数值解与解析解比较,本章首先简单介绍用MATLAB解微分方程的解析解(符号解)的方法,然后重点介绍用MATLAB程序计算微分方程的数值解法.
10.1 常微分方程(组)的MATLAB符号求解
在MATLAB系统中提供了常微分方程(组)符号解(Symbolic solution of ordinary differential equations)的函数dsolve.在调用此函数前,必须首先将给定的常微分方程(组)中的一阶导数用D表示,例如,写成Dy.阶导数用Dn表示,例如,表示为D6y.由此,常微分方程写成DD.下面具体介绍函数dsolve解常微分方程(组)的方法.
10.1.1 用MATLAB求常微分方程(组)的通解
用MATLAB函数dsolve求常微分方程
(10.1)
的通解的主要调用格式如下:
调用格式一: S=dsolve (eqn,var)
输入的量:eqn是常微分方程(10.1)改用符号方程表示的常微分方程DDD.Var表示自变量,默认的自变量为t.
输出的量:S是常微分方程(10.1)的通解.
求常微分方程组
(10.2)
的通解的主要调用格式如下:
调用格式二: S=dsolve (eqn1,eqn2, ... ,eqnm,var)
输入的量:eqn1, eqn2 , ... , eqnm 分别是常微分方程组(10.2)中用符号方程表示的个常微分方程.默认的自变量为t,也可以将自变量t变为其它的符号变量var.
输出的量:S是常微分方程组(10.2)的通解.
10.1.2 用MATLAB求常微分方程(组)的特解
如果给定常微分方程(10.1)的初始条件
(10.3)
则求方程(10.1)的特解的主要调用格式如下:
调用格式三: S=dsolve (eqn,condition1,…,conditionn,var)
输入的量:eqn是常微分方程(10.1)改用符号方程表示的常微分方程DDD;condition1,…,conditionn是初始条件(10.3);Var表示自变量,默认的自变量为t.
输出的量:S是常微分方程(10.1)的特解.
同理,如果给定常微分方程组(10.2)的初始条件,则求方程(10.2)的特解的主要调用格式如下:
调用格式四:S=dsolve(eqn1,eqn2, ... ,eqnm,condition1,condition2,…,var)
输入的量:eqn1, eqn2, ... ,eqnm 分别是常微分方程组(10.2)中用符号方程表示的个常微分方程;condition1,condition2,…是常微分方程组(10.2)的初始条件;默认的自变量为t,也可以将自变量t变为其它的符号变量var.
输出的量:S是常微分方程组(10.2)的特解.
10.1.3 线性常微分方程组的解法
如果线性常微分方程组中的未知量较多,用上面的求解方法就不方便,这时我们可以用下面介绍的求解齐次线性常微分方程组和非齐次线性常微分方程组的方法求解.
求解齐次线性常微分方程组的MATLAB主程序
输入量:A是齐次线性常微分方程组的矩阵.
输出量:X是的解,E是矩阵的特征值,V是矩阵的特征向量. 名为qcxxcwz.m的求解齐次线性常微分方程组的MATLAB主程序如下:
function [X,E,V]=qcxxcwz(A)
syms x
E=eig(A);
[V,n]=eig(A);
X=exp(E*x)*V;
10.3 欧
文档评论(0)