1.2 Maple V的概述 12.1 Maple是什么软件 Maple v是由加拿大 Waterloo University发展起来的一种数学软件,它那无与伦比的符 号运算能力,已使Mape在国际通用数学软件的激烈竞争中独占鳌头。不仅是国外学生中广 为流行的“科学便笺式”软件 Mathcad靠 Maple实现符号运算,就连首屈一指的数值计算软件 MATLAB在扩展其符号运算功能时,也借助了 Maple的威力。 Maple v版本提供数学函数2000余种,其涉及范围:基本代数学、欧几里得几何学、数论 有理函数微积分、线性代数及矩阵论、微分方程、图形学、离散数学、群论以及数学的其他许多 领域。此外,在数值计算和图形处理上, Maple也有相当强的实力。 Maple是一个开放的系统 它提供一套内部的编程语言,使用户可以开发自己的应用程序。事实上 Maple所提供的200 多种函数中,绝大部分是用这种语言编写的。 12.2 Maple的工作窗口 Maple v release2有基于DOS和 Windows的两个版本,可以在80386或80486以上的 微机上运行。基本运行环境要求硬盘有至少15MB空间、4MB的内存,其中 Windows版本需 要 MS Windows3.1以上版本(中西文版本均可)。 Maple V for Windows启动后会出现一个 Maple工作区空白窗口,如图1.2-1所示。 MapleVfor windows -RUntitl ie Edit Format options上 图121 Maple工作窗口 此时,用户就可以在 Maple工作区内出现的提示符号“>”后,输入命令,进行工作。需要 说明的是:输入表达式后面必须用分号“;”结尾,以表示命令的结束,然后按回车键进行运算。 如若结尾缺少“;",那么 Maple将认为命令没有结束,而处于等待状态。希望用户切记 Maple 的这一特征。 1.2.3符号运算 Maple最主要的功能是符号运算,其功能强大是举世公认的。符号运算的魅力在于:运算
时,无须事先对独立变量赋值,而所得的结果以标准的符号形式表达。在符号表达式中的数字 都是不含任何机器精度误差的绝对准确值(如:2/3就绝不会表示成0.6666。这是任何 数值计算所无法实现的。 【例1有理分式运算(包括展开和化简)。 >f:= expand((41x2+x+1)2‘(2x-1))/ expand((3x+5)(2x-1)); 3362 x4+84x3-79x2-1 6x2+7x-5 normal(f) 1681x4+82x3+83x2+2x+1 5 【例2】解单个代数方程(此时表达式总是假设等于零)。 >x3+1/2x2·a+13/3x2-13/6“x*a-10/3x+5/3a solve (", x) 说明:第二个指令圆括号内的双引号代表此指令前的最新运算结果。 【例3】求高阶导数。 g: =y sin(x2 >DiffDiff(g,x), y)=diff( diff(g, x),y); in(x')=2cos(x2) 【例4】给出Ⅴ vandermonde矩阵,并计算矩阵行列式的值。 Mape带有系列专用工具包。一旦工具包驻留,就可得到许多额外命令。如可用wih ()命令线性代数包。该包有许多线性代数和矩阵运算命令。加载运作如下: >with(linalg) >V:=vandermonde([u, v, wl) >d: =det(v) +u2w+
1.2 Maple的概述 1.2.4数值计算 求完全准确的符号解的代价是:对所解问题的限制、所给解的不彻底性、运算时间开销大。 为解决这些问题, Maple也提供自己的数值计算能力 对于那些有最终符号解的问题,Map可根据用户需要把符号结果变换成任何精度的数 值结果。对那些只有中间符号解结果的问题,用户可以用数值运算来获取终极解。这样做的 另一个好处是:尽量缩短机器截断误差的传递路径。 【例1】准确值运算及浮点值近似解的求取。 >(230/320)sgrt(2); 1073741824 3486784401 >evalf(") 4355016184 【例2】有限(或无限)求和运算及数值解。 >Sum((1=i)/(1=i4),i=1..20); 2753108915513951266418473494479966526667515770634998143458420014 21653762264974190884124027285387789492160976952723410943046016049 1.2.5图形功能 Maple有二维及三维图形支持计算结果的可视化。 【例1】plor3d()提供三维图形(函数可以是表达式,程序,语句函数或点列)。 >plot3d(x exp(-x2-y2,x=-2. 2, y=-2. 2, orientation=[80, 571); 图1.22 Maple所画三维曲面
10 1.3 Mathmatical概逑 本节简单介绍另一个著名软件 Mathmatical。像上节一样,以实际可操作的算例进行介 绍。读者借助算例,可以初涉 Mathmatical 1.3.1什么是 Mathmatical Mathmatical的原始系统是由美国物理学家 Stephen Wolfram领导的一个小组开发来进行 量子力学研究的。软件开发的成功促使 Stephen Wolfram于1987年组建 Wolfram研究公司 并推出了该公司的商品软件 Mathmatical1.0版。此后, Wolfram公司通过对 Mathmatical的不 断改进和扩充陆续推出了1.2版、2.0版和1996年的3.0版。目前,国内最常见的是2.0 版 Mathmatical拥有范围广泛的数学计算功能,支持比较复杂的符号计算和数值计算。因 此,早期它主要在数学、物理等理论研究领域中流传。近几年, Wolfram公司为帮助工程技术 人员克服直接运用 Mathmatical时所遇的困难,正在开发以 Mathmatical为基础的各种应用软 件包已经推出的有电气工程软件包、小波分析软件包等。 Mathmatical的基本系统是C语盲编写的,因此能方便地移植到各种计算机系统上。目前 常见的是: MS-DOS386版、 MS-DOS386/387版和 MS-Windows版本。后者利用 windows 环境使用方式和用户界面都有了重大改进如图1.31所示。 Mathematica for windo e Eile Edit Cell Graph Action Style Options window nput N[P1,50 图1.31 Mathmatical的工作区窗口 说明: Mathmatical将输入的指令用标题“n[n]=”标识,输出结果用Out[n]”标识,其中 数字“n”表示已经输人的指令数
1.3 Mathmatical概述 11 1.3.2数值计算 Mathmatical可以对整数及有理数进行准确运算。 【例1】乘方运算。 (输人以下指令) In[1]:= (系统将回答) out[1]= 4389056261830591470007906571986683114651910144 说明: Mathmatical的 Windows版是将表达式作为一个单元体,运行输入的表达式是同时 按住【Shft+ Enter键,而不是通常的只按 IEnter】键。为简单起见, Mathmatical窗口显示的标 题“Inn]:=”和Out[n]=”在例子中直接写出来 【例2】开方运算。 ln[2]: %(1/34) Out[2] 说明: Mathmatical用符号“%”表示最近一次的计算结果,“%%”表示倒数第二次的结果 依次类推。另外一种通用的表示法是用符号“%”后面紧跟一个整数表示以该整数为序号的那 次计算结果。 1.3.3符号计算 Mathmatical的一个重要特点是能对符号表达式进行处理,下面是一些符号计算的例子, 可以从这些例子中体会 Mathmatical符号计算的能力 【例1高阶导数运算。 In[3]:= DSn[x]/(x+Cos[2·x]),|x,3] Out[3 6Cos[x] Cos[ x]6Sin[x).3SinLxI+ 8Sin[2x] 说明:这里“I”是求导操作。在求导的表达式中,如有多于一个的变量,则进行的是求偏 导数操作