基于Matlab的《常微分方程》实验课教学

更新时间:2023-12-17 作者:用户投稿原创标记本站原创 点赞:34051 浏览:157274

摘 要:实验教学是学习《常微分方程》理论教学的辅助.针对《常微分方程》实验课,对如何使用Matlab做实验做些探讨.

关 键 词 :常微分方程;实验;教学

《常微分方程》是高等学校数学及相关专业的课程,该课程主要以理论教学为主,研究了各种方程的解法.实际上,很多微分方程是没有解析解的,这时利用书上的算法求数值解,步骤很多,计算繁琐.为了激发学生的学习兴趣,本文针对四个方面对基于Matlab的《常微分方程》实验课教学进行探索.

一、通过Matlab求矩阵计算、特征值、平衡点、线性方程组

各举一个例子让学生熟悉矩阵计算、特征值、平衡点、线性方程组的Matlab命令及使用.

二、通过Matlab求常微分方程的解析解

求微分方程解析解常用dsolve命令:s等于dsolve(‘方程1’,‘方程2’,等,’初始条件1’,’初始条件2’等,’自变量’).举一例子求方程的通解,再举一例子求方程的特解,为体验这命令在方程组中也适用,继续举一方程组分别求其通解及特解.

三、通过Matlab求常微分方程的数值解

有些常微分方程的解我们无法用初等函数将其表达出来,此时,需要寻求方程的数值解,在求常微分方程数值解方面,常用命令:[t,x]等于solver(‘f’,ts,x0,options).solver为命令ode45,ode23,ode15s,ode23s,ode23t,ode113之一,不同命令对应于不同算法,各算法有自己的特性.ode45在很多方程求解时的首选算法,而ode23适合于对精确度要求不高的方程求解问题.解释‘f’,ts,x0,options的含义及特点,比如,求解的方程式含n个未知数,则x0为 n维向量.在这部分实验内容里,举一特殊例子,例如,求微分方程:+2+19y等于0,初始值为y(0)等于0,y′(0)等于1,先求解析解,再求数值解,并进行比较.求解析解时直接调用命令:y等于dsolve(′D2y+2*Dy+19*y等于0′,′y(0)等于0,Dy(0)等于1′,′x′),求数值解时,由于这是二阶的微分方程组,先将其转化为一阶微分方程组再求解.求解后再编程,将方程的解析解用虚线画出,保留图形再将方程的数值解图形用红颜色星号曲线画出,通过两条曲线,直观地感受解析解和数值解的吻合程度,从而理解数值解的精确度.

四、通过Matlab画平面向量场、等高线图、空间曲线、曲面图

向量场等仅凭学生的想象力不太好理解,而手工画曲线的向量场、等高线等非常耗时,通过Matlab将其画出,曲线形状相对直观,这有利于学生空间想象能力的培养.

在《常微分方程》中增加使用Matlab的实验课,会使学生对常微分方程的理论有较为感性的认识,从而激发学生学习的热情,加深学生对本课程的掌握程度.