第2章 Maple微积分运算
- 格式:pdf
- 大小:352.92 KB
- 文档页数:33
微分⽅程的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学习微积分理解导数函数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学习微积分理解导数函数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 被称为当今世界上最流行的符号计算软件之一,它具有强大的交互式工程数学计算功能;其丰富的函数包能满足用户在各方面的需求;简单灵活的平面和立体作图技术使得它成为当前最普及的数学教学软件;它在统计学、经济结算方面的程序库被广泛应用于很多领域。
本文通过Maple9.5软件分六个部分:1. Maple 在极限中的应用;2.Maple 在求导中的应用;3. Maple 在积分中的应用;4.Maple 在级数中的应用;5.Maple 在积分变换中的应用;6.Maple 中通过菜单的工具选项操作实现相关微积分的功能对Maple 在微积分中应用进行了系统的研究与说明。
关键字:Maple ;微积分;应用研究一、Maple 在极限中的应用1 数列的极限 例1.设22211112n u n=+++,求lim n n u →∞。
首先可以通过Maple 绘制散点图得到这个数列是收敛的,如图1:> with(plots);> plot(sum('1/k^2','k'=1..n),n=1..1000);(图1 数列{}n u 散点图) 进一步用maple 计算得到该数列的极限为216π,其中命令为: > limit(sum('1/k^2','k'=1..n),n=infinity); 例2.10110,1,,lim 2n n n n n x x x x x x -+→∞+===设求。
这是一种迭代形式的数列,对于这种题目,我们一般有两种解答方法:1)先证明数列为单调,再证明其有上界或下界,从而根据单调有界定理得到数列的极限存在,最后,对数列的迭代式两边求极限;2)通过计算数列的通项公式,直接求极限。
在本题中,显然,第一种方法是行不通的,因此,我们尝试用第二种方法来解。
Maple 可以通过命令容易的解决此种迭代形式的数列,其中命令为: > rsolve({x(n+1)=(x(n)+x(n-1))/2,x(0)=0,x(1)=1},x(n));得到数列的通项公式为221332nn x -⎛⎫=- ⎪⎝⎭,这样,就得到了这个数列的极限是23。
目录第二章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。
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 参数项指定。
36微积分运算 第二章 本章将通过例子系统地介绍Maple 软件中的微积分运算,读者可以学到利用Maple 软件解决简单的高等数学问题的一些方法和技巧。
本章具体包括以下内容:如何在Maple 中计算函数的极限如何在Maple 中检验函数的连续性如何在Maple 中表示微分运算如何在Maple 中进行函数和表达式的微分运算如何在Maple 中对隐函数进行微分和求导运算如何在Maple 中进行符号积分运算如何在Maple 中计算广义积分如何在Maple 中计算数值积分如何在Maple 中表示和计算数列如何在Maple 中求数列的极限如何在Maple 中将已知函数展开成级数。
37.Maple 的应用,可以说大多数是用在高等数学的计算上了,微积分运算,也许是Maple 最为拿手的计算了。
任何解析函数,Maple 都可以求出它的导数来;任何理论上可以计算的的积分,Maple 也都可以不费吹灰之力地将它计算出来。
有了Maple ,你完全可以把积分手册扔到一边去,因为你在也忍受不了它了。
不仅如此,Maple 从来不会抱怨表达式太繁,或者太长的。
可以毫不夸张地说,高等数学书上的任何一道计算题,都可以用Maple 解决。
不信?那好,就跟着我用Maple 重新温习一遍微积分吧,你一定会有新的发现的!2.1 极限和连续性2.1.1 函数或表达式的极限在Maple 中,我们可以利用函数limit 表示和计算函数和表达式的极限。
读者一定还记得,我们用一对单引号表示暂时不作计算的表达式;上面,我们就利用它在Maple 中写出了一个漂亮的极限式。
而后面再次引用它时,Maple 就进行计算,得到了我们所期望的结果。
实际上,对于这些常用的“漂亮”计算符号(又比如求导、积分等运算),Maple 中都有一套函数与其一一对应。
对应的规则是,把原有函数的首字母改成大写,于是就得到“形式函数”,得到的是一个形式上的表达式。
比如上面这个例子,我们就可以写成:顺理成章地,这个函数也可用来求自变量趋于无穷时的极限。
第3章微积分Maple 的一个非常实用的功能就是微积分计算.它能求导数,作积分,作级数展开,作无穷求和,还有很多很多功能.在这一章,我们关注最基本的功能.极限极限思想是微积分学中最基本的思想,而Maple 知道怎么计算它们.例如,要求lim x →0sin 3x x 的极限值,可以使用Maple 的limit 命令,表达式如下所示:>limit(sin(3*x)/x,x=0);3当然你也可以使用Maple 函数来求解>y:=x->sin(3*x)/x;limit(y(x),x=0);y :=x →sin (3x )x3您可以输入?limit 来查看这条命令的详细说明,但这并不是命令的全部说明.问题3.1尝试着练习这个问题:lim x →0cos (x )−1x 2微分导数相对来说是容易的,所以这一节也一样.Maple 对初等函数和特殊函数的求导是同样容易的,所以这一节只是展示两条Maple 的微分命令,一条用于表达式,一条用于函数.首先,我们对表达式进行微分.我建议你使用下面说明正切函数用法的形式来求一阶导数,二阶导数和三阶导数.你也可以使用diff命令,它直接求出导数,或者Diff和value 命令,给出所求表达式的导数,并计算其值.Diff命令的用途实际上超出你的想像,因为它给你一个机会查看你要Maple 求的导数是不是你所想要的.>diff(tan(x),x);1+tan (x )2>diff(tan(x),x\$2);2tan (x )(1+tan (x )2)>d:=Diff(tan(x),x\$3);>d:=value(d);d :=∂3∂x3tan (x )d :=2(1+tan (x )2)2+4tan (x )2(1+tan (x )2)>d:=simplify(d);d:=2+8tan(x)2+6tan(x)4下面让我们看一下如何对函数进行微分.>f:=x->tan(x)/x;f:=x→tan(x)xDiff命令不能对函数进行微分,因此我们要使用Maple的D命令.这是一条体积小但功能非常强的命令.它能求复合函数的多阶导数(查看所有用法请输入?D),但我们只能对单一函数求一阶导数.求一阶导数是非常容易的fp:=D(f);f p:=x→1+tan(x)2x−tan(x)x2注意,指定D(f)对f p的结果产生函数f p(x).求高阶导数的方法有很多种,这是最通用的一种.>fpp:=D[1$2](f);f pp:=x→2tan(x)(1+tan(x)2x−2(1+tan(x)2)x2+2tan(x)x3方括号里的“1”表示关于参数列表里的第一个变量(这里只有一个)求微分,“$2”表示相当于执行diff命令两次.好了,内容就这么多.这里有一些练习需要训练.问题3.2求下列函数的形式导数.大部分使用表达式形式,(a)和(d)使用函数形式.如果得到混乱的结果,尝试使用simplify命令化简它.你会发现simplify命令对函数无效,为了使结果更好看,用鼠标把你想要化简的混乱结果复制到剪贴板,把它赋给一个新的变量,删除无关的内容,然后再执行化简命令.然后再使用剪切和粘贴命令重建求导函数.Maple的这个组合及编辑是做无错误代数的好方法.(a)∂3∂x3√1+x3(b)∂∂xJ0(x)(c)∂∂xI1(x)(d)∂2∂x2e tan(x)(e)∂∂xΓ(x)(f)∂∂xerf(x)(g)∂∂kK(k)((g)是第一种形式的完全椭圆积分,使用Maple的EllipticK命令.)问题3.3这是一个你在大学里也使用的求最大最小问题.考虑函数ln(x)J0(x)(我用词“函数”是数学意义的,而不是Maple意义的.如果你仅仅使用一个Maple表达式来定义上面的函数,这个问题是很简单的.)(a)首先画出函数在区间[0,10]上的图像.(b)观察图像,找出并估摸函数取得最大最小值时x的值.接着对函数求导,然后使用fsolve 命令求出x的精确值.假若求导后的表达式为f,如果你想求出1.1附近的零点,你可以这样做:fsolve(f,x=1.1);在量子力学中,你会遇到近似我们已经见过的勒让德函数P n (x ).这些新函数叫做联合勒让德函数P m n .对于每一个整数n ,在区间[0..n ]上,函数由m 的值定义,当m =0时,函数等价于P n (x ).这些函数由勒让德函数的导数的项定义:P m n =(−1)m (1−x 2)(m 2),diff (P n (x ),x $m )这个定义对于大多数的计算机语言来说是累赘的,但是Maple 操控它很容易,因为Maple 用符号化代替数值化.这里有个函数评价它>with(orthopoly);[G,H,L,P,T,U ]>Pnm:=(n,m,x)->(-1)^m*(1-x^2)^(m/2)*diff(P(n,x),x$m);P nm:=(n,m,x )→(−1)m (1−x 2)(12m ),diff (P (n,x ),x $m )在做任何花哨的事情之前我们测试它,因此让我们为n,m 和x 输入数字.>Pnm(3,1,.5);Error,(in Pnm)wrong number (or type)of parameters in function diff 好了,我们又遇到麻烦了.这个问题是P (n,x )返回了什么.如同我们在第2章一个节中看到的这个函数,它不返回数字,而是返回多项式.当我们把0.5赋给x 时,它进入到上面定义的函数Pnm ,并代替x ,然后diff命令尝试关于0.5求导数,而这是没有意义的.观察当我们用一个变量而不是数字来代替x 时发生什么.>Pnm(3,1,t);−√1−t 2(152t 2−32)倘若你想要一个数值结果你可以这样做>a:=Pnm(3,1,t);t:=0.5;a;a :=−√1−t 2(152t 2−32)t :=.5−.3247595264这是很烦人的,另一方面,仅仅考虑它;总之,为什么在Maple 里需要一个数字呢?你要画函数图像,微分,求积,在微分方程里使用,等等.有什么事情比得到一个明确的表达式更好呢?Maple 认为这不是一个问题;而是一个特性.而且这个特性为你使用with(orthopoly)想要得到的所有正交函数所享有.这里还有另一个关于函数Pnm 更烦人的事情.观察当我们尝试用m =0执行时发生什么.>Pnm(5,0,x);Error,(in Pnm)wrong number (or type)of parameters in function diff 当m =0时它假想返回Pn(x)的结果,但事与愿违.不工作的原因是因为我们要求它求一个函数的0阶导数,而Maple 的diff命令应付不了.稍后学习程序之后我们返回这个问题并修复它,使得当m =0时也工作.好了,我已经演示怎样做了.现在请你结合P (5,x )作5个联合勒让德函数的图像,例如,n =5及m =1,2,3,4,5.图像从x =−1画到x =1.用不同的颜色把5个图像画在同一轴上,当m 的范围从1变化到n =5时发生了什么.看过图片之后你可能想要重新缩放函数图像使得它们看起来大小相同.在下一节积分中,我们会重新绘制并用一种自然的方式让函数图像接近相同的尺寸.这是下一节积分中引过来的一个电学问题.电势函数z ,电荷球半径为R ,电荷面密度为σ,其中z 上升到半球的对称轴,表达式如下>V:=-1/2*sigma*R*(-sqrt(R^2+z^2)+sqrt((z-R)^2))/(z*e0);V :=−12σR (−√R 2+z 2+√(z −R )2)ze 0其中e 0表示电荷常数ε0.电场分量E z 可以通过电势V 微分得到:E z =−(∂∂zV ).使用Maple 对这个求导可以得到一个关于E z (繁杂)的表达式.化简它.你会看到一个叫csgn 的陌生函数,输入?csgn 查看函数说明以确保你知道它是做什么的.然后令σ=1,R =1及e 0=1,然后从z =−4到z =4同时画V 和E z 的图像.这是一个电磁定律关于跨表面电荷密度,电场区域通过σε0变化.(你可能注意到上面定义的V 我用e 0代替ε0.这是故意的.尽可能是避免变量下标,因为Maple 中的下标引用矩阵元素.)验证你的图像以获得正确的跳跃.在图像中,负z 在半球圆缘的下方,正z 从0到R 在半球内部,且正z 从R 到无穷在圆顶之上.想像你的图像并说服你自己使它有意义.问题3.6这是一类花俏的微分叫做隐式微分,且Maple 可能求解.假设你有一个方程涉及x 和y ,像这个x 2+y 2=3.你想要解出dy dx 而不求解y (x ).这种方式求隐式方程的微分得2x +3y 2(∂∂x y )=0,然后求解dy dx .Maple 知道如何求解,规定你告诉它y 依赖于x ,像这样.>restart;>eq:=x^2+y(x)^3=3;eq :=x 2+y (x )3=3>deq:=diff(eq,x);deq :=2x +3y (x )2(∂∂x y (x ))=0>dydx:=solve(deq,diff(y(x),x));dydx :=−23xy (x )2如果你任何时候都不想输入y (x ),你可以使用Maple 的alias 命令告诉它把y 变为y (x )(只适用Maple 的内部进程)当遇到的时候.>restart;允许我们使用y 代替y (x )>alias(y=y(x));y>eq:=x^2+y^3=3;eq :=x 2+y 3=3>deq:=diff(eq,x);deq :=2x +3y 2(∂∂x y )=0>dydx:=solve(deq,diff(y,x));dydx :=−23xy 2这是一个物理学中的例子.等离子体电磁波的分散关系是ω2=wp 2+k 2c 2,其中wp 是一个频率叫做等离子体频率.波的相对速度由ωk 给出,群速度由dωdk 给出.首先用Maple 求出相对和群速度的公式,在wp ,k 及c 的条件下求解ω(k )并微分.然后在k ,c 及ω的条件下用隐式微分得到群速度.最后,Maple 也知道怎样求解偏导数.考虑关于x 和y 的函数f (x,y )=cos (xy )y .这是关于x ,y ,以及x 和y 的导数,用表达式形式>restart;f:=cos(x*y)/y;f :=cos (xy )y>diff(f,x);diff(f,y);diff(f,x,y);−sin (xy )−sin (xy )x y −cos (xy )y 2−cos (xy )x也可以通过Maple 的符号函数来做相同的事情>restart;f:=(x,y)->cos(x*y)/y;f :=(x,y )→cos (xy )y>D[1](f);D[2](f);D[1,2](f);(x,y )→−sin (xy )(x,y )→−sin (xy )x y −cos (xy )y 2(x,y )→−cos (xy )x问题3.7求出下面这个函数的一阶导数及三个二阶导数(两个x ,两个y 以及xy )K (√4xy (x +y )2)其中K 是完全椭圆积分EllipticK .使用符号表达式并用diff命令求解.尝试使用expand 和simplify 命令清除杂乱的东西以得到结果.积分你使用Maple做得最多的简单事情就是积分.事实上,你没有更多的思想比较积分表和计算尺.大多数都是可以的,因为你很容易获得Maple并且它是不错的.但是它不会做任何事情(就如果你在这一节看到的一些例子一样),所以你需要知道当Maple 失败的时候该怎么做.最好的做法是看一本由Gradshteyn和Ryzhik编写的一本名为《A Table of Series and Integrals》的数学参考书.你可以从图书馆的数学参考书部分找到它,或者在我们系图书室,如果没有教员把它借走.初等积分Maple可以求解你在第一节积分课里遇到的所有积分问题.实现这个功能的命令叫做int,你可以像这样使用表达式>int(sin(x),x);−cos(x)或者>f:=sin(x)*x;int(f,x);f:=sin(x)xsin(x)−x cos(x)注释:不要使用f(x)作为参数如果f是一个表达式.倘若是函数,积分命令这样用:>g:=(x,y)->sin(x*y)*x;g:=(x,y)→sin(xy)x>int(g(x,y),x);sin(xy)−xy cos(xy)y2这有一个int的简化形式,叫做Int,用来显示积分.这个形式你可以用于记录表.尝试这个:>s1:=Int(exp(x),x);s1:=∫e x dx请注意:Int命令只显示,并不做数学运算.也许你会问,“但如果它不做任何事,我为什么要用它呢?”因为它能帮助查看你是否输入正确的积分,Int命令是很有价值的调试工具.当显示形式你看起来对之后,使用value(s1)得到结果.因此正确求解上面的简单积分并取得结果是这样的:>s1:=Int(exp(x),x);>s1:=value(s1);s1:=∫e2dxs1:=e2我建议你总是使用Int和value组合的方式求解积分.这是一个好习惯,可以减少你查看愚蠢错误的时间.当然,你也可以像这样求解定积分:>s2:=Int(tan(x),x=0..1);>s2:=value(s2);s 2:=∫10tan (x )dxs 2:=−ln (cos (1))如果想要求积分值,你可以这样做:>evalf(s2);.6156264703噢,如果你仅仅是想要数值结果而不通过evalf 命令,只需给int 命令浮点极限你就可马上得到结果.>s2:=Int(tan(x),x=0..1.);>value(s2);s 2:=∫10tan (x )dx当然你也知道Maple 可以对无穷极限求积分,但你需要通过assume 命令做一些引导.好了,你要了解的Maple 求解积分的东西就这么多.输入?int 获取更多Maple 提供的积分选项.下面让我们做些练习.问题3.8用Maple 求解下列积分,其中(a)-(d)用表达式符号,(e)-(g)用函数符号.求出(e)和(f)的积分值.求解(g)时你会遇到麻烦,你得到的结果看起来很繁杂,试着用simplify 命令化简.(a )∫ln (x )dx (b )∫√1−x 2dx (c )∫x 1+x 3dx (d )∫cos h (x )dx (e )∫10√1+x 1−x dx (f )∫120x x 3−1dx (尝试使用1/2和1./2.作为积分上限)(g )∫∞e −ax cos (x )dx (不知道如何输入∞,输入?使用联机帮助.)。