《Mathematica使用教程.docx》由会员分享,可在线阅读,更多相关《Mathematica使用教程.docx(20页珍藏版)》请在三一办公上搜索。
1、Mathematica使用教程Mathematica使用教程 一、要点 l Mathematica是一个敏感的软件. 所有的Mathematica函数都以大写字母开头; l 圆括号( ),花括号 ,方括号 都有特殊用途, 应特别注意; l 句号“.”,分号“;”,逗号“,”感叹号“!”等都有特殊用途, 应特别注意; l 用主键盘区的组合键Shfit+Enter或数字键盘中的Enter键执行命令. 二、介绍案例 1. 输入与输出 例1 计算 1+1:在打开的命令窗口中输入 1+2+3 并按组合键Shfit+Enter执行上述命令,则屏幕上将显示: In1 : =1+2+3 Out1 =6 这里I
2、n1 : = 表示第一个输入,Out1= 表示第一个输出,即计算结果. 2. 数学常数 Pi 表示圆周率p; E表示无理数e; I 表示虚数单位i; Degree表示p/180; Infinity表示无穷大. 注:Pi,Degree,Infinity的第一个字母必须大写,其后面的字母必须小写. 3. 算术运算 Mathematica中用“+”、“-”、“*”、“/” 和“”分别表示算术运算中的加、减、乘、除和乘方. -11例2 计算 410012-13429+89p. 输入 100(1/4)*(1/9)(-1/2)+8(-1/3)*(4/9)(1/2)*Pi 则输出 310+p3 这是准确值.
3、 如果要求近似值,再输入 N% 则输出 10.543 这里%表示上一次输出的结果,命令N%表示对上一次的结果取近似值. 还用 % 表示上 上次输出的结果,用 %6表示Out6的输出结果. 注:关于乘号*,Mathematica常用空格来代替. 例如,x y z 则表示x*y*z,而xyz 表示字符 串,Mathematica将它理解为一个变量名. 常数与字符之间的乘号或空格可以省略. 4. 代数运算 例3 分解因式 x2+3x+2 输入 Factorx2+3x+2 输出 (1+x)(2+x) 例4 展开因式 (1+x)(2+x) 输入 Expand(1+x)(2+x) 输出 2+3x+x2 例
4、5 通分 2x+2+1x+31 输入 Together1/(x+3)+2/(x+2) 8+3x输出 (2+x)(3+x)8+3x 展开成部分分式 (2+x)(3+x)输入 Apart(8+3x)/(2+x)(3+x) 21输出 +x+2x+3例7 化简表达式 (1+x)(2+x)+(1+x)(3+x) 输入 Simplify(1+x)(2+x)+(1+x)(3+x) 输出 5+7x+2x2 例6 将表达式 三、部分函数 1. 内部函数 Mathematica系统内部定义了许多函数,并且常用英文全名作为函数名,所有函数名的第一个 字母都必须大写,后面的字母必须小写. 当函数名是由两个单词组成时,
5、每个单词的第一个字母都 必须大写,其余的字母必须小写. Mathematica函数(命令)的基本格式为 函数名表达式,选项 下面列举了一些常用函数: 算术平方根x Sqrtx 指数函数ex 对数函数logax 对数函数lnx 三角函数 反三角函数 Expx Loga,x Logx Sinx, Cosx, Tanx, Cotx, Secx, Cscx ArcSinx, ArcCosx, ArcTanx, ArcCotx, AsrcSecx, ArcCscx 双曲函数 Sinhx, Coshx, Tanhx, 反双曲函数 ArcSinhx, ArcCoshx, ArcTanhx 四舍五入函数 Ro
6、undx (*取最接近x的整数*) 取整函数 Floorx (*取不超过x的最大整数*) 取模 Modm,n (*求m/n的模*) 取绝对值函数 Absx n的阶乘 n! 符号函数 Signx 取近似值 Nx,n (*取x的有n位有效数字的近似值,当n缺省时,n的默认值 为6*) 例8 求p的有6位和20位有效数字的近似值. 输入 NPi 输出 3.14159 输入 NPi, 20 输出 3.1415926535897932285 注:第一个输入语句也常用另一种形式: 输入 Pi/N 输出 3.14159 例9 计算函数值 (1) 输入 SinPi/3 输出 2 3 2 (2) 输入 ArcS
7、in.45 输出 0.466765 (3) 输入 Round-1.52 输出 -2 1pe-2例10 计算表达式 1+ln2sin6-3arctan(0.6)2+2 的值 输入 1/(1+Log2)*SinPi/6-Exp-2/(2+2(2/3)*ArcTan.6 输出 0.274921 2. 自定义函数 在Mathematica系统内,由字母开头的字母数字串都可用作变量名,但要注意其中不能包含空 格或标点符号. 变量的赋值有两种方式. 立即赋值运算符是“=”,延迟赋值运算符是“: =”. 定义函数使用 的符号是延迟赋值运算符“: =”. 例11 定义函数 f(x)=x3+2x2+1,并计算f
8、(2),f(4),f(6). 输入 Clearf,x; (*清除对变量f原先的赋值*) fx_:=x3+2*x2+1; (*定义函数的表达式*) f2 (*求f(2)的值*) fx/.x-4 (*求f(4)的值,另一种方法*) x=6; (*给变量x立即赋值6*) fx (*求f(6)的值,又一种方法*) 输出 17 97 289 注:本例1、2、5行的结尾有“;”,它表示这些语句的输出结果不在屏幕上显示. 四、解方程 在Mathematica系统内,方程中的等号用符号“=”表示. 最基本的求解方程的命令为 Solveeqns, vars 它表示对系数按常规约定求出方程(组)的全部解,其中eq
9、ns表示方程(组),vars表示所求未知变量. 例12 解方程x2+3x+2=0 输入 Solvex2+3x+2=0, x 输出 x-2,x-1 例13 解方程组 ax+by=0cx+dy=1 输入 Solvea x + b y = 0,c x + d y =1, x,y 输出 xbabc-ad,y-bc+ad 例14 解无理方程x-1+x+1=a 输入 SolveSqrtx-1+ Sqrtx+1 = a, x 输出 4+a4x4a2 很多方程是根本不能求出准确解的,此时应转而求其近似解. 求方程的近似解的方法有两种, 一种是在方程组的系数中使用小数,这样所求的解即为方程的近似解;另一种是利用
10、下列专门用于 3 求方程(组)数值解的命令: NSolveeqns, vars (*求代数方程(组)的全部数值解*) FindRooteqns, x, x0, y, y0,L 后一个命令表示从点(x0,y0,L)出发找方程(组)的一个近似解,这时常常需要利用图像法先大 致确定所求根的范围,是大致在什么点的附近. 例15 求方程x3-1=0的近似解 输入 NSolvex3-1= 0, x 输出 x-0.5-0.866025ii,x-0.5+0.866025ii,x1. 输入 FindRootx3-1=0,x, .5 输出 x1. 下面再介绍一个很有用的命令: Eliminateeqns, eli
11、ms (*从一组等式中消去变量(组)elims*) x2+y2+z2=1例16从方程组 x2+(y-1)2+(z-1)2=1 消去未知数y、z. x+y=1输入 Eliminatex2+y2+z2 =1, x2+(y-1)2 + (z-1)2 =1, x + y= 1,y, z 输出 -2x+3x2=0 注:上面这个输入语句为多行语句,它可以像上面例子中那样在行尾处有逗号的地方将行与行 隔开, 来迫使Mathematica从前一行继续到下一行在执行该语句. 有时候多行语句的意义不太明 确,通常发生在其中有一行本身就是可执行的语句的情形,此时可在该行尾放一个继续的记号“”, 来迫使Mathema
12、tica继续到下一行再执行该语句. 五、保存与退出 Mathematica 很容易保存Notebook中显示的内容,打开位于窗口第一行的File菜单,点击Save 后得到保存文件时的对话框,按要求操作后即可把所要的内容存为 *.nb文件. 如果只想保存全部 输入的命令,而不想保存全部输出结果,则可以打开下拉式菜单Kernel,选中Delete All Output,然后 再执行保存命令. 而退出Mathematica与退出Word的操作是一样的. 六、查询与帮助 查询某个函数(命令)的基本功能,键入“?函数名”,想要了解更多一些,键入“?函数名”,例如, 输入 ?Plot 则输出 Plotf,
13、x,xmin,xmax generates a plot of f as a function of x from xmin to xmax. Plotf1,f2,x,xmin,xmax plots several functions fi 它告诉了我们关于绘图命令“Plot”的基本使用方法. 例17 在区间-1,1上作出抛物线y=x2的图形. 输入 Plotx2,x,-1,1 则输出 4 10.80.60.40.2 -1-0.50.5例18 在区间0,2p上作出y=sinx与y=cosx的图形. 输入 PlotSinx,Cosx,x,0,2Pi 则输出 10.51-0.52345如果输入 ?
14、Plot 则Mathematica会输出关于这个命令的选项的详细说明,请读者试之. 此外,Mathematica的Help菜单中提供了大量的帮助信息,其中Help菜单中的第一项Help Browser(帮助游览器)是常用的查询工具,读者若想了解更多的使用信息,则应自己通过Help菜单 去学习. -1编辑本段Mathematica 基本运算 a+ mathematica数学实验(第2版) b+c 加 5 6 a-b 减 a b c 或 a*b*c 乘 a/b 除 -a 负号 ab 次方 Mathematica 数字的形式 256 整数 2.56 实数 11/35 分数 2+6I 复数 常用的数学
15、常数 Pi 圆周率,=3.141592654 E 尤拉常数,e=2.71828182 Degree 角度转换弧度的常数,Pi/180 I 虚数,其值为 -1 Infinity 无限大 指定之前计算结果的方法 % 前一个运算结果 % 前二个运算结果 %(n个%) 前n个运算结果 %n 或 Outn 前n个运算结果 复数的运算指令 a+bI 复数 Conjugatea+bI 共轭复数 Rez, Imz 复数z的实数/虚数部分 Absz 复数z的大小或模数(Modulus) Argz 复数z的幅角(Argument) Mathematica 输出的控制指令 expr1; expr2; expr3 做
16、数个运算,但只印出最後一个运算的结果 expr1; expr2; expr3; 做数个运算,但都不印出结果 expr; 做运算,但不印出结果 Sinx,Cosx,Tanx,Cotx,Secx,Cscx 三角函数,其引数的单位为弪度 Sinhx,Coshx,Tanhx, 双曲函数 ArcSinx,ArcCosx,ArcTanx 反三角函数 ArcCotx,ArcSecx,ArcCscx 编辑本段常用数学函数 ArcSinhx,ArcCoshx,ArcTanhx, 反双曲函数 Sqrtx 根号 Expx 指数 Logx 自然对数 Loga,x 以a为底的对数 Absx 绝对值 Roundx 最接近
17、x的整数 Floorx 小於或等於x的最大整数 Ceilingx 大於或等於x的最小整数 Moda,b a/b所得的馀数 n! 阶乘 Random 0至1之间的随机数 Maxa,b,c,.,Mina,b,c, a,b,c,的极大/极小值 编辑本段数之设定 x=a 将变数x的值设为a x=y=b 将变数x和y的值均设为b x=. 或 Clearx 除去变数x所存的值 变数使用的一些法则 xy 中间没有空格,视为变数xy x y x乘上y 3x 3乘上x x3 变数x3 x2y 为 x2 y次方运算子比乘法的运算子有较高的处理顺序 编辑本段四个常用处理代数的指令 Expandexpr 将 expr
18、展开 Factorexpr 将 expr因式分解 Simplifyexpr 将 expr化简成精简的式子 FullSimplifyexpr Mathematica 会尝试更多的化简公式,将 expr化成更精简的式子 编辑本段多项式/分式转换的函数 ExpandAllexpr 把算是全部展开 Togetherexpr 将 expr各项通分在并成一项 Apartexpr 把分式拆开成数项分式的和 Apartexpr,var 视var以外的变数为常数,将 expr拆成数项的和 7 Cancelexpr 把分子和分母共同的因子消去 编辑本段分母/分子的运算 Denominatorexpr 取出expr
19、的分母 Numeratorexpr 取出expr的分子 ExpandDenominatorexpr 展开expr的分母 ExpandNumeratorexpr 展开expr的分子 Collectexpr,x 将 expr表示成x的多项式, 如 Collectexpr,x,y, 将 expr分别表示成 x,y,的多项式 FactorTermsexpr 将 expr的数值因子提出, 如 4x+2=2(2x+1) FactorTermsexpr,x 将 expr中把所有不包含x项的因子提出 FactorTermsexpr,x,y, 将 expr中把所有不包含x,y,.项的因子提出 TrigExpan
20、dexpr 将三角函数展开 TrigFactorexpr 将三角函数所组成的数学式因式分解 TrigReduceexpr 将相乘或次方的三角函数化成一次方的基本三角函数之组合 ExpToTrigexpr 将指数函数化成三角函数或双曲函数 TrigToExpexpr 将三角函数或双曲函数化成指数函数 编辑本段多项式的另二种转换函数 编辑本段三角函数、双曲函数和指数的运算 复数、次方乘积之展开 ComplexExpandexpr 假设所有的变数都是实数来对 expr展开 ComplexExpandexpr,x,y, 假设x,y,.等变数均为复数来对 expr展开 PowerExpandexpr 将
21、 多项式项次、系数与最高次方之取得 Coefficientexpr,form 於 expr中form的系数 Exponentexpr,form 於 expr中form的最高次方 Partexpr,n 或 exprn 在 expr项中第n个项 代换运算子 8 expr/.x-value 将 expr里所有的x均代换成value expr/.x-value1,y-value2, 执行数个不同变数的代换 expr/.x-value1,x-value2, 将 expr代入不同的x值 expr/.x-value1,y-value2, 重复代换到 expr不再改变为止 求 解方程式的根 Solvelhs=
22、rhs,x 解方程式lhs=rhs,求x Nsolvelhs=rhs,x 解方程式lhs=rhs的数值解 Solvelhs1=rhs1,lhs2=rhs2,x,y, 解联立方程式,求x,y, NSolvelhs1=rhs1,lhs2=rhs2,x,y, 解联立方程式的数值解 FindRootlhs=rhs,x,x0 由初始点x0求lhs=rhs的根 Mathematica 的四种括号 (term) 圆括号,括号内的term先计算 fx 方括号,内放函数的引数 x,y,z 大括号或串列括号,内放串列的元素 pi 或 Partp,i 双方括号,p的第i项元素 pi,j 或 Partp,i,j p的
23、第i项第j个元素 缩短Mathematica输出的指令 expr/Short 显示一行的计算结果 Shortexpr,n 显示n行的计算结果 Command; 执行command,但不列出结果 查询Mathematica的物件 ?Command 查询Command的语法及说明 ?Command 查询Command的语法和属性及选择项 ?Aaaa* 查询所有开头为Aaaa的物件 函数的定义、查询与清除 fx_= expr 立即定义函数fx fx_:= expr 延迟定义函数fx fx_,y_, 函数f有两个以上的引数 ?f 查询函数f的定义 Clearf 或 f=. 清除f的定义 Removef
24、 将f自系统中清除掉 含有预设值的Pattern a_+b_. b的预设值为0,即若b从缺,则b以0代替 x_ y_ y的预设值为1 x_y_ y的预设值为1 9 条件式的自订函数 lhs:=rhs/;condition 当condition成立时,lhs才会定义成rhs If指令 Iftest,then,else 若test为真,则回应then,否则回应else Iftest,then,else,unknow 同上,若test无法判定真或假时,则回应unknow 极限 Limitexpr,x-c 当x趋近c时,求expr的极限 Limitexpr,x-c,Direction-1 Limite
25、xpr,x-c,Direction-1 微分 Df,x 函数f对x作微分 Df,x1,x2, 函数f对x1,x2,作微分 Df,x,n 函数f对x微分n次 Df,x,NonConstants-y,z, 函数f对x作微分,将y,z,视为x的函数 全微分 Dtf 全微分df Dtf,x 全微分 Dtf,x1,x2, 全微分 Dtf,x,Constants-c1,c2, 全微分,视c1,c2,为常数 不定积分 Integratef,x 不定积分 f dx 定积分 Integratef,x,xmin,xmax 定积分 Integratef,x,xmin,xmax,y,ymin,ymax 定积分 数 列
26、之和与积 Sumf,i,imin,imax 求和 Sumf,i,imin,imax,di 求数列和,引数i以di递增 Sumf,i,imin,imax,j,jmin,jmax Productf,i,imin,imax 求积 Productf,i,imin,imax,di 求数列之积,引数i以di递增 10 Productf,i,imin,imax,j,jmin,jmax 函数之泰勒展开式 Seriesexpr,x,x0,n 对 expr於x0点作泰勒级数展开至(x-x0)n项 Seriesexpr,x,x0,m,y,y0,n 对x0和y0展开 关系运算子 a=b 等於 ab 大於 a=b 大於
27、等於 ab 小於 avalue 指定特殊的绘图选项,画出函数f的图形 Plot几种常用选项的指令 选项 预设值 说明 AspectRatio 1/GoldenRatio 图形高和宽之比例,高/宽 Axes True 是否把坐标轴画出 AxesLabel Automatic 为坐标轴贴上标记,若设定为 AxesLabel-?ylabel?,则为y轴之标记。若设定为AxesLabel-?xlabel?,?ylabel? ,则为x轴,y轴的标记 AxesOrigin Automatic 坐标轴的相交的点 DefaultFont $DefaultFont 图形里文字的预设字型 11 Frame Fal
28、se 是否将图形加上外框 FrameLabel False 从x轴下方依顺时针方向加上图形外框的标记 FrameTicks Automatic (如果Frame设为True)为外框加上刻度; None则不加刻度 GridLines None 设Automatic则於主要刻度上加上网格线 PlotLabel None 整张图之图名 PlotRange Automatic 指定y方向画图的范围 Ticks Automati 坐标轴之刻度,设None则没有刻度记号出现 Automatic、None、True、False为Mathmatica常用的选项设定,其代表意义分别为使用内部设定、不包含此项、作
29、此项目、不作此项目。 串列绘图 ListPloty1,y2, 画出1,y1,2,y2,的点 ListPlotx1,y1,x2,y2, 画出x1,y1,x2,y2,的点 ListPlotx1,y1,x2,y2,PlotJoined-True 把画出来的点用线段连接 绘图颜色的指定 Plotf1,f2,x,xmin,xmax, PlotStyle-RGBColorr1,g1,b1,RGBColorr2,g2,b2, 彩色绘图 Plotf1,f2,x,xmin,xmax, PlotStyle-GrayLevel,GrayLevelj, 灰阶绘图 图形处理指令 Showplot 重画一个图 Showp
30、lot1,plot2, 将数张图并成一张 Showplot,option-opt 加入选项 图形之排列 ShowGraphicsArrayplot1,plot2, 将图形横向排列 ShowGraphicsArray, 将图形垂直排列 ShowGraphicsArrayplot1,plot2, 将图形成二维矩阵式排列 二维参数图 ParametricPlotf1,f2,t,tmin,tmax 参数绘图 12 ParametricPlotf1,f2,g1,g2,t,tmin,tmax 同时绘数个参数图 ParametricPlotf1,f2,t,tmin,tmax,AspectRatio-Automatic 保持曲线的真正形状,即x,y坐标比为1:1 等高线图 ContourPlotf,x,xmin,xmax,y,ymin,ymax 於指定范围之内画出f的等高线图 ContourPlot的选项 选项 预设值 说明 ColorFunction Automatic 上色的预设值为灰阶,选Hue则为系列色彩 Contours 10 等高线的数目。设Contours-z1,z2,则指定等高值为z1,z2, ContourShading True Contour的上色,选False则不上色 PlotRange Automatic 高度z值的范围,也可指定zmin,zmax 13