Maple提高教程B3- Maple中的偏微分方程求解

合集下载

数学软件Maple使用教程

数学软件Maple使用教程

数学软件Maple使⽤教程数学实验数学软件Maple使⽤教程序⾔⼀.什么是数学实验?我们都熟悉物理实验和化学实验,就是利⽤仪器设备,通过实验来了解物理现象、化学物质等的特性。

同样,数学实验也是要通过实验来了解数学问题的特性并解决对应的数学问题。

过去,因为实验设备和实验⼿段的问题,⽆法解决数学上的实验问题,所以,⼀直没有听说过数学实验这个词。

随着计算机的飞速发展,计算速度越来越快,软件功能也越来越强,许多数学问题都可以由计算机代替完成,也为我们⽤实验解决数学问题提供了可能。

数学实验就是以计算机为仪器,以软件为载体,通过实验解决实际中的数学问题。

⼆.常⽤的数学软件⽬前较流⾏的数学软件主要有四种:1.MathACD其优点是许多数学符号键盘化,通过键盘可以直接输⼊数学符号,在教学⽅⾯使⽤起来⾮常⽅便。

缺点是⽬前仅能作数值运算,符号运算功能较弱,输出界⾯不好。

2.Matlab优点是⼤型矩阵运算功能⾮常强,构造个⼈适⽤函数⽅便很⽅便,因此,⾮常适合⼤型⼯程技术中使⽤。

缺点是输出界⾯稍差,符号运算功能也显得弱⼀些。

不过,在这个公司购买了Maple公司的内核以后,符号运算功能已经得到了⼤⼤的加强。

再⼀个缺点就是这个软件太⼤,按现在流⾏的版本5.2,⾃⾝有400多兆,占硬盘空间近1个G,⼀般稍早些的计算机都安装部下。

我们这次没⽤它主要就是这个原因。

3.Mathematica其优点是结构严谨,输出界⾯好,计算功能强,是专业科学技术⼈员所喜爱的数学软件。

缺点是软件本⾝较⼤,⽬前流⾏的3.0版本有200兆;另⼀个缺点就是命令太长,每⼀个命令都要输⼊英⽂全名,因此,需要英语⽔平较⾼。

4.Maple优点是输出界⾯很好,与我们平常书写⼏乎⼀致;还有⼀个最⼤的优点就是它的符号运算功能特别强,这对于既要作数值运算,⼜要作符号运算时就显得⾮常⽅便了。

除此之外,其软件只有30兆,安装也很⽅便(直接拷贝就可以⽤)。

所以,我们把它放到学校⽹上直接调⽤。

微分方程的maple求解

微分方程的maple求解

微分⽅程的maple求解1、常⽤函数1)求解常微分⽅程的命令dsolve.dsolve(常微分⽅程)dsolve(常微分⽅程,待解函数,选项)dsolve({常微分⽅程,初值},待解函数,选项)dsolve({常微分⽅程组,初值},{待解函数},选项)其中选项设置解得求解⽅法和解的表⽰⽅式。

求解⽅法有type=formal_series(形式幂级数解)、type=formal_solution(形式解)、type=numeric(数值解)、type=series(级数解)、method=fourier(通过Fourier变换求解)、method=laplace(通过Laplace变换求解)等。

解的表⽰⽅式有explicit(显式)、implicit(隐式)、parametric(参数式)。

当⽅程⽐较复杂时,要想得到显式解通常⼗分困难,结果也会相当复杂。

这时,⽅程的隐式解更为有⽤,⼀般也要简单得多。

dsolve为标准库函数。

2)求解⼀阶线性常微分⽅程的命令linearsol.在Maple中求解⼀阶线性⽅程既可以⽤dsolve函数求解,也可以⽤Detools函数包中的linearsol函数求解。

linearsol是专门求解线性微分⽅程的命令,使⽤格式为: linearsol(线性⽅程,待解函数)linearsol的返回值为集合形式的解。

3)偏微分⽅程求解命令pdsolve.pdsolve(偏微分⽅程,待解变量,选项)pdsolve(偏微分⽅程,初值或边界条件,选项)pdsolve为标准库函数,可直接使⽤。

如果求解成功,将得到⼏种可能结果:⽅程的通解;拟通解(包含有任意函数,但不⾜以构造通解);⼀些常微分⽅程的集合;2、⽅法1)⼀阶常微分⽅程的解法a 分离变量法 I 直接分离变量法。

如()()dyf xg y dx=,⽅程右端是两个分别只含x 或y 的函数因式乘积,其通解为()()dyf x dx Cg y =+?。

用Maple学习微积分2

用Maple学习微积分2

用Maple学习微积分理解导数函数f(x)在x处的导数☐“工具”→“Math Apps”→“Calculus”→“Derivative Definition”计算导数命令行☐单变元函数一阶导diff(f(x), x)☐单变元函数n阶导diff(f(x), x$n)☐右键→“Differentiate”→“With Respect To”→选择变量不支持高阶导计算导数命令行☐多变元函数f对x1,x2,x3依次求偏导diff(f, x1,x2,x3) ☐右键→“Differentiate”→“With Respect To”→选择变量☐连续对某个变元求偏导diff(f, x1,x2$2,x3)导数做图利用Student[Calculus1]软件包的DerivativePlot☐DerivativePlot(f,x=a..b)在区间[a,b]做出f及其导数的图像☐DerivativePlot(f,x=a..b,order=1..n)做出f及其直至n阶导数的图像注意:首先用with命令调用软件包导数做图利用plot函数☐设F=[f1,f2,f3]为函数序列,则plot(F,x=a..b)做出函数f1,f2和f3在区间[a,b]上的一幅图像☐:= :赋值语句☐for:循环语句☐op(S):返回集合或序列S中的所有元素☐“:”VS“;”用Maple 学习微积分:for 循环和if 语句for 循环☐变量i 以间隔c 从a 变至b ☐对于每个i ,执行“命令行”for i from a to b by cdo命令行end do:if 语句if 表达式then命令行1else命令行2end if:☐如果表达式成立则执行“命令行1”,否则执行“命令行2”利用for 循环和if 语句计算100内可以被3整除的奇数之和(mod 求模运算)泰勒展开利用泰勒级数f n近似函数f(x)☐“工具”→“Math Apps”→“Calculus”→“Taylor's Theorem”计算泰勒展开☐taylor(f,x=a,n)计算f在点a处的n阶泰勒展开☐convert(t,polynom)将泰勒展开转化为泰勒多项式convert命令可以实现各种数据格式的可行转换用Maple学习微积分:牛顿迭代法牛顿迭代法☐NewtonsMethodTutor()调用牛顿迭代法演示小程序☐NewtonsMethod(f,x=a,output=sequence)调用牛顿迭代法以初始点a计算方程f=0的一个解用Maple学习微积分小结☐导数的理解、计算与做图☐for循环与if语句☐泰勒展开☐牛顿迭代法自己试一试:1000000以内的素数有多少?并计算这些素数的和。

