版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Mathematica数学实验北京交通大学北京交通大学第一章第一章 Mathematica 基础知识基础知识 1.1 Mathematica 概述概述1.1.1 Mathematica 简介Mathematica Mathematica 作为一个功能强大的常用数学软件作为一个功能强大的常用数学软件, , 不不但可以解决数学中的数值计算问题但可以解决数学中的数值计算问题, , 还可以解决符号还可以解决符号演算问题演算问题, , 并且能够方便地绘出各种函数图形。并且能够方便地绘出各种函数图形。MathematicaMathematica自自19881988年由美国的年由美国的Wolfram Res
2、earchWolfram Research公公司首次推出司首次推出Mathematica1.0Mathematica1.0版本以来版本以来, ,随着随着Wolfram Wolfram ResearchResearch公司对它的不断改进公司对它的不断改进, ,先后推出了先后推出了Mathematica1.2Mathematica1.2、Mathematica2.0Mathematica2.0、Mathematica2.2Mathematica2.2、Mathematica3.0Mathematica3.0、Mathematica4.0Mathematica4.0等版本。等版本。下面看一些用下面看
3、一些用mathematicamathematica做的一些例子做的一些例子: :见图见图 -2246x-20-10102030y1.1.2 Mathematica 的安装和进入的安装和进入/退出退出(1) Windows 版本的版本的Mathematica 安装步骤为安装步骤为:启动启动Windows 操作系统操作系统, 打开打开Windows 资源管理器资源管理器;在在Windows 资源管理器中选择资源管理器中选择Mathematica 系统安装盘系统安装盘, 察察看磁盘中的安装文件看磁盘中的安装文件Setup;用鼠标双击安装文件用鼠标双击安装文件Setup, 屏幕上出现一些选择对话框屏幕
4、上出现一些选择对话框;用鼠标点击所有选择对话框的用鼠标点击所有选择对话框的OK按钮或键入字母按钮或键入字母y, 则系统就则系统就在你的计算机上安装了在你的计算机上安装了Mathematica数学软件。数学软件。Mathematica 的安装成功后的安装成功后, 系统会在系统会在Windows【开始】菜【开始】菜单的【程序】子菜单中加入启动单的【程序】子菜单中加入启动Mathematica命令的图标命令的图标, 用用鼠标单击它就可以启动鼠标单击它就可以启动Mathematica系统系统,见下图:见下图:启动Mathematica后, 屏幕上出现称为Notebook 的Mathematica系统集
5、成界面: nMathematica在用户区输入的内容被 Mathematica用一个具有扩展名为 “.ma” 的文件名来纪录,该文件名是退出Mathematica时保存在用户区输入内容的默认文件名,一般是文件名:“Newnb-1.ma” 。n 退出Mathematica系统像关闭一个Word文件一样, 只要用鼠标点击Mathematica系统集成界面右上角的关闭按钮即可。关闭前, 屏幕会出现一个对话框, 询问是否保存用户区的内容, 如果单击对话框的“否(N)”按钮, 则关闭Notebook窗口, 退出Mathematica系统; 如果单击对话框的“是(Y)”按钮, 则先提示你用一个具有扩展名为
6、 .ma 的文件名来保存用户区内的内容, 再退出Mathematica系统。 在在Notebook用户区用户区, 从开始输入到按下从开始输入到按下Shift+Enter组合键称为组合键称为Mathematica一个输入。一个输入。Mathematica中的每个输出或图形的右边也都有一个方括号中的每个输出或图形的右边也都有一个方括号, 这些方括这些方括号括起的内容称为号括起的内容称为Cell, 而方括号是这个而方括号是这个Cell的手柄的手柄。Cell是是Notebook的基本单元的基本单元, Notebook中的所有内中的所有内容都被组成有序的容都被组成有序的 Cell。由若干个。由若干个Ce
7、ll可以组成按组分可以组成按组分级排列的复合级排列的复合Cell(见后面的图见后面的图)。复合。复合Cell的手柄是最的手柄是最外层的大方括号。用鼠标单击某个外层的大方括号。用鼠标单击某个Cell的手柄,对应的方的手柄,对应的方括号变黑表示已经选定这个括号变黑表示已经选定这个Cell了了, 此时此时, 你可以使用复你可以使用复制、删除及粘贴等功能处理所选定的制、删除及粘贴等功能处理所选定的Cell中的内容。中的内容。1.1.4 Mathematica操作的注意事项操作的注意事项(1)在Notebook 用户区用户输入完Mathematica命令后, 还要按下Shift+Enter组合键, Ma
8、thematica才能执行你输入的Mathematica命令。(2)在Notebook用户区如果某个命令一行输入不下,可以用按下Enter 键的方法来达到换行的目的。(3)在Notebook用户区除了可以用直接键盘输入的方法进行输入外, 还可以用打开的方式从磁盘中调入一个已经存在的具有扩展名为 .ma 的文件来进行操作。(4)每次输入完Mathematica命令并按下Shift+Enter组合键, 通常系统会在输入内容的前一行自动加入符号Inn=:以表出此次输入是第n次输入。如果用户不想计算机显示此次输入的结果,只要在所输入命令的后面再加上一个分号“;”即可以达到目的。如:l In1:= x=
9、 2 + 3 Out1=5l In2:= x = 2 + 3 ; 不显示结果51.2 Mathematica 中的数据中的数据1.2.1 Mathematica 中的数据类型和数学常数中的数据类型和数学常数Mathematica提供的简单数据类型有整数、有理数、实数和复数4种类型,这些数据在Mathematica中有如下的要求:(1)整数描述为Integer,是可以具有任意长度的精确数。书写方法同于我们通常的表示,输入时,构成整数的各数字之间不能有空格、逗号和其它符号,整数的正负号写在该数的首位,正号可以不输入。如:2367189、-932是正确的整数。 (2)有理数描述为Rational,用
10、化简过的分数表示,但其中分子和分母都应该是整数,有理数是精确数,输入时分号用“ / ”代替,即使用“分子 分母”的形式。如:23/45、- 41/345 是正确的有理数。(3)实数描述为Real,是除了整数和有理数之外的所有实数。与一般高级语言不同的是这里数学中的无理数是可以有任意精确度的近似数, 如圆周率, 在Mathematica中它可以根据需要取任意位有效数字。(4)复数描述为Complex,用是否含有虚数单位I来区分,它的实部和虚部可以是整数、有理数和实数。如:.3I、18.5I都是正确的复数。 为了方便数学处理和计算更准确,为了方便数学处理和计算更准确,Mathematica定义了一
11、些数学常数,它们用英文字符串表示,定义了一些数学常数,它们用英文字符串表示,常用的有:常用的有:lPi 表示圆周率=3.14159lE 表示自然数e =2.71828lDegree 表示几何的角度1或 /180lI 表示虚数单位-1开平方Il Infinity 表示数学中的无穷大 注意:注意:数学常数是精确数,可以直接用于输入的公式中,作 为精确数参与计算和公式推导。 1.2.2Mathematica数的运算符数的运算符 数的运算有:加、减、乘、除和乘方数的运算有:加、减、乘、除和乘方,它们在它们在Mathematica中的符号为:加()、减()、乘(中的符号为:加()、减()、乘(*)、除(
12、)、除(/)和)和乘方(乘方() 。不同类型的数参与运算,其结果的类型为:l如果运算数有复数,则计算结果为复数类型;l如果运算数没有复数,但有实数,则计算结果为实数类型l如果运算数没有复数和实数,但有分数,则计算结果为有理数类型l如果运算数只有整数,则计算结果或是整数类型(如果计算结果是整数);或是有理数类型(如果计算结果不是整数)。1.2.3Mathematica 中的精确数与近似数中的精确数与近似数lMathematica的的近似数近似数是带有小数点的数是带有小数点的数;精确数精确数是整数、是整数、有理数、数学常数以及函数在自变量取整数、有理数、数有理数、数学常数以及函数在自变量取整数、有
13、理数、数学常数时的函数值学常数时的函数值。如: 62243、2/3、E、Sin4都是精确数。如果参与运算或求值的数带有小数点,则运算结果通常为带有位有效数字的近似数,如:l In3: = 1.2345678020/30 l Out3=0.0411523 结果为近似数l In4: = 2+Sin1.0 l Out4= 2.84147 结果为近似数l In5: = 2+Sin1 l Out5= 2 + Sin1 结果为精确数l如果需要精确数的数值结果(除了整数之外),可以用Mathematica提供的N函数函数将其转化,N函数可以得到该精确数的任意精度的近似结果,其形式有两个:例如:l In6:
14、= 2*E+Sin Pi/5 / Nl Out6= 6.02345l In7:= N 2*E+SinPi/5 , 30 l Out7= 6.024348909210563599889280897341.2.4 Mathematica中的表中的表 l表可以用来表示数学中的集合、向量、矩阵和数据库中的纪录。在Mathematica中,任何用一对花括号括起来的一组元素都代一个表,其中的元素用逗号分隔且各元素可以具有不同的类型,特别其中的元素还可以是一个表。l 表的形式是表的形式是: 元素元素1,元素,元素2,元素,元素3,元素元素n l如:1,3,5、3,x,1,y,4都是表。建表命令有如下几种形式
15、建表命令有如下几种形式: 命令形式命令形式1: Table 通项公式通项公式f(i),i ,imin,imax,h功能:功能:产生一个表 f(imin) ,f(imin +h),f(imin +2h), ,f(imin +nh) 其中: imax h imin + nh imax , h0例如:例如:建立一个表12,32,192命令:命令:In8: = Table i2 , i , 1, 19 , 2 Out8= 1, 9, 25, 49, 81, 121, 169, 225, 289, 361 命令形式命令形式2: Table 通项公式通项公式f(i),i ,imin,imax功能:功能:产
16、生一个表 f(imin) ,f(imin +1),f(imin +2),f(imin +n)其中: imax 1 imin + n imax例如:例如:建立一个表22,102命令:命令:In9: = Tablei2, i, 2 , 10 Out9= 4, 9, 16, 25, 36, 49, 64, 81, 100 命令形式命令形式3: Table 通项公式通项公式f,循环次数循环次数n, f为常数为常数功能:功能:产生n个f的一个表 f ,f,f,f 例如例如:建立产生8个2一个表2,2,2,2,2,2,2,2命令:命令:In10: = Table2, 8 Out10= 2,2,2,2,2,
17、2,2,2 命令形式命令形式4: Table 通项公式通项公式f(i , j),i ,imin,imax,j ,jmin,jmax功能:功能:产生一个二维表 f(imin, jmin) ,f(imin, jmin +1),f(imin, jmin +2),, f(imin, jmin +m), f(imin+1, jmin) ,f(imin+1, jmin +1), f(imin+1, jmin +2), , f(imin+1 , jmin +m), f(imin+n, jmin) ,f(imin+n, jmin +1),f(imin+n, jmin +2), ,f(imin +n, jmin
18、 +m)其中: imax 1 imin + n imax , jmax 1 jmin +m jmax例如例如 :In11: = Tablei-j, i, 1 , 6, j, 1 , 2 Out11= 0, -1, 1, 0, 2, 1, 3, 2, 4, 3, 5, 4 表的分量表示:表的分量表示:有时为了某种需要,希望取出表中的某一或某些元素有时为了某种需要,希望取出表中的某一或某些元素参与后面的运算和处理。常用表示表分量的命令有参与后面的运算和处理。常用表示表分量的命令有: 命令形式命令形式1: 表表 序号序号n 功能:功能:取出表中序号为取出表中序号为n的元素的元素例如:例如:取出表取出
19、表1, 9, x, 49, 81, 121, 169, 225, 289, 361的的正数第正数第3个元素、第个元素、第6个元素、和倒数第个元素、和倒数第2个元素的命令依个元素的命令依次为:次为:命令:命令:In12: = 1, 9, x, 49, 81, 121, 169, 225, 289, 361 3 Out12=xIn13: = 1, 9, x, 49, 81, 121, 169, 225, 289, 361 6 Out13=121,169In14: = 1, 9, x, 49, 81, 121, 169, 225, 289, 361 -2Out14=289命令形式命令形式2: 表表序
20、号n 1, 序号n 2, 序号n 3,,序号n m功能:功能:取出由表中序号分别为n1, n2, n3,,nm 的m个元素组成的一个表,其中序号n1, n2, n3,,n m可以重复。例如:例如:取出由表1, 9, x, 49, 81, 121, 169, 225, 289, 361中序号分别为1,3,3,6,-1 的5个元素组成的一个表:命令:命令:In15: = 1, 9, x, 49, 81, 121, 169, 225, 289, 361 1,3,3,6,-1 Out15= 1, x, x, 121, 169, 361命令形式命令形式3: 表表序号序号n1,序号,序号n2功能:功能:取
21、出表中序号为n1 元素(该元素必须是一个表)的序号为 n2的元素。例如:例如:取出表1, 9, x, 49, 81, 121, 169, 225, 289, 361中序号为6的元素的正数第二个元素命令:命令:In16: = 1, 9, x, 49, 81, 121, 169, 225, 289, 361 6,2 Out16= 169 表的运算函数表的运算函数 Mathematica 表的运算函数有很多,这里介绍两个常用的函数:例如例如:写出将表1, 9, 49, 81, 225, 289, 361中所有元素相加存放在变量x中、将表1, 9, 49, 81, 225, 289, 361中所有元素
22、相乘存放在变量y中的Mathematica命令。命令命令:In17: = t=1, 9, 49, 81, 225, 289, 361 In18= x = ApplyPlus, t Out18=1015 In19= y = ApplyTimes, t Out19=838515647025函数形式函数形式 功能功能ApplyPlus, 表表对表中所有元素求和ApplyTimes, 表表对表中所有元素求积1.3 Mathematica 中的变量中的变量 1.3.1 Mathematica的变量命名的变量命名nMathematica的变量名规定为任何小写英文字母或以小写英文字母开的变量名规定为任何小写
23、英文字母或以小写英文字母开头后跟若干字母或数字表示的字符串头后跟若干字母或数字表示的字符串,如x,y,ae3,d3er45都是合法的变量名。n一般Mathematica的变量名不用小写字母。如果在某些情况下一定要用大写字母,应该注意不要与Mathematica中的数学常数和内部函数或命令的混淆。Mathematica中的变量名是区分大小写字母中的变量名是区分大小写字母的,如在Mathematica中,ab与 Ab表示两个不同的变量。 n变量名中的字符之间不能有空格变量名中的字符之间不能有空格,因为变量名中的空格在因为变量名中的空格在Mathematica中被理解为变量的乘积。中被理解为变量的乘
24、积。如:abcd与ab cd有不同的含义,前者表示一个变量abcd, 而后者Mathematica会将其看成两个变量ab 和cd的乘积关系。 n变量名不能以数字开头的字符串来表示,如果在变量名不能以数字开头的字符串来表示,如果在Mathematica里出现里出现了这种字符串,了这种字符串,Mathematica将其理解为数字与变量的乘积将其理解为数字与变量的乘积。例如: 以数字开头的字符串3asd,在Mathematica中表示3乘以变量asd 即3asd表示3*asd。n在Mathematica中变量使用前不必先定义变量类型。Mathematica变变量的类型可以不断变化,取决于其中所存数据
25、的类型;变量不但可以量的类型可以不断变化,取决于其中所存数据的类型;变量不但可以存放前面所提到的四种数据数,而且可以存放一个方程式、一个图形存放前面所提到的四种数据数,而且可以存放一个方程式、一个图形或更复杂的关系式。或更复杂的关系式。1.3.2 Mathematica中的变量取值与清除中的变量取值与清除n如果一个变量在程序运行中没有被存储内容如果一个变量在程序运行中没有被存储内容, 此时该变量名只是一此时该变量名只是一般的数学符号参与程序的处理。如果变量被存储了内容般的数学符号参与程序的处理。如果变量被存储了内容, 称为变量称为变量取值。变量取值之后取值。变量取值之后,该变量就用存入的内容参
26、与程序的处理。在该变量就用存入的内容参与程序的处理。在Mathematica中,变量获取值的方式有三种:中,变量获取值的方式有三种:变量赋值、键盘输入变量赋值、键盘输入和变量替换和变量替换。下面分别介绍这三种方式:。下面分别介绍这三种方式:(1)变量赋值方式)变量赋值方式 变量赋值方式是变量取值的最常用的方式。Mathematica中变量赋值的一般形式为中变量赋值的一般形式为: 变量变量 = 表达式表达式 这里“=”称为赋值号,表达式是广义的表达式,即它可以是数值和通常意义的数学表达式,还可以是一个方程或图形等。例如: In20: = x = 2+2 Out20= 4 In21:= x*x x
27、 + 1 Out21= 13(2)键盘输入方式)键盘输入方式 键盘输入方式是变量取值的另一种常用的方式,多用于需要在命令或程序的运行中由用户从键盘上临时键入的人机交互式变量取值。 Mathematica中键盘输入命令形式为中键盘输入命令形式为: 变量变量= Input 当遇到上面的键盘输入命令后,计算机在屏幕上给出一个输入小窗口,等待用户在其中从键盘上键入一个表达式,键入完毕后,用鼠标点击“OK”按扭后,计算机将键入的表达式求值后,将结果存储在算等号左边的变量中。这里“=”是赋值号。 例如: In22: = x = Input *变量x等待键盘输入赋值 (见图) Out22= 23 (*此时此
28、时x从键盘上被赋值从键盘上被赋值23) In23:= x + 1 Out23= 24下一页下一页返回返回(3)变量替换)变量替换变量替换类似于数学中的计算函数在某一点的函数值。Mathematica中变量替换的一般形式为中变量替换的一般形式为:表达式表达式 / . 变量名变量名1 表达式表达式1 或 表达式表达式 / . 变量名变量名1 表达式表达式1, 变量名变量名2 表达式表达式2, 这里符号符号“/.”是由键盘上的两个符号是由键盘上的两个符号“/”和和“.”组成的,中间不能有空格组成的,中间不能有空格。同样,“ ”也是由键盘上的两个符号也是由键盘上的两个符号“ ”和和“”组成的组成的,
29、中间也不能有空中间也不能有空格格。例如: In24: = 2x+3y /. x - 2.1 Out24= 4.2 + 3 y In25:= 2x+3y /.x - 2.1, y -1 + a Out25= 4.2 + 3 (1 + a) 清除变量的含义是清除给变量所赋的值,它的命令形式为命令形式为:变量名变量名=.或Clear变量名变量名1,变量名变量名2,清除变量后,变量名就还原成一般的数学符号了。 1.3.3 Mathematica中有关变量的注意事项中有关变量的注意事项 使用变量前先用清除命令清除其中的内容使用变量前先用清除命令清除其中的内容 Mathematica中的变量名还可以用作代
30、数中的数学符号,在Mathematica的命令或程序中出现的任何合法的变量名符号,如果该变量名所代表的变量没有被赋值,则它就作为数学算式中的符号参与数学的公式推导和运算;如果该变量被赋值了,则用该变量所赋的值参与对应数学的公式推导和运算。因此,如果用户在做符号运算时使用的符号有被赋值的变量名,则就会出现察觉不到的错误。 变量替换时变量本身还是数学符号,没有发生变量赋值的行为变量替换时变量本身还是数学符号,没有发生变量赋值的行为 如: In26: = x=9; In27: = 6/x-7 Out27= -19/3 In28: = x=. In29: = 6x-7/. x-9 Out29= -19
31、/3 In30: = 6/x-7 Out30= 6/x-71.4 Mathematica 中的函数中的函数 Mathematica有很丰富的内部函数,它们是Mathematica系统自带的函数,函数名一般使用数学中的英文单词,只要输入相应的函数名,就可以方便地使用这些函数。内部函数既有数学中常用的函数,又有工程中用的特殊函数。如果用户想自己定义一个函数,Mathematica也提供了这种功能。Mathematica中的函数自变量应该用方括号中的函数自变量应该用方括号 括起,括起,不能用圆括不能用圆括 ( ) 号括起,号括起,即一个数学中的函数f (x, y,)应该写为f x, y,才行。1.4
32、.1 Mathematica中的内部函数中的内部函数nMathematica的内部函数名字大部分是其英文单词的全名,如Random,Conjugate等。Mathematica内部函数的名字第一个字母一定要大写,其后的字母一般是小写的,不过如果该名字有几个含义,则函数名字中体现每个含义的第一个字母也要大写,如反正切函数arctanx中含有反“arc”和正切“tan”两个含义, 故它的Mathematica函数表示为ArcTanx。n下面列举一些常用的Mathematica内部函数:(1)数值函数:)数值函数:nAbsx 表示x的绝对值|x|nRoundx 表示最接近x的整数nFloorx 表示
33、不大于x的最大整数nCeilingx 表示不小于x的最大整数nSignx 表示x的符号函数sgn(x)nExpx 表示以自然数为底的指数函数e xnLogx 表示以自然数为底的对数函数ln xnLoga,x 表示以数a为底的对数函数log a xnSinx, Cosx 表示正弦函数sin x, 余弦函数cos xnTanx, Cotx 表示正切函数tan x ,余切函数cot xnArcSinx, ArcCosx 表示反正弦函数arcsin x , 反余弦函数 arccos xnArcTanx, ArcCotx 表示反正切函数arctan x , 反余切函数 arccot xnMaxx1,x2
34、,xn 表示取出实数x1,x2,。,x n的最大值nMaxs 表示取出表s中所有数的最大值 nMinx1,x2,xn 表示取出实数x1,x2,。,x n的最小值nMins 表示取出表s中所有数的最小值 nn! 表示阶乘n(n-1)(n-2) .1nn! 表示双阶乘n(n-2)(n-4) .nModm,n 表示整数m除以整数n的余数nQuotientm,n 表示整数m除以整数n的整数部分nGCDm1,m2,mn 表示取出整数m1,m2,。,mn的最大公约数nGCD s 表示取出表s中所有数的最大公约数nLCMm1,m2,mn 表示取出整数m1,m2,。,mn的最小公倍数nLCM s 表示取出表s
35、中所有数的最小公倍数nBinomialn, m 表示二项式系数nRez 取复数z的实部nImz 取复数z的虚部nConjugatez 取复数z的共轭复数nSqrtx 表示x 的平方根函数mnC举例说明:举例说明: In31: = Abs -4 Out31= 4In32: = Round1.1 Out32= 1In33: = Round1.9 Out33= 2In34: = Floor2.1 Out34= 2In35: = Ceiling 2.1 Out35= 3In36: = Sign22 Out36= 1In37: = Sign-2222 Out37= -1举例说明:举例说明: In31:
36、= Exp5 Out31= e5In32: = Log1 Out32= 0 In33: = Log10,100 Out33= 2In34: = Sin0 Out34= 0 In35: = Cos0 Out35= 1In36= TanPi Out36= 0 In37= CotPi/2 Out37= 0In38= ArcSin 1 Out38= Pi/2In39= ArcTan 1 Out39= Pi/4举例说明:举例说明: In31: = Max9, 5, -4, 3.1 Out31= 9In32: = Min9, 5, -4, 3.1 Out32= -4 在9, 5, -4, 3.1这四个数中
37、,最大的是这四个数中,最大的是9,最小的是,最小的是4In33: = Max2, 5, -4,-3.1, 8, 3 Out33= 8In34: = Mod26, 3 Out34= 2 In35: = Quotient26, 3 Out35= 826除以除以3,得,得8,余数为,余数为2,Mod和和Quotient功能不同功能不同 In36=Re3+4i Out36= 3 求求3+4i的实部,求虚部用的实部,求虚部用ImIn37= Sqrt4 Out37= 2 练习:练习: 1 用mathematica数学软件计算下列各式值(1)1238e2.3log23cos21o(2)tan(-x2)arc
38、cosx,在x=0.25和x=0.78x的函数值2 假设有一种传染病,任何人得病后,在传染期内不会四无,且最初有m人患病,每个人年平均传染率为k,治愈率为i,若一年内等时间间隔检测n次,则一年后患病人数为?若检测次数无限次数增加,一年后传染病人数会无限增加吗?函数形式函数形式功能功能Random随机给出闭区间0,1内的一个实数RandomReal, xmax随机给出闭区间0,xmax内的一个实数RandomReal, xmin, xmax随机给出闭区间xmin,xmax内的一个实数RandomInteger随机给出整数0或1RandomInteger, xmin, xmax随机给出xmin到x
39、max之间的一个整数RandomComplex随机给出单位正方形内的一个复数(2) 随机函数:随机函数:举例:(i)产生小于等于5的一个非负随机实数。命令: In39: = RandomReal, 5 Out39= 4.72088(ii)产生闭区间0,1内的6个随机实数的一个表。命令: In40: = TableRandom,6 Out40= 0.836874, 0.347154, 0.150818, 0.373472, 0.689255, 0.546614(iii)产生闭区间-2,10内的5个随机实数的一个表。命令: In41: = TableRandomReal,-2,10,5 Out41
40、= 8.873, -0.643032, 2.00279, 4.83199, 4.47409(iv)产生1到8之间的10个随机整数的一个表。命令: In42: = Table RandomInteger, 1,8, 10 Out42= 3, 8, 1, 5, 4, 5, 6, 8, 6, 5(v)产生单位正方形内的5个随机复数的一个表。命令: In43: = TableRandomComplex, 5 Out43= 0.537111+0.917944I, 0.944971+ 0.283356I, 0.289054 + 0.937503I1.4.2 Mathematica中的自定义函数中的自定义函
41、数 Mathematica自定义函数的一般命令为:自定义函数的一般命令为: 函数名函数名自变量名自变量名1_, 自变量名自变量名2_ ,:= 表达式表达式 这里函数名与变量名的规定相同,方括号中的每个自变量名后都要有一个下划线“_”,中部的定义号“: =”的两个符号是一个整体,中间不能有空格。常用的自定义函数命令有常用的自定义函数命令有:定义一个一元函数定义一个一元函数 函数名函数名自变量名自变量名_:= 表达式表达式 例如例如 : 定义一个函数 y=asin x+x5, a是参数 命令命令: In44: = yx_ := a*Sinx+x5定义一个二元函数定义一个二元函数 函数名函数名自变量
42、名自变量名1_, 自变量名自变量名2_ := 表达式表达式 例如例如: 定义一个函数 z1=tan(x/y) - ye5x 命令命令: In45: = z1x_ ,y_ :=Tanx/y+y*Exp5x自定义函数的几点注意事项自定义函数的几点注意事项:自定义函数名的第一个字母不能大写以利于区别内部函数。键入自定义函数并按下Shift+Enter键后,Mathematica不在计算机屏幕显示输出结果Outn,只是记住该自定义函数的函数名和对应的表达式,以利于后面的函数求值和运算使用。如果自定义函数不再使用,应该及时清除该自定义函数以释放由自定义函数占用的内存空间,清除自定义函数的命令与清除变量的
43、命令相同,即清除自定义函数的命令为: Clear自定义函数名自定义函数名 举例: 写出从集合x=1,2,3,4,5,6,7,8,9,0中等概率取出n个元素的自定义函数(可以重复抽取)。 解:解:Mathematica命令: In46: = drawoutx_, n_:=x Table Random Integer, 1,Lengthx , n In47: =x=1,2,3,4,5,6,7,8,9,0;In48: = drawoutx, 5 (*随机取出5个元素)Out48= 0, 3, 3, 5, 9In49: = drawoutx, 12 (*随机取出12个元素)Out49= 1, 2, 5
44、, 7, 9, 4, 8, 4, 1, 4, 0, 6- 本题自定义函数本题自定义函数drawoutx_, n_是由是由(i)Random Integer, 1,Lengthx (ii) Table Random Integer, 1,Lengthx , n (iii) x表表 三个函数的复合构成的。三个函数的复合构成的。1.4.3Mathematica中的函数求值中的函数求值n表示函数在某一点的函数值有两种方式:一种是数学方式,即直接在函数中把自变量用一个值或式子代替,如Sin2.3,Sqrta+1,z13, 5等;另一种为变量替换的方式:函数函数 / . 变量名变量名 数值或表达式数值或表
45、达式 或函数函数 /. 变量名变量名1 数值数值1或表达式或表达式1, 变量名变量名2 数值数值2或表达式或表达式2,n例如:n In46: = fnx_:=x*Cosx+Sqrtxn In47: = fn2 Out47:= Sqrt2 + 2 Cos2 n In48: = fnx /. x- 8 Out48 = 2 Sqrt2 + 8 Cos8n In49: = fnx /. x- a+1 n Out49 = Sqrt1 + a + (1 + a) Cos1 + an In50: = fnx_,y_:=x3+y2n In51: = fn2, a Out51:= 8 + a2 n In52:=
46、 fnx,y /. x- a, y-b+2 Out52= a3 + (2 + b) 21.4.4纯函数纯函数 p纯函数命令形式如下:Function变量或变量表, 表达式p注意注意:Function仅表示纯函数的记号,它的缩写形式“ 变量或变量表变量或变量表,表达式表达式& ”使行文更简洁。纯函数用&分隔函数定义和调用的(实在)函数, &后放调用的参数. 当函数中只有一个变量时,用#表示变量,否则用 #1,#2,分别表示第一个变量和第二个变量等。举例:In56:= Functionx, Cosx2-SinxOut56= Functionx, Cosx2 - Sinx (
47、函数已建立)In57:= %3 (*计算x=3时的函数值f(3)Out57= Cos32 - Sin3 (*输出函数值Cos32 - Sin3)In58:= s = Functionx, y, x - y Out58= Functionx, y, x - yIn59:=s19, 10Out59=9 In60:=(# + 1)&xOut60:=1+xIn61:= (#1 - #2)&a, b Out61= a - bIn62:=#1#2&2,3 Out62:=8 1.5 Mathematica中的表达式 数学中常用的表达式有算术表达式、关系表达式和逻辑表达式。1.5.1
48、Mathematica中的算术表达式中的算术表达式l在Mathematica中,算术表达式是由算术运算符(加()、减()、乘(*)、除(/)和乘方()连接常数、变量、函数构成的一个式子。如:57、Sqrtx、2+3.2、3*x-Expy、(SinPi/34-1)*x+1、(a+1)/(3-a)-(b-1)/a等都是算术表达式。l符号%、%、%n在Mathematica 中分别表示最后一次、次后一次和第n次的输出结果,。l算术表达式的运算顺序是括号优先、同级运算遵守从左到右的先后顺序运算、算符运算顺序的优先级按(由高到低):函数计算函数计算乘幂乘幂乘除乘除加减加减1.5.2 Mathematic
49、a中的关系表达式中的关系表达式关系表达式也称为算术关系表达式,常用来比较两个算术表达式值的大小。在Mathematica中,关系表达式的一般形式为: Mathematica的关系运算符有六种,它们的表示和含义如下: 关系运算符关系运算符含义含义对应的数学符号对应的数学符号例子例子= =相等关系=如x+3=0应该写为x+3= =0 !=不等关系如x+30应该写为x +3!=0 大于关系如x4应该写为x4=大于等于关系如x 4应该写为x= 4小于关系如x4应该写为x4=小于等于关系如x 4应该写为x=、=中间不能有空格或中间不能有空格或其他符号。其他符号。l关系表达式的计算顺序为:先分别计算两个算
50、术表达式的值,再比关系表达式的计算顺序为:先分别计算两个算术表达式的值,再比较它们的值。较它们的值。l关系表达式的计算结果是三个逻辑值关系表达式的计算结果是三个逻辑值True (真真)、False(假假)和非真非和非真非假,取值的规则为:当关系表达式成立时,取值为假,取值的规则为:当关系表达式成立时,取值为True;当关系表达;当关系表达式不成立时,取值为式不成立时,取值为False;当关系表达式不能确定时,将关系表达式当关系表达式不能确定时,将关系表达式原样输出,表示取值为非真非假。原样输出,表示取值为非真非假。l关系表达式中关系运算符的计算优先级别低于算术运算符。关系表达式中关系运算符的计
51、算优先级别低于算术运算符。1.5.3 Mathematica中的逻辑表达式中的逻辑表达式n关系表达式只能表示一个条件,如果考虑的问题涉及到多个关系表达式只能表示一个条件,如果考虑的问题涉及到多个条件的组合,用逻辑表达式最方便。关系表达式的形式有:条件的组合,用逻辑表达式最方便。关系表达式的形式有: 或或常用的常用的Mathematica的逻辑运算符有三种的逻辑运算符有三种 :逻辑运算符逻辑运算符名称名称含义含义 !逻辑非当关系表达式A为真时,!A为假;当关系表达式A为假时,!A为真。 & 逻辑与 当关系表达式A和B都为真时,A&B为真,否则为假。 | 逻辑或 当关系表达式A和B
52、都为假时,A|B为假,否则为真。 逻辑表达式常用来表示数学条件,特别在描述变量的范围时比关系表达式更为简洁和方便,如 x(a,b 逻辑表达式为 xa&x=b x(a,b 逻辑表达式为 xb 2x4或1=y2&x=1&y箭头右面的内容替换箭头左边的内容箭头右面的内容替换箭头左边的内容 例例1. 求2的平方根(默认精度)、求10位精度、最后检验在计算过程中是否存在较大的误差。 解解:In1:=Sqrt2 Out1:=Sqrt2In2:=N% Out2:=1.41421In3:=N % , 10 Out3:=1.414213562In4:=(%1)2 Out4:=2In5:=(%2)2 Out5:=2.输出: Out4:=2和Out5:=2. 说明本题计算不存在较大误差。(2 )查看帮助符号?、?的使用查看帮助符号?、?的使用例例2. 查看函数查看函数N 的大致用法和详细用法的大致用法和详细用法 Mathematica命令命令: 输入:输入: In6:=? N 输入:输入:In7:=?N例例3 查看以查看以Exp开头的所有内建函数名及开头的所有内建函数名及Expand函数的详细用函数的详细用法法Mathematica命令命令:
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 应急短信发送制度规范
- 人事制度规范管理要求
- 值班热线制度规范要求
- 怎样执行财务制度规范
- 抓促制度规范
- 规范健全公车使用等制度
- 啤酒仓库盘点制度规范
- 危险废物规范标识制度
- 纺丝原液制造工岗前环保知识考核试卷含答案
- 取水设施制度规范标准
- 2026年劳动关系协调师综合评审试卷及答案
- 黑龙江八一农垦大学公开招聘辅导员和教师22人参考题库附答案解析
- 2026年房地产经纪协理考试题库及答案(名师系列)
- 电站设备管理和检修及维修制度
- GA 1809-2022城市供水系统反恐怖防范要求
- YS/T 1148-2016钨基高比重合金
- JJF 1143-2006混响室声学特性校准规范
- GB/T 39597-2020出租汽车综合服务区规范
- GB/T 12060.3-2011声系统设备第3部分:声频放大器测量方法
- 四年级数学下册解决问题练习题
- 《康复评定技术》考试复习题库(含答案)
评论
0/150
提交评论