Download presentation
Presentation is loading. Please wait.
Published by旦蜀 童 Modified 8年之前
1
数学软件数学软件 Maple 软件使用教程课件 A comprehensive computer system for advanced mathematics 初级篇 数学软件初级篇
2
SDAU 数学软件 Maple 篇 第一章 Maple 概述 Maple
3
SDAU 1 、计算机数学实验简介 2 、 Maple 安装与调试 内 容 提 要内 容 提 要内 容 提 要内 容 提 要 内 容 提 要内 容 提 要内 容 提 要内 容 提 要 Maple
4
SDAU 1 计算机数学实验简介 1.1 什么是数学实验? 1.2 常用的数学软件 1.3 计算机数学软件 Maple
5
SDAU 1.1 什么是数学实验? 我们都熟悉物理实验和化学实验,就是利用仪器设备, 通过实验来了解、印证物理现象、化学物质等的特性。 我们都熟悉物理实验和化学实验,就是利用仪器设备, 通过实验来了解、印证物理现象、化学物质等的特性。 同样,数学实验也是要通过实验来了解数学问题的特性 并解决对应的数学问题。简单地说,数学实验就是用计 算机代替笔和纸以及人的部分脑力劳动进行数学的运算 ,它包括:数学论文的智能化文字处理、科学计算及推 断、证明猜想等。 同样,数学实验也是要通过实验来了解数学问题的特性 并解决对应的数学问题。简单地说,数学实验就是用计 算机代替笔和纸以及人的部分脑力劳动进行数学的运算 ,它包括:数学论文的智能化文字处理、科学计算及推 断、证明猜想等。 数学实验就是以计算机为仪器,以软件为载体,通过实 验解决实际中的数学问题。 数学实验就是以计算机为仪器,以软件为载体,通过实 验解决实际中的数学问题。
6
SDAU 1.2 常用的数学软件 目前较流行的数学软件主要有: Matlab Mathematica Maple MathCAD 符号运算数值计算图形显示高效编程
7
SDAU 1.3 计算机数学软件 Maple Maple 是由加拿大 Waterloo Maple 公司推出的一款优秀的数学软件。 Maple 是由加拿大 Waterloo Maple 公司推出的一款优秀的数学软件。 Maple 是加拿大一种枫树的名称。 Maple 是加拿大一种枫树的名称。 Maple ,以其便捷的人机交互方式,强大的数值功能,无与伦比的符号 推理能力,成为众多数学软件中的佼佼者;今天,它已经拥有数以百万 计的用户,跨及教育、科研、工业等多个领域。 Maple 的符号计算能力 还是 MathCAD 和 MATLAB 等著名软件的符号处理核心。 Maple ,以其便捷的人机交互方式,强大的数值功能,无与伦比的符号 推理能力,成为众多数学软件中的佼佼者;今天,它已经拥有数以百万 计的用户,跨及教育、科研、工业等多个领域。 Maple 的符号计算能力 还是 MathCAD 和 MATLAB 等著名软件的符号处理核心。 Maple ,几乎涉及高等数学的各个分支,并提供了一套完善的程序设计 语言,有多达 3000 多种命令和函数,它的图形式输入、输出界面,与通 用的数学表达方式几乎一样,用户无需记忆许多语法规则就可以轻松的 掌握它的使用。 Maple ,几乎涉及高等数学的各个分支,并提供了一套完善的程序设计 语言,有多达 3000 多种命令和函数,它的图形式输入、输出界面,与通 用的数学表达方式几乎一样,用户无需记忆许多语法规则就可以轻松的 掌握它的使用。 Maple ,使你攀登巨人肩膀的一架梯子,使你能更好地利用前人的智慧 结晶,自由地遨游于数学的海洋之中。 Maple ,使你攀登巨人肩膀的一架梯子,使你能更好地利用前人的智慧 结晶,自由地遨游于数学的海洋之中。
8
SDAU 2 Maple 安装与调试 2.1 Maple 安装与启动 2.2 初试 Maple 2.3 赋值与求值
9
SDAU 2.1 Maple 安装与启动 目前市面上出售的 Maple 软件一般是与其它数学软 件在一张光盘上 目前市面上出售的 Maple 软件一般是与其它数学软 件在一张光盘上 安装时只要将光盘上 Maple 目录全部拷贝到硬盘 上就可以了。按说明运行安装文件即可。 在学校精品课程《概率统计》的实践教学栏目可以 下载 maple 13 多语言版,压缩包中有安装说明。 在学校精品课程《概率统计》的实践教学栏目可以 下载 maple 13 多语言版,压缩包中有安装说明。 启动 Maple 启动 Maple 首先进入 Maple 目录下的子目录 BIN ,找到枫叶 图标 ( 下面有 Wmaple) ,点击图标就可启动。也 可以将该图标发送到桌面快捷方式。 或者,安装 Maple 软件后,只需点击桌面快捷图 标,启动 maple 。 2.1.1 Maple 安装与启动
10
2.1.2 Maple 工作面 maple 工作面提示符用来输入 maple 命令,可以依次输入 若干个语句。回车或点击窗口上方的 ! 按钮执行当前行的 语句;点击窗口上方的 !!! 按钮执行工作表中的所有语句 ( 命令 ) 。 提示符 [> 左边的 [ 号表示所要一起执行的命令区,该区的 命令将按先后次序连续一次执行完。可以点击窗口上方 的 [> 按钮得到 [> 提示符。 常用工具栏中 ( 从左到右 ) 有新建、打开、保存、打印、剪 切、复制、粘贴、撤消、 Maple 输入转换、文体输入转换 、增加命令区、撤消分组、建立分组、停止运行及 3 个显 示比例( 100%,150%,200% ) 3 个缩放按钮。 若点击工具栏中 T 按钮,则提示符箭头 > 消失,变为 [ 号, 表示当前为文本输入,工具栏也出现相应的字号字体选 择框; 点击提示符按钮、回车等将增加一个命令区;
11
SDAU 2.1.3 退出工作面并保存文件 点击文件菜单 exit 或快捷键 alt+F4 或点击窗口右上角 × ,这 时系统要提示:是否存盘?点击 ‘ 是 ’ ,则自动存盘。如果 是第一次使用这个文件,则要出现一个对话框,选择存盘 目录并输入文件名称。 点击文件菜单 exit 或快捷键 alt+F4 或点击窗口右上角 × ,这 时系统要提示:是否存盘?点击 ‘ 是 ’ ,则自动存盘。如果 是第一次使用这个文件,则要出现一个对话框,选择存盘 目录并输入文件名称。 命令 quit done stop 也可退出 maple 。注意 ! 这三个退出 命令不保存文件, 不要随便用。 命令 quit done stop 也可退出 maple 。注意 ! 这三个退出 命令不保存文件, 不要随便用。 作业中存盘,可以用文件菜单的保存,也可以用工具栏的 软盘图标保存, 也可以使用快捷键 Ctrl+s 。最好在操作一段 后就保存一次,避免意外情况产生损失。 作业中存盘,可以用文件菜单的保存,也可以用工具栏的 软盘图标保存, 也可以使用快捷键 Ctrl+s 。最好在操作一段 后就保存一次,避免意外情况产生损失。
12
SDAU 2.2 初试 Maple 提示符 [> 为可执行块的标志, > 的后面为键入命令区 提示符 [> 为可执行块的标志, > 的后面为键入命令区 每条命令必须用 “ : ”( 执行后不显示 ) 或 “ ; ”( 执行并显示 ) 结 束,否则被认为命令没输完。 每条命令必须用 “ : ”( 执行后不显示 ) 或 “ ; ”( 执行并显示 ) 结 束,否则被认为命令没输完。 命令区中 “#” 号以后为命令注释 ( 不执行 ) 。 命令区中 “#” 号以后为命令注释 ( 不执行 ) 。 光标在命令区的任何位置回车,都会依次执行该命令区 所有命令。例: 光标在命令区的任何位置回车,都会依次执行该命令区 所有命令。例: > 2+3 # 没有结束符,执行后低版本的 maple 会显示警告 : 语 句没输完, Maple13 已经没有这个问题: > 2+3 # 没有结束符,执行后低版本的 maple 会显示警告 : 语 句没输完, Maple13 已经没有这个问题: Warning, incomplete statement or missing semicolon Warning, incomplete statement or missing semicolon > 2+3; 会输出执行结果 > 2+3; 会输出执行结果 > 2+3: 不会输出执行结果,但结果可用作以后计算使用 > 2+3: 不会输出执行结果,但结果可用作以后计算使用 2.2.1 Maple 命令输入格式
13
SDAU 2.2.2 函数值运算 定义表达式 定义表达式 f:= 数 或 表达式 ; f:= 数 或 表达式 ; # 后赋值将替换以前的赋值, 加单引号表示符号变量 # 后赋值将替换以前的赋值, 加单引号表示符号变量 >f:=x^2; eval(f,x=3); # 定义表达式并计算器在 x=3 处的值 >f:=x^2; eval(f,x=3); # 定义表达式并计算器在 x=3 处的值 右键点击输入 f 后的蓝色结果 x 2 可以从事多种运算! 右键点击输入 f 后的蓝色结果 x 2 可以从事多种运算! 定义函数 定义函数 f:=x->x 的表达式 ; f:=x->x 的表达式 ; >f:=x->x^2; f(3); # 定义函数 f(x) 并计算其在 x=3 处的值 >f:=x->x^2; f(3); # 定义函数 f(x) 并计算其在 x=3 处的值 >G:=(a,b)->a^2-b^3; G(3,2); # 定义多变量函数并求函数值 >G:=(a,b)->a^2-b^3; G(3,2); # 定义多变量函数并求函数值 右键点击输入 f 后的蓝色结果 x→x 2 可以从事多种运算! 右键点击输入 f 后的蓝色结果 x→x 2 可以从事多种运算! >y=x->piecewise(x 1,log(x)); # 定义分段函 数 y= log x (x>1), sin( x/2) (x≤1) >y=x->piecewise(x 1,log(x)); # 定义分段函 数 y= log x (x>1), sin( x/2) (x≤1) >y:=s^2-5*s+3; z:=s^2-5*t+3; >y:=s^2-5*s+3; z:=s^2-5*t+3; 表达式运算 表达式运算 >y*z+3; >y*z+3; 定义表达式 定义表达式 f:= 数 或 表达式 ; f:= 数 或 表达式 ; # 后赋值将替换以前的赋值, 加单引号表示符号变量 # 后赋值将替换以前的赋值, 加单引号表示符号变量 >f:=x^2; eval(f,x=3); # 定义表达式并计算器在 x=3 处的值 >f:=x^2; eval(f,x=3); # 定义表达式并计算器在 x=3 处的值 右键点击输入 f 后的蓝色结果 x 2 可以从事多种运算! 右键点击输入 f 后的蓝色结果 x 2 可以从事多种运算! 定义函数 定义函数 f:=x->x 的表达式 ; f:=x->x 的表达式 ; >f:=x->x^2; f(3); # 定义函数 f(x) 并计算其在 x=3 处的值 >f:=x->x^2; f(3); # 定义函数 f(x) 并计算其在 x=3 处的值 >G:=(a,b)->a^2-b^3; G(3,2); # 定义多变量函数并求函数值 >G:=(a,b)->a^2-b^3; G(3,2); # 定义多变量函数并求函数值 右键点击输入 f 后的蓝色结果 x→x 2 可以从事多种运算! 右键点击输入 f 后的蓝色结果 x→x 2 可以从事多种运算! >y=x->piecewise(x 1,log(x)); # 定义分段函 数 y= log x (x>1), sin( x/2) (x≤1) >y=x->piecewise(x 1,log(x)); # 定义分段函 数 y= log x (x>1), sin( x/2) (x≤1) >y:=s^2-5*s+3; z:=s^2-5*t+3; >y:=s^2-5*s+3; z:=s^2-5*t+3; 表达式运算 表达式运算 >y*z+3; >y*z+3;
14
SDAU 2.2.2 函数值运算 结果化简 结果化简 >1/sqrt(5)*((1+sqrt(5))/2)^144-1/sqrt(5)*((1- sqrt(5))/2)^144; #evalf - evaluate using floating-point arithmetic; % - last expression; % - second last expression; %% - third last expression >evalf(%); #evalf - evaluate using floating-point arithmetic; % - last expression; % - second last expression; %% - third last expression > restart; > restart; #restart - clear internal memory > f:=int(exp(x^3),x=0..1); evalf(f); evalf(cos(1)+sin(1)I); > f:=int(exp(x^3),x=0..1); evalf(f); evalf(cos(1)+sin(1)I); >Product(k^3,k=1..4): value(%); #value - evaluate inert functions 常用数学常数 常用数学常数 结果化简 结果化简 >1/sqrt(5)*((1+sqrt(5))/2)^144-1/sqrt(5)*((1- sqrt(5))/2)^144; #evalf - evaluate using floating-point arithmetic; % - last expression; % - second last expression; %% - third last expression >evalf(%); #evalf - evaluate using floating-point arithmetic; % - last expression; % - second last expression; %% - third last expression > restart; > restart; #restart - clear internal memory > f:=int(exp(x^3),x=0..1); evalf(f); evalf(cos(1)+sin(1)I); > f:=int(exp(x^3),x=0..1); evalf(f); evalf(cos(1)+sin(1)I); >Product(k^3,k=1..4): value(%); #value - evaluate inert functions 常用数学常数 常用数学常数 数学常数意义 I虚数单位 Pi圆周率 False, true 逻辑表达式的值 Catalan Catalan 常数,值为 0.9159… Infinity无穷大 Fall表示不确定的数或操作失败 Gamma Euler 常数,值为 0.577215…
15
SDAU 2.2.3 微积分实验 极限 极限 >Limit((x-sin(x))/x^3,x=0);limit((x-sin(x))/x^3,x=0,left) >Limit((x-sin(x))/x^3,x=0);limit((x-sin(x))/x^3,x=0,left) > limit(sin(x)/x^3,x= infinity ); limit((x-sin(x))/x^3,x=0, right ) > limit(sin(x)/x^3,x= infinity ); limit((x-sin(x))/x^3,x=0, right ) 说明: Limit(f,x=a) 或 limit(f, x=a), 选项 left 和 right 分别 表示左极限和有极限, infinity 表示无穷大 说明: Limit(f,x=a) 或 limit(f, x=a), 选项 left 和 right 分别 表示左极限和有极限, infinity 表示无穷大 导数 导数 > Diff(exp(x^2),x)=diff(exp(x^2),x); > Diff(exp(x^2),x)=diff(exp(x^2),x); 说明: diff(f,x) 或 diff(f,x$n), x$n 表求 n 阶导数 说明: diff(f,x) 或 diff(f,x$n), x$n 表求 n 阶导数 > 积分 积分 > Int(2*x*sin(x),x)=int(2*x*sin(x),x)+c; > Int(2*x*sin(x),x)=int(2*x*sin(x),x)+c; > Int(sqrt(1+x^2),x=-1..1)=int(sqrt(1+x^2),x -1..1); > Int(sqrt(1+x^2),x=-1..1)=int(sqrt(1+x^2),x -1..1); 说明: Int(f,x) 或 Int(f,x=a..b), 两个小数点.. 表示 to 的意思 说明: Int(f,x) 或 Int(f,x=a..b), 两个小数点.. 表示 to 的意思
16
SDAU 方程 方程 >p:=x->x^2+2*x-3: plot(p(x),x=-4..2); >p:=x->x^2+2*x-3: plot(p(x),x=-4..2); >solve(p(x)); # 等价于 solve(p(x)=0); solve one or more equations >solve(p(x)); # 等价于 solve(p(x)=0); solve one or more equations >fsolve(p(x)=12,x); #Solve one or more equations using floating-point arithmetic >fsolve(p(x)=12,x); #Solve one or more equations using floating-point arithmetic > solve({2*x+3*y,y= x+1}); > solve({2*x+3*y,y= x+1}); # 体会 solve({a^2+b^2=c^2},c), solve({a^2+b^2=c^2},[c]), # 体会 solve({a^2+b^2=c^2},c), solve({a^2+b^2=c^2},[c]), solve(a^2+b^2=c^2,c), solve(a^2+b^2=c^2,[c]) 的差异 solve(a^2+b^2=c^2,c), solve(a^2+b^2=c^2,[c]) 的差异 微分方程 微分方程 > dsolve({diff(y(x),x)=0.003*y(x)*(100-y(x)),y(0)=15},y(x)); >plot(y(x),x); > dsolve({diff(y(x),x)=0.003*y(x)*(100-y(x)),y(0)=15},y(x)); >plot(y(x),x); 2.2.3 微积分实验
17
SDAU 2.2.4 函数作图 曲线图 >plot(x^2,x=-3..3); >plot(x^2,x=-3..3); >plot(2*x^3-6*x,x=-2.5..2.5,style=point,symbol=box); >plot(2*x^3-6*x,x=-2.5..2.5,style=point,symbol=box); 极坐标 >plot([sin(4*x),x,x=0..2*Pi],coords=polar,thickness=3); >plot([sin(4*x),x,x=0..2*Pi],coords=polar,thickness=3); 曲面图 >plot3d(x^2+y^2,x=-2..2,y=-2..2,color=0.1); >plot3d(x^2+y^2,x=-2..2,y=-2..2,color=0.1);
18
SDAU 二维动画 >with(plots): >with(plots): > animate(sin(t*x),x=-2*Pi..2*Pi, t=.5..4, color=1, linestyle =30); > animate(sin(t*x),x=-2*Pi..2*Pi, t=.5..4, color=1, linestyle =30); >with(plots): animate([sin(x*t),x,x=-4..4],t=1..4,coords= polar, numpoints=100,frames=100); >with(plots): animate([sin(x*t),x,x=-4..4],t=1..4,coords= polar, numpoints=100,frames=100); 三维动画图 > with(plots): > with(plots): > animate3d( cos(t*x)*sin(t*y), x=-Pi..Pi, y=-Pi..Pi, t=1..2 ); > animate3d( cos(t*x)*sin(t*y), x=-Pi..Pi, y=-Pi..Pi, t=1..2 ); 2.2.4 函数作图
19
SDAU 2.2.5 最优化问题 最值: 最值: >f:=x^3-x^2-x+1:plot(f,x=-2..2.7,color=plum); >f:=x^3-x^2-x+1:plot(f,x=-2..2.7,color=plum); >maximize(f,x);x1:=minimize(f,x); >maximize(f,x);x1:=minimize(f,x); >x2:=maximize(f,x=-1..2); >x2:=maximize(f,x=-1..2); >fsolve(x^3-x^2-x+1=x1);fsolve(x^3-x^2-x+1=x2); >fsolve(x^3-x^2-x+1=x1);fsolve(x^3-x^2-x+1=x2); # 求最值点 # 求最值点 条件极值: 条件极值: > extrema( a*x^2+b*x+c,{},x,'s');allvalues(s); > extrema( a*x^2+b*x+c,{},x,'s');allvalues(s); > f := (x^2+y^2)-z^2; g1 := x^2+y^2-16=0; g2 := x+y+z=10; extrema(f, {g1,g2}, {x,y,z},'s'); allvalues(s); > f := (x^2+y^2)-z^2; g1 := x^2+y^2-16=0; g2 := x+y+z=10; extrema(f, {g1,g2}, {x,y,z},'s'); allvalues(s);
20
SDAU 2.3 赋值与求值 赋值符 赋值符 :=, 例如 : >p:=2*x^3-16; >roots(p); # #roots - exact roots of a polynomial with respect to one variable, return two parameters [ri, mi]=[root, multiplicity] >subs(x=2,p); p; # #subs - substitute subexpressions into an expression >x:=2; >x:=2; p; >x:=unknow; >x:=unknow; unknow:=3; p; 清除赋值 清除赋值 >x:=‘x’; >x:=‘x’; p; 常用命令 常用命令 restart; 清除所有变量赋值 anames(); 给出已赋值变量名 unames(); 给出未赋值变量名 2.3.1 赋值
21
SDAU 2.3.2 求值 求值命令 eval(name, i) 求值命令 eval(name, i) >a:=b; b:=c; c:=2; a; eval(a); eval(a,1); >a:=b; b:=c; c:=2; a; eval(a); eval(a,1); 求浮点值 evalf(expr, n) 求浮点值 evalf(expr, n) >evalf(int(exp(x^3),x=0..1)); >evalf(int(exp(x^3),x=0..1)); 矩阵求值 evalm( ); 矩阵求值 evalm( ); > A:=matrix(2,2,[3,4,-1,1]); B:=matrix(2,2,[1,2,4,6]); > A:=matrix(2,2,[3,4,-1,1]); B:=matrix(2,2,[1,2,4,6]); > A+B; C:=A+B; evalm(C); > A+B; C:=A+B; evalm(C);
22
再 见再 见再 见再 见
Similar presentations