Maple常用计算命令

Maple常用计算命令

常用计算命令《Maple 指令》7.0版本第1章章数1.1 复数Re,Im - 返回复数型表达式的实部/虚部abs - 绝对值函数argument - 复数的幅角函数conjugate - 返回共轭复数csgn - 实数和复数表达式的符号函数signum - 实数和复数表达式的sign 函数51.2 MAPLE 常数已知的变量名称指数常数(以自然对数为底)I - x^2 = -1 的根infinity 无穷大1.3 整数函数! - 阶乘函数irem, iquo - 整数的余数/商isprime - 素数测试isqrfree - 无整数平方的因数分解max, min - 数的最大值/最小值mod, modp, mods - 计算对 m 的整数模rand - 随机数生成器randomize - 重置随机数生成器1.4 素数Randpoly, Randprime - 有限域的随机多项式/首一素数多项式ithprime - 确定第 i 个素数nextprime, prevprime - 确定下一个最大/最小素数1.5 数的进制转换convert/base - 基数之间的转换convert/binary - 转换为二进制形式convert/decimal - 转换为 10 进制convert/double - 将双精度浮点数由一种形式转换为另一种形式convert/float - 转换为浮点数convert/hex - 转换为十六进制形式convert/metric - 转换为公制单位convert/octal - 转换为八进制形式1.6 数的类型检查type - 数的类型检查函数第2章初等数学2.1 初等函数product - 确定乘积求和不确定乘积exp - 指数函数sum - 确定求和不确定求和sqrt - 计算平方根算术运算符+, -, *, /, ^add, mul - 值序列的加法/乘法2.2 三角函数arcsin, arcsinh, . - 反三角函数/反双曲函数sin, sinh, . - 三角函数/双曲函数2.3 LOGARITHMS 函数dilog - Dilogarithm 函数ln, log, log10 - 自然对数/一般对数,常用对数2.4 类型转换convert/`+`,convert/`*` - 转换为求和/乘积convert/hypergeom - 将求和转换为超越函数convert/degrees - 将弧度转换为度convert/expsincos - 将trig 函数转换为exp, sin, cosconvert/Ei - 转换为指数积分convert/exp - 将trig 函数转换为指数函数convert/ln - 将arctrig 转换为对数函数polar - 转换为极坐标形式convert/radians - 将度转换为弧度convert/sincos - 将trig 函数转换为sin, cos, sinh, cosh convert/tan - 将trig 函数转换为tanconvert/trig - 将指数函数转换为三角函数和双曲函数第3章求值3.1 假设功能3.2 求值Eval - 对一个表达式求值eval - 求值evala - 在代数数(或者函数)域求值evalb - 按照一个布尔表达式求值evalc - 在复数域上符号求值evalf - 使用浮点算法求值evalhf - 用硬件浮点数算法对表达式求值evalm - 对矩阵表达式求值evaln - 求值到一个名称evalr, shake - 用区间算法求表达式的值和计算范围evalrC - 用复数区间算法对表达式求值value - 求值的惰性函数第4章求根,解方程4.1 数值解fsolve - 利用浮点数算法求解solve/floats - 包含浮点数的表达式4.2 最优化extrema - 寻找一个表达式的相对极值minimize, maximize - 计算最小值/最大值maxnorm - 一个多项式无穷大范数4.3 求根allvalues -计算含有RootOfs的表达式的所有可能值isqrt, iroot - 整数的平方根/第n 次根realroot - 一个多项式的实数根的隔离区间root - 一个代数表达式的第n 阶根RootOf - 方程根的表示surd - 非主根函数roots - 一个多项式对一个变量的精确根turm, sturmseq - 多项式在区间上的实数根数和实根序列4.4 解方程eliminate - 消去一个方程组中的某些变量isolve - 求解方程的整数解solvefor - 求解一个方程组的一个或者多个变量isolate - 隔离一个方程左边的一个子表达式singular - 寻找一个表达式的极点solve/identity - 求解包含属性的表达式solve/ineqs - 求解不等式solve/linear - 求解线性方程组solve/radical - 求解含有未知量根式的方程solve/scalar - 标量情况(单变量和方程)solve/series - 求解含有一般级数的方程solve/system - 解方程组或不等式组第5章操作表达式5.1 处理表达式Norm - 代数数 (或者函数) 的标准型Power - 惰性幂函数Powmod -带余数的惰性幂函数Primfield - 代数域的原始元素Trace - 求一个代数数或者函数的迹charfcn - 表达式和集合的特征函数Indets - 找一个表达式的变元invfunc - 函数表的逆powmod - 带余数的幂函数Risidue - 计算一个表达式的代数余combine - 表达式合并(对tan,cot不好用)expand - 表达式展开Expand - 展开表达式的惰性形式expandoff/expandon - 抑制/不抑制函数展开5.2 因式分解Afactor - 绝对因式分解的惰性形式Afactors - 绝对因式分解分解项列表的惰性形式Berlekamp - 因式分解的Berlekamp 显式度factor - 多元的多项式的因式分解factors - 多元多项式的因式分解列表Factor - 函数factor 的惰性形式Factors - 函数factors 的惰性形式polytools[splits] - 多项式的完全因式分解第6章化简6.1 表达式化简118simplify - 给一个表达式实施化简规则simplify/@ - 利用运算符化简表达式simplify/Ei - 利用指数积分化简表达式simplify/GAMMA - 利用GAMMA 函数进行化简simplify/RootOf - 用RootOf 函数化简表达式simplify/wronskian - 化简含wronskian 标识符的表达式simplify/hypergeom - 化简超越函数表达式simplify/ln - 化简含有对数的表达式simplify/piecewise - 化简分段函数表达式simplify/polar - 化简含有极坐标形式的复数型表达式simplify/power - 化简含幂次的表达式simplify/radical - 化简含有根式的表达式simplify/rtable - 化简rtable 表达式simplify/siderels - 使用关系式进行化简simplify/sqrt - 根式化简simplify/trig - 化简trig 函数表达式simplify/zero - 化简含嵌入型实数和虚数的复数表达式6.2 其它化简操作Normal - normal 函数的惰性形式convert - 将一个表达式转换成不同形式radnormal - 标准化一个含有根号数的表达式rationalize - 分母有理化第7章操作多项式7.0 MAPLE 中的多项式简介7.1 提取coeff - 提取一个多项式的系数coeffs - 提取多元的多项式的所有系数coeftayl - 多元表达式的系数lcoeff, tcoeff - 返回多元多项式的首项和末项系数7.2 多项式约数和根gcd, lcm - 多项式的最大公约数/最小公倍数psqrt, proot - 多项式的平方根和第n次根rem,quo - 多项式的余数/商7.3 操纵多项式convert/horner - 将一个多项式转换成Horner形式collect - 象幂次一样合并系数compoly - 确定一个多项式的可能合并的项数convert/polynom - 将级数转换成多项式形式convert/mathorner - 将多项式转换成Horner矩阵形式convert/ratpoly - 将级数转换成有理多项式sort - 将值的列表或者多项式排序sqrfree - 不含平方项的因数分解函数discrim - 多项式的判别式fixdiv - 计算多项式的固定除数norm - 多项式的标准型resultant - 计算两个多项式的终结式bernoulli - Bernoulli 数和多项式bernstein - 用Bernstein多项式近似一个函数content, primpart - 一个多元的多项式的内容和主部degree, ldegree - 一个多项式的最高次方/最低次方divide - 多项式的精确除法euler - Euler 数和多项式icontent - 多项式的整数部分interp - 多项式的插值prem, sprem - 多项式的pseudo 余数和稀疏pseudo 余数randpoly - 随机多项式生成器spline - 计算自然样条函数第8章有理表达式8.0 有理表达式简介8.1 操作有理多项式numer,denom - 返回一个表达式的分子/分母frontend - 将一般的表达式处理成一个有理表达式normal - 标准化一个有理表达式convert/parfrac - 转换为部分分数形式convert/rational - 将浮点数转换为接近的有理数ratrecon - 重建有理函数第9章微积分9.1 取极限Limit, limit - 计算极限limit[dir] - 计算方向极限limit[multi] - 多重方向极限limit[return] - 极限的返回值9.2 连续性测试discont - 寻找一个函数在实数域上的间断点fdiscont - 用数值法寻找函数在实数域上的间断点iscont - 测试在一个区间上的连续性D - 微分算子D, diff - 运算符D 和函数diffdiff, Diff - 微分或者偏微分convert/D - 将含导数表达式转换为D运算符表达式convert/diff - 将D(f)(x)表达式转换为diff(f(x),x)的形式implicitdiff - 由一个方程定义一个函数的微分9.4 积分计算Si, Ci … - 三角和双曲积分Dirac, Heaviside - Dirac 函数/Heaviside阶梯函数Ei - 指数积分Elliptic - 椭圆积分FresnelC, … - Fresnel 正弦,余弦积分和辅助函数int, Int - 定积分和不定积分LegendreP, … - Legendre 函数及其第一和第二类函数Li - 对数积分student[changevar] - 变量代换dawson - Dawson 积分ellipsoid - 椭球体的表面积evalf(int) - 数值积分intat, Intat - 在一个点上积分求值第10章微分方程10.1 微分方程分类odeadvisor - ODE-求解分析器DESol - 表示微分方程解的数据结构pdetest - 测试pdsolve 能找到的偏微分方程(PDEs)解10.2 常微分方程求解dsolve - 求解常微方程 (ODE)dsolve - 用给定的初始条件求解ODE 问题dsolve/inttrans - 用积分变换方法求解常微分方程dsolve/numeric - 常微方程数值解dsolve/piecewise - 带分段系数的常微方程求解dsolve - 寻找ODE 问题的级数解dsolve - 求解ODEs 方程组odetest - 从ODE 求解器中测试结果是显式或者隐式类型10.3 偏微分方程求解pdsolve - 寻找偏微分方程 (PDEs) 的解析解第11章数值计算11.1 MAPLE 中的数值计算环境IEEE 标准和Maple数值计算数据类型特殊值环境变量11.2 算法标准算法复数算法含有0,无穷和未定义数的算法11.3 数据构造器254complex - 复数和复数构造器Float, … - 浮点数及其构造器Fraction - 分数及其的构造器integer - 整数和整数构造器11.4 MATLAB 软件包简介11.5 “”区间类型表达式第12章级数12.1 幂级数的阶数Order - 阶数项函数order - 确定级数的截断阶数12.2 常见级数展开series - 一般的级数展开taylor - Taylor 级数展开mtaylor - 多元Taylor级数展开poisson - Poisson级数展开.26812.3 其它级数eulermac - Euler-Maclaurin求和piecewise - 分段连续函数asympt - 渐进展开第13章特殊函数AiryAi, AiryBi - Airy 波动函数AiryAiZeros, AiryBiZeros - Airy函数的实数零点AngerJ, WeberE - Anger函数和Weber函数BesselI, HankelH1, … - Bessel函数和Hankel函数BesselJZeros, … - Bessel函数实数零点Beta - Beta函数EllipticModulus - 模数函数k(q)GAMMA, lnGAMMA - 完全和不完全Gamma函数GaussAGM - Gauss 算术的几何平均数JacobiAM, ., - Jacobi 振幅函数和椭圆函数JacobiTheta1, JacobiTheta4 - Jacobi theta函数JacobiZeta - Jacobi 的Zeta函数KelvinBer, KelvinBei - Kelvin函数KummerM, - Kummer M函数和U函数LambertW - LambertW函数LerchPhi - 一般的Lerch Phi函数LommelS1, LommelS2 - Lommel函数MeijerG - 一个修正的Meijer G函数Psi - Digamma 和Polygamma函数StruveH, StruveL - Struve函数WeierstrassP - Weierstrass P函数及其导数WhittakerM - Whittaker 函数Zeta - Zeta 函数erf, … - 误差函数,补充的误差函数和虚数误差函数harmonic - 调和函数hypergeom - 广义的超越函数pochhammer - 一般的pochhammer函数polylog - 一般的polylogarithm函数第14章线性代数14.1 ALGEBRA(代数)中矩阵,矢量和数组14.2 LINALG 软件包简介14.3 数据结构矩阵matrices(小写)矢量vectors(矢量)convert/matrix - 将数组,列表,Matrix 转换成matrixconvert/vector - 将列表,数组或Vector 转换成矢量vector linalg[matrix] - 生成矩阵matrix(小写)linalg[vector] - 生成矢量vector(小写)14.4 惰性函数Det - 惰性行列式运算符Eigenvals - 数值型矩阵的特征值和特征向量Hermite, Smith - 矩阵的Hermite 和Smith 标准型14.5 LinearAlgebra函数Matrix 定义矩阵Add 加/减矩阵Adjoint 伴随矩阵BackwardSubstitute 求解 A . X = B,其中 A 为上三角型行阶梯矩阵BandMatrix 带状矩阵Basis 返回向量空间的一组基SumBasis 返回向量空间直和的一组基IntersectionBasis 返回向量空间交的一组基BezoutMatrix 构造两个多项式的 Bezout 矩阵BidiagonalForm 将矩阵约化为双对角型CharacteristicMatrix 构造特征矩阵CharacteristicPolynomial 构造矩阵的特征多项式CompanionMatrix 构造一个首一(或非首一)多项式或矩阵多项式的友矩阵(束)ConditionNumber 计算矩阵关于某范数的条件数ConstantMatrix 构造常数矩阵ConstantVector 构造常数向量Copy 构造矩阵或向量的一份复制CreatePermutation 将一个 NAG 主元向量转换为一个置换向量或矩阵CrossProduct 向量的叉积`&x` 向量的叉积DeleteRow 删除矩阵的行DeleteColumn 删除矩阵的列Determinant 行列式Diagonal 返回从矩阵中得到的向量序列DiagonalMatrix 构造(分块)对角矩阵Dimension 行数和列数DotProduct 点积BilinearForm 向量的双线性形式EigenConditionNumbers 计算数值特征值制约问题的特征值或特征向量的条件数Eigenvalues 计算矩阵的特征值Eigenvectors 计算矩阵的特征向量Equal 比较两个向量或矩阵是否相等ForwardSubstitute 求解 A . X = B,其中 A 为下三角型行阶梯矩阵FrobeniusForm 将一个方阵约化为 Frobenius 型(有理标准型)GaussianElimination 对矩阵作高斯消元ReducedRowEchelonForm 对矩阵作高斯-约当消元GetResultDataType 返回矩阵或向量运算的结果数据类型GetResultShape 返回矩阵或向量运算的结果形状GivensRotationMatrix 构造 Givens 旋转的矩阵GramSchmidt 计算一个正交向量集HankelMatrix 构造一个 Hankel 矩阵HermiteForm 计算一个矩阵的 Hermite 正规型HessenbergForm 将一个方阵约化为上 Hessenberg 型HilbertMatrix 构造广义 Hilbert 矩阵HouseholderMatrix 构造 Householder 反射矩阵IdentityMatrix 构造一个单位矩阵IsDefinite 检验矩阵的正定性,负定性或不定性IsOrthogonal 检验矩阵是否正交IsUnitary 检验矩阵是否为酉矩阵IsSimilar 确定两个矩阵是否相似JordanBlockMatrix 构造约当块矩阵JordanForm 将矩阵约化为约当型KroneckerProduct 构造两个矩阵的 Kronecker 张量积LeastSquares 方程的最小二乘解LinearSolve 求解线性方程组 A . x = bLUDecomposition 计算矩阵的 Cholesky,PLU 或 PLU1R 分解Map 将一个程序映射到一个表达式上,对矩阵和向量在原位置上进行处理MatrixAdd 计算两个矩阵的线性组合VectorAdd 计算两个向量的线性组合MatrixExponential 确定一个矩阵 A 的矩阵指数 exp(A)MatrixFunction 确定方阵 A 的函数 F(A)MatrixInverse 计算方阵的逆或矩阵的 Moore-Penrose 伪逆MatrixMatrixMultiply 计算两个矩阵的乘积MatrixVectorMultiply 计算一个矩阵和一个列向量的乘积VectorMatrixMultiply 计算一个行向量和一个矩阵的乘积MatrixPower 矩阵的幂MinimalPolynomial 构造矩阵的最小多项式Minor 计算矩阵的子式Multiply 矩阵相乘Norm 计算矩阵或向量的p-范数MatrixNorm 计算矩阵的p-范数VectorNorm 计算向量的p-范数Normalize 向量正规化NullSpace 计算矩阵的零度零空间OuterProductMatrix 两个向量的外积Permanent 方阵的不变量Pivot 矩阵元素的主元消去法PopovForm Popov 正规型QRDecomposition QR 分解RandomMatrix 构造随机矩阵RandomVector 构造随机向量Rank 计算矩阵的秩Row 返回矩阵的一个行向量序列Column 返回矩阵的一个列向量序列RowOperation 对矩阵作初等行变换ColumnOperation 对矩阵作出等列变换RowSpace 返回矩阵行空间的一组基ColumnSpace 返回矩阵列空间的一组基ScalarMatrix 构造一个单位矩阵的数量倍数ScalarVector 构造一个单位向量的数量倍数ScalarMultiply 矩阵与数的乘积MatrixScalarMultiply 计算矩阵与数的乘积VectorScalarMultiply 计算向量与数的乘积SchurForm 将方阵约化为 Schur 型SingularValues 计算矩阵的奇异值SmithForm 将矩阵约化为 Smith 正规型StronglyConnectedBlocks 计算方阵的强连通块SubMatrix 构造矩阵的子矩阵SubVector 构造向量的子向量SylvesterMatrix 构造两个多项式的 Sylvester 矩阵ToeplitzMatrix 构造 Toeplitz 矩阵Trace 计算方阵的迹Transpose 转置矩阵HermitianTranspose 共轭转置矩阵TridiagonalForm 将方阵约化为三对角型UnitVector 构造单位向量VandermondeMatrix 构造一个 Vandermonde 矩阵VectorAngle 计算两个向量的夹角ZeroMatrix 构造一个零矩阵ZeroVector 构造一个零向量Zip 将一个具有两个参数的程序作用到一对矩阵或向量上LinearAlgebra[Generic] 子函数包 [Generic] 子函数包提供作用在场,欧几里得域,积分域和环上的线性代数算法。

