下载此文档

微分方程省公开课一等奖全国示范课微课金奖PPT课件.pptx


文档分类:中学教育 | 页数:约19页 举报非法文档有奖
1/19
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/19 下载此文档
文档列表 文档介绍
该【微分方程省公开课一等奖全国示范课微课金奖PPT课件 】是由【zhilebei】上传分享,文档一共【19】页,该文档可以免费在线阅读,需要了解更多关于【微分方程省公开课一等奖全国示范课微课金奖PPT课件 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您编辑和打印。1
第9章 MATLAB微分方程求解
第1页
2
常微分方程初值问题
常微分方程初值问题是科学计算中常见问题,MATLAB提供了求解常微分方程(ODE)初值问题一系列ode函数。ode函数主要采取Runge-Kutta法求解常微分方程。
惯用ode函数
函数名
含义
函数名
含义
ode23
普通2-3阶法解ODE
ode23s
变阶法解刚性ode
ode45
普通4-5阶法解ODE
ode23t
解适度刚性ode
ode113
普通变阶法解ODE
ode23tb
低阶法解刚性ode
第2页
3
ODE机理
将高阶常微分方程初值问题,转变为1阶常微分方程组初值问题。
普通2-3阶法解ODE
例 9-1

function dy=dfun(x,y)
dy=y-2*x/y
编制以下计算程序
clear;clc;
X12=linspace(0,5,50);
[X,Y]=ode23('dfun',X12,2);
plot(X,Y)
运行结果如图9-1所表示
图 9-1
第3页
4
普通4-5阶法解ODE
例 9-2

function dy=dfun(x,y)
dy(1,1)=-2*y(1)+y(2)+2*sin(x);
dy(2,1)=10*y(1)-9*y(2)+9*(cos(x)-sin(x));
编制以下程序
clear;clc;
X12=linspace(0,9,30);
ode45('dfun',X12,[2,3]);
运行结果如图9-2所表示
图9-2
第4页
5
常微分方程边值问题
边值问题介绍
普通来说,微分方程边值问题可能有解、也可能无解,可能有唯一解、也可能有没有数解。在假定有唯一解前提下,边值问题有三种基本解法:
迭加法:假如微分方程和边界条件是线性,边值问题能够转化为初值问 题。
试射法:将问题转化为对漏缺初值搜索,一旦漏缺初值确定,就能够按 初值问题求解。
松弛法:先猜测满足边界条件区间网点上解值,然后利用微分方程进 行迭代改进。
第5页
6
bvp4c求解思绪
为求解常微分方程边值问题,MATLAB提供了bvp4c函数文件。该文件是依据有限元法中配置法编写。其解题基本思绪以下:
把待解问题转化为标准边值问题
为期望解指定初始猜测
利用原微分方程,结构残差函数
用原微分方程和边界条件,借助迭代使残差不停减小
为了bvp4c使用方便,MATLAB提供了能产生很好猜测解bvpinit指令,减轻了用户进行初始猜测负担。另外解算指令bvp4c也能处理包含未知参数微分方程边值问题。
第6页
7
bvp4c配套指令
例 9-3

function dy=dfun(x,y,c)
dy(1,1)=y(2);
dy(2,1)=-c*abs(y(1));

function res=bfun(ya,yb,c)
res(1,1)=ya(1);
res(2,1)=yb(1)+2
编制以下计算程序
sol=bvp4c('dfun','bfun',sinit,[],c);
plot(,(1,:),'r--')
hold on
c=;
sol=bvp4c('dfun','bfun',sinit,[],c);
plot(,(1,:),'b-')
legend('c=1','c=')
运行结果如图9-3所表示
clear;clc;
x=linspace(0,4,5);
v=[1;0];
sinit=bvpinit(x,v);
c=1;
图 9-3
第7页
8
常微分方程解析解
微分方程通解
例 9-4
编制以下程序
clear;clc;
fun='Dx=-a*t'
x=dsolve(fun,'t')
运行结果为
fun =
Dx=-a*t

x =

-1/2*a*t^2+C1
例 9-5
编制以下程序
clear;clc;
fun1='Df=f+g';
fun2='Dg=g-f';
[f,g]=dsolve(fun1,fun2,'t')
运行结果为
f =

-exp(t)*(C1*cos(t)-C2*sin(t))

g =

exp(t)*(C1*sin(t)+C2*cos(t))
第8页
9
微分方程特解
例 9-6
编制以下程序
clear;clc;
fun='D2y=4'
x=dsolve(fun,'y(0)=1','y(1)=3','x')
运行结果为
fun =
D2y=4

x =

2*x^2+1
例 9-7
编制以下程序
clear;clc;
fun1='Df=f+g';
fun2='Dg=g-f';
v1='f(0)=2';
v2='g(0)=2';
[f,g]=dsolve(fun1,fun2,v1,v2,'t')
运行结果为
f =

exp(t)*(2*cos(t)+2*sin(t))

g =

exp(t)*(-2*sin(t)+2*cos(t))
第9页
10
例 9-8
编制以下程序
clear;clc;
fun='D3y=-y';
v1='y(0)=3';
v2='Dy(0)=0';
v3='D2y(0)=0';
y=dsolve(fun,v1,v2,v3,'t')
运行结果为
y =

exp(-t)+2*exp(1/2*t)*cos(1/2*3^(1/2)*t)
第10页

微分方程省公开课一等奖全国示范课微课金奖PPT课件 来自淘豆网m.daumloan.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数19
  • 收藏数0 收藏
  • 顶次数0
  • 上传人zhilebei
  • 文件大小1.42 MB
  • 时间2025-02-10