Maple基础教程(修订稿)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Maple基础
一 Maple的基本运算
1数值计算问题
在应用Maple做算术运算时,只需将Maple当作一个“计算器”使用,所不同的是命令结束时需加
“;”或“:”
J ■■
在Maple中,主要的算术运算符有“ + ”(加)、“-(减卜“ * ” (乘卜“/”(除)以及“八”(乘方或幕,或记为**),值得注意的是,“A”的表达式只能有两个操作数,换言之,a A b A c是错误的,而“+”或“ *”的任意表达式可以有两个或者两个以上的操作数
2.1.1有理数运算
作为一个符号代数系统,Maple可以绝对避免算术运算的舍入误差.如果要求出两个整数运算的近似值时,只需在任意一个整数后加“.”(或“ .0”),或者利用“ evalf”命令把表达式转换成浮点形式,默认浮点数位是10 (即:Digits:=10,据此可任意改变浮点数位,如Digits:=20).
> 123456789/987654321;
13717421
109739369
> evalf(%);
.1249999989
> big_number:=3A(3A3);
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(2A(2A4)+1);
true
3) 确定第i个素数(ithprime)
若记第1个素数为2,判断第i个素数的命令格式:ithprime(i);
4) 一组数的最大值(max)/最小值(min)
命令格式:max(x1,x2,…,xn); #求xg,…,x n中的最大值
min(x1,x2,…,xn); #求 X1,X2,…,X n 中的最小值
5) 随机数生成器(rand)
命令格式:
rand( ); #随机返回一个12位数字的非负整数
rand(a..b); #调用rand(a..b)返回一个程序,它在调用时生成一个在范围 [a, b]内的随机数
> ran d();
427419669081
> myproc:=ra nd(1..2002):
> myproc();
> myproc(); 1916
1204
注意,rand(n)是rand(0..n-1)的简写形式.
2.1.2复数运算
复数是Maple中的基本数据类型.虚数单位i在Maple中用I表示可以用Re( )、Im( )、conjugate()
和argument )等函数分别计算实数的实部、虚部、共轭复数和幅角主值等运算.试作如下实验:
> complex_number:=(1+2*l)*(3+4*l);
complex, nu mber := -5+101
> Re(%);lm(%%);conjugate(%%%);argume nt(complex_ nu mber);
-5
10
-5-10 1
-arcta n(2) 二
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的任意表达式.
2
> product(k A2,k=1..10); #计算k 关于 1..10 的连乘
13168189440000
> product(kA2,k); #计算k2的不确定乘积
> product(a[k],k=0..5);
■(k)2 #计算a i(i=0..5)的连乘
a
0 a
1
a
2
a
3
a
4
a
5
> Product(n+k,k=0..m)=product(n+k,k=0..m); #计算(n+k)的连乘,并写出其惰性表达式
m
n
k =0
(n kH
;(n m 1)
> product(k,k=RootOf(xA3-2));
#计算 3
x -2的三个根的乘积
2) 指数函数 计算指数函数exp 关于x
3) 确定求和与不确定求和 命令格式:sum(f,k);
sum(f,k=m.. n);
sum(f,k=alpha); sum(f,k=expr);
其中,f —任意表达式,k —乘积指数名称,m,n —整数或任意表达式 含k 的表达式.
Sum(kA2,k=1.. n)=sum(kA2,k=1.. n);
的表达式的命令格式为:exp(x); sum
,alpha —代数数 RootOf, expr —不
' k 2;" 1)3-;(n 1)2
k -1
3 2
Sum(1/k!,k=0..i nfini ty)=sum(1/k!,k=0..i nfin ity);
处1
' | =e k! -e k =0 ©
sum(a[k]*x[k],k=0.. n);
n
z
k =0
a k x
k
sum(k/(k+1),k=RootOf(x A 2-3));
3)三角函数/双曲函数
命令格式: sin(x); cos(x); tan(x); sin h(x); cosh(x); tan h(x); 其中,x 为任意表达式. > Sin(Pi)=sin(Pi);
cot(x);
coth(x);
sec(x);
sech(x); csc(x);
csch(x);
Sin (二)
=0 4) 反三角函数/反双曲函数 命令格式:arcsin(x);
arccos(x);
arcsin h(x); arccosh(x); arcta n( y,x);
其中,x, y 为表达式.反三角函数/反双曲函数的参数必须按弧度计算 > arcsinh(l);
arcta n( x); arccot(x); arcta nh(x); arccoth(x);
arcsec(x); arccsc(x); arcsech(x); arccsch(x);
> cos(arcsin(x));
ln(1 2)
〕(n)