Maple常用计算命令

Maple常用计算命令

Maple常用计算命令Maple 常用计算命令《Maple 指令》7.0版本第1章章数1.1 复数Re,Im - 返回复数型表达式的实部/虚部abs - 绝对值函数argument - 复数的幅角函数conjugate - 返回共轭复数csgn - 实数和复数表达式的符号函数signum - 实数和复数表达式的sign 函数51.2 MAPLE 常数已知的变量名称指数常数(以自然对数为底)I - x^2 = -1 的根infinity 无穷大1.3 整数函数! - 阶乘函数irem, iquo - 整数的余数/商isprime - 素数测试isqrfree - 无整数平方的因数分解max, min - 数的最大值/最小值mod, modp, mods - 计算对 m 的整数模rand - 随机数生成器randomize - 重置随机数生成器1.4 素数Randpoly, Randprime - 有限域的随机多项式/首一素数多项式ithprime - 确定第i个素数nextprime, prevprime - 确定下一个最大/最小素数1.5 数的进制转换convert/base - 基数之间的转换convert/binary - 转换为二进制形式convert/decimal - 转换为 10 进制convert/double - 将双精度浮点数由一种形式转换为另一种形式convert/float - 转换为浮点数convert/hex - 转换为十六进制形式convert/metric - 转换为公制单位convert/octal - 转换为八进制形式1.6 数的类型检查type - 数的类型检查函数第2章初等数学2.1 初等函数product - 确定乘积求和不确定乘积exp - 指数函数sum - 确定求和不确定求和sqrt - 计算平方根算术运算符+, -, *, /, ^add, mul - 值序列的加法/乘法2.2 三角函数arcsin, arcsinh, . - 反三角函数/反双曲函数sin, sinh, . - 三角函数/双曲函数2.3 LOGARITHMS 函数dilog - Dilogarithm函数ln, log, log10 - 自然对数/一般对数,常用对数2.4 类型转换convert/`+`,convert/`*` - 转换为求和/乘积convert/hypergeom - 将求和转换为超越函数convert/degrees - 将弧度转换为度convert/expsincos - 将trig 函数转换为exp, sin, cosconvert/Ei - 转换为指数积分convert/exp - 将trig 函数转换为指数函数convert/ln - 将arctrig转换为对数函数polar - 转换为极坐标形式convert/radians - 将度转换为弧度convert/sincos - 将trig 函数转换为sin, cos, sinh, cosh convert/tan - 将trig 函数转换为tanconvert/trig - 将指数函数转换为三角函数和双曲函数第3章求值3.1 假设功能3.2 求值Eval - 对一个表达式求值eval - 求值evala - 在代数数(或者函数)域求值evalb - 按照一个布尔表达式求值evalc - 在复数域上符号求值evalf - 使用浮点算法求值evalhf - 用硬件浮点数算法对表达式求值evalm - 对矩阵表达式求值evaln - 求值到一个名称evalr, shake - 用区间算法求表达式的值和计算范围evalrC - 用复数区间算法对表达式求值value - 求值的惰性函数第4章求根,解方程4.1 数值解fsolve - 利用浮点数算法求解solve/floats - 包含浮点数的表达式4.2 最优化extrema - 寻找一个表达式的相对极值minimize, maximize - 计算最小值/最大值maxnorm - 一个多项式无穷大范数4.3 求根allvalues -计算含有RootOfs的表达式的所有可能值isqrt, iroot - 整数的平方根/第n 次根realroot - 一个多项式的实数根的隔离区间root - 一个代数表达式的第n 阶根RootOf - 方程根的表示surd - 非主根函数roots - 一个多项式对一个变量的精确根turm, sturmseq - 多项式在区间上的实数根数和实根序列4.4 解方程eliminate - 消去一个方程组中的某些变量isolve - 求解方程的整数解solvefor - 求解一个方程组的一个或者多个变量isolate - 隔离一个方程左边的一个子表达式singular - 寻找一个表达式的极点solve/identity - 求解包含属性的表达式solve/ineqs - 求解不等式solve/linear - 求解线性方程组solve/radical - 求解含有未知量根式的方程solve/scalar - 标量情况(单变量和方程)solve/series - 求解含有一般级数的方程solve/system - 解方程组或不等式组第5章操作表达式5.1 处理表达式Norm - 代数数 (或者函数) 的标准型Power - 惰性幂函数Powmod -带余数的惰性幂函数Primfield - 代数域的原始元素Trace - 求一个代数数或者函数的迹charfcn - 表达式和集合的特征函数Indets - 找一个表达式的变元invfunc - 函数表的逆powmod - 带余数的幂函数Risidue - 计算一个表达式的代数余combine - 表达式合并expand - 表达式展开Expand - 展开表达式的惰性形式expandoff/expandon - 抑制/不抑制函数展开5.2 因式分解Afactor - 绝对因式分解的惰性形式Afactors - 绝对因式分解分解项列表的惰性形式Berlekamp - 因式分解的Berlekamp显式度factor - 多元的多项式的因式分解factors - 多元多项式的因式分解列表Factor - 函数factor 的惰性形式Factors - 函数factors 的惰性形式polytools[splits] - 多项式的完全因式分解第6章化简6.1 表达式化简118simplify - 给一个表达式实施化简规则simplify/@ - 利用运算符化简表达式simplify/Ei - 利用指数积分化简表达式simplify/GAMMA - 利用GAMMA 函数进行化简simplify/RootOf - 用RootOf函数化简表达式simplify/wronskian - 化简含wronskian标识符的表达式simplify/hypergeom - 化简超越函数表达式simplify/ln - 化简含有对数的表达式simplify/piecewise - 化简分段函数表达式simplify/polar - 化简含有极坐标形式的复数型表达式simplify/power - 化简含幂次的表达式simplify/radical - 化简含有根式的表达式simplify/rtable - 化简rtable表达式simplify/siderels - 使用关系式进行化简simplify/sqrt - 根式化简simplify/trig - 化简trig 函数表达式simplify/zero - 化简含嵌入型实数和虚数的复数表达式6.2 其它化简操作Normal - normal 函数的惰性形式convert - 将一个表达式转换成不同形式radnormal - 标准化一个含有根号数的表达式rationalize - 分母有理化第7章操作多项式7.0 MAPLE 中的多项式简介7.1 提取coeff - 提取一个多项式的系数coeffs - 提取多元的多项式的所有系数coeftayl - 多元表达式的系数lcoeff, tcoeff - 返回多元多项式的首项和末项系数7.2 多项式约数和根gcd, lcm - 多项式的最大公约数/最小公倍数psqrt, proot - 多项式的平方根和第n次根rem,quo - 多项式的余数/商7.3 操纵多项式convert/horner - 将一个多项式转换成Horner形式collect - 象幂次一样合并系数compoly - 确定一个多项式的可能合并的项数convert/polynom - 将级数转换成多项式形式convert/mathorner - 将多项式转换成Horner矩阵形式convert/ratpoly - 将级数转换成有理多项式sort - 将值的列表或者多项式排序sqrfree - 不含平方项的因数分解函数7.4 多项式运算discrim - 多项式的判别式fixdiv - 计算多项式的固定除数norm - 多项式的标准型resultant - 计算两个多项式的终结式bernoulli - Bernoulli 数和多项式bernstein - 用Bernstein多项式近似一个函数content, primpart - 一个多元的多项式的内容和主部degree, ldegree - 一个多项式的最高次方/最低次方divide - 多项式的精确除法euler - Euler 数和多项式icontent - 多项式的整数部分interp - 多项式的插值prem, sprem - 多项式的pseudo 余数和稀疏pseudo 余数randpoly - 随机多项式生成器spline - 计算自然样条函数第8章有理表达式8.0 有理表达式简介8.1 操作有理多项式numer,denom - 返回一个表达式的分子/分母frontend - 将一般的表达式处理成一个有理表达式normal - 标准化一个有理表达式convert/parfrac - 转换为部分分数形式convert/rational - 将浮点数转换为接近的有理数ratrecon - 重建有理函数第9章微积分9.1 取极限Limit, limit - 计算极限limit[dir] - 计算方向极限limit[multi] - 多重方向极限limit[return] - 极限的返回值9.2 连续性测试discont - 寻找一个函数在实数域上的间断点fdiscont - 用数值法寻找函数在实数域上的间断点iscont - 测试在一个区间上的连续性9.3 微分计算D - 微分算子D, diff - 运算符D 和函数diffdiff, Diff - 微分或者偏微分convert/D - 将含导数表达式转换为D运算符表达式convert/diff - 将D(f)(x)表达式转换为diff(f(x),x)的形式implicitdiff - 由一个方程定义一个函数的微分9.4 积分计算Si, Ci … - 三角和双曲积分Dirac, Heaviside - Dirac 函数/Heaviside阶梯函数Ei - 指数积分Elliptic - 椭圆积分FresnelC, … - Fresnel 正弦,余弦积分和辅助函数int, Int - 定积分和不定积分LegendreP, … - Legendre 函数及其第一和第二类函数Li - 对数积分student[changevar] - 变量代换dawson - Dawson 积分ellipsoid - 椭球体的表面积evalf(int) - 数值积分intat, Intat - 在一个点上积分求值第10章微分方程10.1 微分方程分类odeadvisor - ODE-求解分析器DESol - 表示微分方程解的数据结构pdetest - 测试pdsolve能找到的偏微分方程(PDEs)解10.2 常微分方程求解dsolve - 求解常微方程 (ODE)dsolve - 用给定的初始条件求解ODE 问题dsolve/inttrans - 用积分变换方法求解常微分方程dsolve/numeric - 常微方程数值解dsolve/piecewise - 带分段系数的常微方程求解dsolve - 寻找ODE 问题的级数解dsolve - 求解ODEs 方程组odetest - 从ODE 求解器中测试结果是显式或者隐式类型10.3 偏微分方程求解pdsolve - 寻找偏微分方程 (PDEs) 的解析解第11章数值计算11.1 MAPLE 中的数值计算环境IEEE 标准和Maple数值计算数据类型特殊值环境变量11.2 算法标准算法复数算法含有0,无穷和未定义数的算法11.3 数据构造器254complex - 复数和复数构造器Float, … - 浮点数及其构造器Fraction - 分数及其的构造器integer - 整数和整数构造器11.4 MATLAB 软件包简介11.5 “”区间类型表达式第12章级数12.1 幂级数的阶数Order - 阶数项函数order - 确定级数的截断阶数12.2 常见级数展开series - 一般的级数展开taylor - Taylor 级数展开mtaylor - 多元Taylor级数展开poisson - Poisson级数展开.26812.3 其它级数eulermac - Euler-Maclaurin求和piecewise - 分段连续函数asympt - 渐进展开第13章特殊函数AiryAi, AiryBi - Airy 波动函数AiryAiZeros, AiryBiZeros - Airy函数的实数零点AngerJ, WeberE - Anger函数和Weber函数Bessel I, HankelH1, … - Bessel函数和Hankel函数BesselJZeros, … - Bessel函数实数零点Beta - Beta函数EllipticModulus - 模数函数k(q)GAMMA, lnGAMMA - 完全和不完全Gamma函数GaussAGM - Gauss 算术的几何平均数JacobiAM, ., - Jacobi 振幅函数和椭圆函数JacobiTheta1, JacobiTheta4 - Jacobi theta函数JacobiZeta - Jacobi 的Zeta函数KelvinBer, KelvinBei - Kelvin函数KummerM, - Kummer M函数和U函数LambertW - LambertW函数LerchPhi - 一般的Lerch Phi函数LommelS1, LommelS2 - Lommel函数MeijerG - 一个修正的Meijer G函数Psi - Digamma 和Polygamma函数StruveH, StruveL - Struve函数WeierstrassP - Weierstrass P函数及其导数WhittakerM - Whittaker 函数Zeta - Zeta 函数erf, … - 误差函数,补充的误差函数和虚数误差函数harmonic - 调和函数hypergeom - 广义的超越函数pochhammer - 一般的pochhammer函数polylog - 一般的polylogarithm函数第14章线性代数14.1 ALGEBRA(代数)中矩阵,矢量和数组14.2 LINALG 软件包简介14.3 数据结构矩阵matrices(小写)矢量vectors(矢量)convert/matrix - 将数组,列表,Matrix 转换成matrix convert/vector - 将列表,数组或Vector 转换成矢量vector linalg[matrix] - 生成矩阵matrix(小写)linalg[vector] - 生成矢量vector(小写)14.4 惰性函数Det - 惰性行列式运算符Eigenvals - 数值型矩阵的特征值和特征向量Hermite, Smith - 矩阵的Hermite和Smith 标准型14.5 LinearAlgebra函数Matrix 定义矩阵Add 加/减矩阵Adjoint伴随矩阵BackwardSubstitute求解 A . X = B,其中 A 为上三角型行阶梯矩阵BandMatrix带状矩阵Basis 返回向量空间的一组基SumBasis返回向量空间直和的一组基IntersectionBasis返回向量空间交的一组基BezoutMatrix构造两个多项式的Bezout矩阵BidiagonalForm将矩阵约化为双对角型CharacteristicMatrix构造特征矩阵CharacteristicPolynomial 构造矩阵的特征多项式CompanionMatrix构造一个首一(或非首一)多项式或矩阵多项式的友矩阵(束)ConditionNumber计算矩阵关于某范数的条件数ConstantMatrix构造常数矩阵ConstantVector构造常数向量Copy 构造矩阵或向量的一份复制CreatePermutation将一个NAG 主元向量转换为一个置换向量或矩阵CrossProduct向量的叉积`&x` 向量的叉积DeleteRow删除矩阵的行DeleteColumn删除矩阵的列Determinant 行列式Diagonal 返回从矩阵中得到的向量序列DiagonalMatrix构造(分块)对角矩阵Dimension 行数和列数DotProduct点积BilinearForm向量的双线性形式EigenConditionNumbers计算数值特征值制约问题的特征值或特征向量的条件数Eigenvalues 计算矩阵的特征值Eigenvectors 计算矩阵的特征向量Equal 比较两个向量或矩阵是否相等ForwardSubstitute求解 A . X = B,其中 A 为下三角型行阶梯矩阵FrobeniusForm将一个方阵约化为Frobenius型(有理标准型)GaussianElimination对矩阵作高斯消元ReducedRowEchelonForm对矩阵作高斯-约当消元GetResultDataType返回矩阵或向量运算的结果数据类型GetResultShape返回矩阵或向量运算的结果形状GivensRotationMatrix构造 Givens 旋转的矩阵GramSchmidt计算一个正交向量集HankelMatrix构造一个Hankel矩阵HermiteForm计算一个矩阵的Hermite正规型HessenbergForm将一个方阵约化为上Hessenberg型HilbertMatrix构造广义 Hilbert 矩阵HouseholderMatrix构造 Householder 反射矩阵IdentityMatrix构造一个单位矩阵IsDefinite检验矩阵的正定性,负定性或不定性IsOrthogonal检验矩阵是否正交IsUnitary检验矩阵是否为酉矩阵IsSimilar确定两个矩阵是否相似JordanBlockMatrix构造约当块矩阵JordanForm将矩阵约化为约当型KroneckerProduct构造两个矩阵的Kronecker张量积LeastSquares方程的最小二乘解LinearSolve求解线性方程组 A . x = bLUDecomposition计算矩阵的Cholesky,PLU 或 PLU1R 分解Map 将一个程序映射到一个表达式上,对矩阵和向量在原位置上进行处理MatrixAdd计算两个矩阵的线性组合VectorAdd计算两个向量的线性组合MatrixExponential确定一个矩阵 A 的矩阵指数exp(A)MatrixFunction确定方阵 A 的函数 F(A)MatrixInverse计算方阵的逆或矩阵的Moore-Penrose 伪逆MatrixMatrixMultiply计算两个矩阵的乘积MatrixVectorMultiply计算一个矩阵和一个列向量的乘积VectorMatrixMultiply计算一个行向量和一个矩阵的乘积MatrixPower矩阵的幂MinimalPolynomial构造矩阵的最小多项式Minor 计算矩阵的子式Multiply 矩阵相乘Norm 计算矩阵或向量的p-范数MatrixNorm计算矩阵的p-范数VectorNorm计算向量的p-范数Normalize 向量正规化NullSpace计算矩阵的零度零空间OuterProductMatrix两个向量的外积Permanent 方阵的不变量Pivot 矩阵元素的主元消去法PopovForm Popov 正规型QRDecomposition QR 分解RandomMatrix构造随机矩阵RandomVector构造随机向量Rank 计算矩阵的秩Row 返回矩阵的一个行向量序列Column 返回矩阵的一个列向量序列RowOperation对矩阵作初等行变换ColumnOperation对矩阵作出等列变换RowSpace返回矩阵行空间的一组基ColumnSpace返回矩阵列空间的一组基ScalarMatrix构造一个单位矩阵的数量倍数ScalarVector构造一个单位向量的数量倍数ScalarMultiply矩阵与数的乘积MatrixScalarMultiply计算矩阵与数的乘积VectorScalarMultiply计算向量与数的乘积SchurForm将方阵约化为Schur型SingularValues计算矩阵的奇异值SmithForm将矩阵约化为 Smith 正规型StronglyConnectedBlocks计算方阵的强连通块SubMatrix构造矩阵的子矩阵SubVector构造向量的子向量SylvesterMatrix构造两个多项式的 Sylvester 矩阵ToeplitzMatrix构造Toeplitz矩阵Trace 计算方阵的迹Transpose 转置矩阵HermitianTranspose共轭转置矩阵TridiagonalForm将方阵约化为三对角型UnitVector构造单位向量VandermondeMatrix构造一个Vandermonde矩阵VectorAngle计算两个向量的夹角ZeroMatrix构造一个零矩阵ZeroVector构造一个零向量Zip 将一个具有两个参数的程序作用到一对矩阵或向量上LinearAlgebra[Generic] 子函数包[Generic] 子函数包提供作用在场,欧几里得域,积分域和环上的线性代数算法。

