《mathematics-课件》由会员分享,可在线阅读,更多相关《mathematics-课件(52页珍藏版)》请在金锄头文库上搜索。
1、mathematics-mathematics-课件课件2/512.1 数 在在Mathematica里里将将数数大大致致分分为为两两类类,一一类类是是基基本本常常数数,包包括括整整数数、有有理理数数、实实数数和和复复数数;另另一一类类是是系系统的内部常数,包括数学、物理中常见的某些常数。统的内部常数,包括数学、物理中常见的某些常数。 这这些些数数的的概概念念同同数数学学中中的的概概念念完完全全一一样样,它它们们的的表表示方法同数学中的也基本一致。示方法同数学中的也基本一致。 但但要要指指出出的的是是,如如果果计计算算机机字字长长允允许许的的话话,在在Mathematica系系统统里里,这这些
2、些数数可可以以具具有有任任意意的的长长度度和和精确值。精确值。3/51 在在这这些些数数之之间间常常常常需需要要进进行行加加、减减、乘乘、除除以以及及乘乘方方 等等 算算 术术 运运 算算 , 这这 些些 算算 术术 运运 算算 的的 运运 算算 符符 在在Mathematica里里分分别别用用+、-、*、/、等等来来表表示示,与与计计算算机机编编程程语语言言中中的的符符号号基基本本一一致致;还还可可以以使使用用模模板板进进行输入。行输入。 模模板板的的调调出出可可以以选选择择菜菜单单“File/Palettes/3 Basic Input”。4/512.1.1 数的表示和计算数的表示和计算1
3、. 整数整数 在在Mathematica系系统统中中,整整数数由由一一串串连连续续的的数数字字组组成,数字之间不允许有空格或其他字符。成,数字之间不允许有空格或其他字符。 在在系系统统里里可可以以对对任任意意大大的的整整数数进进行行计计算算,系系统统将将保保持持输输入入的的和和计计算算后后输输出出的的整整数数永永远远是是精精确确的的,不不会会将将大的整数转化为浮点数形式。例如大的整数转化为浮点数形式。例如5/51 说明:说明: (1) 乘法符号乘法符号“*”可以用空格代替,但不能省略;可以用空格代替,但不能省略; (2) 算算术术运运算算的的优优先先顺顺序序:先先乘乘方方,再再乘乘除除,最最后
4、后是是加减,可以用括号改变优先顺序;加减,可以用括号改变优先顺序; (3) 同级运算的顺序依顺序从左到右进行;同级运算的顺序依顺序从左到右进行; (4) 负负号号用用减减号号表表示示,直直接接写写在在数数的的前前面面即即可可,同同数数学习惯完全一样;学习惯完全一样; (5) 如如果果参参加加运运算算的的整整数数都都是是精精确确数数,那那么么运运算算的的结结果果也也一一定定是是精精确确数数,Mathematica系系统统决决不不轻轻易易丢丢失失信息。信息。6/512. 有理数有理数 Mathematica系系统统中中任任何何有有理理数数都都可可用用两两个个整整数数的的商商来来表表示示,并并且且对
5、对有有理理数数将将自自动动化化简简,约约去去分分子子与与分分母中的公因数,最后结果是精确的。例如母中的公因数,最后结果是精确的。例如7/513. 实数实数(浮点数浮点数) 实实数数在在Mathematica里里用用浮浮点点数数表表示示。浮浮点点数数是是指指含含有有一一个个小小数数点点的的数数字字串串,它它至至少少包包含含着着一一位位有有效效数数字字,数数字字串串的的长长度度可可以以任任意意。因因此此用用浮浮点点数数来来表表示示实实数可以具有任意的精度。数可以具有任意的精度。 然然而而在在书书写写时时,数数字字串串的的长长度度总总是是有有限限位位的的,这这样样就有必要引入实数在不同精度要求下的近
6、似记法。就有必要引入实数在不同精度要求下的近似记法。 在在Mathematica里里用用符符号号Nx,n来来表表示示实实数数x具具有有n位位精精度度的的近近似似值值,当当n16时时只只取取6位位有有效效数数字字,当当n17时则取时则取n位有效数字。位有效数字。 例如例如8/51 说说明明:当当整整数数、有有理理数数、实实数数进进行行混混合合运运算算时时,如如果果参参加加运运算算的的数数都都是是精精确确的的,那那么么在在Mathematica系系统中运行的结果也一定是精确数,决不轻易丢失信息。统中运行的结果也一定是精确数,决不轻易丢失信息。 如如果果其其中中有有一一些些是是近近似似数数,那那么么
7、运运算算的的结结果果也也只只能能是是近近似似数数,但但保保持持尽尽可可能能高高的的精精度度,仍仍然然不不轻轻易易丢丢失失信息。信息。注注:(*)为为Mathematica系系统统的的注注释释符符号号,两两个个*号号之间为注释内容,注释部分可以放在程序的任何位置。之间为注释内容,注释部分可以放在程序的任何位置。9/514. 复数复数 同同数数学学中中的的复复数数表表示示法法一一样样,在在Mathematica里里的的每每一一个个复复数数也也表表示示为为z=x+Iy,其其中中x与与y为为实实数数,I为为虚虚数单位,即,运算规则与数学中的规则一样。数单位,即,运算规则与数学中的规则一样。10/515
8、. 数学常数数学常数 最常见的数学常数有:最常见的数学常数有:此此外外,还还有有欧欧拉拉常常数数、黄黄金金分分割割常常数数、光光速速常常数数、万万有引力常数等数学、物理中常见的常数有引力常数等数学、物理中常见的常数. 对对这这类类常常数数,Mathematica将将它它们们设设置置为为系系统统的的内内部常数,用到时,可以利用部常数,用到时,可以利用Help命令到系统中查询。命令到系统中查询。PiPi圆周率周率 , = 3.14159 = 3.14159E E自然自然对数的底数的底e e,e=2.71828e=2.71828DegreeDegree角度角度1 1度,度,1 1度度 = = /18
9、0/180I I虚数单位虚数单位i,i =InfinityInfinity无无穷大,即大,即 IndeterminateIndeterminate不定不定值,即,即0/00/0, / / 11/512.1.2 数的转换数的转换 有有时时需需要要将将不不同同类类型型的的数数进进行行转转换换。例例如如,将将有有理理数数转转换换为为实实数数,将将精精确确数数转转换换为为近近似似数数等等。前前面面在在实实数举例中用到的函数数举例中用到的函数N 就是这种转换函数之一。就是这种转换函数之一。 下面列出的是最常用的两个转换函数:下面列出的是最常用的两个转换函数:Nx将将x转换为实数形式转换为实数形式Nx,n
10、将将x转转换换为为最最多多具具n个个数数字字精精度度的的近似实数近似实数Rationalizex给出给出x的近似有理数的近似有理数Rationalizex,dx 给出误差在给出误差在dx内内x的近似有理数的近似有理数12/51【例【例1-7】数的转换。】数的转换。N1/3N1/3, 20Rationalize%RationalizeNSqrt2RationalizeNSqrt2, 10(-7) 说明:符号说明:符号%的含义如下:的含义如下: %表示上一次输出的结果表示上一次输出的结果 %表示倒数第表示倒数第2次输出的结果次输出的结果 %(共共n个个)表示倒数第表示倒数第n次输出的结果次输出的结
11、果 %n表示以表示以n为序号的那次输出结果为序号的那次输出结果13/512.1.3 数的输出形式数的输出形式 在在Mathematica计计算算中中,常常用用函函数数N 将将符符号号运运算算的的结结果果转转换换为为数数值值结结果果,或或将将有有理理数数的的准准确确值值转转换换为为近近似数。似数。 如如果果参参与与计计算算的的数数都都是是准准确确值值,则则计计算算结结果果将将按按准准确确值值的的方方式式输输出出;如如果果参参与与计计算算的的数数有有近近似似数数,则则计计算算的的结结果果必必是是近近似似数数,系系统统将将会会根根据据数数值值类类型型与与数数值值大小给出合理的输出形式。大小给出合理的
12、输出形式。14/512.1.3 数的输出形式数的输出形式 如如果果你你对对输输出出形形式式有有精精度度方方面面的的特特殊殊要要求求,则则可可利利用下面科学记数形式进行输出。用下面科学记数形式进行输出。ScientificForm表达式表达式以科学记数形式输出表达式以科学记数形式输出表达式例如例如15/512.2 变量 在在Mathematica系系统统中中,变变量量名名与与函函数数名名总总是是用用标标识符来书写的。识符来书写的。2.2.1 标识符标识符 标标识识符符是是由由英英文文字字母母开开头头的的字字母母数数字字串串。字字母母与与数数字的长度可以不限,但不能包含空格或标点符号。字的长度可以
13、不限,但不能包含空格或标点符号。 例例如如a,bce,a12,Cij,ArcSinh等等均均为为合合法法的的标标识识符符,而而2ab,x*y,a12,Arc-Sinh等等均均为为不不合合法法的的标标识识符。符。16/512.2.2 变量命名变量命名 变变量量命命名名即即用用标标识识符符给给变变量量命命名名,给给变变量量用用标标识识符符命名时必须严格依照标识符的有关规定进行。命名时必须严格依照标识符的有关规定进行。 给给函函数数命命名名时时,除除了了要要遵遵守守标标识识符符的的规规定定外外,还还要要遵守函数命名的一些规则,这将在下一节作介绍。遵守函数命名的一些规则,这将在下一节作介绍。 标标识识
14、符符除除了了可可给给变变量量命命名名和和给给函函数数命命名名外外,还还可可有有别的用途,例如可以用它来表示计算中的单位:别的用途,例如可以用它来表示计算中的单位:1.5Kg + 2.3Kg3.8Kg17/512.2.3 变量赋值变量赋值 在在Mathematica中中运运算算符符“=”的的作作用用是是赋赋值值。常常常常用用它它来来给给变变量量赋赋一一个个值值,这这个个值值可可以以是是一一个个数数值值、一一个个数组、一个表达式,甚至一个图形。例如数组、一个表达式,甚至一个图形。例如x = 2+3x = y = 3 变变量量x一一旦旦被被赋赋值值,这这个个值值将将长长期期保保留留,直直到到它它被被
15、清清除除或或被被重重新新赋赋值值为为止止。保保留留期期间间,无无论论在在何何处处使使用用这个变量这个变量x,它将被数值,它将被数值3代替。代替。18/512.2.3 变量赋值变量赋值 变变量量x一一旦旦被被赋赋值值,这这个个值值将将长长期期保保留留,直直到到它它被被清除或被重新赋值为止。例如清除或被重新赋值为止。例如p3 = x3 + 3 * x2 4*x + 5在在以以后后的的运运算算中中凡凡是是用用到到p3的的地地方方,也也就就相相当当于于在在那那里写上了这个多项式。里写上了这个多项式。 对对于于已已经经赋赋值值的的变变量量,当当不不再再使使用用而而且且想想要要清清除除掉掉时,可随时用时,
16、可随时用“=.”清除掉。清除掉。 在在这这个个命命令令执执行行后后,变变量量的的值值就就不不存存在在了了。应应当当特特别别注注意意随随时时将将以以后后不不再再使使用用的的变变量量的的值值清清除除掉掉,以以免免影响后面某些计算结果的正确性。影响后面某些计算结果的正确性。19/512.2.4 变量替换变量替换 在在数数学学运运算算中中,经经常常需需要要将将数数学学式式子子中中的的某某些些变变量量替替换换为为另另外外的的一一些些变变量量,Mathematica中中将将这这种种替替换换机制叫做变换规则,用记号机制叫做变换规则,用记号“/.”来完成。例如来完成。例如p3 = 5 - 4 y + 3 y2
17、 + y3p3/.y - t+1p3/.y -2 对对于于多多个个变变量量的的式式子子,这这种种替替换换同同样样可可以以进进行行。例例如如f = x2 + x y + y2f/.x-u+1, y-v-120/512.3 表 在在Mathematica中中,常常常常将将一一些些有有关关联联的的元元素素组组合合成一个整体,并将其称为表(成一个整体,并将其称为表(List)。)。 表表中中的的元元素素可可以以是是数数,也也可可以以是是函函数数,还还可可以以是是表表达式等;同一表中的元素可以有不同的数据类型。达式等;同一表中的元素可以有不同的数据类型。 表常被用来表示数学中的向量、矩阵或集合。表常被用
18、来表示数学中的向量、矩阵或集合。21/512.3.1 表的描述表的描述 表表在在形形式式上上是是用用花花括括号号括括起起来来的的一一组组元元素素,元元素素之之间用逗号分隔。例如间用逗号分隔。例如1,23,0.5,x,Sint3,4,1,2,522/512.3.1 表的描述表的描述表的元素又称为表的分量,表中分量一般表示为:表的元素又称为表的分量,表中分量一般表示为:tn或或Partt, n表示表表示表t中的第中的第n个元素个元素t-n或或Partt, -n 表示表表示表t中的倒数第中的倒数第n个元素个元素Firstt表示表表示表t中的第一个元素中的第一个元素Lastt表示表表示表t中的最后一个
19、元素中的最后一个元素tn1, n2, 或 Partt, n1, n2表示由表表示由表t中第中第n1, n2,元素组成的表元素组成的表ti,j表示表表示表t中的第中的第i个子表的第个子表的第j个元素个元素23/51【例【例1-8】已知】已知t1= 3,4,5,6,7,8,9,则有:,则有:t13t1-3Firstt1Lastt1t12, 4, 5, 724/512.3.2 表的建立表的建立 当表中的元素较少时,可以采用直接输入的形式:当表中的元素较少时,可以采用直接输入的形式:表变量名表变量名 = 元素元素1,元素,元素2,来来生生成成表表,即即在在给给出出表表名名的的同同时时又又给给出出了了表
20、表中中的的元元素素,但但在在更更多多的的时时候候是是要要利利用用建建表表函函数数Table、Range和和Array来生成。来生成。25/511. 循环描述循环描述 在利用建表函数时常常要用到循环描述。在利用建表函数时常常要用到循环描述。 (1) 循环描述的一般形式是:循环描述的一般形式是:循环变量,循环初值,循环终值,步长循环变量,循环初值,循环终值,步长 其其执执行行过过程程是是:循循环环变变量量从从初初值值开开始始,按按照照所所给给步步长长逐逐步步递递增增(或或递递减减),直直至至达达到到或或超超过过终终值值的的界界限限为止。为止。 循循环环变变量量、初初值值、终终值值和和步步长长可可为
21、为整整数数、有有理理数数和和实数。实数。26/511. 循环描述循环描述常见的几种循环描述如下:常见的几种循环描述如下:j,min,max,stepj从从min开始到开始到max,按步长,按步长step增加增加j,min,max j,max 说说明明:当当步步长长为为1时时可可省省略略不不写写,初初值值min为为1时时可可省省略不写略不写max重复重复max次次27/51 除了上面的单重循环外,有时还要用到多重循环。除了上面的单重循环外,有时还要用到多重循环。 多多重重循循环环是是在在写写循循环环描描述述的的地地方方连连续续写写几几个个上上面面形形式的循环描述,它们之间用逗号分开。例如式的循环
22、描述,它们之间用逗号分开。例如i,imin,imax,j,jmin,jmax表表示示一一个个关关于于变变量量i与与j的的二二重重循循环环描描述述,它它表表示示i从从imin开始到开始到imax,且对每一个,且对每一个j值,值,j从从jmin到到jmax。28/512. 建表函数建表函数 利用建表函数来生成表是十分方便的。利用建表函数来生成表是十分方便的。 (1) 数值表建表函数数值表建表函数Range,格式如下:,格式如下:Range正整数正整数n生成表生成表1,2,3,nRangem,n生成表生成表m,m+1,m+2,n (mn)Rangem,n,d从从m开开始始按按步步长长d递递增增,直直
23、到到n的的界限为止界限为止【例【例1-9】建数值表。】建数值表。Range3, 9Range1, 2, 0.3129/51 (2) 通项表建表函数通项表建表函数Table,格式如下:,格式如下:Tablefi,i,min,max,step 说说明明:依依照照通通项项fi的的规规律律,i从从min到到max,step为为步步长,当步长为长,当步长为1时省略。时省略。Tablef,max 说明:依照通项说明:依照通项f的规律,给出的规律,给出max个元素的表。个元素的表。Tablefij,i,imin,imax, j,jmin,jmax, 说明:生成一个多维表。说明:生成一个多维表。30/51【例
24、【例1-10】建通项表。】建通项表。Tablei2, i, 1, 7Table2 n, n, 3, 12, 2Tablex+1, 5TablePrimek, k, 10式中,式中,Primek为产生第为产生第k个素数的函数。个素数的函数。TableRandom, 3式中,式中,Random为产生一个为产生一个0与与1之间随机数的函数。之间随机数的函数。TableSinx, x, 0, 1, 0.3Tablem+n, m, 3, n, 531/51 (3) 特殊表建表函数特殊表建表函数Array,格式如下:,格式如下:Array函数函数f,整数,整数nArray函数函数f,n1,n2,【例【例1
25、-11】建特殊表。】建特殊表。ArraySin, 4N%Arraya, 2, 3其中第一句等价于其中第一句等价于TableSinn, n, 4第三句等价于第三句等价于Tableai, j, i, 2, j, 332/51 说说明明:凡凡能能用用函函数数Range与与函函数数Array生生成成的的表表,都都能能用用函函数数Table生生成成,Mathematica系系统统提提供供函函数数Range与与Array的的目目的的是是为为了了使使用用户户有有更更多多的的方方便便与与选选择余地,我们的重点是对函数择余地,我们的重点是对函数Table的掌握与使用上。的掌握与使用上。33/512.3.3 表的
26、运算表的运算 表表的的运运算算主主要要包包括括表表的的结结构构运运算算与与表表的的集集合合运运算算两两部分。部分。1. 表的结构运算表的结构运算 在在Mathematica系系统统中中,当当一一个个表表t与与一一个个标标量量a作作四四则则运运算算时时,表表示示将将a与与t中中的的每每一一个个元元素素作作一一次次运运算算,运算的结果仍然是一个表。运算的结果仍然是一个表。 当当两两个个表表t1与与t2进进行行加加减减运运算算时时,首首先先要要求求t1与与t2的的长长度度相相同同(即即t1与与t2中中元元素素的的个个数数一一样样多多),然然后后将将t1与与t2对应元素相加减即可,运算的结果仍是一个表
27、。对应元素相加减即可,运算的结果仍是一个表。34/51 两两个个表表的的相相乘乘、相相除除以以及及更更一一般般的的运运算算,我我们们将将放放到线性代数中去介绍。到线性代数中去介绍。 下面列出几个表的常见结构运算函数。下面列出几个表的常见结构运算函数。Joint1,t2,将表将表tl,t2,连成一个表连成一个表Uniont1,t2,合并几个表,去掉重复元素后对元素排序合并几个表,去掉重复元素后对元素排序Sortt将表将表t中的元素排序中的元素排序Uniont去掉表中重复元素后对元素排序去掉表中重复元素后对元素排序35/51 两两个个表表的的相相乘乘、相相除除以以及及更更一一般般的的运运算算,我我
28、们们将将放放到线性代数中去介绍。到线性代数中去介绍。 下面列出几个表的常见结构运算函数。下面列出几个表的常见结构运算函数。Reverset将表将表t中元素的顺序倒过来中元素的顺序倒过来RotateLiftt,n将表将表t中元素向左转移中元素向左转移n个位置个位置RotateRightt,n 将表将表t中元素向右转移中元素向右转移n个位置个位置ApplyPlus,t将表将表t中所有元素加在一起中所有元素加在一起ApplyTimes,t将表将表t中所有元素乘在一起中所有元素乘在一起36/51【例例1-12】已已知知t1 =1,3,5,7,2,6,10;t2=Table2n-1,n,1,7,则,则J
29、oint1, t2Uniont1, t2Sortt1Reverset1RotateLeftt2, 3RotateRightt2, 3ApplyPlus, t1ApplyTimes, t137/512. 表的集合运算表的集合运算 数数学学概概念念中中的的集集合合“并并”、“交交”、“补补”运运算算,引引伸伸到到Mathematica里里,是是定定义义在在几几个个表表之之间间的的“并并”、“交交”、“补补”的运算,运算结果仍为表。其函数如下:的运算,运算结果仍为表。其函数如下:Uniont1,t2,若干表之若干表之“并并”,由表,由表t1, t2, 中所有不同元素组成中所有不同元素组成Inters
30、ectiont1,t2,若干表的若干表的“交交”,由表,由表t1, t2, 中公共元素组成中公共元素组成Complementt1,t2表表t1与表与表t2的的“补补”。由。由t1中有而中有而t2中没有的元素组成中没有的元素组成38/51【例例1-13】已已知知t1 = 1,3,5,7,2,6,10;t2=1,3,5,7,9,11,13,则,则Uniont1, t2Intersectiont1, t2Complementt1, t2Complementt2, t139/512.4 函数 Mathematica中中的的函函数数可可以以分分为为两两大大类类:一一类类是是在在数数学学中中常常见见的的并
31、并且且给给出出了了明明确确定定义义的的函函数数,比比如如三三角角函数、反三角函数等,可称之为数学函数;函数、反三角函数等,可称之为数学函数; 另另一一类类是是在在Mathematica里里给给出出定定义义的的,具具有有计计算算和和操操作作性性质质方方面面的的函函数数,比比如如画画图图函函数数、方方程程求求根根函函数等,可称之为操作函数。数等,可称之为操作函数。 数数学学函函数数又又可可大大致致分分为为初初等等函函数数和和非非初初等等函函数数两两种种,下面将分别作简单介绍。下面将分别作简单介绍。40/512.4.1 基本初等函数与初等函数基本初等函数与初等函数1. 基本初等函数基本初等函数 在在
32、Mathematica库库函函数数里里将将它它们们作作为为最最基基本本的的函函数数供供用户使用。用户使用。中文名称中文名称数学符号数学符号MathematicaMathematica符号符号三角函数三角函数sin x, cos x, tan xsin x, cos x, tan xSinx, Cosx, TanxSinx, Cosx, Tanxcot x, sec x, csc xcot x, sec x, csc xCotx, Secx, CscxCotx, Secx, Cscx反三角函数反三角函数arcsin x, arccos x, arctan xarcsin x, arccos x,
33、 arctan xarccot x, arcsec x, arccsc xarccot x, arcsec x, arccsc xArcSinx, ArcCosx, ArcTanxArcSinx, ArcCosx, ArcTanxArcCotx, ArcSecx, ArcCscxArcCotx, ArcSecx, ArcCscx双曲函数双曲函数Sinh x, cosh x, tanh xSinh x, cosh x, tanh xcoth x, sech x, csch xcoth x, sech x, csch xSinhx, Coshx, TanhxSinhx, Coshx, TanhxC
34、othx, Sechx, CschxCothx, Sechx, Cschx反双曲函数反双曲函数arcsinh x, arccosh x, arctanh xarcsinh x, arccosh x, arctanh xarccoth xarccoth xArcSinhx, ArcCoshx, ArcTanhxArcSinhx, ArcCoshx, ArcTanhxArcCothx, ArcCothx, 幂函数函数SqrtxSqrtx指数函数指数函数e ex xExpxExpx对数函数数函数log x (log x (自然自然对数,以数,以e e为底底) )LogxLogx41/512. 初等函
35、数初等函数 将将常常量量、变变量量与与基基本本初初等等函函数数经经过过有有限限次次的的四四则则运运算算以以及及有有限限次次的的函函数数复复合合(函函数数套套函函数数),并并且且能能用用一个解析式子表示的函数,称为初等函数。一个解析式子表示的函数,称为初等函数。 例例如如: ,均均是是初等函数;初等函数; ,所所确确定定的的函函数数均均不不是初等函数。是初等函数。 显显然然,初初等等函函数数里里包包含含了了全全部部基基本本初初等等函函数数。在在自自然然科科学学与与工工程程技技术术中中最最常常见见的的函函数数是是初初等等函函数数,它它占占有十分重要的地位。有十分重要的地位。42/512.4.2 非
36、初等函数与特殊函数非初等函数与特殊函数 凡凡不不满满足足初初等等函函数数定定义义要要求求的的函函数数,均均可可称称为为非非初初等函数。等函数。 比比如如上上面面所所列列举举的的后后3个个函函数数便便是是非非初初等等函函数数,又又如如数数学学分分析析中中讲讲过过的的Gamma函函数数 (x)与与Beta函函数数B(p,q),也也都都不不是是初初等等函函数数,再再如如由由下下面面微微分分方方程程 x2y + xy + (x2 v2)y = 0与与 (1 x2)y 2xy + n(n + 1)y = 0的的解解所所确确定定的的函函数数分分别别称称为为Bessel函函数数与与Legender函函数数,
37、也也都都不不是是初初等等函函数数。因因此此都都可可将将它它们们归归属属到到非非初初等函数中。等函数中。43/51 有有些些非非初初等等函函数数,例例如如Bessel函函数数、Legender函函数数,由由于于它它们们在在数数学学物物理理问问题题中中具具有有特特殊殊的的意意义义,又又将将它它们从非初等函数中划分出一小类,叫做特殊函数类。们从非初等函数中划分出一小类,叫做特殊函数类。 大大致致弄弄清清初初等等函函数数与与非非初初等等函函数数的的界界限限是是必必要要的的,因为它涉及到下面章节里一些问题的结果。因为它涉及到下面章节里一些问题的结果。 比比如如某某个个不不定定积积分分是是否否可可积积,某
38、某个个常常微微分分方方程程是是否否有有解解等等,对对于于这这些些问问题题的的明明确确回回答答,将将会会起起到到关关键键性性的作用。的作用。44/512.4.3 系统操作函数与运算函数系统操作函数与运算函数 由由于于处处理理和和求求解解数数学学问问题题的的需需要要,在在Mathematica里专门设计了一大批具有求解和操作性质方面的函数。里专门设计了一大批具有求解和操作性质方面的函数。 比比如如后后面面第第2章章中中的的各各种种绘绘图图函函数数,第第3章章中中的的各各种种符符号号运运算算函函数数,第第4章章中中的的各各种种数数值值计计算算函函数数等等,都都可将它们归属到操作或运算函数类中。可将它
39、们归属到操作或运算函数类中。 这这类类操操作作运运算算函函数数同同前前面面介介绍绍过过的的数数学学函函数数有有着着明明显显的的区区别别,数数学学函函数数常常被被作作为为处处理理的的对对象象,而而操操作作运运算函数常是处理的手段。算函数常是处理的手段。45/51 在在一一些些计计算算机机高高级级语语言言中中,我我们们还还常常看看到到阶阶乘乘函函数数、取取整整函函数数、取取余余函函数数、随随机机函函数数等等,也也都都是是为为了了处处理理这这些些数数学学问问题题的的需需要要而而专专门门设设计计的的,因因此此可可以以将将它它们们归归属属到到系系统统的的运运算算函函数数类类中中,然然而而根根据据不不同同
40、的的需需要要,有有时时系系统统又又将将它它们们放放入入到到数数学学函函数数类类中中。下下面面列列出出的的是几个最常见的这类函数:是几个最常见的这类函数:n!n!n n的的阶乘乘n(n-1)(n-2)n(n-1)(n-2)2 21 1n!n!n n的双的双阶乘乘n(n-2)(n-4)n(n-2)(n-4)QuotientmQuotientm,nnm/nm/n的整数部分的整数部分ModmModm,nnm/nm/n的余数部分的余数部分GCDn1GCDn1,n2n2, nlnl,n2n2,的最大公因子的最大公因子LCMn1LCMn1,n2n2, nlnl,n2n2,的最小公倍数的最小公倍数Primek
41、Primek第第k k个素数个素数RandomRandom产生一个生一个0 0与与1 1之之间的随机数的随机数RandomRealRandomReal,a, a, bb产生一个生一个a a与与b b之之间的随机数的随机数AbsxAbsxx x的的绝对值SignxSignxx的符号的符号 =46/512.4.4 函数名的书写规则函数名的书写规则 通通过过上上面面的的举举例例读读者者容容易易看看到到,在在Mathematica中中函数名的书写规则可以归纳如下:函数名的书写规则可以归纳如下: (1) 函函数数名名必必须须以以大大写写字字母母开开头头,后后面面的的字字母母小小写写,例如例如Sin,Ta
42、n等。等。 当当函函数数名名可可分分成成几几个个段段时时,每每个个段段的的开开头头字字母母都都要要大写,其后小写,例如大写,其后小写,例如ArcTan,FindRoot等。等。 注注:第第8章章介介绍绍的的自自定定义义函函数数名名的的开开头头字字母母不不必必大大写。写。 (2) 函数名是一个字符串,中间不允许有空格。函数名是一个字符串,中间不允许有空格。47/51 (3) 函函数数中中的的参参数数表表是是用用方方括括号号括括起起来来,而而不不是是用用圆圆括括号号,这这一一点点与与数数学学习习惯惯写写法法很很不不一一致致,希希望望特特别别注注意。意。 参参数数表表用用方方括括号号而而不不用用圆圆
43、括括号号是是为为了了避避免免在在数数学学中中用圆括号有时的多义性引起的混淆用圆括号有时的多义性引起的混淆 例例如如k(z+y)的的含含义义是是什什么么?代代表表常常数数k与与变变量量x+y相相乘乘?或或是是代代表表以以x+y为为变变量量的的一一个个二二元元函函数数k(x+y)?如如果果写写成成kx+y,那那么么可可以以肯肯定定它它代代表表Mathematica中中的的某某一一个函数。个函数。48/51 (4) 有多个参数的函数,参数之间用逗号隔开。有多个参数的函数,参数之间用逗号隔开。【例【例1-13】在】在 、 、e三个实数之中求出最小者:三个实数之中求出最小者:MinSqrt7, Pi,
44、E 容容易易看看到到,函函数数名名书书写写的的上上述述规规定定必必须须首首先先符符合合标标识识符符规规定定的的要要求求,即即所所有有的的函函数数名名也也总总是是用用标标识识符符来来书写的。书写的。49/512.4.5 表达式的初步描述表达式的初步描述 前前面面几几节节的的讨讨论论中中已已经经涉涉及及到到表表达达式式的的概概念念,今今后后各章的介绍里还将继续涉及这一概念。各章的介绍里还将继续涉及这一概念。 在在Mathematica里里处处理理问问题题的的任任何何一一个个工工具具,任任何何一一个个被被处处理理的的对对象象,以以及及任任何何一一个个完完整整的的输输入入都都将将是是表达式,可以说,在
45、表达式,可以说,在Mathematica里无处不遇到它。里无处不遇到它。 然然而而要要给给表表达达式式下下一一个个明明确确的的定定义义却却是是十十分分困困难难的的。为为了了后后面面的的需需要要,我我们们不不妨妨先先给给表表达达式式一一个个初初步步的的描描述。述。50/51 表表达达式式可可以以分分为为两两类类,一一类类是是简简单单表表达达式式,另另一一类类是复杂表达式。是复杂表达式。 简简单单表表达达式式没没有有内内部部结结构构,不不能能再再分分解解为为更更简简单单的的成分,例如数、变量名、字符串等。成分,例如数、变量名、字符串等。 复复杂杂表表达达式式是是具具有有一一定定结结构构的的,能能够
46、够分分解解为为一一些些简简单表达式的组合,例如单表达式的组合,例如a+b,c * Sinx等。等。 因因此此可可以以将将表表达达式式初初步步描描述述如如下下:表表达达式式是是由由常常量量、变变量量、函函数数、命命令令、运运算算符符、标标点点以以及及括括号号按按一一定定规规则则组组成成的的实实体体。如如表表1-2中中给给出出的的几几个个例例子子就就是是常常见见的的表达式。表达式。51/51表达式表达式数学含数学含义x输入一个入一个变量量Tanx输入正切函数入正切函数a+b将两个常量相加将两个常量相加x*y*z将三个将三个变量相乘量相乘Sinx/Cosx将两个三角函数相除将两个三角函数相除FindRootx2-5*x+6 = 0,x,1求二次方程的一个求二次方程的一个实根根PlotExp-x,x,1,4画出指数函数在画出指数函数在1,4上的上的图形形