版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Mathematica 教程 第第1章章 Mathematica概述概述 第第2章章 Mathematica的基本量的基本量 第第3章章 Mathematica的基本运算的基本运算 第第4章章 Mathematica函数作图函数作图 第第5章章 Mathematica微积分的基本操作微积分的基本操作 第第6章章 Mathematica微分方程的求解微分方程的求解 第第7章章 Mathematica程序设计程序设计 第第1章章 Mathematica概述概述 1.运行和启动 介绍如何启动Mathematica软件, 如何输入并运行命令 2.表达式的输入 介绍如何使用表达式 3.帮助的使用 如何在
2、Mathematica中寻求帮助。 1.1.1 Mathematica的启动和运行的启动和运行 Mathematica是美国Wolfram研究公司生产的一种 数学分析型的软件,以符号计算见长,也具有高 精度的数值计算功能和强大的图形功能。 假设在Windows环境下已安装好Mathematica4.0, 启动Windows后,在“开始”菜单的“程序”中 单击 ,就启动了Mathematica4.0, 在屏幕上显示如图的Notebook窗口,系统暂时取 名Untitled-1,直到用户保存时重新命名为止。 输入1+1,然后按下Shift+Enter键,这时系统开 始计算并输出计算结果,并给输入和
3、输出附上次 序标识In1和Out1,注意In1是计算后才出现的; 再输入第二个表达式,要求系统将一个二项式展 开,按Shift+Enter输出计算结果后,系统分别将 其标识为In2和Out2。如图 在Mathematica的Notebook界面下,可以用这种 交互方式完成各种运算,如函数作图,求极限、 解方程等,也可以用它编写像C那样的结构化程 序。 在Mathematica系统中定义了许多功能强大的函 数,我们称之为内建函数(built-in function), 直 接调用这些函数可以取到事半功倍的效果。这些 函数分为两类: (1) 一类是数学意义上的函数,如:绝对值函数 Absx,正弦函
4、数Sinx,余弦函数Cosx,以e 为底的对数函数Logx,以a为底的对数函数 Loga,x等; (2) 第二类是命令意义上的函数,如作函数图形的 函数Plotfx,x,xmin,xmax,解方程函数 Solveeqn,x,求导函数Dfx,x等。 Mathematica 严格区分大小写。 一般地,内建函数的首写字母必须大写, 有时一个函数名是由几个单词构成,则每 个单词的首写字母也必须大写,如:求局 部极小值函数FindMinimumfx,x,x0等。 第二点要注意的是,在Mathematica中,函 数名和自变量之间的分隔符是用方括号 “ ”,而不是一般数学书上用的圆括号 “( )”,初学者
5、很容易犯这类错误。 必须注意的是 如果输入了不合语法规则的表达式,系统会 显示出错信息,并且不给出计算结果。 例如:要画正弦函数在区间-10,10上的图 形,输入plotSinx,x,-10,10,则系统提示 “可能有拼写错误, 新符号plot 很像已经 存在的符号Plot”,实际上,系统作图命令 “Plot”第一个字母必须大写,一般地,系统 内建函数首写字母都要大写。再输入 PlotSinx,x,-10,10 ,系统又提示缺少右 方括号,并且将不配对的括号用蓝色显示, 如图 一个表达式只有准确无误,方能得出正确 结果。学会看系统出错信息能帮助我们较 快找出错误,提高工作效率。 1.1.2 表
6、达式的输入表达式的输入 Mathematica 提供了多种输入数学表达式 的方法。除了用键盘输入外, 还可以使用 工具栏或者快捷方式健入运算符、矩阵或 数学表达式。 1数学表达式二维格式的输入数学表达式二维格式的输入 Mathematic担提供了两种格式的数学表达 式。形如x/(2+3x)+y*(x-w)的称为一维格式, 形如 的称为二维格式。 你可以使用快捷方式输入二维格式,也可 用基本输入工具栏 输入二维格式。 可从FILE菜单中激活Palettes-Basic Input 工具栏,也可输入, 并且使用工具栏可输 入更复杂的数学表达式。 如图: 2特殊字符的输入特殊字符的输入 Mathem
7、Matica 还提供了用以输入各种特殊符号 的工具样。基本输入 工具样包含了常用的特殊字 符(上图),只要单击这些字符按钮即可输入。 若要输入其它的 特殊字符或运算符 号,必须使用从FILE 菜单中选取Complete Characters工具栏, 如图: 1.2 Mathematica的联机帮助系统的联机帮助系统 用Mathematica的过程中,常常需要了解一个命令 的详细用法,或者想知系统中是否有完成某一计算 的命令,联机帮助系统永远是最详细、最方便的资 料库 1获取函数和命令的帮助获取函数和命令的帮助:在Notebook界面下, 用 ?或 ? 可向系统查询运算符、函数和命令的定 义和用
8、法, 获取简单而直接的帮助信息。 例如, 向 系统查询作图函数Plot命令的用法?Plot 系统将给 出调用Plot的格式以及Plot命令的功能 (如果用两个 问号“?”,则信息会更详细一些)。? Plot* 给出 所有以Plot这四个字母开头的命令 2 Help菜单:菜单:任何时候都可以通过按F1键或点击 帮助菜单项Help Browser, 调出帮助菜单, 如下图所 示 Built-in Function 内建函数,按数值计算、代数计算、 图形和编程分类存放 Add-ons 有程序包(Standard Packages) MathLink Library等内容 The Mathematic
9、a Book 完整的Mathematica使用手册 Getting Started/ Demos 初学者入门指南和多种演示 Other Information 菜单命令的快捷键,二维输入格式等 Master Index 按字母命令给出命令、函数和选 项的索引表 其中的各按钮用途如下表所示 如果要查找Mathematica中具有某个功能的函数, 可以通过帮助菜单中的Mahematica使用手册,通 过其目录索引可以快速定位到自己要找的帮助信 息。 例如:需要查找Mathematica中有关解方程 的命令,单击“The Mathematica Book”按钮,再 单击“Contents”,在目录中
10、找到有关解方程的节 次,点击相应的超链接,有关内容的详细说明就 马上调出来了。如果知道具体的函数名,但不知 其详细使用说明,可以在命令按钮 Goto 右边的文 本框中键入函数名,按回车键后就显示有关函数 的定义、例题和相关联的章节。例如,要查找函 数Plot的用法,只要在文本框中键入Plot,按回车 键后显示如图的窗口, 再按回车键,则显示Plot函数的详细用法和例题。如果已经 确知Mathematica 中有具有某个功能的函数,但不知具体函 数名,可以点击Built-in Functions按钮,再按功能分类从粗 到细一步一步找到具体的函数,例如,要找画一元函数图形 的函数,点击Built-
11、in Functions -Graphics and Sound- 2D Plots-Plot,找到Plot的帮助信息。 如果知道具体的函数名,但不知其详细使用说明,可以在 命令按钮 Goto 右边的文本框中键入函数名,按回车键后就 显示有关函数的定义、例题和相关联的章节。例如,要查找 函数Plot的用法,只要在文本框中键入Plot,按回车键后显 示如图1-5的窗口,再按回车键,则显示Plot函数的详细用 法和例题。 如果已经确知Mathematica 中有具有某个功能的函数,但不 知具体函数名,可以点击Built-in Functions按钮,再按功能 分类从粗到细一步一步找到具体的函数,例
12、如,要找画一元 函数图形的函数,点击 Built-in Functions -Graphics and Sound-2D Plots-Plot,找到Plot的帮助信息。 第第2章章 Mathematica的基本量的基本量 1.数据类型和常量 mathematica中的数据类型和基 本常量 2.变量 变量的定义,变量的替换,变量 的清除等 3.函数 函数的概念,系统函数,自定义 函数的方法 4.表 表的创建,表元素的操作,表的 应用 5.表达式 表达式的操作 6.常用符号 经常使用的一些符号的意义 2.1 数据类型和常数数据类型和常数 1数值类型数值类型 在在Mathematic中,基本的数值类
13、型有四种:整数,中,基本的数值类型有四种:整数, 有理数、实数和复数。有理数、实数和复数。 如果你的计算机的内存足够大,如果你的计算机的内存足够大,Mathemateic 可以可以 表示任意长度的精确实数,而不受所用的计算机字长表示任意长度的精确实数,而不受所用的计算机字长 的影响。整数与整数的计算结果仍是精确的整数或是的影响。整数与整数的计算结果仍是精确的整数或是 有理数。有理数。 例如:例如:2的的100次方是一个次方是一个31位的整数:位的整数: ln1:=2100 Out1=1267650600228228229401496703205376 在Mathematica中允许使用分数,也
14、就是用有理数 表示化简过的分数。当两个整数相除而又不能整 除时,系统就用有理数来表示,即有理数是由两 个整数的比来组成如: In2:=12345/5555 Out2=2469/1111 实数是用浮点数表示的,实数是用浮点数表示的,Mathematica实数的有实数的有 效位可取任意位数,是一种具有任意精确度的近效位可取任意位数,是一种具有任意精确度的近 似实数,当然在计算的时候也可以控制实数的精似实数,当然在计算的时候也可以控制实数的精 度。实数有两种表示方法:一种是小数点另外一度。实数有两种表示方法:一种是小数点另外一 种是用指数方法表示的。如:种是用指数方法表示的。如: ln3:=0.23
15、9998 Out3=0.23998 ln4:=0.12*1011 Out4=0.12*1011 实数实数也可以与整数,有理数进行混合运算结果还也可以与整数,有理数进行混合运算结果还 是一个实数。是一个实数。 复数复数是由实部和虚部组成。实部和虚部可以用整 数,实数,有理数表示。在Mathematica中,用I 表示虚数单位如: In6:=3+0.7I Out6:=3+0.7I 2.不同类型数的转换不同类型数的转换 在Mathematica的不同应用中,通常对数字 的类型要求是不同的。例如在公式推导中的 数字常用整数或有理数表示,而在数值计算 中的数字常用实数表示。在一般情况下在输 出行Outn
16、中,系统根据输入行lnn的数字 类型对计算结果做出相应的处理。如果有一 些特殊的要求,就要进行数据类型转换。 在Mathematica中的提供以下几个函数达到 转换的目的: Nx将将x转换成实数转换成实数 Nx,n将将x转换成近似实数,转换成近似实数, 精度为精度为n Rationalizex给出给出x的有理数近似值的有理数近似值 Rationalizex,dx 给出给出x的有理数近似值的有理数近似值, 误差小于误差小于dx 举例举例 ln1=N5/3,20 Out1=1.66666666666666666667 ln2:=N%,10 Out2=1.66666667 二行输出是把上面计算的结果
17、变为二行输出是把上面计算的结果变为10位精度位精度 的数字。表示上一输出结果。的数字。表示上一输出结果。 In3=Rationalize% Out3=5/3 3.数学常数数学常数 Mathematica 中定义了一些常见的数学常数,这中定义了一些常见的数学常数,这 些数学常数都是精确数,例如表示圆周率。些数学常数都是精确数,例如表示圆周率。 Pi 圆周率,圆周率,= 3.1415926535897932 E 自然对数的底,自然对数的底, e= 2.7182818284590452 DegreePi/180 I虚数单位,虚数单位,I= -1 Infinity 无穷大无穷大 , Infinity负
18、无穷大负无穷大 ,- GoldenRatio 黄金分割数,黄金分割数,= 1.6180339887498948 数学常数可用在公式推导和数值计算中。数学常数可用在公式推导和数值计算中。 在数值计算中表示精确值在数值计算中表示精确值,如:如: In1:=Pi2 Out1= ln2:=Pi2/N Out2=9.86961 2 4.数的输出形式数的输出形式 在数的输出中可以使用转换函数进行不同数据类在数的输出中可以使用转换函数进行不同数据类 型和精度的转换。另外对一些特殊要求的格式还型和精度的转换。另外对一些特殊要求的格式还 可以使用如下的格式函数:可以使用如下的格式函数: NumberFormex
19、pr,n以以n位精度的实数形位精度的实数形 式输出实数式输出实数expr ScientificFormexpr以科学记数法输出实以科学记数法输出实 数数expr EngineeringFormexpr 以工程记数法输出实以工程记数法输出实 数数expr 例如:例如: ln1:=NPi30,30 Out1= ln2:=NumberForm%,10 Out2/NumberForm= 下面的函数输出幂值可被下面的函数输出幂值可被3整除的实数整除的实数 In3=EngineeringForm% Out3/EngineeringForm= 8.212893304027495815865035854341
20、014 8.2128933041014 821.2893304027495815865035854341012 2.2 变量变量 1变量的命名变量的命名 Mathematica中内部函数和命令都是以大 写字母开始的标示符。为了不会与它门混 淆,我们自定义的变量应该是以小写字母 开始,后跟数字和字母的组合,长度不限。 例如:a12,ast,aST都是合法的,而12a, z*a是非法的。另外在Mathematica中的变 量是区分大小写的 在Mathematica中,变 量不仅可以存放一个数值,还可以存放表 达式或复杂的算式。 2给变量赋值给变量赋值 在Mathmatica中用等号为变量赋值。同一
21、 个变量可以表示一个数值,一个数组,一个 表达式,甚至一个图形。如:如: In1:=x=3 Out1=3 In2:=x2+2x Out2=15 In3:=x=%+1 Out3=16 对不同的变量可同时赋不同的值, 例如: In4:=u,v,w=1,2,3 Out4=1,2,3 In5:=2u+3v+w Out5=11 对于已定义的变量,当你不再使用它时, 为防止变量值的混淆,可以随时用.清除 它的值,如果变量本身也要清除用函数 Clearx 例如例如 ln6:=u=. ln7:=2u+v Out7=2+2u 3.变量的替换变量的替换 在给定一个表达式时其中的变量可能取不在给定一个表达式时其中的
22、变量可能取不 同的值,这是可用变量替换来计算表达式同的值,这是可用变量替换来计算表达式 的不同值。方法为用的不同值。方法为用expr/.例如:例如: In1:=f=x/2+1 Out1= In2:=f/.x-1 Out2= In3:=f/.x-2 Out3=3 1 x 2 3 2 如果表达式中有多个变量也可以同时替换 方法为例如有两个: expr/.x-xval,y-val In4:=(x+y)(x-y)2/.x-3,y-1-a Out4= (4 - a) (2 + a)2 2.3 函数函数 1系统函数系统函数 在Mathmatic中定义了大量的数学函 数可以直接调用,这些函数其名称一 般表达
23、了一定的意义,可以帮助我们 理解。下面是几个常用的函数: Floorx 不比x大的最大整数 Ceilingx 不比x小的最小整数 Signx 符号函数 Roundx 接近x的整数 Absx x绝对值 Maxx1,x2,x3.x1,x2,x3.中的最大值 Minx1,x2,x3. x1,x2,x3.中的最小值 Random 01之间的随机函数 RandomReal,xmax0 xmax之间的随机函数 RandomReal,xmin, xmax xminxmax之间的随机函数 Expx 指数函数 Logx 自然对数函数lnx Logb,x 以b为底的对数函数 Sinx,Cosx,Tanx, Csc
24、x,Secx,Cotx 三角函数(变量是以弧度为单 位的) Sinhx,Coshx,Tanhxx, Cschx,Sechx,Cothx 双曲函数 ArcSechx,ArcCothx 双曲函数 Modm,n m被n整除的余数,余数 与n的符相同 Quotientm,n m/n的整数部分 GCDn1,n2,n3或 GCDs n1,n2,的最大公约数, s为一数集合 LCMn1,n2或LCMs n1,n2.的最小公倍数, s为数据集合 n!n的阶乘 n!n的双阶乘 Mathematica中的函数与数学上的函数有 些不同的地方,Mathematica中函数是一个 具有独立功能的程序模块,可以直接被调
25、用。同时每一函数也可以包括一个,或多 个参数,也可以没有参数。参数的的数据 类型也比较复杂。更加详细的可以参看系 统的帮助,了解各个函数的功能和使用方 法是学习Mathematica软件的基础 2函数的定义函数的定义 (1)函数的立即定义)函数的立即定义 立即定义函数的语法如下立即定义函数的语法如下 fx_=expr 函数名为函数名为f,自变量为自变量为x,expr是表达式。在执行时是表达式。在执行时 会把会把expr 中的中的x都换为都换为f的自变量的自变量x(不是不是x_)。函。函 数的自变量具有局部性,只对所在的函数起作用。数的自变量具有局部性,只对所在的函数起作用。 函数执行结束后也就
26、没有了,不会改变其它全局函数执行结束后也就没有了,不会改变其它全局 定义的同名变量的值。请看下面的例子定义的同名变量的值。请看下面的例子 定义函数定义函数 fx_=x*Sinx+x2 对定义的函数我们可对定义的函数我们可 以求函数值,也可绘制它的图形。以求函数值,也可绘制它的图形。 对于定义的函数我们可以使用命令Clearf清 除掉而Removef则从系统中删除该函数。 (2)多变量函数的定义)多变量函数的定义 也可以定义多个变量的函数,格式为 fx_,y_,z_,=expr 自变量为x,y,z.,相应的expr中的自变量 会被替换。 例如定义函数 f(x,y)=xy+ycosx (3)延迟定
27、义函数)延迟定义函数 延迟定义函数从定义方法上与即时定义的 区别为“=”与“:=”延迟定义的格式为fx_: =expr其他操作基本相同。那么延迟定义和 即时定义的主要区别是什么?即时定义函 数在输入函数后立即定义函数并存放在内 存中并可直接调用。延时定义只是在调用 函数时才真正定义函数。 (4)使用)使用If命令定义函数命令定义函数 如果要定义如: 这样的分段函数可以用If语句来定义。 If语句的格式为If条件,值1,值2如果条 件成立取“值1”,否则取“值2”,下面用If 语句的定义结果 这里使用了两个If嵌套 2.4 表表 将一些相互关联的元素放在一起,使它们 成为一个整体。既可以对整体操
28、作,也可 以对整体中的一个元素单独进行操作。在 Mathematica中这样的数据结构就称作表 (List)。表主要有三个用法:表a,b,c 可以表示一个向量;表a,b,c,d可表示 一个矩阵。 1建建 表表 在表中元素较少时,可以采取直接列表的 方式列出表中的元素,如1,2,3.请看下 面的操作 In1:=1,2,3 Out1=1,2,3 下面是符号表达式的列表下面是符号表达式的列表 In2:=1+%x+x% Out2=1+2x,1+2x+x2,1+3x+x2 下面是对列表中的表达式对x求导 In3:=D%,x Out3=2,2+2x,3+3x2 In4:=%/.x-1 Out4=2,4,6
29、 如果表中的元素较多时,可以用建表函数 进行建表。 Tablef,I,min,max,ste p 以以step为步长给出为步长给出f的数的数 值表,值表,i由由min变到变到max Tablef,min,max 给出给出f的数值表,的数值表,I由由min 变到变到max 步长为步长为1 Tablef,max 给出给出max个个f的表的表 Tablef,I,imin,imax,j, jmin,jmax,. 生成一个多维表生成一个多维表 TableFormlist 以表格格式显示一个表以表格格式显示一个表 Rangen 生成一个生成一个1,2,. 的列表的列表 Rangen1,n2,d 生成生成n
30、1, n1+d, n1+d , ., n2的列表的列表 下面给出x乘i的值的表,i的变化范围为2,6: In1:=Tablex*i,i,2,6 Out1=2x,3x,4x,5x,6x In2:=Tablex2,4 Out2=x2,x2,x2,x2 用用Range函数生成一个序列数函数生成一个序列数 In3:=Range10 Out3=1,2,3,4,5,6,7,8,9,10 下面这个序列是以步长为下面这个序列是以步长为2,范围从,范围从8到到20 In4:=Range8,20,2 Out4=8,10,12,14,16,18,20 上面的参数变化都是只有一个,也可制成 包括多个参数的表,下面生成
31、一个多维表: In5:=Table2i+j,i,1,3,j,3,5 Out5=5,6,7,7,8,9,9,10,11 使用函数TableForm可以以表格的方式输出 In6:=%/TableForm Out6/TableForm=5 6 7 7 8 9 9 10 11 2表的元素的操作表的元素的操作 当当t表示一个表时,表示一个表时,ti或者或者 Partt,i 表示表示t 中的第中的第i个子表。如果个子表。如果t=1,2,a,b, 那么那么t3 表示表示“a”。 如:如: ln1:=t=TableI+2,jI,1,3,j,3,5 Out1=7,9,11,8,10,12,9,11,13 ln2
32、:=t2 Out2=8,10,12 表的操作表的操作 e1,e2,.e1,e2,. 一个表,元素可以为任意表达式,无穷嵌一个表,元素可以为任意表达式,无穷嵌 套套 Tableexpr,imax Tableexpr,imax 生成一个表,共生成一个表,共imaximax个元素个元素 Tableexpr,i,imax Tableexpr,i,imax 生成一个表,共生成一个表,共imaximax个元素个元素exprexpr间间 Table(expr,iTable(expr,i,imin,imaximin,imax, j,jmin,jmax,. j,jmin,jmax,. 多维表多维表 Rangei
33、max Rangeimax 简单数表简单数表f1f1,2+2+,imax) imax) RangeiminRangeimin,imaximax,di di 以以didi为步长的数表为步长的数表 Arrayf,n Arrayf,n 一维表,元素为一维表,元素为fIfI(i(i从从1 1到到n)n) Arrayf,n1,n2. Arrayf,n1,n2. 多维表,元素为玎多维表,元素为玎i i小小1 (1 (各自从各自从1 1到到ni)ni) IdentityMatrixn IdentityMatrixn n n阶单位阵阶单位阵 DiagonalMatrixlist DiagonalMatrixl
34、ist 对角阵对角阵 1、制表函数、制表函数 2、元素操作、元素操作 Partexpr,i或或expri 第第i个元素个元素 expr-i 倒数第倒数第i个元素个元素 expri,j,. 多维表的元素多维表的元素 expri1,i2,. 返回由第返回由第i(n)的元素组成的子表的元素组成的子表 FirstCexpr 第一个元素第一个元素 Lastexpr 最后一个元素最后一个元素 Headexpr 函数头,等于函数头,等于expr0 Extractexpr,list 取出由表取出由表list指定位置上指定位置上expr的元素值的元素值 Takelist,n 取出表取出表list前前n个元素组成
35、的表个元素组成的表 Takelist,m,n 取出表取出表list从从m到到n的元素组成的表的元素组成的表 Droplist,n 去掉表去掉表list前前n个元素组下的表个元素组下的表 Restexpr 去掉表去掉表list第一个元素剩下的表第一个元素剩下的表 Select USt,crit 把把crit作用到每一个作用到每一个list的元素上,为的元素上,为True的所有的所有 元素组成的表元素组成的表 Lengthexpr expr第一层元素的个数第一层元素的个数 Dimensionsexpr 表的维数返回表的维数返回(n1,n2.,expr为一个为一个nl*n2的阵的阵 TensorRa
36、nkexpr) 秩秩 Depthexpr expr最大深度最大深度 Levelexpr,n 给出给出expr中第中第n层子表达式的列表层子表达式的列表 CountUSt,paUem 满足模式的满足模式的list中元素的个数中元素的个数 MembefQ1ist, form list中是否有匹配中是否有匹配form的元素的元素 FreeQexpr,form MemberQ的反函数的反函数 FreeQexpr,form 表中匹配模式表中匹配模式pattern的元素的位置列表的元素的位置列表 Casese1,e2, pattem 匹配模式匹配模式pattem的所有元素的所有元素ei的表的表 3 3、表
37、的操作、表的操作 Appendexpelem 返回在表返回在表expr的最后追加的最后追加elem元素后的元素后的 表表 Prependexpr,elem) 返回在表返回在表expr的最前添加的最前添加elem元素后的元素后的 表表 Insert1ist,elem,n 在第在第n元素前插入元素前插入elem lnsertexpr,elem,i, j,. 在元素在元素expri,j,.前插入前插入elem Deleteexpr,i,j,.删除元素删除元素expri,j,.后剩下的表后剩下的表 DeleteCasesexpr,pa ttem 删除匹配删除匹配pattern的所有元素后剩下的表的所有
38、元素后剩下的表 ReplacePartexpr,ne w,n 将将expr的第的第n元素替换为元素替换为new Sortlist返回返回list按顺序排列的表按顺序排列的表 Reverseexpr把表把表expr倒过来倒过来 RotateLeftexpr,n把表把表expr循环左移循环左移n次次 RotateRightexpr,n 把表把表expr循环右移循环右移n次次 Partitionlist,n 把把list按每按每n个元素为一个子表分割后个元素为一个子表分割后 再组成的大表再组成的大表 Flatten1istl抹平所有子表后得到的一维大表抹平所有子表后得到的一维大表 Flatten1i
39、st,n抹平到第抹平到第n层层 Split1ist 把相同的元素组成一个子表,再合成把相同的元素组成一个子表,再合成 的大表的大表 2.5 表达式表达式 1. 表达式的含义表达式的含义 Mathematica 能处理数学公式,表以及图能处理数学公式,表以及图 形等多多种数据形式。尽管他们从形式上形等多多种数据形式。尽管他们从形式上 看起来不一样,但在看起来不一样,但在Mathematica内部都内部都 被看成同种类型,即都把他们当作表达式被看成同种类型,即都把他们当作表达式 的形式。的形式。Mathematica 中的表达式是由常中的表达式是由常 量、变量、函数、命令、运算符和括号等量、变量、
40、函数、命令、运算符和括号等 组成,他最典型的形式是组成,他最典型的形式是fx,y 2表达式的表示形式表达式的表示形式 在显示表达式时,由于需要的不同,有时我们在显示表达式时,由于需要的不同,有时我们 需要表达式的展开形式,有时又需要其因子乘需要表达式的展开形式,有时又需要其因子乘 积的形式。在我们计算过程中可能得到很复杂积的形式。在我们计算过程中可能得到很复杂 的表达式,这时我们又需要对它们进行化简。的表达式,这时我们又需要对它们进行化简。 常用的处理这种情况的函数。变换表达式表示常用的处理这种情况的函数。变换表达式表示 形式函数形式函数 表达式表示形式函数表达式表示形式函数 意义意义 Exp
41、andexpr 按幂次升高的顺序展开表达式按幂次升高的顺序展开表达式 Factorexpr 以因子乘积的形式表示表达式以因子乘积的形式表示表达式 Simplifyexpr 进行最佳的代数运算,并给出表进行最佳的代数运算,并给出表 达式的最少项形式达式的最少项形式 表达式(x+y)4 (x+y2) 展开: 还原上面的表达式为因子乘积的形式: 3关系表达式与逻辑表达式关系表达式与逻辑表达式 我们已经知道“”表示给变量赋值。现在我们 来学习一些其它的逻辑与关系算子。关系表达式 是最简单的逻辑表达式,我们常用关系表达式表 示一个判别条件。例如:x0, y=0。关系表达式 的一般形式是:表达式关系算子表
42、达式。其 中表达式可为数字表达式、字符表达式或意义更 广泛的表达式,如一个图形表达式等。在我们实 际运用中,这儿的表达式常常是数字表达式或字 符表达式。 下面出Mathematica中的各种关系算子。 x=y相等 x!=y不相等 xy大于 x=y大于或等于 xy小于 xyz,etc严格递减 给变量x,y赋值,输出后以变量的值,如: In1:=x=2;y=9 Out1=9; In2:=xy Out2=False 下面是比较两个表达式的大小 In3:=32y+1 Out3=True 用一个关系式只能表示一个判定条件,要表示几 个判定条件胡组合,必须用逻辑运算符将关系表 达式组织在一起,我们称表示判
43、定条件的表达式 为逻辑表达式。 下面是常用的逻辑运算和它们的意义 !:非、 Printt 全局变量t的值仍为10: ln3=t=10 Out3=10 全局变量t的值仍为10: ln6:=t=10 Out6=10 Mathematica 中的模块允许你把某变量名看作局中的模块允许你把某变量名看作局 部变量名。然而又存在有时你又希望它们为全局部变量名。然而又存在有时你又希望它们为全局 变量时变量时,但变量值为局部的矛盾但变量值为局部的矛盾,这时我们可以用这时我们可以用 Block 函数。下面是一个含有全局变量函数。下面是一个含有全局变量x表达式表达式, 使用使用x的局部值计算上面的表达式的局部值计
44、算上面的表达式: Modulevars,body所要做的是把执行模块 时表达式body的形式看成Mathematica程序 的“代码”。然而当“代码”中直接出现 变量vats时,这些vars都将被看作局部的。 Blockvats,body并不查看表达式body的形 式,而在整个计算Body的过程中,实用 vars的局部值。 ln12:=m=i2 Out12:=i2 In13:=Blocki=a,i+m Out13=a+a2 In14:=Modulei=a,i+m Out14=a+i2 7.2 条件结构条件结构 条件结构的常用形式 Iftest,then,else 如如test为真为真, 计算计
45、算then,反之,反之 计算计算else whichtest1,value1,test2,. 依次计算依次计算testl,给出对应的,给出对应的 第一个为真的值第一个为真的值 Switchexpr,forml,value1,for m2,. expr与每一个与每一个formi相比较,相比较, 给出第一个相匹配的值给出第一个相匹配的值 Switchexpr,form1, value1,form2,,_,def 用用def为系统默认值为系统默认值 1. If命令命令 ln1:=If 10, 1+2, 2+3 Out1=3 2Which命令命令 有时条件多于两个,在这种情况下可用If函 数的嵌套方式
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年电梯日管控、周排查、月调度管理制度及管控清单
- 湖北省丰溪镇中学2025-2026学年中考化学试题疯狂小题抢高分含解析
- 山东省临沂商城外国语校2026年初三4月阶段测试生物试题含解析
- 重庆江南新区2026年初三生物试题9月17日第3周测试题含解析
- 广东省清远市阳山县2025-2026学年初三第二学期第二次综合练习化学试题理试卷含解析
- 四川省达州市通川区2025-2026学年初三第二次(2月)联考化学试题试卷含解析
- 新疆兵团八师一四三团一中学2026年初三化学试题二模冲刺试题(九)含解析
- 安徽省当涂县重点达标名校2025-2026学年初三7月调研考试(化学试题理)试题含解析
- 2026年浙江湖州德清县市级名校初三下学期第一次在线月考化学试题含解析
- 一般公司考勤奖惩制度
- 近三年内未发生重大事故的安全生产承诺范本
- 岳阳职业技术学院单招职业技能测试参考试题库(含答案)
- 量子密码学与后量子密码学
- 部编版四年级下册语文写字表生字加拼音组词
- 威斯特年产10000吨纳米铜盐系列产品、6000吨叔丁基过氧化氢精馏及3000吨糊状过氧化二苯甲酰项目环境影响报告
- 广西-黄邵华-向量的数量积
- 1.2 国内外网络空间安全发展战略
- 2023年湖南省长沙县初中学生学科核心素养竞赛物理试题(含答案)
- 东北大学最优化方法全部课件
- 人教新课标六年级数学下册全册大单元教学设计(表格式)
- EBSD入门简介姚宗勇课件
评论
0/150
提交评论