利用Maple计算数学的常见命令

利用Maple计算数学的常见命令
面板介绍
Maple工作表左侧的20个面板含有1,000多个符号。用户也可以使用Maple面
板输入数据,面板含有用于常规操作的填充模版。
示例:使用微积分面板求表达式4t6+sin(t)的积分。
操作过程:
打开“微积分”面板,然后点击不定积分的模板。一个不定积分模版将出当前工作表中。在占位符处输入被积表达式,完成后,按下回车键计算。
区分大小写
Maple区分大小写,X,x表示不同的变量名。
示例:输入“x+x”。输入“y+Y”。对比一下输出结果。
隐式乘号
Maple能够理解隐式乘号,项之间的空格理解为乘号。
示例:</strong>键入“3x”隐含的意思为“化表达式,在不同的项之间加入了空格。
示例:使用表达式面板用于求解函数的极限。
操作过程:将光标移到要工作的位置,点击极限表达式,在占位符中填入表达式,完成后按回车键计算。
提示:可以将经常要用的面板项移到收藏夹中。操作方式是鼠标右击面板按钮,然后选
择添加到收藏夹面板中。
符号和命令补全
符号和命令补全机制帮助用户完成符号和命令的输入。键入符号名称开始的几个字符,按下“Esc”键,从弹出的下拉菜单中选择需要的符号。
示例:对表达式y=ex绘图,使用符号补全方式创建指数e。
操作过程:
1.利用面板输入ab模板,在a处输入“e”,再按下“[Esc]”键,然后从列表中选择“exponential‘e’”,在b处输入x,按下回车键。
2.使用右键菜单对表达式绘图,选择“Plots—2-D Plot”。
一些命令补全模板提供Maple命令的调用格式,方便我们快速输入正确的语法命令。
利用maple计算数学的常见命令在进行数学论文撰写时会根据具体的问题来对数学问题进行求解计算

