Maple入门手册(1)

合集下载

Maple入门教程讲解

Maple入门教程讲解

Maple入门教程讲解
Maple的符号计算功能相当强大,几乎能处理所有的复杂运算。

新用户们在使用Maple软件之前,需要对Maple的工作界面有所熟悉。

下面介绍Maple使用入门第一步,了解Maple 工作界面。

1.Maple工作界面的提示符用来输入Maple命令。

2.提示符“[>”左边的“[”号表示所要一起执行的命令区,该区的命令将按先后次序连续一次执行完。

3.窗口最顶端是菜单栏,与Word中的菜单栏有相似之处,每个菜单下包括下级菜单。

常用工具栏中(从左到右)有“新建”、“打开”、“保存”、“打印”、“剪切”、“复制”、“粘贴”、“撤消”、“Maple输入转换”、“文本输入转换”、“增加命令区”、“撤消分组”、“建立分组”、“停止运行”及三个显示比例选择。

Maple工作界面示例
4.若点击工具栏中T按钮,则提示符箭头消失,变为[号,表示当前为文本输入,工具栏也出现相应的字号字体选择框。

5.点击提示符按钮、回车等将增加一个命令区。

6.左侧是各种数学样式命令,包括“表达式”、“微积分”、“常用符号”、“矩阵”、“单位”等等常用的数学命令。

以上是对Maple工作界面的一些主要功能的简单介绍,具体的使用需要结合具体的情况。

符号计算系统maple教程

符号计算系统maple教程

符号计算系统maple 教程第1章 maple 简介*.mw 格式的maple 文档可以将文本数字、数学公式、声音、图像等内容组合在一起,生成具有多媒体效果的专业科技文档。

Maple 可以打开maple 12进入文件模式窗口;打开 class worksheets maple 12,打开传统的工作模式窗口;打开command-line maple12,进入命令行模式窗口。

在command-line maple12窗口中,按enter 键执行表达式计算,若命令很长,在输入过程中按shift+enter 键将命令分成若干行,在class worksheets maple 12模式下,表达式必须以冒号”:”或分号”;”结尾,在maple 12模式下则不需要如此。

#及其所在行后面的部分为注释说明语句。

在maple12模式下进行一下操作:maple 的优点是可以直接修改编辑好的公式等 因式分解:>,而且可以直接在出现结果后继续在factor 公式中进行修改。

多项式展开>公约数:> 公倍数:>计算111121k k =-∑:>计算和式31nk k =∑:>求解线性方程组:215x y x y +=-=:>计算44sin()d x dx x ⎛⎫= ⎪⎝⎭:>计算41xdx x -⎰:>计算22()bdacx y dxdy +⎰⎰:>计算矩阵123213123A ⎡⎤⎢⎥=⎢⎥⎢⎥⎣⎦的特征值和特征向量。

>计算上面A 矩阵的1-范数: >画出f(x)=x 2sin(x)-1在区间[-7,7]上的图像:画长幅内次摆线:3cos 24cos3{,[0,2]3sin 24sin 3x t tt y t tπ=+∈=-画出22()(,)xy f x y xye -+=在[2,2],[2,2]x y ∈-∈-上的图像。

获取帮助:文件模式下:maple12:按F1会出现快速帮助菜单。

maple教程

maple教程

读者对象有哪些?
本书适用于高等学校各专业本科生, 以及具有初步的高等数学知识和计算机知识的其他 读者、从事实际工作的工程技术人员、高等中等学校的教师和学生、从事各种理论工作(数 学、物理等)的科学工作者。该书对于从事数学、计算技术、计算机应用等方面的科技人员 及教学人员也是一本极好的参考工具书。
怎样使用本书?
I
目 录
第一篇 第1章 初步篇 Maple 6 起步 ········································································································· 2
1.1 什么是Maple··········································································································· 3 1.2 Maple的结构 ··········································································································· 5 1.3 Maple的功能 ··········································································································· 5 1.3.1 算术 ················································································································ 7 1.3.2 变量和多项式································································································· 9 1.3.3 解方程 ·········································································································· 10 1.3.4 绘图 ·············································································································· 11 1.3.5 表格 ·············································································································· 13 1.3.6 构造文档 ······································································································ 14 1.3.7 在线帮助系统······························································································· 17 1.4 Maple 6 的新特性 ································································································ 18 1.5 本章小结 ··············································································································· 18 第2章 2.1 2.2 2.3 安装与设置 ··········································································································· 19

Maple基础教程(修订稿)

Maple基础教程(修订稿)

Maple基础教程(修订稿)Maple 基础⼀Maple 的基本运算1 数值计算问题在应⽤Maple 做算术运算时, 只需将Maple 当作⼀个“计算器”使⽤, 所不同的是命令结束时需加“;”或“:”.在Maple 中, 主要的算术运算符有“+”(加)、“–”(减)、“*”(乘)、“/”(除)以及“^”(乘⽅或幂,或记为**),值得注意的是, “^”的表达式只能有两个操作数, 换⾔之, c b a ^^是错误的, ⽽“+”或“*”的任意表达式可以有两个或者两个以上的操作数. 2.1.1 有理数运算作为⼀个符号代数系统, Maple 可以绝对避免算术运算的舍⼊误差.如果要求出两个整数运算的近似值时, 只需在任意⼀个整数后加“.”(或“.0”), 或者利⽤“evalf ”命令把表达式转换成浮点形式, 默认浮点数位是10 (即: Digits:=10, 据此可任意改变浮点数位, 如Digits:=20). > 123456789/987654321;13717421109739369 > evalf(%);.1249999989> big_number:=3^(3^3);:= big_number 7625597484987> length(%);13函数“length ”作⽤在整数上时是整数的⼗进制位数即数字的长度. “%”是⼀个⾮常有⽤的简写形式, 表⽰最后⼀次执⾏结果 1)整数的余(irem)/商(iquo)命令格式:irem(m,n); #求m 除以n 的余数irem(m,n,'q'); #求m 除以n 的余数, 并将商赋给q iquo(m,n); #求m 除以n 的商数iquo(m,n,'r'); #求m 除以n 的商数, 并将余数赋给r其中, m, n 是整数或整数函数, 也可以是代数值, 此时, irem 保留为未求值.2)素数判别(isprime) 命令格式: isprime(n);如果判定n 可分解, 则返回false, 如果返回true, 则n “很可能”是素数. > isprime(2^(2^4)+1);true3) 确定第i 个素数(ithprime)若记第1个素数为2,判断第i 个素数的命令格式: ithprime(i);4) ⼀组数的最⼤值(max)/最⼩值(min)命令格式: max(x1,x2,…,xn); #求x 1,x 2,…,x n 中的最⼤值 min(x1,x2,…,xn); #求x 1,x 2,…,x n 中的最⼩值5)随机数⽣成器(rand)命令格式:rand( ); #随机返回⼀个12位数字的⾮负整数rand(a..b); #调⽤rand(a..b)返回⼀个程序, 它在调⽤时⽣成⼀个在范围[a, b]内的随机数> rand();427419669081> myproc:=rand(1..2002):> myproc();1916> myproc();1204注意, rand(n)是rand(0..n-1)的简写形式.2.1.2 复数运算复数是Maple中的基本数据类型. 虚数单位i在Maple中⽤I表⽰可以⽤Re( )、Im( )、conjugate( )和argument( )等函数分别计算实数的实部、虚部、共轭复数和幅⾓主值等运算. 试作如下实验:> complex_number:=(1+2*I)*(3+4*I);-510Icomplex_number +:=> Re(%);Im(%%);conjugate(%%%);argument(complex_number);-510-510I-- +arctan2π()1) 绝对值函数命令格式: abs(expr);当expr为实数时,返回其绝对值,当expr为复数时,返回复数的模.2)复数的幅⾓函数命令格式: argument(x); #返回复数x的幅⾓的主值3)共轭复数命令格式: conjugate(x); #返回x的共轭复数2.2 初等数学2.2.1 常⽤函数1) 确定乘积和不确定乘积命令格式: product(f,k);product(f,k=m..n);product(f,k=alpha);product(f,k=expr);其中, f—任意表达式, k—乘积指数名称, m,n—整数或任意表达式, alpha—代数数RootOf, expr—包含k的任意表达式.> product(k^2,k=1..10); #计算2k关于1..10的连乘13168189440000> product(k^2,k); #计算2k的不确定乘积()Γk 2> product(a[k],k=0..5); #计算a i (i=0..5)的连乘a 0a 1a 2a 3a 4a 5> Product(n+k,k=0..m)=product(n+k,k=0..m); #计算(n+k)的连乘, 并写出其惰性表达式=∏ = k 0m() + n k ()Γ + + n m 1()Γn> product(k,k=RootOf(x^3-2)); #计算23-x 的三个根的乘积22)指数函数计算指数函数exp 关于x 的表达式的命令格式为: exp(x); 3)确定求和与不确定求和sum 命令格式: sum(f,k);sum(f,k=m..n); sum(f,k=alpha); sum(f,k=expr);其中, f —任意表达式, k —乘积指数名称, m,n —整数或任意表达式, alpha —代数数RootOf, expr —不含k 的表达式. > Sum(k^2,k=1..n)=sum(k^2,k=1..n);= ∑ = k 1nk 2 - + + 13() + n 1312() + n 1216n 16 > Sum(1/k!,k=0..infinity)=sum(1/k!,k=0..infinity);= ∑= k 0∞1!k e > sum(a[k]*x[k],k=0..n);∑= k 0na k x k> sum(k/(k+1),k=RootOf(x^2-3));3)三⾓函数/双曲函数命令格式: sin(x); cos(x); tan(x); cot(x); sec(x); csc(x); sinh(x); cosh(x); tanh(x); coth(x); sech(x); csch(x); 其中, x 为任意表达式. > Sin(Pi)=sin(Pi);= ()Sin π04)反三⾓函数/反双曲函数命令格式: arcsin(x); arccos(x); arctan(x); arccot(x); arcsec(x); arccsc(x);arcsinh(x); arccosh(x); arctanh(x); arccoth(x); arcsech(x); arccsch(x);arctan(y,x);其中, x, y 为表达式. 反三⾓函数/反双曲函数的参数必须按弧度计算. > arcsinh(1);()ln + 12> cos(arcsin(x));- 1x 25)对数函数命令格式: ln(x); #⾃然对数log[a](x); #⼀般对数 log10(x); #常⽤对数⼀般地, 在ln(x)中要求x>0. 但对于复数型表达式x, 有:)(argument *))(abs ln()ln(x I x x += (其中, ππ≤<-)(argument x )> log10(1000000);()ln 1000000()ln 10> simplify(%); #化简上式62.2.2 函数的定义试看下⾯⼀个例⼦:> f(x):=a*x^2+b*x+c;---并不是函数,⽽是⼀个表达式:= ()f x + + a x 2b x c> f(x),f(0),f(1/a);,, + + a x 2b x c ()f 0?? ?f 1由上述结果可以看出, ⽤赋值⽅法定义的f(x)是⼀个表达式⽽不是⼀个函数在Maple 中, 要真正完成⼀个函数的定义, 需要⽤算⼦(也称箭头操作符): > f:=x->a*x^2+b*x+c;:= f → x + + a x 2b x c> f(x),f(0),f(1/a);+ + a x 2b x c c + + 1a bac > f:=(x,y)->x^2+y^2;:= f → (),x y + x 2y 2> f(1,2);5> f:=(x,y)->a*x*y*exp(x^2+y^2);:= f → (),x y a x y e()+ x 2y 2另⼀个定义函数的命令是unapply,其作⽤是从⼀个表达式建⽴⼀个算⼦或函数. 命令格式为: f:=unapply(expr, x); 命令格式为: f:=unapply(expr, x, y, …); > f:=unapply(x^4+x^3+x^2+x+1,x);:= f → x + + + + x 4x 3x 2x 1借助函数piecewise 可以⽣成简单分段函数:> abs(x)=piecewise(x>0,x,x=0,0,x<0,-x);= x ??x < 0x 0= x 0-x < x 0清除函数的定义⽤命令unassign. > unassign(f); > f(1,1);()f ,11定义了⼀个函数后, 就可以使⽤op 或nops 指令查看有关函数中操作数的信息. nops(expr), 函数op 的主要功能是,其命令格式为:op(expr); #获取表达式的操作数op(i, expr); #取出expr ⾥第i 个操作数, op(i .. j, expr); #expr 的第i 到第j 个操作数 nops(expr); #返回操作数的个数> expr:=6+cos(x)+sin(x)*cos(x)^2;:= expr + + 6()cos x ()sin x ()cos x 2> op(expr);,,6()cos x ()sin x ()cos x 2> nops(expr);32.2.3 Maple 中的常量与变量名为了解决数学问题, ⼀些常⽤的数学常数是必要的. Maple 系统中已经存储了⼀些数学常数在表达式序列constants 中: > constants;,,,,,,false γ∞true Catalan FAIL π为了⽅便使⽤, 现将上述常数的具体含义列⽰如下:2.2.4 函数类型转换实现函数类型转换的命令是convert . 命令格式:convert(expr, form); #把数学式expr 转换成form 的形式convert(expr, form, x); #指定变量x, 此时form 只适于exp 、sin 、cos convert 指令所提供的三⾓函数、指数与函数的转换共有exp 等7种: (1) exp : 将三⾓函数转换成指数(2) expln : 把数学式转换成指数与对数(3) expsincos : 分别把三⾓函数与双曲函数转换成sin 、cos 与指数的形式 (4) ln : 将反三⾓函数转换成对数(5) sincos : 将三⾓函数转换成sin 与cos 的形式, ⽽把双曲函数转换成sinh 与cosh 的形式 (6) tan : 将三⾓函数转换成tan 的形式(7) trig : 将指数函数转换成三⾓函数与对数函数 > convert(sinh(x),exp); #将sinh(x)转换成exp 类型- 1e x 11ex 2.2.5 函数的映射—map 指令在符号运算的世界⾥, 映射指令map 可以说是相当重要的⼀个指令, 它可以把函数或指令映射到这些结构⾥的元素, ⽽不破坏整个结构的完整性. 命令格式为:map(f, expr); #将函数f 映射到expr 的每个操作数map(f, expr, a); #将函数f 映射到expr 的每个操作数, 并取出a 为f 的第2个⾃变量map(f, expr, a1, a2,…, an); #将函数f 映射到expr 的每个操作数, 并取a1~an 为f 的第2~n+1个⾃变量 map2(f, a1, expr, a2, …, an); #以a1为第1个⾃变量, expr 的操作数为第2个⾃变量, a2为第3个⾃变量…, an 为第n+1个⾃变量来映射函数f> f:=x->sqrt(x)+x^2;:= f → x + x x 2> map(f,[a,b,c]);[],, + a a 2 + b b 2 + c c 2> map(h, [a,b,c],x,y);[],,()h ,,a x y ()h ,,b x y ()h ,,c x y3 求值3.1 赋值在Maple 中, 不需要申明变量的类型, 甚⾄在使⽤变量前不需要将它赋值, 这是Maple 与其它⾼级程序设计语⾔不同的⼀点, 也正是Maple 符号演算的魅⼒所在, 这个特性是由Maple 与众不同的赋值⽅法决定的. 为了理解其赋值机制, 先看下⾯的例⼦. >p:=9*x^3-37*x^2+47*x-19;:= p - + - 9x 337x 247x 19> roots(p);,[],12,1991> subs(x=19/9,p);3.2 变量代换subs ( var = repacedment , expression );调⽤的结果是将表达式expression 中所有变量var 出现的地⽅替换成 replacement. > f:=x^2+exp(x^3)-8;:= f + - x 2e()x 38> subs(x=1,f);- + 7e如果需要计算, 必须调⽤求值函数evalf . 如: > evalf(%);5.> subs(x=y,y=z,x^2*y); (顺序替换)z 3> subs({x=y,y=z},x^2*y); (同步替换)y 2z> subs((a=b,b=c,c=a),a+2*b+3*c); (顺序替换)6a> subs({a=b,b=c,c=a},a+2*b+3*c); (轮换)+ + b 2c 3a> subs({p=q,q=p},f(p,q)); (互换)()f ,q p3.3 求值规则1) 对表达式求值命令格式: eval(e, x=a); #求表达式e 在x=a 处的值 eval(e, eqns); #对⽅程或⽅程组eqns 求值 eval(e); #表达式e 求值到上⾯两层 eval(x,n); #给出求值名称的第n 层求值 > p:=x^5+x^4+x^3+x^2+x+73;:= p + + + + + x 5x 4x 3x 2x 73> eval(p,x=7);19680当表达式在异常点处求值时, eval 会给⼀个错误消息. 如下: > eval(sin(x)/x,x=0);Error, numeric exception: division by zero2) 在代数数(或者函数)域求值命令格式: evala(expr); # 对表达式或者未求值函数求值 evala(expr,opts); #求值时可加选项(opts)在Maple 中, 代数数⽤函数RootOf ()来表⽰. 如3作为⼀个代数数, 可以表⽰为:> alpha:=RootOf(x^2-3,x);:= α()RootOf - _Z 23> simplify(alpha^2);3在Maple 内部, 代数数α不再表⽰为根式, ⽽在化简时, 仅仅利⽤到32=α这样的事实. 这⾥, Maple ⽤到⼀个内部变量_Z. 再看下⾯⼀个例⼦,其中alias 是缩写的定义函数,⽽参数lenstra 指lenstra 椭圆曲线⽅法:> alias(alpha=RootOf(x^2-2)):> evala(factor(x^2-2,alpha),lenstra);() + x α() - x α> evala(quo(x^2-x+3,x-alpha,x,'r'));- + + 1αx> r;- + 3αα2> simplify(%);- 5α3) 在复数域上符号求值操纵复数型表达式并将其分离给出expr 的实部和虚部的函数为evalc, 命令格式为: evalc(expr);evalc 假定所有变量表⽰数值, 且实数变量的函数是实数类型. 其输出规范形式为: expr1+I*expr2. > evalc(sin(6+8*I));+ ()sin 6()cosh 8I ()cos 6()sinh 8> evalc(f(exp(alpha+x*I)));()f + e α()cos x I e α()sin x4) 使⽤浮点算法求值命令格式为: evalf(expr, n); > evalf(Pi,50);3.1415926535897932384626433832795028841971693993751> evalf(sin(3+4*I));- 3.853********.01681326I5) 对惰性函数求值把只⽤表达式表⽰⽽暂不求值的函数称为惰性函数,对任意代数表达式f 求值的命令格式为: value(f); > F:=Int(exp(x),x);:= F d ??e xx> value(%);e x> f:=Limit(sin(x)/x,x=0);:= f limsin x x> value(%);1另外, 将惰性函数的⼤写字母改为⼩写字母亦即可求值. 如下例: > Limit(sin(x)/x,x=0)=limit(sin(x)/x,x=0);= lim→ x 0()sin x 1 4 数据结构Maple 中有许多内建的与FORTRAN 、C 或Pascal 不同的数据结构. 主要的数据结构有序列(sequence)、列表(list)、集合(set)、代数数( algebraic number)、未求值或惰性函数调⽤、表(table)、级数(series)、串(string)、索引名(index)、关系(relation)、过程体(process)以及整数(integer)、分数(fraction)、浮点数(float)、复数(complex number)等数据结构, ⽽矩阵(matrix)在Maple 中表⽰为阵列, 是⼀种特殊的表.4.1 数据类型查询在Maple 中, ⽤whattype 指令来查询某个变量的数据类型或特定类型, 命令格式为: whattype(expr) # 查询expr 的数据类型type(expr, t) # 查询expr 是否为t 类型, 若是则返回true, 否则返回false4.2 序列, 列表和集合4.2.1 序列所谓序列(Sequence), 就是⼀组⽤逗号隔开的表达式列. 如: > s:=1,4,9,16,25;:= s ,,,,1491625> t:=sin,com,tan,cot;:= t ,,,sin com tan cot⼀个序列也可以由若⼲个序列复合⽽成, 如: > s:=1,(4,9,16),25;:= s ,,,,1491625> s,s;,,,,,,,,,14916251491625⽽符号NULL 表⽰⼀个空序列. 序列有很多⽤途, 如构成列表、集合等. 事实上, 有些函数命令也是由序列构成. 例如: > max(s); 25> min(s,0,s);函数seq 是最有⽤的⽣成序列的命令, 通常⽤于写出具有⼀定规律的序列的通项, 命令格式为: seq(f(i), i=m..n); # ⽣成序列f(m), f(m+1), …, f(n) (m,n 为任意有理数) seq(f(i), i=expr); # ⽣成⼀个f 映射expr 操作数的序列seq(f(op(i,expr)), i=1..nops(expr)); # ⽣成nops(expr)个元素组成的序列> seq(i^2,i=1..10);149162536496481100,,,,,,,,,> seq(i^3,i=x+y+z);获得⼀个序列中的特定元素选⽤操作符[ ], 如:> seq(ithprime(i),i=1..20);235711131719232931374143475359616771,,,,,,,,,,,,,,,,,,,> %[6],%[17];1359,4.2.2 列表列表(list), 就是把对象(元素)放在⼀起的⼀种数据结构, ⼀般地, ⽤⽅括号[ ]表⽰列表. 如下例: > l:=[x,1,1-z,x]; x1 -1z x,,,:=l[]> whattype(%);list4.2.3 集合集合(set)也是把对象(元素)放在⼀起的数据结构,⼀般地, ⽤花括号表⽰集合.> s:={x,1,1-z,x};1z1x -,,s{}:=> whattype(%);set空集定义为{ }.Maple中集合的基本运算有交(intersect)、并(union)、差(minus):> A:={seq(i^3,i=1..10)};B:={seq(i^2,i=1..10)};,,,,,,,,,1827641252163435127291000A{}:=149162536496481100,,,,,,,,,B{}:=> A intersect B;,164{}4.3 数组和表在Maple中, 数组(array)由命令array产⽣, 其下标变量(index)可以⾃由指定. 下标由1开始的⼀维数组称为向量(vector), ⼆维以上的数组称为矩阵(matrix). 数组的元素按顺序排列, 任意存取⼀数组的元素要⽐列表或序列快的多. 区分⼀个数据结构是数组还是列表要⽤“type”命令.表(table)在建⽴时使⽤圆括号, 变量能对⼀个表赋值, 但⼀个在存取在算⼦中的未赋值变量会被⾃动地假定是表, 表的索引可以成为任意Maple表达式. 表中元素的次序不是固定的.5 Maple ⾼级输⼊与输出操作⽣成LATEXMaple 可以把它的表达式转换成LATEX, 使⽤latex 命令即可: > latex(x^2+y^2=z^2);{x}^{2}+{y}^{2}={z}^{2}还可以将转换结果存为⼀个⽂件(LatexFile):> latex(x^2 + y^2 = z^2, LatexFile);再如下例:> latex(Int(1/(x^2+1),x)=int(1/(x^2+1),x));\int \! \left( {x}^{2}+1 \right) ^{-1}{dx}=\arctan\left( x \right)⼆微积分运算1 函数的极限和连续1.1 函数和表达式的极限)(lim x f ax →命令格式为: limit(f,x=a);求)(lim x f a x +→时的命令格式为limit(f, x=a, right); 求)(lim x f ax -→时的命令格式为limit(f, x=a, left); 请看下述例⼦:> Limit((1+1/x)^x,x=infinity)=limit((1+1/x)^x,x=infinity);= lim → x ∞?? ?+ 11x xe > Limit((x^n-1)/(x-1),x=1)=limit((x^n-1)/(x-1),x=1);= lim → x 1 - x n 1 - x 1n > Limit(x^x,x=0,right)=limit(x^x,x=0,right);= lim → +> limit(a*x*y-b/(x*y),{x=1,y=1});- a b> limit(x^2*(1+x)-y^2*((1-y))/(x^2+y^2),{x=0,y=0});undefined下例就是化⼆重极限为⼆次极限⽽得正确结果:> limit((sin(x+y)/(sin(x)*sin(y)),{x=Pi/4,y=Pi/4}));limit ,()sin + x y ()sin x ()sin y {}, = x 14π = y 14π > limit(limit(sin(x+y)/(sin(x)*sin(y)),x=Pi/4),y=Pi/4);21.2 函数的连续性1.2.1 连续在Maple 中可以⽤函数iscont 来判断⼀个函数或者表达式在区间上的连续性. 命令格式为: iscont(expr, x=a..b, 'colsed'/'opened');其中, closed 表⽰闭区间, ⽽opened 表⽰开区间(此为系统默认状态).如果表达式在区间上连续, iscont 返回true, 否则返回false, 当iscont ⽆法确定连续性时返回FAIL. 另外, iscont 函数假定表达式中的所有符号都是实数型. 颇为有趣的是, 当给定区间[a,b ] (a >b )时, iscont 会⾃动按[b,a ]处理.> iscont(1/x,x=1..2);true> iscont(1/x,x=-1..1,closed);false> iscont(1/(x+a),x=0..1);FAIL> iscont(ln(x),x=10..1);true1.2.2 间断函数discont 可以寻找函数或表达式在实数域的间断点, 当间断点周期或成对出现时, Maple 会利⽤⼀些辅助变量予以表达, ⽐如, _Zn ~(任意整数)、_NZn ~(任意⾃然数)和Bn ~(⼀个⼆进制数, 0或者1), 其中n 是序号. 判定f(x)间断点的命令为:discont(f, x);> discont(ln(x^2-4),x);{},-22> discont(arctan(1/2*tan(2*x))/(x^2-1),x);{},,-11 + 12π_Z1~14π> discont(round(3*x-1/2),x);3_Z1 函数round 为“四舍五⼊”函数,上例并⾮⼀⽬了然,对其进⼀步理解可借助于函数plot 或下⾯给出的fdiscont 例⼦。

Maple教程

Maple教程

Maple 软件使用教程目录序言 0第一章Maple概述 (2)第二章基本命令 (4)第三章作图 (11)§3.1 .二维曲线图 (13)§3.2三维图形 (16)§3.3数据图 (17)实验一第四章微积分 (20)§4.1函数 (18)§4.2极限 (19)§4.3导数 (20)§4.4积分 (21)§4.5方程求解 (22)§4.6极值与最值 (23)§4.7微分方程与差分方程 (24)§4.8级数 (25)实验二第五章线性代数 (32)实验三第六章概率统计 (35)§6.1描述性数据分析discribe (28)§6.2拟合回归分析 (29)§6.3数据形式变换transform (30)§6.4按分布产生随机数random (30)§6.5分布的数据计算statevalf (31)§6.6统计绘图statplots (32)§6.7方差分析anova (32)第七章线性规划.................... ............................... .. (40)第八章程序语句 (41)实验四附录一 ..................................................................................................... .. (43)附录二...…...…………..……..……………………………………………. .43.第一章Maple概述Maple以其良好的使用环境、超强的符号计算、高精度的数值计算、方便的图形处理和简洁而高效的编程功能,越来越受到大家的喜爱和重视。

为了让同学们了解什么是Maple以及Maple能解决什么问题,我们先来介绍Maple的初步知识、基本功能及简单的历史发展。

maple 2020 中文用户手册

maple 2020 中文用户手册

Maple中文用户手册版本:试用版v0.1编制:Maplesoft China2020年9月20日前言本教程是Maplesoft为广大Maple软件用户编制的入门级使用教程,供大家免费使用和参考。

本教程使用的建模软件是Maple 2020版。

如需申请试用版软件,请登录Maplesoft网站()申请。

由于水平有限,教程中错误之处在所难免,敬请读者指正!联系邮箱:china@2020年9月20日Maplesoft China目录第一章Maple使用环境 (1)1.1 软件简介 (1)1.2 安装的系统配置要求 (1)1.3 启动Maple软件界面 (1)1.4 新建Maple文件 (2)1.4.1 文件模式 (3)1.4.2 工作表模式 (4)1.4.3 保存文件 (5)1.5 快速参考卡 (6)1.6 函数和函数包的使用 (9)1.7 变量名 (11)1.8 数字格式 (11)1.9 常规运算 (13)1.9.1 数的表示 (14)1.9.2 基本的运算符号 (14)1.9.3 数字运算规则 (14)1.9.4 比较算符 (14)1.9.5 求算式的值 (15)1.9.6 多项式计算 (17)第二章数据结构 (18)2.1 序列(Sequence) (18)2.2 列表(List) (19)2.3 集合(Set) (20)2.4 数组(Array) (21)2.5 矩阵(Matrix) 和向量(Vector) (23)2.6 表(Table) (25)第三章常规的数学计算 (27)3.1 代数 (27)3.2 求方程与不等式 (30)3.3 矩阵计算与线性代数 (32)3.3.1 矩阵计算 (33)3.3.2 矩阵LU分解 (35)3.3.3 矩阵QR分解 (36)3.3.4 大型矩阵的数值计算 (36)3.3.5 线性代数函数列表 (37)3.4 微积分 (43)3.4.1 极限 (43)3.4.2 微分 (44)3.4.3 方向导数 (45)3.4.4 级数 (46)3.4.6 多变量和向量微积分 (47)3.4.7 Student微积分函数包和助教 (48)3.4.8 微积分问题求解示例 (48)3.5 优化 (53)3.5.1 线性规划 (55)3.5.2 非线性规划 (58)3.5.3 最小二乘优化问题 (59)3.5.4 全局优化 (61)3.6 概率论与数理统计 (68)3.6.1 概率分布和随机变量 (69)3.6.2 统计计算 (70)3.6.3 统计图形 (70)3.4.5 积分 (72)3.6.4 Student Statistics学生学习函数包 (73)3.7内置工程及科学常数数据库 (74)3.8 含单位和公差的科学计算 (74)3.8.1 输入单位 (74)3.8.2 国际规范 (75)3.8.3 单位计算 (76)3.8.4 绘图中使用单位 (77)3.8.5 在方程、积分、优化等计算时使用单位 (77)3.9 公差计算 (79)第四章图形和动画 (81)4.1 使用关联菜单绘图 (81)4.2 二维图形和三维图形命令 (82)3.2.1 单变量表达式绘图 (82)3.2.2 函数绘图 (82)3.2.3 两个变量函数的二维图形 (83)3.2.4 两个变量函数的三维图 (83)4.3 plots函数包 (83)3.3.1 多个图形和动画的合并显示 (83)3.2.2 微分方程解的绘图 (85)3.2.3 对数作图 (85)3.2.3 极坐标图 (86)3.3.4 隐函数的极坐标图形 (86)3.3.5 波特图 (87)3.3.6 数据表的绘图 (88)3.3.7 点云图 (88)3.2.8 柱状图 (88)3.2.9 双y轴图形 (89)4.4 提取图形的数据并保存为Excel文件 (90)4.5 动画 (91)第五章数据处理 (92)5.1 导入数据 (92)5.1.1 使用图形化用户界面导入数据文件 (92)5.1.2 使用命令导入Excel文件中的数据 (93)5.2 拟合数据 (94)5.3.1 Fit命令 (95)5.3.2 拟合噪声信号的模型 (98)5.3.3 最小二乘拟合 (100)5.3.4 三维数据的多项式拟合 (102)5.4 提取图形的绘图数据并输出EXCEL文件 (104)第六章微分方程求解 (106)6.1 定义微分方程 (106)6.2 使用dslove命令求解析解和数值解 (107)6.2.1 定义微分方程 (108)6.2.2 求解析解 (108)6.2.3 求数值解 (108)6.2.4求级数解 (109)6.3 微分方程的判定 (110)6.4 求解一阶常微分方程ODE (112)6.5 求解常微分方程组ODEs (115)6.6 求解偏微分方程PDE (117)6.6.1 一个简单的例子 (117)6.6.2 求解热传导方程 (117)6.6.3 求解波动方程 (119)第七章创建计算书 (128)7.1 样式 (128)7.2 创建文件 (130)7.2.1 输入数学和文字 (130)2.2.2 插入图片 (131)7.2.3 插入视频 (131)7.2.4 章节管理 (132)7.2.5 插入表格 (133)7.2.6 输出为PDF文件 (133)7.3 Maple Workbook管理项目中的多个文件 (134)7.3.1 保存为Maple Workbook工作薄文件格式 (135)7.3.2 导航面板 (135)7.3.3 从Workbook读取文件 (136)7.3.4 变量管理器 (137)7.4 文件内容加密 (137)7.5 分享Maple文件 (138)第八章编程 (139)8.1 编写代码的几种方式和工具 (139)8.2 编写Procedures过程程序 (140)8.2.1 编写一个简单的过程程序Procedure (140)8.2.2 一些简单的示例和说明 (143)8.3 条件和循环语句 (146)8.3.1 程序流控制 (146)8.3.2 返回结果: return和error语句 (147)8.4 迭代: for循环和while循环 (148)8.4.1 for/from 循环 (149)8.4.2 for/in 循环 (150)8.4.3 while循环 (150)8.4.4 嵌套循环 (151)8.5 创建一个模块Module (152)8.6 创建一个函数包Package (154)8.7 代码调试和分析 (155)8.7.1 编程习惯:注释 (155)8.7.2 调试 (155)8.7.3 代码分析 (159)第九章图形用户界面GUI应用开发 (162)9.1 常用的GUI组件 (162)9.2 GUI组件操作 (165)9.2.1 插入GUI组件 (165)9.2.2 编辑组件的属性 (166)9.2.3 删除GUI组件 (168)9.2.4 在文件中使用GUI组件 (168)9.3 示例–创建包含GUI组件的文件 (170)第一章Maple使用环境1.1 软件简介Maple软件是1980年由加拿大滑铁卢大学两位教授Keith Geddes和Gaston Gonnet领导的科研小组开发,并以加拿大的国树枫叶(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快速入门第一部分: Maple 快速入门CCA Inc. 2008.** 工作表和PDF文件由Maple 12生成介绍欢迎参加“Maple 快速入门”的培训!掌握和使用好Maple软件,可以协助你探索、可视化、求解甚至是最复杂的数学问题,减少错误,和更好地驾驭数学的力量。

在这部分里:通过学习,你将熟悉Maple的使用环境,学习如何使用关联菜单、任务助手、面板等工具完成分析和创建交互式的图形,完成这些工作你仅需很少的命令知识。

另外,你还将了解如何建立生动、交互式的技术文档、输入命令、和利用帮助系统。

这章培训内容将为你以后进一步的学习和使用打下结实的基础。

在学习这份材料时,首先请打开一个空白文档,根据下面表格左侧的说明操作,这些步骤的操作结果将显示在表格右侧。

对非Windows用户,请注意:这个文件的按键只适用于Windows系统。

在其他系统平台里这些按键是不一样的。

如果你使用的是其他系统,请参照帮助>快速帮助查看常用的按键列表。

1 与 Maple 对话在这一节里,你将学习如何在Maple计算一些基本问题和获得计算结果。

,所选的计在Maple中有多种方法输入数学,你可以组合使用面板、键盘快捷键、关联菜单、命令行等方式输入数学符号。

大部分的操作都可以通过多种方式实现,你可以任选一种你习惯的方式操作。

提示: 如何找到您的计算机系统下的快捷键,点击菜单帮助> 快速帮助,并选择切换文本/数学。

练习:使用面板和右键菜单:求导表达式并画出结果的图形。

使用<补全命令>创建一个指数创建一个包含变量 x 和 y 的多项式,例如。

求值多项式在 x = 10,求输出结果关于变量的积分。

提示: 为了使用<补全命令>创建一个指数,键入 e,按下[Esc]键,从下拉列表中选择 e (exponential)。

3 组合文字和数学Array在Maple中,你可以在文件中任意组合文字和数学,达到图文并茂的效果。

介绍Maple入门的一些常见操作

介绍Maple入门的一些常见操作

介绍Maple⼊门的⼀些常见操作介绍Maple⼊门的⼀些常见操作在学习使⽤Maple的过程中,对于刚刚接触Maple的⼈们来说,了解Maple计算数学的基本操作是很必要,这也是Maple⼊门基本操作之⼀。

下⾯就介绍Maple的⼀些常见的操作。

更多Maple使⽤教程请访问Maple中⽂版官⽹。

进⼊Maple窗⼝后,可以通过“帮助”菜单了解Maple的操作和使⽤⽅法。

输⼊数学表达式后,如果要进⾏数学运算,需要将光标放在要运算的数学表达式上,按回车键,或单击⼯具栏上的“执⾏所有选中的组”按钮,也可以单击⿏标右键,使⽤弹出的右键菜单求解数学问题。

Maple将每次输⼊纪录在案,输出将另起⼀⾏居中显⽰,后⾯⾃动附加⼀个标签。

提⽰:[>是Maple⾃动显⽰的命令⾏提⽰符,⽆需我们⼿⼯输⼊。

如要输出结果,可在运算表达式后“;”;如不要显⽰输出结果,则在运算表达式后加“:”。

Maple中的运算命令必须在英⽂模式下输⼊,不然Maple不能运算。

如果要删除单个⽂字,可以使⽤“Del”键,如果要删除整⾏,可以使⽤“Ctrl+Del”组合键,Maple的这⼀“超级删除”功能键可⽤于对复杂对象的整⾏删除操作。

当输⼊的数学表达式较长时,为了在窗⼝中看到整个数学表达式,可将光标停在任⼀运算符后⾯并按“Shift+Enter”组合键,便可使数学表达式换⾏。

如要同时计算⼏个数学表达式,实现⽅法有两种。

⼀种是在每个数学表达式后⾯加“;”,然后按回车键或者单击⼯具栏上的执⾏按钮。

例如:第⼆种是分别输⼊数学表达式并单击⼯具栏上的“执⾏整个⼯作表”按钮" alt="执⾏整个⼯,Maple将执⾏⽂件中的所有运算。

例如:Maple中许多操作和菜单与Word是⼀样的。

在以后操作中使⽤较多的打开、关闭、复制、存盘等与Word操作完全⼀致,⼤家⼀样操作就可以了。

以上内容向⼤家介绍了Maple⼊门时的基本操作,在Maple中编辑公式后怎样进⾏计算。

Maple Flow 用户手册说明书

Maple Flow 用户手册说明书

Maple Flow用户手册版权©Maplesoft,a division of Waterloo Maple Inc.2022Maple Flow用户手册CopyrightMaplesoft,Maple,和Maple Flow是Waterloo Maple Inc.的注册商标。

©Maplesoft,a division of Waterloo Maple Inc.2022.保留所有权利。

本书的任何部分都不得以任何形式或任何手段--电子、机械、影印、录音或其他方式进行复制、储存在检索系统中或转录。

本文件中的信息如有变化,恕不另行通知,也不代表供应商的承诺。

本文件中描述的软件是根据许可协议提供的,只能按照协议规定使用或复制。

在任何媒介上复制软件都是违法的,除非协议中特别允许。

Linux是Linus Torvalds的注册商标。

Macintosh是Apple Computer,Inc.的注册商标。

Windows是Microsoft Corporation的注册商标。

所有其他商标是其各自所有者的财产。

本文件是用Maple和DocBook制作的。

目录1简介 (1)1.1Maple Flow (1)1.2手册目的 (1)1.3Maple和Maple Flow之间是什么关系? (2)1.4如果您是Maple用户 (3)1.5Maple Flow帮助系统 (3)附加文档 (3)1.6用户界面 (4)自定义界面 (4)2白板 (6)2.1网格 (6)2.2网格光标 (6)2.3数学表达式和文本容器 (6)2.4移动容器的位置 (7)单个容器 (7)容器群组 (7)将容器上移至顶层,或下移至底层 (7)2.5编辑已有的容器 (7)2.6插入或删除空白区 (8)添加空白行 (8)添加空白行 (8)3输入数学表达式 (9)3.1创建一个数学容器 (9)3.2删除数学容器 (9)3.3求值并显示输出结果 (9)3.4数值和符号求解模式 (9)3.5数值格式 (10)3.6定义/赋值 (10)3.7基础运算 (10)3.8复数 (11)3.9单位 (11)输入单位 (11)编辑现有单位 (12)3.10有关数学输入的注意事项 (12)数值计算和精度 (12)计算顺序 (13)不可执行的数学运算和禁用求值 (13)4创建一个光鲜的文件 (15)4.1输入文本 (15)在一个文本容器中输入数学 (15)4.2数学表达式和文本的样式 (15)设置单个容器内容的格式 (15)将背景颜色应用于数学容器 (15)应用和更改样式 (16)4.3使用段落工具 (17)控制段落的显示 (18)删除段落 (18)4.4隐藏命令 (18)4.5包含图像和绘图 (19)绘图工具 (19)4.6添加超链接 (26)目录5更多工具:数学函数,编程,绘图 (28)5.1数学函数 (28)Maple函数 (28)不支持的Maple关键字、命令和函数包 (28)5.2绘图 (28)5.3命令补全 (29)5.4代码编辑器 (29)6打印和导出为PDF (30)6.1打印范围 (30)6.2页眉/页脚 (30)6.3页面设置和打印预览 (31)6.4导出为PDF (32)6.5打印带有段落的工作表 (32)7快捷键 (33)索引 (34)图1.1:产品内教程概述 (2)图1.2:Maple Flow用户界面 (4)图1.3:选项窗口 (5)图2.1:具栏上的启用/关闭网格线按钮 (6)图2.2:网格光标 (6)图2.3:“上移一层”和“下移一层”按钮 (7)图3.1:数字格式 (10)图3.2:使用单位面板插入单位 (11)图3.3:使用Unit()函数赋值一个单位 (12)图3.4:使用快捷键,插入单位占位符 (12)图3.5:转换结果单位 (12)图3.6:数值运算 (13)图3.7:数位对数值精度的影响 (13)图3.8:计算顺序示意图 (13)图4.1:输入文本并设置格式 (15)图4.2:为数学容器添加背景颜色 (15)图4.3:选择背景颜色 (16)图4.4:使用背景颜色的数学容器 (16)图4.5:样式的下拉列表 (17)图4.6:工作表中的段落 (18)图4.7:隐藏命令 (19)图4.8:标注隐藏命令 (19)图4.9:绘图工具栏 (19)图4.10:帮助主题超链接 (26)图4.11:捷径 (26)图4.12:捷径属性 (27)图5.1:使用Maple plot命令进行的简单绘图 (28)图5.2:命令补全下拉菜单 (29)图5.3:工具栏上的代码编辑器按钮 (29)图6.1:打印范围 (30)图6.2:插入页眉和页脚 (31)图6.3:页面设置 (31)表1.1:Maple Flow与Maple的不同之处 (3)表2.1:容器状态 (6)表3.1:数值和符号计算模式之间的区别 (9)表3.2:使用命令补全和表达式面板插入平方根 (11)表7.1:快捷键 (33)第1章简介1.1.Maple FlowMaple Flow是Maplesoft公司新推出的计算工具。

01-Maple基础和实践教程

01-Maple基础和实践教程

Maple基础和实践教程Maple基础和实践教程Maple是应用最为广泛的科学计算软件之一,具有非常强大的符号计算和数值计算功能。

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

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

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

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

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

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

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

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

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

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

●面板区。

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

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

Maple提供了总共约30个面板,用户可以在面板区空白处单击鼠标右键,并单击Arrange Palettes 来进行选择。

●工具条。

Maple提供了两个主要的工具条。

默认状态下,标准工具条含有保存、缩放等通用按钮和一些Maple特定用途的按钮。

maple教程

maple教程

maple教程1 初识计算机代数系统Maple1.1 Maple简说1980年9⽉, 加拿⼤Waterloo⼤学的符号计算机研究⼩组成⽴, 开始了符号计算在计算机上实现的研究项⽬, 数学软件Maple是这个项⽬的产品. ⽬前, 这仍是⼀个正在研究的项⽬.Maple的第⼀个商业版本是1985年出版的. 随后⼏经更新, 到1992年, Windows系统下的Maple 2⾯世后, Maple被⼴泛地使⽤, 得到越来越多的⽤户. 特别是1994年, Maple 3出版后, 兴起了Maple热. 1996年初, Maple 4问世, 1998年初, Maple 5正式发⾏. ⽬前⼴泛流⾏的是Maple 7以及2002年5⽉⾯市的Maple 8.Maple是⼀个具有强⼤符号运算能⼒、数值计算能⼒、图形处理能⼒的交互式计算机代数系统(Computer Algebra System). 它可以借助键盘和显⽰器代替原来的笔和纸进⾏各种科学计算、数学推理、猜想的证明以及智能化⽂字处理.Maple这个超强数学⼯具不仅适合数学家、物理学家、⼯程师, 还适合化学家、⽣物学家和社会学家, 总之, 它适合于所有需要科学计算的⼈.1.2 Maple结构Maple软件主要由三个部分组成: ⽤户界⾯(Iris)、代数运算器(Kernel)、外部函数库(External library). ⽤户界⾯和代数运算器是⽤C语⾔写成的, 只占整个软件的⼀⼩部分, 当系统启动时, 即被装⼊, 主要负责输⼊命令和算式的初步处理、显⽰结果、函数图象的显⽰等. 代数运算器负责输⼊的编译、基本的代数运算(如有理数运算、初等代数运算等)以及内存的管理. Maple的⼤部分数学函数和过程是⽤Maple⾃⾝的语⾔写成的, 存于外部函数库中. 当⼀个函数被调⽤时, 在多数情况下, Maple会⾃动将该函数的过程调⼊内存, ⼀些不常⽤的函数才需要⽤户⾃⼰调⼊, 如线性代数包、统计包等, 这使得Maple在资源的利⽤上具有很⼤的优势, 只有最有⽤的东西才留驻内存, 这保证了Maple可以在较⼩内存的计算机上正常运⾏. ⽤户可以查看Maple的⾮内存函数的源程序, 也可以将⾃⼰编的函数、过程加到Maple的程序库中, 或建⽴⾃⼰的函数库.1.3 Maple输⼊输出⽅式Maple 7有2种输⼊⽅式: Maple语⾔(Maple Notation)和标准数学记法(Standard Math Notation). Maple语⾔是⼀种结构良好、⽅便实⽤的内建⾼级语⾔, 它的语法和Pascal或C有⼀定程度的相似, 但有很⼤差别. 它⽀持多种数据操作命令, 如函数、序列、集合、列表、数组、表, 还包含许多数据操作命令, 如类型检验、选择、组合等. 标准数学记法就是我们常⽤的数学语⾔.启动Maple, 会出现新建⽂档中的“[>”提⽰符, 这是Maple中可执⾏块的标志, 在“>”后即可输⼊命令, 结束⽤“;”(显⽰输出结果)或者“:”(不 显⽰输出结果). 但是, 值得注意的是, 并不是说Maple的每⼀⾏只能执⾏⼀句命令, ⽽是在⼀个完整的可执⾏块中健⼊回车之后, Maple会执⾏当前执⾏块中所有命令(可以是若⼲条命令或者是⼀段程序). 如果要输⼊的命令很长, 不能在⼀⾏输完, 可以换⾏输⼊, 此时换⾏命令⽤“shift+Enter”组合键, ⽽在最后⼀⾏加⼊结束标志“;”或“:”, 也可在⾮末⾏尾加符号“\”完成.Maple 7有4种输出⽅式: Maple语⾔、格式化⽂本(Character Notation)、固定格式记法(Typeset Notation)、标准数学记法(Standard Math Notation). 通常采⽤标准数学记法.Maple会认识⼀些输⼊的变量名称, 如希腊字母等. 为了使⽤⽅便, 现将希腊字母表罗列如下,输⼊时只需录⼊相应的英⽂,要输⼊⼤写希腊字母, 只需把英⽂⾸字母⼤写:alpha beta gamma delta epsilon zeta eta theta iota kappa lambda munu xi omicron pi rho sigma tau upsilon phi chi psi omega有时候为了美观或特殊需要,可以采⽤Maple中的函数或程序设计⽅式控制其输出⽅式,如下例:> for i to 10 doprintf("i=%+2d and i^(1/2)=%+6.3f", i, eval(sqrt(i)));od;i=+1 and i^(1/2)=+1.000i=+2 and i^(1/2)=+1.414i=+3 and i^(1/2)=+1.732i=+4 and i^(1/2)=+2.000i=+5 andi^(1/2)=+2.236i=+6 and i^(1/2)=+2.449i=+7 and i^(1/2)=+2.646i=+8 and i^(1/2)=+2.828i=+9 and i^(1/2)=+3.000i=+10 and i^(1/2)=+3.162+2d的含义是带符号的⼗进位整数,域宽为2. 显然,这种输出⽅式不是我们想要的,为了得到更美观的输出效果,在语句中加⼊换⾏控制符“\n”即可:> for i to 10 doprintf("i=%+2d and i^(1/2)=%+6.3f\n", i, eval(sqrt(i)));od;i=+1 and i^(1/2)=+1.000i=+2 and i^(1/2)=+1.414i=+3 and i^(1/2)=+1.732i=+4 and i^(1/2)=+2.000i=+5 and i^(1/2)=+2.236i=+6 and i^(1/2)=+2.449i=+7 and i^(1/2)=+2.646i=+8 and i^(1/2)=+2.828i=+9 and i^(1/2)=+3.000i=+10 and i^(1/2)=+3.162再看下例:将输⼊的两个数字⽤特殊形式打印:> niceP:=proc(x,y)printf("value of x=%6.4f, value of y=%6.4f",x,y);end proc;> niceP(2.4,2002.204);value of x=2.4000, value of y=2002.20401.4 Maple联机帮助学会寻求联机帮助是掌握⼀个软件的钥匙. Maple有⼀个⾮常好的联机帮助系统, 它包含了90%以上命令的使⽤说明. 要了解Maple的功能可就会出现(也可以⽤Tab键和up, down选定). 可以从底栏中看到函数命令全称, 例如, 我们选graphics…, 出现该条的⼦⽬录, 从中选2D…, 再选plot就可得到作函数图象的命令plot的完整帮助信息. ⼀般帮助信息都有实例, 我们可以将实例中的命令部分拷贝到作业⾯进⾏计算、演⽰,由此可了解该命令的作⽤.在使⽤过程中, 如果对⼀个命令把握不准, 可⽤键盘命令对某个命令进⾏查询. 例如, 在命令区输⼊命令“?plot”(或help(plot);), 然后回车将2 Maple的基本运算2.1 数值计算问题算术是数学中最古⽼、最基础和最初等的⼀个分⽀, 它研究数的性质及其运算, 主要包括⾃然数、分数、⼩数的性质以及他们的加、减、乘、除四则运算. 在应⽤Maple做算术运算时, 只需将Maple当作⼀个“计算器”使⽤, 所不同的是命令结束时需加“;”或“:”.在Maple中, 主要的算术运算符有“+”(加)、“–”(减)、“*”(乘)、“/”(除)以及“^”(乘⽅或幂,或记为**), 算术运算符与数字或字母⼀起组成任意表达式, 但其中“+”、“*”是最基本的运算, 其余运算均可归诸于求和或乘积形式. 算述表达式运算的次序为: 从左到右, 圆括号最先, 幂运算优先, 其次是乘除,最后是加减. 值得注意的是, “^”的表达式只能有两个操作数, 换⾔之, 是错误的, ⽽“+”或“*”的任意表达式可以有两个或者两个以上的操作数.Maple有能⼒精确计算任意位的整数、有理数或者实数、复数的四则运算, 以及模算术、硬件浮点数和任意精度的浮点数甚⾄于矩阵的计算等等. 总之, Maple可以进⾏任意数值计算.但是, 任何软件或程序毕竟只是⼈们进⾏科学研究的⼀种必要的辅助, 即便它有很多优点, 但也有它的局限性, 为了客观地认识数学软件、认识Maple, 下⾯通过两个简单例⼦予以说明.第⼀个简单的数值计算实例想说明Maple数值计算的答案的正确性:> 3!!!;上述运算结果在IBM PC机(1G, 128M)上计算只需要0.01秒, 得到如此复杂的结果(1747位), ⼀个⾃然的问题是: 答案正确吗?为了回答这个问题, 我们借助于数值分析⽅法, 由Stiring公式可得: , 前三位数字与Maple输出结果相同, 且两者结果均为1747位. 另外, 在720!的计算中, 5的因⼦的个数为:这些5与⾜够多的2相乘将得到178个0, ⽽Maple的输出结果中最后178位数为零. 由此, 可以相信Maple结果的正确性.另⼀个例⼦则想说明Maple计算的局限性:Maple在处理问题时, 为了避免失根, 从不求算术式的近似值, 分数则化简为既约分数. 因此, 在Maple中很容易得到:显然这是错误的. 这⼀点可以从代数的⾓度予以分析.不妨设, 则, 即, 显然有3个结果, -2是其实数结果.另⼀⽅⾯, 设, 则, 即:显然有6个结果, -2、2是其实数结果.这个简单的例⼦说明了Maple在数值计算⽅⾯绝对不是万能的, 其计算结果也不是完全正确的, 但是, 通过更多的实验可以发现: Maple只可能丢失部分结果, ⽽不会增加或很少给出完全错误的结果(如上例中Maple的浮点数结果皆为). 这⼀点提醒我们, 在利⽤Maple或其他任何数学软件或应⽤程序进⾏科学计算时, 必须运⽤相关数学基础知识校验结果的正确性.尽管Maple存在缺陷(实际上, 任何⼀个数学软件或程序都存在缺陷), 但⽆数的事实说明Maple仍然不失为⼀个具有强⼤科学计算功能的计算机代数系统. 事实上, Maple同其他数学软件或程序⼀样只是科学计算的⼀个辅助⼯具, 数学基础才是数学科学中最重要的.2.1.1 有理数运算作为⼀个符号代数系统, Maple可以绝对避免算术运算的舍⼊误差. 与计算器不同, Maple从来不⾃作主张把算术式近似成浮点数, ⽽只是把两个有公因数的整数的商作化简处理. 如果要求出两个整数运算的近似值时, 只需在任意⼀个整数后加“.”(或“.0”), 或者利⽤“evalf”命令把表达式转换成浮点形式, 默认浮点数位是10 (即: Digits:=10, 据此可任意改变浮点数位, 如Digits:=20).> 12!+(7*8^2)-12345/125;> 123456789/987654321;> evalf(%);> 10!; 100*100+1000+10+1; (100+100)*100-9;> big_number:=3^(3^3);> length(%);上述实验中使⽤了⼀个变量“big_number”并⽤“:=”对其赋值, 与Pascal语⾔⼀样为⼀个变量赋值⽤的是“:=”. ⽽另⼀个函数“length”作⽤在整数上时是整数的⼗进制位数即数字的长度. “%”是⼀个⾮常有⽤的简写形式, 表⽰最后⼀次执⾏结果, 在本例中是上⼀⾏输出结果. 再看下⾯数值计算例⼦:1)整数的余(irem)/商(iquo)命令格式:irem(m,n); #求m除以n的余数irem(m,n,'q'); #求m除以n的余数, 并将商赋给qiquo(m,n); #求m除以n的商数iquo(m,n,'r'); #求m除以n的商数, 并将余数赋给r其中, m, n是整数或整数函数, 也可以是代数值, 此时, irem保留为未求值.> irem(2002,101,'q'); # 求2002除以101的余数, 将商赋给q> q; #显⽰q> iquo(2002,101,'r'); # 求2002除以101的商, 将余数赋给r> r; #显⽰r> irem(x,3);2)素数判别(isprime)素数判别⼀直是初等数论的⼀个难点, 也是整数分解问题的基础. Maple提供的isprime命令可以判定⼀个整数n是否为素数. 命令格式: isprime(n);如果判定n可分解, 则返回false, 如果返回true, 则n“很可能”是素数.> isprime(2^(2^4)+1);> isprime(2^(2^5)+1);上述两个例⼦是⼀个有趣的数论难题。

实验一MAPLE基础资料

实验一MAPLE基础资料

实验一 MAPLE 基础、向量代数与行列式一、实验目的1、了解MAPLE 的基础知识,熟悉并掌握Maple 的界面以及操作方法。

2、熟习并掌握Maple 的初等代数运算、处理表达式以及三角函数运算。

二、实验内容在MAPLE 上求解下题: 1、12×266;2、sin15°+cos15°;3、设a =1+2i ,b =3-4i ,分别计算a +b 、a -b 、a ×b 以及a 的模长和幅角。

484-的值;5、求解1/2,1/3,….,1/100的和与积;6、求解11(13)x∞+∑>> >>>>>>三、实验原理1、Maple基础(1)常用符号说明(2)变量命名规则变量名由字母、数字和下划线组成,其中第一个字符必须是字母或下划线,长度限制是499个字符。

在Maple中要区分字母的大小写,一些保留字不可被用作变量名,如by、do、done、elif、fi、if、for、from、in、local、od、option、options、proc、quit、read、save、stop、then、to、while、D以及Maple中的内部函数等均不能被用作变量名而赋予新的意义。

(3(3)Maple中的数学常数2、初等代数运算基本运算符(1)实数运算eval()系列函数eval()系列函数用来获得一个确定的数值,它包括eval、evala、evalb、evalc、evalf、evalhf、evalm、evalr等。

sum()和product()函数也可写成Sum()和Product(),区别在于前者直接计算出数值,后者用公式显示结果。

(2)复数运算复数是Maple中的基本数据类型,虚数单位在Maple中用I表示,所有的算术运算符均复数可以通过convert函数转换为极坐标形式。

3、处理表达式(1(2)表达式的形式变换convert函数可以对表达式进行变换,如坐标变换、拉普拉斯变换(Laplace)、贝赛尔变换(Bessel)、傅立叶变换(Fourier)、矩阵变换等。

Maple入门手册(1)

Maple入门手册(1)
12
函数
7
本稿由 哈尔滨工程大学船舶工程学院 张崇伟 制作,免费学术共享,禁止用于商业目的。
定义单变量函数: 对于一个函数,给出一系列变量值,只能返回一个值。在 Maple 里,我们使用箭头符号“->”, 一个连字符跟着一个右角括号,定义函数。可通过“:=”给函数指定一个函数名,用同样的 方式,你可以定义一个表达式。在下面例子中,函数被命名为 f,并且只有一个变量 x。在 函数 f 中,f(x)=x^5+6x
怎样处理错误 如果你不小心在命令行中输入了一个错误的符号,并按了回车键,Maple 会回复“syntax error”。有两种方法改正你的错误。你可以返回这一行修改 Maple 命令,然后重新执行这行 命令;当 Maple 重新执行这行命令后,结果会随之更改。你也可以输入“restart”来清除所 有旧的信息,然后重新输入正确的 Maple 命令。
我们会得到与前面例子相同的结果。 绘制数据
9
本稿由 哈尔滨工程大学船舶工程学院 张崇伟 制作,免费学术共享,禁止用于商业目的。
Plot()函数也可被用来绘制数据系列:首先将数据定义一个数列,然后绘制数列。 在下面的例子中,我们定义一个名为 list 的数列,数列通过表达式组来定义 [3,4],[5,6],[7,8],[9,10]。表达式组中的每一项也是一个数列,对应于点的坐标。我们然后用 plot 命令绘制这列数据。如果你想指定点的形式,你也可以增加一个选项变量。Plot()函数有三 种形式:点、线、面。默认的形式是线。在这个例子中,我们制定图形的形式是点。
或者,你可以把浮点数包含在表达式中,这样它会自动是 Maple 计算得到一个近似浮点型解 。
整数计算 Maple 可以处理任意大的整数。如果一个数太大,导致它一行的长度比屏幕还要长,Maple 会在一行结束处使用一个“\”符号表示数字还要院 张崇伟 制作,免费学术共享,禁止用于商业目的。

《Maple》使用手册

《Maple》使用手册

O O O O (1.7)(1.3)(1.2)O (1.13)(1.9)(1.14)(1.15)(1.1)O O O (1.8)(1.5)(1.12)(1.10)O O O O O O (1.6)(1.11)(1.4)O 第1章 Maple的基本量1.1数值类型whattype 0integerwhattype12fractionwhattype 0.floatconstants;false ,γ,N ,true ,Catalan ,FAIL ,πwhattype falsesymbolwhattype infinityextended_numericwhattype πsymbolwhattype undefinedextended_numericwhattype arcsin 1`*`whattype sqrt 2`^`whattype ln 2functionwhattype Icomplex extended_numericwhattype "ustc"stringwhattype 'ustc 'symbolwhattype ustcsymbolO (2.1)O (1.16)O (2.3)O (1.19)O O (2.2)O O O (1.21)O (1.20)O O (1.18)O O O (1.22)(1.17)类型转化convert 65535,hexFFFFconvert FFFF ,decimal ,1665535convert FFFF ,decimal ,88775Why?evalf π3.141592654evalf 20π3.1415926535897932385floor π,round π,ceil π3,3,4convert evalf π,string"3.141592654"1.2赋值x d 1x :=1y ,z d 2,3y ,z :=2,3z3y ,z d 2,3Error, illegal use of an object as a namey ,z d 2,3清除unassign xError, (in unassign) cannot unassign `1' (argument must be assignable)unassign "x"Error, (in unassign) cannot unassign `x' (argument must be assignable)unassign 'x 'x d 1; x d 'x ';x(2.8)(2.11)O O(2.9)(2.12)O O O (2.13)O (2.4)(2.7)(2.6)O O (2.10)O O (2.5)x :=1x :=x x替换x ,y d sqrt 2,sqrt 3x ,y :=2,3subs x =a ,y =b ,x y13a b Why?subs x =y ,y =x ,x y1Why?unassign 'x ','y 'subs x =a ,y =b ,x ya bsubs x =y 2,y =x 2,x yx 2subs y =x 2,x =y 2,x y1y2algsubs x C x 2=y ,1C x4x C 14algsubs x C x 2=y ,1C 2 x C x 221C 2 x C x 22algsubs x C x 2=y ,1C 4 x C 6 x 2C 4 x 3C x 41C 3 y C y 2C 1C 2 y x1.3定义O OO O O (3.5)(4.2)O O (4.3)(3.2)O O (3.1)(3.4)(4.4)O (3.7)(4.1)(3.3)O O (4.5)(3.6)O (3.8)a ,b ,cd 1,2,3a ,b ,c :=1,2,3f d x /a x 2C b x C c f :=x /a x 2C b x C cg d x ,y /x yg :=x ,y /x y注意:此处(x,y)的括号不可省。

Maple 教学 -- 基础篇

Maple 教学 -- 基础篇
> Sum(1/n,n=1..10);
> value(%); > sum(1/n,n=1..10); > Sum(1/n^2,n=1..infinity);
> value(%);
> sum(1/n^2,n=1..infinity);
与 "Limit" 指令一样,大写的 "Sum" 指令只会显示这个级数的表示 方法 ,而不能拿来作运算;小写的 "sum" 指令才会将计算结果告诉 你。 微分与积分 1. 微分:
> int(sin(x),x);
注意 : 指令 " int " 不会给出积分常数。
> Int(sin(x),x=a..b);
> int(sin(x),x=a..b); > Int(1/x^2,x=1..infinity);
> int(1/x^2,x=1..infinity);
注意微分与积分的指令同样有大小写的区别。 二维空间中的作图 1. 描绘点坐标: 下面的指令可以在座标上标出 (1, 2), (1.5, 2.5), (2, 3) 这三个点坐标。
with (plots) : plots 是一个绘图函数库,里面有很多绘图指令,如 display ,要先用 with 呼叫它,才能 用这些绘图指令。 fPlot := plot ( f(t) , t = 0 .. 8 , style = point, symbol = circle, color = green, thickness =2): fPlot 是 f(t) 的图形名称﹝可任意给﹞,t 的范围介在 0 与 8 之间﹝范围自订﹞。 display (fPlot) ; (绿色的部分不一定要写,系统自己有预设值。) display 这个指令可以在同一个坐标轴上画两个以上的图 例:

Maple入门教程A1- 与Maple对话

Maple入门教程A1- 与Maple对话

(2.1)Part 1: 与Maple对话西希安工程模拟软件(上海)有限公司,20081.0 介绍第一部分:与Maple对话,熟悉Maple的环境。

您将学习如何使用关联菜单和面板完成分析,创建交互式图形,所有的操作无需您了解Maple命令。

为了获得更好的学习效果,请打开一个空白Maple文件。

按照表格左侧中的操作步骤描述,在表格右侧空白处完成操作。

1.1 如何开始在这一段中,您将学习如Maple的基本操作,通过计算几个简单的问题,熟悉Maple的使用的环境。

操作步骤结果使用【回车键】打开一个空白文件,您可以注意到窗口的顶部的菜单和工具栏,面板在左侧。

在光标处,您可以输入数学符号,输入完后按回车键,结果另起一行显示。

例子:使用键盘输入 “回车键。

注意:结果将另起一行显示。

3注意:如何切换Maple工作表中的数学/文字输入?方式1. 使用快捷键F5可以使用快捷键【F5】切换数学/文字输入。

在数学模式下,光标显示为斜体,周围有虚线框。

在文字模式下,光标显示为垂直线。

方式2.使用工具栏图标您可以通过工具上的图标,切换当前的输入模式,等价于F5键。

如果是文字模式,图标显示为 如果是数学模式,图标显示为 输入方程(3.1)例子:在上面的右击菜单例子中,修改 " 为 “工具栏上的运行按钮 ,所选的计算结果将得到更新。

x510100200300400500提示:点击 “运行整个工作表” 按钮 ,重新计算整个文档。

1.2 输入数学在Maple中有多种方法输入数学,您可以组合使用面板、键盘快捷键、关联菜单、命令行等方式输入数学符号。

大部分的操作都可以通过多种方式实现,您可以任选一种您习惯的方式操作。

操作步骤结果求精确解和数值近似使用Maple 计算精确解,也就是说,分数计算时保持分数形式,e 和 在整个计算过程中保留为符号形式。

这些将减少在多步计算中由于近似产生的误差。

例子:在新的一行,输入 1/2 + 1/3。

maple教程

maple教程

maple教程1. 介绍Maple:Maple是一款广泛应用于数学、科学和工程领域的计算软件。

它可以进行数值计算、符号计算、可视化和建模等功能,被广泛用于教育、研究和工程设计等领域。

2. 安装Maple:首先,下载Maple的安装文件并运行。

按照安装向导的指示完成安装过程。

安装完成后,可以打开Maple并开始使用。

3. Maple基础:Maple中的基本对象是表达式(expression)。

可以输入表达式并进行计算,也可以定义变量、函数和方程等。

Maple的语法与一般数学符号相似,所以非常易于学习和使用。

4. 数值计算:Maple可以进行各种数值计算,例如求解方程、数值积分、数值微分等。

可以使用内置的函数或编写自定义的函数来实现不同的数值计算任务。

使用数值计算可以快速得到数学问题的近似解。

5. 符号计算:Maple的强大之处在于符号计算。

可以进行代数运算、求解方程、化简表达式等。

Maple能够处理复杂的代数表达式,并给出精确的结果。

对于数学研究、理论推导和数学建模等领域非常有用。

6. 绘图功能:Maple提供了丰富的绘图功能,可以创建二维和三维图形来可视化数学和科学问题。

可以绘制函数图像、数据图表、散点图、曲线图等。

通过调整参数,可以自定义图形的外观和样式。

7. 建模与仿真:Maple还提供了建模和仿真功能,可以通过输入方程或条件来建立模型,并进行仿真和分析。

可以用于工程设计、物理模拟、控制系统设计等领域。

Maple可以帮助用户更好地理解和解决实际问题。

8. 扩展功能:Maple具有丰富的扩展功能,可以使用包(package)来扩展Maple的功能。

可以通过安装和加载包来添加新的函数、命令和工具。

这些包可以提供额外的数学、统计、优化、图论等功能。

9. Maple应用领域:Maple广泛应用于数学教育、科学研究和工程设计等领域。

在教育方面,它可以帮助学生理解和掌握数学概念,同时也是教师教学和练习的重要工具。

maple入门

maple入门

1.3.4 求值规则
eval 命令格式: eval(e, x=a); #求表达式e在x=a处的值 eval(e, vars); #对方多个变量求值 evalc #对复数求值 evalf #求浮点数 evala #对表达式或未求值函数求值 value #对惰性表达式求值
1.4 数据结构
变量类型(数字,字符串,复合表达式) integer, float, list, set, exprseq,… 运算符: +, -, *, /, ^ 关系表达式:=, <>, <, <= 注意">" 逻辑表达式: and, or ,not
1.4.1 数据及变量类型查询
whattype(expr) 其中expr是任何表达式 type(expr,t) 其中expr是任何表达式,t为有效表达式
1.4.2 序列,列表和集合 序列,
1.4.2.1序列 所谓序列(Sequence), 就是一组用逗号隔开的表达式列. 如: s:=1,4,9,16,25; 一个序列也可以由若干个序列复合而成 s:=s,s; 该值为: 该值为 1,4,9,16,25,1,4,9,16,25; 产生序列的函数为seq(f,i=m..n) 其中f是函数,可以是i的函数,也可以不是. 判断序列的函数为:nops
3) 求积分 பைடு நூலகம்示
1.1.2界面介绍
1.工具栏 在Maple界面上说明 2. 工作区 每一个">"是一个执行块. 表 示命令提示符.
1.2基本运算
能精确计算整数,有理数或者实数,复 数的四则运算, 以及模算术,硬件浮点数和 任意精度的浮点数甚至于矩阵的计算等等. 总之, Maple可以进行任意数值计算.

Maple入门教程A11-程序设计基础

Maple入门教程A11-程序设计基础

A11: Maple 初级编程知识西希安工程模拟软件(上海)有限公司,200911.0 介绍在前面的教程中,大部分内容提供了交互式(点击式)方法解决问题,程序命令实际上是Maple编程语言的重要部分。

如果您看过关于老版本Maple的资料,或者咨询有多年Maple使用经验的用户,他们通常更多地将Maple视为一个数学语言。

Maple内置完整的程序语言,编写Maple程序实际上是非常简单的。

Maple系统中含有数以千计的内置函数,其中的大部分是用Maple语言编写的,用户浏览和修改它们,满足自己的需要,或者扩充它们来解决新的问题。

Maple内置了代码调试工具,方便程序的测试与修改。

当您熟悉基本编程后,您可以充分使用Maple内置的功能解决各种工程和科学问题,甚至可以使用Maple开发完成的应用程序。

Maple的系统结构Maple 的系统结构采用模块化设计,让数学计算更快、更容易编程、能够适应各种不同的操作系统。

Maple系统最重要的三个部分:内核:Maple系统的“心脏”,只占系统的一小部分,是用C或C++语言编写的。

由于它们是编译的,速度非常快,因此所有Maple底层操作或者任何需要速度最大化的计算通过内核实现。

此外,内核能够理解Maple程序语言,换句话说,内核是Maple程序语言的库函数:Maple系统的“大脑”,这部分比较庞大,是用Maple语言编写的。

Maple语言是面向数学的优化代码,吸收了其他一些语言(如Java和C)的技术特征,大大缩短了编程时间。

由于它是一种解释性语言(而不是编译),更容易编写“快速和随性”的程序,以及调试程序。

用户可以在Maple系统中编程,扩充预置的库程序。

用户界面:Maple系统的“脸”,是用Java编写的,方便图形化互动。

在最近的几个版本中(Maple 10以后版本),用户可以通过简单的编程自定义用户界面。

(1.3.2)(1.3.1)事实上,Maple中的大部分数学知识来自于库函数,由Maple语言编写。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
创建表达式组还有另外一种方法,可以使用 seq()函数创建表达式组。使用这个函数非常便 捷,可以改善 Maple 程序的效率。为了创建表达式组 f(m),f(m+1),……,f(n),你需要键 入:
其中 f 代表一个包含有下标 i 的表达式。 在下面这个例子中,f 是 i^2。我们可以使用 seq()函数创建表达式组 f(2),f(3),f(4)。
12
要想得到函数值,输入函数名和变量值。用 f(x)的形式计算,f 是函数名,x 是设置的变量 值。
定义多变量函数: 多变量函数的定义和单变量函数定义非常相似。唯一的不同是,多变量函数有更多独立变量 。 在下面的例子中,函数名士 f,有两个独立变量 x 和 y。假如,我们要定义这样一个多变量 函数 f(x,y)=x^2+y^2
注意,每行命令后的冒号是很重要的。如果你键入的是分号,你会看到在执行 plot()命令个图一起显示。
我们得到了与上面例子相同的图。 制作动画 动画师按顺序显示的一系列帧。在 Maple 中有两个基本的动画命令。它们是 animate 和 animate3d。在使用它们之前,我们必须先通过 with(plot)命令加载绘图工具包。 二维动画: 使用 animate()来创建二维动画。它有一个帧变量 t 和一个独立变量 x。帧变量 t 在每一帧都 变化,独立变量 x 定义函数变量在每一帧的范围。
1
本稿由 哈尔滨工程大学船舶工程学院 张崇伟 制作,免费学术共享,禁止用于商业目的。
使用“:=”定义表达式 Maple 中的绝大多数计算中都要定义表达式。表达式是由数字、变量和算术符号组成的。为 了定义一个表达式,需要按如下规定定义表达式名,(表达式名):=( 表 达 式 形 式 )。 这 样 , 任何你想使用这个表达式的时候,你可以直接使用表达式名,而不用重复键入具体的表达式 形式。下面的例子展示了定义表达式 x^2+x+2,它的表达式名为“expression1”:
11
本稿由 哈尔滨工程大学船舶工程学院 张崇伟 制作,免费学术共享,禁止用于商业目的。
另一种绘制多图的方式是使用 plots 工具包中的显示命令。Maple 工具包为 Maple 提供了外 部函数。通过 with 命令使用工具包。 首先加载工具包: 然后命名要显示的图。在这个例子中,我们命名两个图为 graph1 和 graph2
我们会得到与前面例子相同的结果。 绘制数据
9
本稿由 哈尔滨工程大学船舶工程学院 张崇伟 制作,免费学术共享,禁止用于商业目的。
Plot()函数也可被用来绘制数据系列:首先将数据定义一个数列,然后绘制数列。 在下面的例子中,我们定义一个名为 list 的数列,数列通过表达式组来定义 [3,4],[5,6],[7,8],[9,10]。表达式组中的每一项也是一个数列,对应于点的坐标。我们然后用 plot 命令绘制这列数据。如果你想指定点的形式,你也可以增加一个选项变量。Plot()函数有三 种形式:点、线、面。默认的形式是线。在这个例子中,我们制定图形的形式是点。
3、数值计算
Maple 可以做浮点型、整型和复数型的计算。 浮点型数值计算 Maple 的一个重要的性质就是做准确数学计算的能力:在浮点近似中有效数字不会减少。这 样舍入误差就可被避免。 例子:五舍入误差计算
如果需要得到近似值,可使用 evalf 函数将准确的结果转化为近似浮点数解。 例子:把准确结果转化成近似浮点数解
函数
7
本稿由 哈尔滨工程大学船舶工程学院 张崇伟 制作,免费学术共享,禁止用于商业目的。
定义单变量函数: 对于一个函数,给出一系列变量值,只能返回一个值。在 Maple 里,我们使用箭头符号“->”, 一个连字符跟着一个右角括号,定义函数。可通过“:=”给函数指定一个函数名,用同样的 方式,你可以定义一个表达式。在下面例子中,函数被命名为 f,并且只有一个变量 x。在 函数 f 中,f(x)=x^5+6x
要想得到函数值,输入函数名和变量值。下面的例子展示函数 f(x,y)在 x=1,y=1 时的值。
5、画图
Maple 有强大的绘图能力,它可以制作多维图和动画。 绘制二维图 函数 plot()可以产生二维图,它是 Maple 中使用最多的绘图函数。它可以绘制表达式、函数 和数据。 绘制表达式: 当用 Maple 绘制表达式时,必须要指定变量的范围。使用关键词 plot,然后把表达式括在里 面,同时把变量范围放在小括号里。
但是,solve()函数并不能解决全部问题。数学上,一组包含有五次或更高次多项式的方程组 并不是都有考虑舍入误差的解。在这种情况下,Maple 如果能找到一个解,它就会试着求解 。 fsole()函数是 solve 的数值等效函数。它可以使用牛顿方法得到方程组的浮点近似解。如果 一组方程包含多项式,那么它会给出所有实数解的近似值。对于非多项式方程组,通常只给 出一个解。
集合是一个用大括号括起来的表达式组。它不能保持表达式组的顺序和重复项。这样 Maple 中的集合与数学中集合的概念就相同了。比如,我们使用不同的表达式组定义 set1 和 set2, 但由于集合中各项没有先后顺序,并且不能重复,因此导致最后的两个集合是相同的。
3
本稿由 哈尔滨工程大学船舶工程学院 张崇伟 制作,免费学术共享,禁止用于商业目的。
增加的按钮。单击新按钮,你可以更改绘图属性,你也可以单击鼠标右键,在 export 菜单中 选择一种图片格式将图导出。 绘制函数: 在绘制函数之前,需要先定义函数。如果函数 f(x,y)包含了 x,y 变量,那么也应该给出 x 和 y 的变化范围。
绘制多图 我们经常喜欢同时显示多个图。其中一种方法是,给绘图函数一列要绘制的表达式组或函数 。 先将表达式或函数列出来,然后列出范围。如果你想用不同颜色来表示不同的表达式,你可 以使用关键词“color”来按对应顺序定义图形颜色。
8
本稿由 哈尔滨工程大学船舶工程学院 张崇伟 制作,免费学术共享,禁止用于商业目的。
当图形显示的时候,在图上点击鼠标左键,你会看到一个环绕图形的框,以及工具条上的新 按钮。你可以通过点击这些新按钮调整图形属性。想要看到图上任意一点的坐标,移动鼠标 指针,指向这一点。该点的坐标值会在工具条上显示。另外,你可以导出所画的图,点击鼠 标右键选择 gif 或 jpg 格式。 绘制函数 绘制函数的方法与绘制表达式很相似。主要的不同是你需要在 plot()之前定义函数。就是说, 你需要先定义函数,然后用 plot()命令绘制函数。要把函数名和变量范围放到 plot()中。
或者,你可以把浮点数包含在表达式中,这样它会自动是 Maple 计算得到一个近似浮点型解 。
整数计算 Maple 可以处理任意大的整数。如果一个数太大,导致它一行的长度比屏幕还要长,Maple 会在一行结束处使用一个“\”符号表示数字还要继续。
4
本稿由 哈尔滨工程大学船舶工程学院 张崇伟 制作,免费学术共享,禁止用于商业目的。
方程 定义方程: 方程通过“=”定义,而“:=”是用来定义表达式的。 例子:定义方程 x=y+2
解方程: solve()函数是最常用的方程求解函数之一。它可以被用来求解方程组,并给出带有有效数字 的方程的准确解。为了使用 solve()函数,你必须提供两个部分内容:第一,你要解的方程组 ; 第二,你想求解的变量。如果你要求解的方程多余一个,你需要将方程和变量定义成集合的 形式。
展开表达式 expand 函数可以展开含有相乘项的表达式。展开并不是总会使得原表达式更复杂。相反, 在很多情况下,它可以的到简化解。
分解因式 这个函数是展开函数的逆运算,它可以将多项式因式分解。
6
本稿由 哈尔滨工程大学船舶工程学院 张崇伟 制作,免费学术共享,禁止用于商业目的。
通分约分 如果表达式包含分数,那么有必要通分约分重新构造一个分数。normal 函数可以实现这一 过程。
绘制三维图 绘制三维图的函数 plot3d()是另一个基本的绘图函数。它既可以用来绘制表达式,又可用来 绘制函数。在 plot3d 中有两个变量域,你需要同时定义两个变量的变换范围。 绘制表达式:
当这个图形显现出来的时候,在图上点击鼠标左键,你会看到图周围出现的方框和工具条上
10
本稿由 哈尔滨工程大学船舶工程学院 张崇伟 制作,免费学术共享,禁止用于商业目的。
数列和集合 数列和集合常被用于函数的变量。表达式组包含于数组和组合中。数组是一个用中括号括起 来的表达式组。数列保证了一个表达式组中各项的顺序和重复项。在下面的例子中,我们用 中括号把 1,1,3,5,5 这个表达式组括起来,可以创建一个数列,[1,1,3,5,5]。我 们将它定义为 list1。我们可以看到 list1 保持了表达式组的顺序和重复项。
Maple 的算术符号 Maple 的算术符号如下定义:
Maple 算术符号的优先顺序与数学中算术符号的优先顺序是一样的。小括号用于运算分组。 比如(89-9)*2 先计算 89-9,然后进行平方运算;如果没有小括号 89-9*2 会先计算 9*2,然 后计算减法 89-9*2. 引用上一步计算结果和添加注释 在 Maple 中百分号%用于引用上一步计算结果。特别定义下面几个操作符: % 上一步结果 %% 倒数第二步结果 %%% 倒数第三步结果 下面的例子将展示怎样利用百分号简化计算过程,在每一步我们都会利用“#”插 入 注 释 : “#”后所有的内容都被 Maple 认为是注释内容。
怎样处理错误 如果你不小心在命令行中输入了一个错误的符号,并按了回车键,Maple 会回复“syntax error”。有两种方法改正你的错误。你可以返回这一行修改 Maple 命令,然后重新执行这行 命令;当 Maple 重新执行这行命令后,结果会随之更改。你也可以输入“restart”来清除所 有旧的信息,然后重新输入正确的 Maple 命令。
2
本稿由 哈尔滨工程大学船舶工程学院 张崇伟 制作,免费学术共享,禁止用于商业目的。
相关文档
最新文档