资源描述:
《b3-maple中的偏微分方程求解》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、B3:Maple中的偏微分方程求解西希安工程模拟软件(上海)有限公司,200811.0Maple中的微分方程求解器介绍Maple中微分方程求解器使用领先的算法求解以下问题:常微分方程(ODEs):dsolve命令用于求解线性和非线性ODEs,初始值问题(IVP),以及边界值问题(BVP),可以通过参数项选择求符号解(解析解)或数值解。ODEAnalyzerAssistant微分方程分析器助手提供一个交互式用户界面方便用户求解ODE以及显示结果的图形。了解更多信息,参考帮助系统中的dsolve,dsolve/numeric,和O
2、DEAnalyzer.偏微分方程(PDEs):pdsolve命令用于求PDEs和含边界值问题的PDEs的符号解或数值解。使用Maple的PDE工具可以完成对PDE系统的结构分析和指数降阶处理。了解更多信息,参考帮助系统中的pdsolveandpdsolve/numeric.微分-代数方程(DAEs):dsolve/numeric命令是符号-数值混合求解器,使用符号预处理和降阶技术,让Maple能够求解高指数的DAE问题。Maple内置三个求解器用于处理DAEs:1)修正的Runge-KuttaFehlberg方法,2)Rose
3、nbrock方法,以及3)修正的拓展后向差分隐式方法。11.1求解偏微分方程PDE问题(BVP和IVP)Maple求解经典力学难题的能力是非常著名的,它的数值和符号偏微分方程求解器是其中的重要工具。例子:在不同的边界条件下,求波动方程的数值解、解析解、和图形解。11.1.1初始化下面的Maple代码定义了一个名为PX的程序,生成函数的周期展开。PX:=proc(h::{algebraic,procedure},g::{range,name=range})localL,D,var;iftype(g,'range')thenL:=
4、lhs(g);D:=rhs(g)-L;ifnottype(h,'procedure')thenvar:=indets(h,'name');ifnops(var)<>1thenerror"needtospecifyavariable";endif;var:=op(var);endif;elseL:=lhs(rhs(g));D:=rhs(rhs(g))-L;var:=lhs(g);endif;iftype(h,'procedure')thenproc(x::algebraic)h(x-floor((x-L)/D)*D);end;e
5、lseproc(x::algebraic)eval(h,var=x-floor((x-L)/D)*D);end;endif;end:11.1.2数值解和图形解一个空间变量的波动方程是:(1)假设初始形状由下面的函数给出:(2)对应的图形如下:00246810x假设波动方程的初始条件和边界条件如下:(3)Maple中的命令pdsolve将求解单变量演化方程(双曲和抛物)的数值解(有限差分)。(4)这个命令创建了一个模块,可以看到模块的输出函数是plot,plot3d,animate,和value。时间的图形:图200246810
6、x解的表面图:Figure3动画:time=0.00000010246810x给出计算值的函数:(5)例如,的解:0.364667328524451(6)11.1.3D'Alembert解析解对于这个问题,D'Alembert解的形式是:=因此的精确值是:0.3750000000(7)在区间上的奇次展开如下:(8)通过【图4】验证。图4510x的奇次周期展开如下:(9)我们注意到输出是一个程序体,忽略Maple输出的细节,我们再次使用图形来验证工作,得到【图5】。图50102030x最后,通过下式组合解的输出是一个分段函数的复
7、杂组合,但是下面的动画显示了在指定区间内波的相应运动。1u510x【图6】是解的表面,与动画提供的信息一致。图611.1.4扩展(可选):传播和Klein-Gordon方程10.2.4.1数值解波和Klein-Gordon方程分别表示为:(10)(11)两者之间的区别是Klein-Gordon方程中有项。为了说明两个方程解之间的查表,考虑下面的初始扰动:(12)传播长度设定为20,端点固定。初始条件和边界条件的方程是:(13)方程的数值解分别是:方程的动画分别是:波动方程的动画是:1010203040xKlein-Gordon
8、传播方程的动画是:1010203040x10.2.4.2解析解Klein-Gordon方程产生分离的变量。因此,假设解的形式如下:因此Klein-Gordon方程,这里,变为:(14)除以得到:(15)(15)-1移到左边:(16)基于以前的经验,我们引入Bernoulli分