Maple基础教程

Maple基础教程

目录第二章MAPLE基础 (1)2.1与M APLE对话 (1)2.2使用命令和函数包 (18)2.3微积分 (23)2.4线性代数 (28)2.5微分方程 (35)2.6优化 (45)2.7动态系统 (53)2.8基础编程知识 (58)2.9M APLE使用中常犯的错误 (78)第二章Maple基础Maple是目前应用非常广泛的科学计算软件之一,具有非常强大的符号计算和数值计算功能。

Maple 提供智能界面求解复杂数学问题和创建技术文件,用户可在易于使用的智能文件环境中完成科学计算、建模仿真、可视化、程序设计、技术文件生成、报告演示等,从简单的数字计算到高度复杂的系统,满足各个层次用户的需要。

与传统工程软件不同,甚至有别于旧版本的Maple,新版本Maple为工程师提供了大量的专业计算功能,庞大的数学求解器可用于各种工程领域,如微分方程、矩阵、各种变换包括FFT、统计、小波、等等,超过5000个计算命令让用户通常只需要一个函数就可以完成复杂的分析任务。

本章主要介绍Maple的基本功能,包括:数值和符号计算计算、求解方程、微积分计算、向量及矩阵计算、微分方程求解等。

Maple是一个全面的系统,提供多种方式完成同一个任务。

