Maple入门教程讲解
Maple入门教程A7- 数据处理
Part 7:数据处理西希安工程模拟软件(上海)有限公司,20087.0 介绍本节内容:数据处理,学习如何输入和输出数据,以及使用Maple的统计、可视化、和数据分 析工具。
7.1 输入和输出数据使用交互式工具或命令输入和输出数据。
使用Maple,您可以输入许多格式的数据,以及输出 数据到文件中。
输入数据操作步骤 使用输入数据助手 输入数据文件,支持的格式包括 Excel, MATLAB, 图片,声音,矩 阵,分隔符文件。
例子:从【工具 -> 分析助手】菜 单,选择 输入数据... 读入数据文件 ExcelData.xls(这个 文件位于Maple安装目录下 data/portal 子文件夹)。
选择Excel格式。
依次点击【下一步】,【下一步 】,【下一步】。
您可以添加一个 名称指向该数据,最后点击【完成 】。
输入的数据是数组格式。
现在,使用图形生成器绘制数据对 结果21应的图形。
鼠标右键点击输入的数据,从弹出 的关联菜单中选择【 Plots>Plot Builder】。
点击【 Plot】。
012使用 ExcelTools 程序包 您也可以使用 ExcelTools 程序包中 的命令输入和输出Excel格式的数 据。
例子: 输入Excel文件 ExcelData.xls. 如果文件没有位于当前的文件夹 下,您需要输入数据文件的完整路 径。
在这里,数据文件位于Maple安装 目录下面的 data/portal 子文件夹 中。
命令 kernelopts(datadir) 返回 数据文件夹的路径,然后用 cat 命 令将两个字符串串联组成数据文件 的完整路径。
60 返回和检查第一行数据。
返回数组中元素的个数。
"C:\Program Files\Maple 13\data/portal/ExcelData.xls" (2.1.1)(2.1.2)(2.1.3) (2.1.4)(2.1.4)使用 plots[pointplot] 画出数据的图 形。
Maple 入门教程
Quick Help Details
。求值多项式在 x = 10,求输出
Part 2:整合思想
西希安工程模拟软件(上海)有限公司,2008
2.0 介绍
第二部分:整合你的思想,你将学习使用一些基本工具创建出版文件,以及在文字中使用 排版数学。此外,你将使用Maple符号和数值求解方程,了解Maple中赋值语句、表达式、 函数之间的区别。
例子:键入 "x+5-2" 然后按 [Ctrl][=]。
组合文字和数学
例子: 1. 输入一个简单的计算。从表达式面板中
选择积分模板
。 用被积函数代替
。按 [Tab] 键移到下一个占位符,用 替 换。
2. 使用 [Ctrl][=] 积分计算。
3. 将光标放置在表达式的左边,切换到文
字模式
,或者按 [F5]
是一
例子:输入上面的方程(使用单引号作为 微分符号),为了验证它是一个微分方 程,从关联菜单中选择 Solve DE 求解。
标签 无论你何时使用【回车键】获得一个计算 结果,工作表将自动给出一个公式标签。 如果想引用前面的计算结果,使用 C t r l + L 并输入标签数字。
例子:将上面的结果 标签。
操作步骤
结果
求精确解和数值近似 Maple 计算精确结果,也就是说,分数计算 时保持分数形式,e 和 在整个计算过程中 保留为符号形式。这些将减少在多步计算 中由于近似产生的误差。
例子:在新的一行,输入 1/2 + 1/3。 我们注意到光标 / 自动移到分母的位置。按 回车键得到计算结果。
Maple也可以计算数值近似解。 例子:鼠标右击上面的结果表达式,选择 关联菜单的Approximate,精度位选择 5。
Maple入门教程Part2_整合思想
Part 2:整合思想
西希安工程模拟软件(上海)有限公司,2008
2.0 介绍
第二部分:整合你的思想,你将学习使用一些基本工具创建出版文件,以及在文字中使用排版数学。
此外,你将使用Maple符号和数值求解方程,了解Maple中赋值语句、表达式、函数之间的区别。
2.1 组合文字和数学
在Maple中,你可以在文件中任意组合文字和数学,创建专业的技术文件。
,重新计算。
提示:快捷键 【F5】用于切换数学/文字输入。
在数学模式下,光标显示为斜体,周围有虚线框。
在文字模式下,光标显示为垂直线。
2.2 求解方程
Maple 能够求方程和不等式中未知量的值。
maple入门
数的进制转换
convert 函数 binary二进制 decimal 十进制 octal 八进制 hex十六进制
小数划为分数运算
convert(x,rational) 将实数(有理数)x转换为 精确分数 convert(x,rational,n) 将实数(无理数)x转换 为分子与分母非零数码的个数和为n的分数
Maple入门 Maple入门
1.Maple概述 Maple概述
什么是Maple, 怎么学习Maple? Maple软件是加拿大Waterloo大学在1980年开始 开发,到现在最新的版本是Maple11, Maple具有强 大的数值计算能力,图形处理能力,特别是符号 计算能力. 常用的数学软件除Maple外,有Matlab等, 统计 软件: SAS,SPSS,运筹学软件:Lingo, WINQSB.
ifactor 求因子 iquo 求商 iquo(a,b,'r') irem 余数 irem(a,b,'q') isqrt 近似的平方跟整数
sqrt(x) 平方根函数 exp(x), ln(x) 指数函数和自然对数函数 log[b](x) 以b为底的对数函数 Abs(x) 绝对值函数 round(x) 最接近x的整数rand ()12位的随机数 Max(a,b,c,…),min(a,b,c,…) a, b, c, … 中的最 大(小)数 floor(x) 不大于x的最大整数 ceil(x) 不小于x的最小整数 trunc(x) x靠近0的整数部分 frac(x) x的分数部分(=x-trunc(x))signum(x)符号函数
1.5.1 fprintf
fprintf函数是用来输出到文件中,在使用该函数前,先用 fopen打开一个文件,再使用fprintf函数输出到fopen打开的文件 中,最后用fclose关闭文件. 格式:fopen(filename,mode); 其中,mode分为:WRITE和APPEND fprintf(fd,format,vars); 其中fd,为fopen打开的文件,format输出的格式,vars为变量组 fclose(fd); 演示
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教程 - 第4章 - 方程求解
数值求解方法时收敛, 我们可以用它限制区间的最大长度:
> realroot(%%,1/1000);
1195 1024
,
299 256
,
3313 1024 ,
1657 512
,
-633 512
,
-1265 1024
求解方程或方程组的整数解时使用函数 isolve, 它常常被用来求解不定方程. 例如 著名的“百钱买百鸡”问题♣的求解过程为:
> solve(a+ln(x-3)-ln(x));
- 100 -
{ x = x, a = −ln( x − 3 ) + ln( x ) }
很多情况下, 我们知道一类方程或方程组有解, 但却没有解决这类方程的一般解法, 或者说没有解析解. 比如, 一般的五次或五次以上的多项式, 其解不能写成解析表达式. Maple 具备用所有一般算法尝试所遇到的问题, 在找不到解的时候, Maple 会用 RootOf 给出形式解.
=
x6,
2
x7
=
x7
}
> nops({solve(eqns)}); 128
但是, 有时候, Maple 甚至对一些“显而易见”的结果置之不理, 如:
> solve(sin(x)=3*x/Pi,x); RootOf( 3 _Z − sin( _Z ) π )
此方程的解为 ± π , 0 , 但 Maple 却对这个超越方程无能为力, 即便使用 allvalues 6
1.2.3 递归方程的求解 在 Maple 中, 可以求解有限差分方程(也称递归方程), 所需调用的函数是 rsolve, 该
函数使用的是一些比较通用的方法, 例如产生函数法、z 变换法以及一些基于变量替换 和特征方程的方法. 作为例子, 求解 Fibonacci 多项式:
数学软件Maple使用教程
数学软件Maple使⽤教程数学实验数学软件Maple使⽤教程序⾔⼀.什么是数学实验?我们都熟悉物理实验和化学实验,就是利⽤仪器设备,通过实验来了解物理现象、化学物质等的特性。
同样,数学实验也是要通过实验来了解数学问题的特性并解决对应的数学问题。
过去,因为实验设备和实验⼿段的问题,⽆法解决数学上的实验问题,所以,⼀直没有听说过数学实验这个词。
随着计算机的飞速发展,计算速度越来越快,软件功能也越来越强,许多数学问题都可以由计算机代替完成,也为我们⽤实验解决数学问题提供了可能。
数学实验就是以计算机为仪器,以软件为载体,通过实验解决实际中的数学问题。
⼆.常⽤的数学软件⽬前较流⾏的数学软件主要有四种:1.MathACD其优点是许多数学符号键盘化,通过键盘可以直接输⼊数学符号,在教学⽅⾯使⽤起来⾮常⽅便。
缺点是⽬前仅能作数值运算,符号运算功能较弱,输出界⾯不好。
2.Matlab优点是⼤型矩阵运算功能⾮常强,构造个⼈适⽤函数⽅便很⽅便,因此,⾮常适合⼤型⼯程技术中使⽤。
缺点是输出界⾯稍差,符号运算功能也显得弱⼀些。
不过,在这个公司购买了Maple公司的内核以后,符号运算功能已经得到了⼤⼤的加强。
再⼀个缺点就是这个软件太⼤,按现在流⾏的版本5.2,⾃⾝有400多兆,占硬盘空间近1个G,⼀般稍早些的计算机都安装部下。
我们这次没⽤它主要就是这个原因。
3.Mathematica其优点是结构严谨,输出界⾯好,计算功能强,是专业科学技术⼈员所喜爱的数学软件。
缺点是软件本⾝较⼤,⽬前流⾏的3.0版本有200兆;另⼀个缺点就是命令太长,每⼀个命令都要输⼊英⽂全名,因此,需要英语⽔平较⾼。
4.Maple优点是输出界⾯很好,与我们平常书写⼏乎⼀致;还有⼀个最⼤的优点就是它的符号运算功能特别强,这对于既要作数值运算,⼜要作符号运算时就显得⾮常⽅便了。
除此之外,其软件只有30兆,安装也很⽅便(直接拷贝就可以⽤)。
所以,我们把它放到学校⽹上直接调⽤。
Maple入门教程Part4_图形和动画
Part 4:图形和动画西希安工程模拟软件(上海)有限公司,20084.0 介绍第四部分:图形和动画,你将创建 2-D 和 3-D 图形。
你将学习如何使用关联菜单、命令、或图形生成器创建不同类型的图形和动画,这些图形和动画对于探索数学非常有用,包括隐式图形、参数图形、向量场图形、和几何对象的图形等。
最后,通过两个应用程序,你将学习如何创建复合的动画,用于物理系统的设计和模拟。
4.1 二维和三维图形Maple 可以生成方程和表达式的 2-D 和 3-D 图形。
显示两条曲线。
x5101520251233-D 图形创建 3-D 图形。
例子:输入关于 x 和 y 的表达式(例如)。
鼠标右击表达式,选择 Plots >3-D Plots > x,y.例子:按住鼠标左键并移动鼠标,旋转图形。
例子:选择关联菜单中的操作器移动和缩放图形。
提示:你也可以从窗口上侧的工具栏中选择不同的操作方式。
图形属性你可以通过不同的方式修改图形的属性。
图形的关联菜单中包含多种对应的属性,你可以通过鼠标选取改变图形选项。
你也可以发现2-D 和 3-D图形对应的关联菜单是不一样的。
例子:右击图形弹出关联菜单,选取透明度 ,改变图形的透明度。
图形选项也可以通过选择窗口上方的工具条图标改变。
例子:点击图形,选择菜单图形 > 坐标轴> 立方体框。
绘图向导Plotting Guide 方便你快速发现需要的图形类型。
进入绘图向导的方式是从帮助菜单>Manuals, Resources, and more>PlottingGuide4.2 使用图形生成器操作步骤结果图形生成器使用Maple中内置的图形生成器能够快速创建图形。
例子:输入你想要绘图的表达式。
从关联菜单中选取 Plots > Plot Builder,弹出图形生成器窗口,选择你需要的图形类型,添加标题,设置选项,等等,快速完成所有的操作。
右边的例子显示如何使用图形标题,坐标轴,和带有等高线的面图。
Maple入门手册(1)
其中 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”:
Maple基础教程(修订稿)
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;13717421109739369> 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的余数,并将商赋给qiquo(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);true3) 确定第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(); 19161204注意,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);-510-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)的连乘a0 a1a2a3a4a5> Product(n+k,k=0..m)=product(n+k,k=0..m); #计算(n+k)的连乘,并写出其惰性表达式mnk =0(n kH;(n m 1)> product(k,k=RootOf(xA3-2));#计算 3x -2的三个根的乘积2) 指数函数 计算指数函数exp 关于x3) 确定求和与不确定求和 命令格式: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)2k -13 2Sum(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);nzk =0a k xksum(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)> f(1,2);> f:=(x,y)->a*x*y*exp(xA2+yA2);(X2+y 2) f := (x, y ) —■ a x y e另一个定义函数的命令是 un apply,其作用是从一个表达式建立一个算子或函数 命令格式为:f:=unapply(expr, x);命令格式为:f:=unapply(expr, x, y,…); > f:=u napply(xA4+xA3+xA2+x+1,x);432.f := X —; x x x x 15)对数函数 命令格式:In(x);log[a] (x);Iog10(x);一般地,在In(x)中要求#自然对数 #一般对数 #常用对数x>0.但对于复数型表达式x,有:In(x)=ln(abs(x)) I * argument(x)(其中,-二:::argument(x)空愿)> Iog10(1000000);ln (1000000 )ln( 10)> simplify(%); #化简上式 222函数的定义试看下面一个例子: > f(x):=a*x A 2+b*x+c;---并不是函数,而是一个表达式2f(x) := a x b x c> f(x),f(O),f(1/a);由上述结果可以看出,用赋值方法定义的f(x)是一个表达式而不是一个函数 在Maple 中,要真正完成一个函数的定义,需要用算子(也称箭头操作符): > f:=x->a*xA2+b*x+c;f := x — a x 2b x c> f(x),f(0),f(1/a);> f:=(x,y)->xA2+yA2;f := (x, y) —; x 2y 2 2a xb x c, f( 0), f借助函数piecewise 可以生成简单分段函数: > abs(x)=piecewise(x>O,x,x=O,O,x<O,-x);x 0 :: x | x | = « 0 x = 0-xX £ 0清除函数的定义用命令 un assig n. > un assig n(f); > f(1,1);f(1,1)定义了一个函数后,就可以使用op 或nops 指令查看有关函数中操作数的信息 .nops(expr),函数op的主要功能是,其命令格式为: op(expr); op(i, expr); op(i .. j, expr); nops(expr);expr:=6+cos(x)+s in( x)*cos(x)A 2;2expr := 6 cos( x) sin (x)cos(x)> op(expr);26, cos(x), sin(x) cos(x)> no ps(expr);32.2.3 Maple 中的常量与变量名为了解决数学问题,一些常用的数学常数是必要的.Maple 系统中已经存储了一些数学常数在表达式序歹U constants 中: > constants;false,,::, true, Catalan, FAIL,二为了方便使用,现将上述常数的具体含义列示如下:2.2.4函数类型转换实现函数类型转换的命令是convert .命令格式:convert(expr, form);#把数学式 expr 转换成 form 的形式#获取表达式的操作数#取出expr 里第i 个操作数, #expr 的第i 到第j 个操作数 #返回操作数的个数convert(expr, form, x); #指定变量 x,此时 form 只适于 exp、sin、cosconvert指令所提供的三角函数、指数与函数的转换共有exp等7种:(1) exp:将三角函数转换成指数(2) expln:把数学式转换成指数与对数⑶expsincos分别把三角函数与双曲函数转换成sin、cos与指数的形式(4) In:将反三角函数转换成对数(5) sincos将三角函数转换成sin与cos的形式,而把双曲函数转换成 sinh与cosh的形式⑹tan:将三角函数转换成tan的形式(7) trig :将指数函数转换成三角函数与对数函数> convert(sinh(x),exp);#将sinh(x)转换成exp类型1 x 1 1 e x -2 2 e x2.2.5函数的映射一map指令在符号运算的世界里,映射指令map可以说是相当重要的一个指令,它可以把函数或指令映射到这些结构里的元素,而不破坏整个结构的完整性 .命令格式为map(f, expr); map(f, expr, a); #将函数f映射到expr的每个操作数#将函数f映射到expr的每个操作数,并取出a为f的第2个自变量map(f, expr, a1, a2,…,an);井将函数f映射到expr的每个操作数,并取al〜an为f的第2〜n+1个自变量map2(f, a1, expr, a2,…,an); #以al为第1个自变量,expr的操作数为第2个自变量,a2为第3个自变量…,an为第n+1个自变量来映射函数f > f:=x->sqrt(x)+x A2;: 2f := x 、 x x> map(f,[a,b,c]);[a a2,b b2, c c2]> map(h, [a,b,c],x,y);[h(a,x,y),h(b,x,y),h(c,x,y)]3求值3.1赋值在Maple中,不需要申明变量的类型,甚至在使用变量前不需要将它赋值,这是Maple与其它高级程序设计语言不同的一点,也正是Maple符号演算的魅力所在,这个特性是由Maple与众不同的赋值方法决定的.为了理解其赋值机制,先看下面的例子.> p:=9*x A3-37*x A2+47*x-19;3 2p := 9 x -37 x 47 x - 19> roots(p);> subs(x=19/9,p);3.2变量代换subs ( var = repacedment expression;调用的结果是将表达式 expression中所有变量var出现的地方替换成replacement. > f:=xA2+exp(xA3)-8;2 (x3 )f := x e 「8> subs(x=1,f);-7 + e如果需要计算,必须调用求值函数evalf.如:> evalf(%);5.> subs(x=y,y=z,x A2*y); (顺序替换)3Z> subs({x=y,y=z},xA2*y); (同步替换)2y z> 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 + 3 a> subs({p=q,q=p},f(p,q)); (互换)f(q, p)3.3求值规则1) 对表达式求值命令格式:eval(e, x=a); #求表达式 e在x=a处的值eval(e, eqns); #对方程或方程组 eqns求值eval(e); #表达式e求值到上面两层eval(x, n); #给出求值名称的第n层求值> p:=xA5+xA4+xA3+xA2+x+73;5 丄4丄 3 丄2丄丄_ _p := x x x x x 73> eval(p,x=7);19680当表达式在异常点处求值时,eval会给一个错误消息.如下:> eval(s in( x)/x,x=0);Error, numeric exception: division by zero2) 在代数数(或者函数)域求值命令格式:evala(expr); #对表达式或者未求值函数求值evala(expr,op ts); #求值时可加选项(opts)在Maple中,代数数用函数RootOf()来表示.如3作为一个代数数,可以表示为:> alpha:=RootOf(xA2-3,x);2口:= RootOf (_Z - 3)> simplify(alphaA2);3在Maple内部,代数数不再表示为根式,而在化简时,仅仅利用到〉2= 3这样的事实.这里,Maple用到一个内部变量 _Z.再看下面一个例子,其中alias是缩写的定义函数,而参数lenstra指lenstra 椭圆曲线方法:> alias (al pha=RootOf(x A2-2)):> evala(factor(xA2-2,alpha),le nstra);(x 亠 *) (x -:)> evala(quo(xA2-x+3,x-alpha,x,'r'));亠:亠x> r;3 - /> simplify(%);5 -圧3) 在复数域上符号求值操纵复数型表达式并将其分离给出expr的实部和虚部的函数为 evalc,命令格式为:evalc(expr);evalc假定所有变量表示数值,且实数变量的函数是实数类型.其输出规范形式为:expr1+l*expr2.> evalc(si n(6+8*1));sin(6) cosh(8) +1 cos(6) sinh(8)> evalc(f(exp(alpha+x*l)));f( e cos( x) I e: sin(x))4) 使用浮点算法求值命令格式为:evalf(expr, n);> evalf(Pi,50);3.1415926535897932384626433832795028841971693993751> evalf(si n( 3+4*I));3.853738038 -27.01681326 I5) 对惰性函数求值把只用表达式表示而暂不求值的函数称为惰性函数,对任意代数表达式f求值的命令格式为:value(f); > F:=ln t(exp(x),x);J*F := | e x dxJ> value(%);xe> f:=Limit(s in (x)/x,x=0);sin(x)f := lim -----X—.0 x> value(%);1另外,将惰性函数的大写字母改为小写字母亦即可求值.如下例:> Limit(si n( x)/x,x=0)=limit(si n(x)/x,x=0);sin(x),lim 1X r04 数据结构Maple 中有许多内建的与 FORTRAN 、 C 或 Pascal 不同的数据结构 . 主要的数据结构有序列(sequenee卜列表(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 := 1,4, 9,16, 25> t:=sin,com,tan,cot;t := sin, com, tan, cot一个序列也可以由若干个序列复合而成, 如:> s:=1,(4,9,16),25;s := 1,4, 9,16, 25> s,s;1,4, 9, 16, 25, 1, 4, 9,16,25而符号 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 A2,i=1..10);1,4,9, 16, 25, 36, 49, 64, 81, 100> seq(iA3,i=x+y+z);333x ,y ,z获得一个序列中的特定元素选用操作符 [ ], 如:> seq(ithprime(i),i=1..20);2,3, 5,7, 11, 13, 17, 19, 23, 29,31,37,41,43, 47, 53,59,61,67,71> %[6],%[17];13, 594.2.2列表列表(list),就是把对象(元素)放在一起的一种数据结构,一般地,用方括号[]表示列表•如下例:> I:=[x,1,1-Z,x];l := [X, 1, 1 - z, x]> whattype(%);list4.2.3集合集合(set)也是把对象(元素)放在一起的数据结构,一般地,用花括号表示集合.> s:={x,1,1-z,x};s := { 1, X, 1 -z}> whattype(%);set空集定义为{ }.Maple中集合的基本运算有交 (intersect)、并(union)、差(minus):> A:={seq(i A3,i=1..10)};B:={seq(i A2,i=1..10)};A := { 1, 8, 27, 64, 125, 216, 343, 512, 729, 1000}B := { 1,4, 9, 16,25,36,49,64, 81, 100}> A in tersect B;{1,64}4.3数组和表在Maple中,数组(array)由命令array产生,其下标变量(index)可以自由指定.下标由1开始的一维数组称为向量(vector),二维以上的数组称为矩阵(matrix).数组的元素按顺序排列,任意存取一数组的元素要比列表或序列快的多•区分一个数据结构是数组还是列表要用“type”命令.表(table)在建立时使用圆括号,变量能对一个表赋值,但一个在存取在算子中的未赋值变量会被自动地假定是表,表的索引可以成为任意Maple表达式.表中元素的次序不是固定的.5 Maple高级输入与输出操作生成LATEXMaple可以把它的表达式转换成LATEX,使用latex命令即可:> latex(xA2+yA2=zA2);{x}A{2}+{y}A{2}={z}A{2}还可以将转换结果存为一个文件(LatexFile):> latex(xA2 + yA2 = zA2, LatexFile);再如下例:> latex(I nt(1/(xA2+1),x)=i nt(1/(xA2+1),x));\i nt \! \left( {x}A{2}+1 \right) A{-1}{dx}=\arcta n\left( x \right)微积分运算1函数的极限和连续1.1函数和表达式的极限 lim f (x)命令格式为:limit(f,x=a);求lim f (x)时的命令格式为 X — j a ■ 的命令格式为limit(f, x=a, left);请看下述例子: Limit((1+1/x)^x,x=infinity)=limit((1+1/x)Ax,x=infin ity); x f 1 > 1 +— I X 丿 limx - ■::Limit((x A n-1)/(x-1),x=1)=limit((xAn-1)/(x-1),x=1); lim x >1n x - 1 -1 =n Limit(xAx,x=0,right)=limit(xAx,x=0,righ t); lim X r 0 +limit(a*x*y-b/(x*y),{x=1,y=1});limit(xA2*(1+x)-yA2*((1-y))/(xA2+yA2),{x=0,y=0});un defi ned 下例就是化二重极限为二次极限而得正确结果: limit((si n(x+y)/(si n(x)*sin(y)),{x=Pi/4,y=Pi/4}));■/ sin(x +y){ sin(x)sin(y)' xlim itlimit(limit(si n(x+y)/(si n(x)*si n(y)),x=Pi/4),y=Pi/4); 2 1.2函数的连续性limit(f, x=a, right); 求 lim f (x)时x _1<:}1.2.1连续 在Maple 中可以用函数iscont 来判断一个函数或者表达式在区间上的连续性 .命令格式为: isc on t(expr, x=a..b, ' colsed '/'ope ned ); 其中,closed 表示闭区间,而opened 表示开区间(此为系统默认状态). 如果表达式在区间上连续,iscont 返回true,否则返回false,当iscont 无法确定连续性时返回 FAIL. 另外,iscont 函数假定表达式中的所有符号都是实数型 .颇为有趣的是,当给定区间[a,b ] (a>b)时,iscont 会自动按[b,a ]处理. > isco nt(1/x,x=1..2); true > isc on t(1/x,x=-1..1,closed); false> iscont(1/(x+a),x=0..1);1.2.2间断函数discont 可以寻找函数或表达式在实数域的间断点 ,当间断点周期或成对出现时,Maple 会利用 一些辅助变量予以表达,比如,_Zn ~(任意整数)、_NZn ~(任意自然数)和Bn ~(一个二进制数,0或者1),其 中n 是序号.判定f (x )间断点的命令为:disc on t(f, x);> disco nt(l n(xA2-4),x);{ -2, 2}> disco nt(arcta n(1/2*ta n(2*x))/(xA2-1),x);1 1{-1, 1,2 二一Z 1~ 4 二}> disco nt(rou nd(3*x-1/2),x);{33-Z1函数rou nd 为“四舍五入”函数,上例并非一目了然,对其进一步理解可借助于函数 的fdisco nt 例子。
Maple入门教程Part1_与Maple对话
Part 1: 与Maple对话
西希安工程模拟软件(上海)有限公司,2008
1.0 介绍
第一部分:与Maple对话,熟悉Maple的环境。
你将学习如何使用关联菜单和面板完成分析,创建交互式图形,所有的操作无需你了解Maple命令。
为了获得更好的学习效果,请打开一个空白Maple文件。
按照表格左侧中的操作步骤描述,在表格右侧空白处完成操作。
1.1 如何开始
在这段落中,你将学习如何使用Maple计算一些基本问题并获得结果。
,所选的
提示: 如何找到计算机系统下的快捷键,点击菜单 帮助 > 快速帮助,并选择 切换文本/数学。
求导表达式 并画出结果的图形。
创建一个包含变量 x 和 y 的多项式,例如。
求值多项式在 x = 10,求输出结果关于变量的积分。
相关帮助
Quick Help Details。
Maple入门教程Part7_数据操作
Part 7:数据操作西希安工程模拟软件(上海)有限公司,20087.0 介 绍本节内容:数据处理,学习如何输入和输出数据,以及使用Maple的统计,可视化,和数据分析工具.7.1 输入和输出数据使用交互式工具或命令输入和输出数据.使用Maple,您可以输入许多格式的数据,以及输出数据到文件 中.输入数据操作步骤 使用输入数据助手 输入数据文件,支持的格式包括 Excel, MATLAB, 图片,声音,矩阵,分隔符文 件. 例子:从 工具 -> 分析助手 菜单,选择 输入数据... 读入数据文件 ExcelData.xls(这个文件位 于Maple安装目录下 data/portal 子文件 夹). 选择Excel格式. 点击下一步,然后确认. 数据以数组格式输入. 使用图形生成器画出数据的图形. 鼠标右键点击输入的数据,从弹出的关 联菜单中选择 Plots>Plot Builder. 点击 Plot. 结果21012使 用 ExcelTools 程序包中的命令 您也可以使用 ExcelTools 程序包中的命 令输入和输出Excel格式的数据. 例子: 输入Excel文件 ExcelData.xls. 如果文件没有位于当前的文件夹下,您 需要输入数据文件的完整路径. 在这里,数据文件位于Maple安装目录下 面的 data/portal 子文件夹中.命令 kernelopts(datadir) 返回数据文件夹的路 径,然后用 cat 命令将两个字符串串联组 成数据文件的完整路径."C:\Program Files\Maple 13\data/portal/ExcelData.xls"(2.1.1)(2.1.2)返回和检查第一行数据. 返回数组中元素的个数.(2.1.3) 60 (2.1.4)使用 plots[pointplot] 画出数据的图形.(2.1.4)21012使 用readdata命 令 readdata 命令从文本文件中读入数值数 据. 调用格式是 readdata("fileID", n), 这里 n 是数据的列数. readdata 的输出是一个列表,因此可以使 用列表选择命令查看中 Data1 的项. 然后对数据绘图."C:\Program Files\Maple 13\data/portal/DataP2.dat"(2.1.5)3938(2.1.6) (2.1.7) (2.1.8)(2.1.8)60 50 40 30 20 10 0ImportMatrix 命令读入数据文件的方式 类似于 readdata 命令,但是 ImportMatrix 的输出是一个矩阵,而不是一个列表.(2.1.9)60 50 40 30 20 10 0输出数据操作步骤 结果输出一个Excel文 件 使用 ExcelTools 输出文件.默认情况 下,文件被输出到当前文件夹. 使用可以 currentdir() 显示当前文件路 径.作为实验,输入文件的前面10行到Maple 中.(2.2.1)输出一个文本文件 writedata 命令将数据写入到一个文本文 件. 调用格式:writedata(fileID,data,format) 这里,fileID是输出的数据文件名称,data 是数据自身,format 是数据写入的格式. 格式的可选参数可以是 integer,float,或 string. 例子: 创建一个列表,使用 seq 命令填入数据 项. 写入数据到文件中. 作为实验,输入一个数据文件到Maple 中.(2.2.2)(2.2.3)7.2 随机分布操作步骤 使用 rand 命令生成一个数据数. 最简单的调用格式生成一个随机的12位正 结果(3.1)整数. rand(a..b) 调用格式返回一个程序,可以生 成介于 a 和 b 之间的数. 为了确保代码每次运行时生成不同的程 序,使用 randmonize 命令重新置入随机数 生成器的种子. 例子: 生成一个介于 -10 到 10 之间的随机数. RandomTools 程序包提供了许多工具和算 法用于生成随机数和随机对象,rand 命令 是一个面向这个程序包的简单方式.395718860534(3.1)9(3.2) (3.3)6(3.4)Maple 内置的 Statistics 程序包提供了大量 的连续和离散分布,可用于生成随机数. 在使用这些分布前,首先需要加载 Statistics 程序包. 例子: 使用平均值为5,标准差为1的正态分布, 生成100个随机数._R(3.5)创建样本数据的线图. 鼠标右击生成的数据.从关联菜单中选择 Statistics>Visualization>Histogram. 预览图形后,点击 Quit 返回柱状图到文件 中.histogram(3.6)034567您也可以使用分布生成一个随机数生成 器. 这里,X1 是一个程序,以 n 为参数,n 是 生成随机数的个数.(3.7)每次使用 X1,它会生成新的随机数.(3.8)(3.9) (3.10)例子: 使用 X1(10) 生成10个随机数,然后使用 LineChart命令创建数据的线图.(3.11)(3.11)765 1 2 3 4 5 6 7 8 9 10Data7.3 统计,回归,和曲线拟合基础工具操作步骤 使用Maple,您可以非常容易使用统计工具,曲线 拟合,回归分析. 您可以直接通过右键菜单使用许多有用的命令. 统计操作 对于一维数组,矢量,或列表,亡灵鼠标右击数 据时,右键菜单将包含统计操作菜单.在 Statistics 下有子目录 Data Manipulation, Quantities, Summary and Tabulation, 和 Visualization 提供了许 多统计操作命令. 例子: 定义如下的列表.鼠标右击输出,选择 Statistics > Quantities > Mean. 结果(4.1.1)mean2.498510331也可从右键菜单中进入曲线拟合助手. 例子: 在这个例子中,我们首先列出数据对. 鼠标右击数据,从右键菜单中选择 Curve Fitting. 选择 Curve Fitting>Interactive Curve Fitting.弹出 定义变量名对话框,点击确认.打开曲线拟合助 手,交互式使用Maple的曲线拟合命令.curve fitting assistant(4.1.2)您可以选择曲线的类型,并预览结果. 函数显示在图形的下方. 选择Splines曲线,然后选择对应的Plot按钮. 您可以选择是否返回插值函数或图形.在窗口左 下侧的下拉菜单,将选项从 Interpolant 改为 Plot. 然后点击完成.11 9 7 5 3 0 1 2 x 3 4 5使用命令进入曲线拟合助手. 例子: 使用前面段落中的数据集合. 1. 输入命令"CurveFitting[Interactive](DataSet)", 打开曲线拟合助手. 2.3.2 1噪音信号信号102 4Noisy SignalFitted Modelx10。
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入门教程Part5_矩阵计算
HankelMatrix HermiteForm HessenbergForm HilbertMatrix HouseholderMatrix IdentityMatrix IsDefinite IsOrthogonal IsUnitary IsSimilar JordanBlockMatrix JordanForm KroneckerProduct LeastSquares LinearSolve LUDecomposition Map
Part 5:矩阵计算
西希安工程模拟软件(上海)有限公司,2008
5.0 介 绍
第五部分:矩阵计算,你将学习如何创建矩阵和向量,完成线性代数计算,提取元素项.
5.1 创建矩阵和向量
使用面板或使用矩阵符号输入矩阵. 操作步骤 创建一个矩阵 例子: 使用矩阵面板创建一个使用矩阵面 板创建一个3×3的矩阵. 使用 Tab 键移动占位符并填入值. 这里,将这个矩阵赋值给一个命名,输入 "A:=",然后使用方程标签引用这个矩阵. 使用方程标签:输入 [Ctrl][L],在插入标签 对话框中输入 2.1. 结果
(2.1)
(2.2)
例子:使用Maple的矩阵符号创建一个矩 阵.使用 <> 括号将一组元素封装到列,用 | 分割列.最后再用括号封装整个矩阵.
(2.3)
从两个矩阵星形成一个新矩阵
(2.3)
连接两个矩阵形成一个新矩阵. 例子:使用矩阵符号将A的列和B 的列组成 一个新矩阵. (2.4)
创建一个向量 向量可以用非常方便的方式创建. 例子:使用矩阵面板创建一个含3个元素列 向量(3行,1列).用 Tab 键切换占位 符,并填入数值. 例子:使用向量符号创建一个向量. 使用 <> 括号封装整个向量.使用逗号分隔 元素形成一个行向量,使用 | 分隔元素形成 一个列向量.
Maple 教学 -- 基础篇
> 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教程
Maple教程Maple是一款强大的数学软件,它被广泛用于科学研究、工程设计、教育等领域。
本教程将为你介绍Maple的基本使用方法和一些常用功能,帮助你快速上手和利用Maple解决数学问题。
一、Maple的安装与启动1. 安装MapleMaple的安装非常简单,你只需要从官方网站下载Maple 的安装程序,然后按照提示进行安装即可。
2. 启动Maple安装完成后,你可以在桌面或开始菜单中找到Maple的启动图标,双击它即可启动Maple。
二、Maple的基本功能1. Maple的界面Maple的界面非常直观和友好,主要包括以下几个部分:•菜单栏:包含了各种功能和工具的菜单选项;•工具栏:提供了常用功能的快捷操作按钮;•输入框:可以输入和编辑Maple代码;•输出区:显示Maple执行代码的结果。
2. Maple的基本操作在Maple中,你可以通过输入和执行代码来完成各种数学运算和数据处理。
下面是一些常用的基本操作方法:•输入代码:在输入框中输入Maple代码,然后按下回车键执行;•注释代码:使用#符号可以在代码中添加注释,注释的内容将被忽略;•查看帮助:通过菜单栏的帮助选项或使用?键,可以查看Maple的帮助文档和函数说明。
3. Maple的数学计算Maple支持各种数学计算,包括基本运算、符号计算、数值计算等。
下面是一些常用的数学计算方法:•基本运算:Maple可以进行各种基本运算,如加减乘除、幂运算、取余等;•符号计算:Maple可以处理符号表达式,进行符号计算、方程求解、微分积分等;•数值计算:Maple可以进行数值计算,如数值积分、方程数值求解、函数拟合等。
三、Maple的扩展功能除了基本功能外,Maple还提供了许多强大的扩展功能,帮助用户进行更复杂的数学运算和数据处理。
1. 绘图功能Maple具有强大的绘图功能,可以绘制各种类型的图形,如曲线图、散点图、三维图等。
你可以使用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 概述 • 第二节 Maple 的简单应用
第一节 Maple 概述
• • • • 一、主要功能 二、安装、启动与退出 三、界面简介 四、基本操作
一、主要功能
• Maple的主要功能包括计算功能(符号计算、 数值处理、二维与三维作图)和编辑功能 等两方面 • Maple接受中文输入,这为我们编写中文课 件或做中文注释提供了方便.
3. 内部常数
• • • • • Pi表示圆周率π I表示纯虚数 自然对数的底用exp(1)表示 角的单位度数是deg 无穷大为infinity.
4. 小数划为分数运算
• convert(x,rational) 将实数(有理数)x转换为 精确分数 • convert(x,rational,n) 将实数(无理数)x转换 为分子与分母非零数码的个数和为n的分数
4. 解不等式
• Maple用指令solve解不等式,不等号为:
• • • • • <=(小于等于) >=(大于等于) <(小于) >(大宇) <>(不等于)
四、微积分运算
• • • • • 1. 极限运算 2. 求导运算 3. 积分运算 4. 级数 5. 微分方程
1. 极限运算
• Limit(f(x), x = a ) 求表达式f(x)当x趋于a时的极限 • Limit(f(x), x=a, dir ) 求表达式f(x)当x沿方向dir趋于a时的极限 • Limit(f(x,y,…),{x=a,y=b}) 求表达式f(x, y,…) 当x,y,…分别趋于a、b,…时的极限
三、初等代数运算
• • • • 1. 不同形式代数表达式之间的转换 2. 有理化分母和部分分式 3. 解方程 4. 解不等式
Maple入门教程Part9_动态程序
Part 9:动态程序西希安工程模拟软件(上海)有限公司,20089.0 介绍本节内容:动态应用程序,学习如何利用交互式内嵌图元件创建自定义应用程序。
教程的第一个例子是介绍如何使用Maple的探索助手,探索助手能够帮助你快速创建交互式迷你程序,探索Maple表达式中的参数。
第二个例子是介绍如何使用一组简单的元件实现数学表达式与图形的交互作用。
第三个例子是介绍如何创建一个自定义圆圈,用户点击一个点作为圆心,然后点击另一个点作为半径画出圆圈。
9.1 探索助手你可用探索助手直观地创建交互式迷你应用程序,用于探索任意Maple表达式(例如图形、数学表达式或命令)的参数。
在这个程序中,你可以使用滑动条改变参数的值,及时观看参数改变引起的结果。
可以通过两个方式使用探索助手:鼠标右击,从关联菜单中选择探索器。
使用命令 Explore。
同样,你也可以通过命令使用探索助手,将表达式中的参数作为探索对象。
9.2 表达式绘图可以使用图元件面板中的内嵌图元件。
在这里,我们使用图形和按钮元件。
5. 鼠标右击表达式元件这些命令的作用是清除图形区域。
11. 点击确认保存代码,然后再按下按钮属性窗口中的确认按钮。
现在测试一下内嵌图元件。
按下面的方式使用这个迷你程序:按清除图形按钮清除图形元件的存储。
点击图形区域并从图形工具栏选择图标。
这个点击和拖动操作器将帮助你交互式操作图形区域。
提示:也可以从右键菜单中使用点击和拖动操作器。
请自己动手创建上面的交互式程序,在文件中插入 , , 和图元件,鼠标右击上面的图元件打开单元属性窗口,拷贝其中的动作代码。
提示:在一个元件中通过名称引用其他图元件,所以要确保图元件的名称要匹配。
曲线拟合在图形上绘制几个点,图形区域自动显示点的多项式插值曲线会。
这个例子使用了代码编辑区域和图形元件。
代码编译区域提供了写入代码,但不显示在文件中的环境。
代码编辑区域图标的作用相当于一个按钮,点击这个按钮,区域内的代码将被执行。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Maple入门教程讲解
Maple的符号计算功能相当强大,几乎能处理所有的复杂运算。
新用户们在使用Maple软件之前,需要对Maple的工作界面有所熟悉。
下面介绍Maple使用入门第一步,了解Maple 工作界面。
1.Maple工作界面的提示符用来输入Maple命令。
2.提示符“[>”左边的“[”号表示所要一起执行的命令区,该区的命令将按先后次序连续一次执行完。
3.窗口最顶端是菜单栏,与Word中的菜单栏有相似之处,每个菜单下包括下级菜单。
常用工具栏中(从左到右)有“新建”、“打开”、“保存”、“打印”、“剪切”、“复制”、“粘贴”、“撤消”、“Maple输入转换”、“文本输入转换”、“增加命令区”、“撤消分组”、“建立分组”、“停止运行”及三个显示比例选择。
Maple工作界面示例
4.若点击工具栏中T按钮,则提示符箭头消失,变为[号,表示当前为文本输入,工具栏也出现相应的字号字体选择框。
5.点击提示符按钮、回车等将增加一个命令区。
6.左侧是各种数学样式命令,包括“表达式”、“微积分”、“常用符号”、“矩阵”、“单位”等等常用的数学命令。
以上是对Maple工作界面的一些主要功能的简单介绍,具体的使用需要结合具体的情况。