论文无忧网提供:计算机毕业论文范文|计算机毕业设计|计算机毕业论文
栏目导航 地理科学 化学 生物科学 数学 物理 代写论文
当前位置: > 理工论文 > 数学 >

一阶常微分方程的matlab求解

1 引 言

MATLAB是一种解释性的执行语言,是当今最优秀、最具有活力的科学计算软件.MATLAB的数学运算主要有两类,即数值运算和符号运算.在符号运算中,科学运算的对象从具体的数值抽象为一般的文字符号,用符号常数、符号变量、符号函数和符号操作等形成的符号表达式,为求一阶常微分方程的解析解提供了有效的手段[1].当然,在一阶常微分方程中很多需要借助数值的方法才能求解(如一般的黎卡提方程、非线性方程等等).

paper51.com

一阶常微分方程的解法是学习微分方程中的首要内容,是微分方程的基础.常微分方程的基本解法有解析法和数值法两种.解析法也就是初等积分法,初等积分方法是用来求解常微分方程的解析解;数值法也就是数值逼近法,数值逼近法是用来求解常微分方程在一定误差范围内的近似解;到目前为止,这两种方法仍为求解一阶常微分方程最常用的方法.

内容来自论文无忧网 www.paper51.com

利用MATLAB进行一阶常微分方程求解,能同时接触这两种解法.MATLAB具有强大的计算!仿真!绘图等功能.在MATLAB环境中可以进行程序设计、数值计算、图形绘制、输入输出、文件管理等各项操作, MATLAB内还提供了许多求解高等数学问题的命令和绘图命令.利用高等数学命令可以求解函数的导数、积分、微分、常微分方程(组)的解等.利用绘图命令可以绘出各式各样的二维!三维图形[2].

paper51.com

本文介绍了一阶常微分方程的解析解的MATLAB求解及一阶常微分方程的数值解的MATLAB求解;并进行精度对比.从而体现出一阶常微分方程MATLAB实现的可行性、方便性、优越性及多样性.

内容来自www.paper51.com

2 用MATLAB求一阶常微分方程的解析解 paper51.com

解析解通常用解析法也就是初等积分法进行求解,因为解析法能求出一阶常微分方程的通解,并且求出来的是精确解.所以对于一些简单的微分方程,尽可能的用初等积分法来求解.MATLAB语言的符号运算工具提供了一个系数微分方程求解的实用函数的dsolve ()命令[3],来求微分方程、微分方程组的解析解,dsolve ()命令还能求出通解和特解.对特解,可用MATLAB的ezplot绘图命令绘出积分曲线.

内容来自论文无忧网 www.paper51.com

dsolve()的命令格式: http://www.paper51.com

dsolve('eq1','eq2',…, 'eqi',…, 'cond1', 'cond2',…, 'condi', 'v') http://www.paper51.com

其中eqi表示第i个微分方程;condi表示第i个初始条件,如果求通解则不填;’v’表示自变量.

copyright paper51.com

ezplot()的命令格式为

内容来自www.paper51.com

ezplot(f,[xmin,xmax,ymin,ymax]) paper51.com

其中f为函数名,xmin,xmax为x轴上图形显示的范围,ymin,ymax为y轴上的显示范围. paper51.com

例1 求微分方程的通解. paper51.com

解: 求解的命令格式为[x,y]=dsolve('Dx+y=0,Dy+x=sint'). copyright paper51.com

求得的结果为:   x =C1*exp(-t)-C2*exp(t)+sint

paper51.com

y =C1*exp(-t)+C2*exp(t) 内容来自www.paper51.com

例2 求微分方程满足初始条件的特解,并画出积分曲线图形. 内容来自www.paper51.com

解: 第一步,求特解的命令格式为 http://www.paper51.com

r=dsolve('Dy=x^3-x','y(0)=0','x').

内容来自www.paper51.com

得到的结果为:

内容来自www.paper51.com

http://www.paper51.com

第二步,画出积分曲线图,画积分曲线图用命令ezplot.

内容来自论文无忧网 www.paper51.com

命令格式如下:

http://www.paper51.com

http://www.paper51.com

图1 解析法的积分曲线图

内容来自论文无忧网 www.paper51.com

从以上两例中容易看出,使用dsolve()命令求解常微分方程的通解和特解非常容易,并且还能迅速的画出积分曲线图来.体现了计算机求解的优势.但是也要注意,对于不能用初等积分法解的常微分方程,使用dsolve()命令同样不能求解这类常微分方程.

内容来自www.paper51.com

------分隔线----------------------------
联系方式