在本章中,我们将通过简单、易于重复的方式求解常见的问题,但它不是唯一的操作方式。

当用户熟悉本章中的各种操作方式后,用户可以通过帮助系统了解如何使用相似的技术完成各种任务。

2.1 与Maple对话2.1.1 Maple环境Maple的用户界面是一个典型的Windows或Mac风格的操作环境。

工作环境界面如图2-1所示。

图2-1:Maple工作界面在图2-1的工作界面中,窗体的主要部分包括:●主文档,即主工作区。

事实上,用户大可以把它想象成包含有各种数学和绘图工具的Microsoft Word。

●面板区。

汇集了数学工具和特殊的数学符号,用户可以将它们直接拖拽到工作区中使用。

面板区中最重要的面板当属Expressions,Matrix,Common Symbols和Greek。

Maple中的微分代数方程求解

Maple中的微分代数方程求解

Part10:Maple中的微分代数方程求解西希安工程模拟软件(上海)有限公司,200810.0 Maple中的微分方程求解器介绍Maple中微分方程求解器使用领先的算法求解以下问题:常微分方程 (ODEs): dsolve 命令用于求解线性和非线性ODEs, 初始值问题 (IVP), 以及边界值问题 (BVP),可以通过参数项选择求符号解 (解析解) 或数值解。

ODE Analyzer Assistant 微分方程分析器助手提供一个交互式用户界面方便用户求解 ODE 以及显示结果的图形。

了解更多信息,参考帮助系统中的 dsolve, dsolve/numeric, 和 ODE Analyzer.偏微分方程 (PDEs): pdsolve 命令用于求 PDEs 和含边界值问题的 PDEs 的符号解或数值解。

使用Maple的PDE工具可以完成对PDE系统的结构分析和指数降阶处理。

了解更多信息,参考帮助系统中的 pdsolve and pdsolve/numeric.微分-代数方程 (DAEs): dsolve/numeric 命令是符号-数值混合求解器,使用符号预处理和降阶技术,让Maple能够求解高指数的DAE问题。

Maple内置三个求解器用于处理DAEs:1)修正的 Runge-Kutta Fehlberg 方法,2)Rosenbrock 方法,以及 3)修正的拓展后向差分隐式方法。

10.1 Maple中的微分代数方程(DAEs)更多亮点:大部分情况下,通过识别是否存在因变量的纯代数方程,dsolve命令可以判断给定的问题是否是微分代数方程,而不是常微分方程。

如果输入是一个不含有纯代数方程的微分代数方程,使用solve求解时需要用method参数指定对象是一个微分代数方程。

dsolve 有三种数值方法求解DAEs。

默认的 DAE IVP 方法是 modified Runge-Kutta Fehlberg method (rkf45_dae),另两个方法是 rosenbrock_dae 和 Modified Extended Backward-Differentiation Implicit method (mebdfi),可以通过 method 参数项指定。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

B3: Maple中的偏微分方程求解
西希安工程模拟软件(上海)有限公司,2008
11.0 Maple中的微分方程求解器介绍
Maple中微分方程求解器使用领先的算法求解以下问题:
常微分方程 (ODEs): dsolve 命令用于求解线性和非线性ODEs, 初始值问题 (IVP), 以及边界值问题 (BVP),可以通过参数项选择求符号解 (解析解) 或数值解。

ODE Analyzer Assistant 微分方程分析器助手提供一个交互式用户界面方便用户求解 ODE 以及显示结果的图形。

了解更多信息,参考帮助系统中的 dsolve, dsolve/numeric, 和 ODE Analyzer.
偏微分方程 (PDEs): pdsolve 命令用于求 PDEs 和含边界值问题的 PDEs 的符号解或数值解。

使用Maple的PDE工具可以完成对PDE系统的结构分析和指数降阶处理。

了解更多信息,参考帮助系统中的 pdsolve and pdsolve/numeric.
微分-代数方程 (DAEs): dsolve/numeric 命令是符号-数值混合求解器,使用符号预处理和降阶技术,让Maple能够求解高指数的DAE问题。

Maple内置三个求解器用于处理DAEs:1)修正的 Runge-Kutta Fehlberg 方法,2)Rosenbrock 方法,以及 3)修正的拓展后向差分隐式方法。

11.1 求解偏微分方程PDE问题(BVP和IVP)
Maple 求解经典力学难题的能力是非常著名的,它的数值和符号偏微分方程求解器是其中的重要工具。

例子:在不同的边界条件下,求波动方程的数值解、解析解、和图形解。

11.1.1 初始化
下面的Maple代码定义了一个名为P X的程序,生成函数的周期展开。

PX := proc(h::{algebraic,procedure},g::{range,name=range})
local L, D, var;
if type(g,'range') then L := lhs(g); D := rhs(g) - L;
(1)
(2)
if not type(h,'procedure') then var := indets(h,'name');
if nops(var) <> 1 then error "need to specify a variable"; end if; var := op(var); end if;
else L := lhs(rhs(g));D := rhs(rhs(g)) - L;var := lhs(g); end if;
if type(h,'procedure') then proc(x::algebraic) h(x - floor((x-L)/D)*D); end; else proc(x::algebraic) eval(h, var = x - floor((x-L)/D)*D); end; end if;end:
11.1.2 数值解和图形解
一个空间变量的波动方程是:
假设初始形状由下面的函数给出:
对应的图形如下:
(4)
(3)
Maple中的命令pdsolve 将求解单变量演化方程(双曲和抛物)的数值解(有限差分)。

这个命令创建了一个模块,可以看到模块的输出函数是 plot, plot3d, animate, 和 v a l u e。

时间
的图形:
x
2
4
6
8
10
0图 2
Figure 3
动画:
(5)
(6)
x
2
4
6
8
10
1time = 0.000000
的函数:
的解:
0.364667328524451
(7)
(8)
的精确值是:
0.3750000000
(9)
的奇次周期展开如下:
我们注意到输出是一个程序体,忽略Maple输出的细节,我们再次使用图形来验证工作,
得到【图5】。

(11)
(10)
图 6
11.1.4 扩展(可选):传播和Klein-Gordon方程
10.2.4.1 数值解
波和Klein-Gordon方程分别表示为:
两者之间的区别是Klein-Gordon方程中有项。

(12)
(13)
10203040
x
(15)
(14)
x
10
2030
40
10.2.4.2 解析解
Klein-Gordon方程产生分离的变量。

因此,假设解的形式如下:
因此Klein-Gordon方程,这里
,变为:
除以 得到:
(20)
(21)
(15)
(17)
(16)
(19)
(18)
,这两个常微分方程变为:
= 0
(21)
(22)
(23)
(24)
(25)
(26)
(27)
x
10
2030
40
1
11.1.5 求解初始值偏微分方程问题(热传导方程)
数值解
pde := diff(u(x, t), t) = diff(u(x, t), x, x);
初始条件:
ibc := [(D[1](u))(0, t)+a*u(0, t) = h(t), u(x, 0) = 0];
(28)
(29)
ibc1:=[D[1](u)(0,t)+2*u(0,t)=cos(t),u(x,0)=0,u(0,t)=1];
pds:=pdsolve(pde,ibc1,numeric,time=t,range=0..1);
pds:-plot3d(t=0..1,x=0..1,axes=boxed);
?pdsolve,numeric
解析解
(33)
(34)
(30)
(32)
(31)
我们可以使用 pdsolve (无需参数项)命令计算偏微分方程的解析解:
结果可以拆分为方程(eq)和条件(conds):
eq:=op(gsol)[1];
conds:=op(op(gsol)[2]);
我们可以用 dsolve 命令求解常微分方程组,然后使用结果对 eq 求值:
conditions:=dsolve(conds);
solution:=eval(eq,conditions);
我们可以判定结果是否满足偏微分方程:
pdetest(solution,pde);
然后我们可以调整常数 _c1, _C1, _C2 和 _C3 满足期望的条件。

关于 pdsolve 命令的更多信息,请参考下面的帮助页:
?pdsolve
其他帮助
pdetest , pdsolve。

相关文档
最新文档