Mathematica软件简介(精)
- 格式:ppt
- 大小:1.50 MB
- 文档页数:61
Mathematica简介§1 引言Mathematica软件是一个功能强大的数学软件。
利用Mathematica软件可以完成许多数值计算与符号演算的工作。
它可以做任意位精确度的数值计算,可以做有理式的各种演算,可以求有理式与超越方程的精确解,可以做一般表达式的向量与矩阵的各种运算,可以求一般表达式的极限`导数`积分以及幂级数展开,可以求解微分方程等等。
利用Mathematica软件可以非常方便地绘制图形。
它可以做出一元和二元的散点图等等。
Mathematica软件的命令系统本身构成了一种功能强大的程序设计语言,用这种语言可以比较方便地定义用户需要的各种函数和程序包,系统本身也提供了许多应用程序包。
§2 Mathematica 软件的基本命令双击Mathematica软件的图标即可启动Mathematica软件。
在命令窗口中输入命令,如Sin[Pi/2],然后同时按下Shife与Enter键即可执行相应的命令。
在输入的命令前出现提示符“In[1]:=”,其中“In”表示“输入”,数字“1”表示输入命令的序号;在运行结果之前会自动出现提示符“Out[1]=”,其中“Out”表示“输出”。
2.1 算术运算Mathematica软件的算术运算是指加减乘除及乘方`开方运算。
例1In[1]:= 3*(5-2)+4^(6-3)/2Out[1]= 41在Mathematica软件中,乘法用“*”或“”(空格)表示,除法用“/”表示,乘法用“^”表示。
例2In[2]:= 3^(1/3)Out[2]= 31/3In[3]:= 1/3+2/511Out[3]=15在Mathematica软件中,若输入的数据是精确的,计算结果保留精确数字。
若要计算近似值,可用下面的命令:例3 In[4]:= N[3^(1/3)]Out[4]= 1.44225函数N[x]表示x的近似值。
若采用浮点数输入,则计算结果为近似值,见例4。
mathematica对数运算(实用版)目录1.Mathematica 简介2.对数运算的定义与性质3.Mathematica 中的对数运算函数4.Mathematica 中对数运算的实例5.总结正文1.Mathematica 简介Mathematica 是一款功能强大的数学软件,广泛应用于科学研究、工程设计以及教育等领域。
它具有丰富的函数库和强大的计算能力,能够解决各种复杂的数学问题。
2.对数运算的定义与性质对数运算是一种重要的数学运算,主要涉及对数的定义、性质和运算法则。
对数可以简化复杂的数学表达式,便于进行计算和分析。
对数的定义:如果,那么我们称 a 为以 b 为底的 c 的对数,记作logb(c),其中 b>0 且 b≠1。
对数的性质:(1) logb(a^c) = c*logb(a)(2) logb(a/b) = logb(a) - logb(b)(3) logb(b^c) = c3.Mathematica 中的对数运算函数在 Mathematica 中,有多种对数运算函数可供选择,如:(1) Log[x]:以自然常数 e 为底的对数(2) Log10[x]:以 10 为底的对数(3) Log2[x]:以 2 为底的对数(4) Log[a][x]:以 a 为底的对数,其中 a>0 且 a≠14.Mathematica 中对数运算的实例下面举几个 Mathematica 中对数运算的实例:例 1:计算以 2 为底的 3 的对数In[1]:= Log2[3]Out[1]:= 1.584962500724548例 2:计算自然对数函数的导数In[2]:= D[Log[x], x]Out[2]:= 1/x例 3:计算以 3 为底的对数函数的积分In[3]:= Integrate[Log[x], x]Out[3]:= x*Log[x] - x + C5.总结通过以上介绍,我们可以看出 Mathematica 在对数运算方面的强大功能,能够方便地处理各种对数运算问题。
Mathematica简介Mathematica简介Mathematica是上个世纪八十年代末、九十年代初发展起来的一个数学软件(平台)。
Mathematica具有强大的符号计算功能和丰富的经典应用数学函数库。
上个世纪九十年代,在国际上流行的三十几个数学类科技应用软件中,Mathematica和Maple则在符号计算软件方面分居前两名,而MATLAB在数值计算方面公认为最好,Mathcad 因其提供计算、图形、文字处理的统一环境而深受中学生欢迎。
Mathematica 安装过程:mathematica→setup→next→记下“your MathID” 号→cancel→Quit MathInstaller→Mathpass→输入“MathID”号→generate→记下“licenseID”号和“password”号→next→输入“licenseID”号和“password”号及其它信息→next→next→finish基本操作命令:输入计算命令和计算表达式→Shift+Enter所有命令的第一个字母用大写,所有标准函数的第一字母要大写。
一、数学计算Mathematica 可以进行各类常规计算乘号用*或空格(字母之间)表示,除号用/ 表示,乘方用^表示,根号用Sqrt表示。
上述符号也可用符号栏中的符号表示。
例:1. 3+4,10-2,3?4, 63÷ 2 . 3^100 (3100)3. 计算10精确到50位的结果,计算510。
N[Sqrt[10]] N[Sqrt[10],50]5数据后面的点表示要给出近似结果。
N[ ]表示给出数值结果(近似结果,按标准只显示前六位有效数字),否则给出精确结果.4 . 复数运算(虚数I 要大写)(2+4I)^10 (3+5I)/(2-3I) (3+5I)(2-3I)二、重复计算(循环计算)Do[expr,{i,max}] 计算expr, i=1, max,步长为1Do[expr,{i,min,max,di}] 计算expr, i=min, max,步长为di例1 计算 sin(i 3π)+cos(i 3π),i 从1到5循环。
实验一Mathematica软件简介实验目的: 1.掌握软件的基本功能,为数学实验提供工具。
2.掌握用Mathematica软件作函数图形的语句或作图方法。
实验过程与要求:教师利用多媒体组织教学,边讲边操作示范。
实验的内容:Mathematica系统是目前世界上应用最广泛的符号计算系统,它是由美国伊利诺大学复杂系统研究中心主任、物理学、数学和计算机科学教授Stephen Wolfram负责研制的,能够完成符号运算,数学图形绘制,甚至动画制作等多种操作.这里主要介绍Windows环境下的4. 1版本在高等数学等领域的应用,其它版本类似.一、Mathematica软件功能简介(1)作函数的图像:用作图程序,当输入被作函数时,计算机直接作出该函数的图像.(2)数值计算:可简单地计算函数值,积分值等,可求微分方程的数值解等.(3)符号运算:可计算函数的极限,导数,不定积分,求微分方程的通解等.在这以前,计算机只能作数值计算,不能作符号运算.二、Mathematica的启动与基本操作(1)启动:系统安装好以后,在Windows98中,用鼠标点击开始—程序—Mathematica 4.1—Mathematica 4.1菜单即可进入系统.计算机屏幕出现Mathematica的主工作窗口(图1).(2)基本操作:进入系统后,出现Mathematica的主工作窗口,即可键入指令.如键入1+2,然后同时按下Shift+Enter,即可得到结果.窗口显示如图2,其中In[1]为第一输入行的标志,Out[1] 为第一输出行的标志(注意:输入行的标志In[1]:=,In[2]:=,……;输出行的标志Out[1]=,Out[2]=,……均是计算机自动给出的).如果输入的语句和表达式不能在一行显示完,可以按Enter键后在下一行继续输入,但一个命令或表达式在没写完需换行则要加“\”,在后面接着按Enter后继续输入.图1图2三、Mathematica中的数、运算符、变量与表达式1.数Mathematica的数据分为两大类:一类是我们平常写出的数,叫普通数,另一类是系统内部的常数,有固定的写法.Mathematica中的普通数有整数、有理数、实数、复数四种类型,见表1Mathematica的系统内部常数是指用特定的字符串表示的数学常数,如:Pi—表示π,E—表示自然对数的底e,Degree—表示角度制单位的度,I—表示虚数单位i,Infinity表示∞.要注意这些数书写时必须以大写字母开头.2.运算符(1)算术运算符+、-、*、/、^分别表示加、减,乘、除、乘方的运算,其中在不引起混淆的情况下乘法运算符“*”也可省略不写,另外开方可以表示成分数指数,上述运算的优先顺序同数学运算完全一致.(2)关系运算符= =、!=、>、>=、<、<=分别表示等于、不等于、大于、大于等于、小于、小于等于.(3)逻辑运算符逻辑运算符及其意义见表2表23.变量Mathematica中变量的名称是以小写字母(不能以数字开头)开头的字符或字符串,但不能有空格和标点符号,例如:abc和g2均是合法的变量名.在Mathematica中,变量即取即用,不需先说明变量的类型后再使用.在Mathematica中变量不仅可存放一个整数或复数,还可存放一个多项式或复杂的算式.4.表达式表达式是以变量、常量、运算符构成的式子、表、甚至是图形,例如3*x^3-2*x+5和x<=0分别是算术表达式和关系表达式.写表达式时,要注意以下几点:(1)所有表达式必须以线性形式写出.因此分子、分母、指数、下标等都必须写在同一行上.(2)只能使用合法的标识符(字符或字符串).(3)为了指定运算的次序可以利用括号.括号必须成对出现,且只有一种括号“(”与“)”,除了特定符号外不得使用方括号“[”与“]”及花括号“{”与“}”.变量的赋值,格式为:变量名=表达式或变量名1=变量名2=表达式.例如:a=3*5^2y=2*x^2-1代数式中的变量也可以用另一个变量(或代数式)替换,如把上例中变量y中的x用Pi-x 替换,可表述为y=2*x^2-1;y/.x->Pi-xx->Pi-x中的“->”是由键盘上的减号及大于号组成的,以后各节中不在说明.变量的清除,当一个变量a无用时,可以用命令Clear[a]加以清除,以免影响后面计算的结果.注意在Mathematica中,内部函数或命令都是以大写字母开头的标识符(字符或字符串).四、用Mathematica作算术运算与代数运算1.算术运算进入系统后,出现Mathematica的主工作窗口(图1),此时可以通过键盘输入要计算的表达式,再按Shift+Enter键得运算结果.实验1计算80!.解在主工作窗口用户区输入80!.按下Shift+Enter键得运算结果(图3).图3实验2 先求表达式)41(10532+÷-⨯的值,再求该表达式的平方.解 在主工作窗口用户区输入表达式3*5^2-10/(1+4)后按下Shift+Enter 键得该表达式运算结果,然后输入%^2按下Shift+Enter 键得该表达式平方运算结果(图4).其中%代表上一输出结果,该例中指73;如果输入行的标志In[1]:=, In[2]:=,……;输出行的标志Out[1]=,Out[2]=,……代表的表达式是唯一的,则可将其写入以后的运算表达式中代表其对应的表达式参与运算.例如上例中求表达式的平方还可输入为In[1]^2或Out[1]^2后按下Shift+Enter 键得该表达式平方运算结果.图42.代数运算Mathematica 的一个重要的功能是进行代数公式演算,即符号运算.实验3 设有多项式1232---x x x 和. (1)求二者的和,差,积; (2)将二者的积分解因式;(3)将二者的积展开成单项式的和. 解 In[1]:=p 1=x ^2-x -2Out[1]=-2-x In[2]:=p 2=x ^3-1 Out[2]=1 In[3]:=p 1+p 2 Out[3]=-3-x +x In[4]:=p 1-p 2Out[4]=-1-x +x In[5]:=p 1*p 2 Out[5]=In[6]:=Factor[p 1*p 2] Out[6]=In[7]:=Expand[p 1*p 2]Out[7]=2+x -x 2-2x 3-x 其中Factor[多项式]表示将其括号内的多项式分解因式;Expand[多项式] 表示将其括号内的多项式展开成按升幂排列的单项式之和的形式.值得注意的是,上面提到的Factor[多项式]和 Expand[多项式]均是Mathematica 系统中的函数,其中Factor 和 Expand 分别为其函数名(函数名的第一个字母必须大写).事实上Mathematica 系统中含有丰富的函数,后面将结合具体内容介绍有关函数命令.课后实验一1.计算下列各式:!90)3(169)2((1)61152.将多项式.5623分解因式x x x +-3.设有多项式152222343-+-+--x x x x x 和,求二者的和、差、积.五、函数运算 (一)常用函数Mathematica 系统中的数学函数是根据定义规则命名的.就大多数函数而言,其名字通常是英文单词的全写.对于一些非常通用的函数,系统使用传统的缩写.下面给出一些常用函数的函数名及功能.1.数值函数N[x ,k ] 求出表达式的近似值,其中k 为可选项,它指有效数字的位数Round[x] 舍入取整Abs[x] 取绝对值Max[x1,x2,…] 取x1,x2,…中的最大值Min[x1,x2,…] 取x1,x2,…中的最小值x+I y复数x+i yRe[z] 复数z的实部Im[z] 复数z的虚部Abs[z] 复数z的模Arg[z] 复数z的辐角PrimeQ[n] n为素数时为真,否则为假Mod[m,n] m被n除的正余数GCD[n1,n2,…] n1,n2…的最大公约数LCM[n1,n2,…] n1,n2…的最小公倍数Sqrt[x] 求平方根2.基本初等函数Exp[x] 以e为底的指数函数Log[a,x] 以a为底的对数函数Log[x] 以e为底的对数函数Sin[x] 正弦函数Cos[x] 余弦函数Tan[x] 正切函数Cot[x] 余切函数Sec[x] 正割函数Csc[x] 余割函数ArcSin[x] 反正弦函数ArcCos[x] 反余弦函数ArcTan[x] 反正切函数ArcCot[x] 反余切函数使用Mathematica系统中的数学函数要注意以下几点:(1)Mathematica系统中的函数都以大写字母开头.如果用户输入的函数没有用大写字母开头,Mathematica将不能识别,并提出警告信息;(2)Mathematica系统中的函数的自变量都应放在方括号内;(3)这些函数的自变量可以是数值,也可以是算术表达式;(4)计算三角函数时,要注意使用弧度制,如果要使用角度制,不妨把角度制先乘以Degree常数(Degree=π/180),转换为弧度制.实验4求表达式lg2+ln3的值.解In[1]:=Log[10,2]+Log[3]In[2]:=N[Log[10,2]+Log[3],6]Out[2]= 1.3In[3]:=Log[10.0,2]+Log[3.]Out[3]= 1.3实验4中,对应于输入语句In[1],输出语句Out[1]并没有给出lg2及ln3的“数值结果”,这是由于Mathematica符号计算系统的“对于只含有准确数的输入表达式也只进行完全准确的运算并输出相应的准确结果”的特性所决定的.在In[2]中用数值转换函数N[Log[10,2]+Log[3],6],将对表达式Log[10,2]+Log[3]的运算转换成了计算结果具有6位有效数字的实数形式运算,所以输出结果Out[2]=1.3.在In[3]:=Log[10.0,2]+Log[3.]中,用实数10.0代替整数10,用实数3.代替整数3,这里10.0及3.都是实数的表示法,两种表示可以任选其一.计算时欲得“数值结果”输入数时用实数形式. 实验5 求sin90o .解 In[4]:=Sin[90Pi/180] (二)自定义函数1.不带附加条件的自定义函数在Mathematica 系统中,所有的输入都是表达式,所有的操作都是调用转化规则对表达式求值.一个函数就是一条规则,定义一个函数就是定义一条规则.定义一个一元函数的规则是:f [x _ ]:=表达式其中表达式是以x 为自变量的,x _称为形式参数,f 是函数名,函数名的命名规则同变量名的命名规则.调用自定义函数f [x _ ],只需用实在参数(变量或数值等)代替其中的形式参数x _即可. 在运行中,可用“f [x _ ]:=.”清除函数f [x _ ]的定义,用Clear[f ]清除所有以f 为函数名的函数定义.实验6 定义函数x x x x f sin 2)(3++=,先分别求2,1.5,1π=x 时的函数值,再求)(2x f .解 In[5]:=f [x _]:=x ^3+2Sqrt[x ]+Sin[x ]In[6]:=f [1.]Out[6]=3.8In[7]:=f [5.1]Out[7]=136In[8]:=f [N[Pi]/2.] Out[8]=7.3In[9]:=f [x ^2]在Out[9]中,由于系统不知道变量x 的符号,所以没有对2x 进行开方运算. 2. 带附加条件的自定义函数在使用“f [x _ ]:=表达式”定义规则时,可以给规则附加条件,附加条件放在定义规则表达式后面,通过“/;”与表达式连接.规则的附加条件形式为:f [x _ ]:=表达式/;条件在调用上述规则时,实在参数必须满足附加条件,系统才调用规则.“附加条件”经常写成用关系运算符连接着的两个表达式,即关系表达式.用一个关系表达式只能表示一个条件,如表示多个条件的组合,必须用逻辑运算符将多个关系表达式组合到一起.实验7 设有分段函数).100()2(),5.1(),100(0ln 0sin )(f f f f ex xe x xx x e x f x 及求-⎪⎩⎪⎨⎧>≤<≤=解 In[10]:=f [x _]:=Exp[x ]Sin[x ]/;x <=0In[11]:=f [x _]:=Log[x ]/;(x >0)&&(x <=E) In[12]:=f [x _]:=Sqrt[x ]/;x >E In[13]:=f [-100.0]Out[13]=1.88372´ In[14]:=f [1.5]Out[14]=0.40In[15]:=f [2.0] Out[15]=0.69 In[16]:=f [100.0] Out[16]=课后实验二1.求表达式lg100+lne-lg5的值.2.求sin30o .3.求复数3+2i 的模,辐角,实部及虚部.4.设f(x)=sin2x -5ln x -e x ,求f (1.3),f (2)及f (100).5.设函数⎩⎨⎧≥+<+=0)1ln(01)(2x x x x x f ,求f (-1.5)及f (2).六、方程与方程组的解法Solve 是解方程或方程组的函数,其格式为: Solve[eqns,vars]其中eqns 可以是单个方程,也可以是方程组,单个方程用exp==0的形式(其中exp 为关于未知元的表达式);方程组写成用大括号括起来的中间逗号分割的若干个单个方程的集合;vars 为未知元表,其形式为{x 1,x 2,…,x n }.实验1 解方程0652=+-x x . 解 In[17]:=Solve[x ^2-5x +6==0,x ] 其中方程中的等号应连输2个“=”. 实验2 解方程050)5(2352=--x x . 解 In[18]:=Solve[5^(2x )-23(5^x )-50==0,x ]Out[18]={{x →2}}实验3 解方程组⎩⎨⎧=-=+13122yxy x .解 In[19]:=Solve[{x +y ==1,3x ^2-y ^2==0},{x ,y }] 七、不等式与不等式组的解法在Mathematica 系统中解不等式 格式为:<<Algebra`InequalitySolve`InequalitySolve[ineq, x ]其中“<”为键盘上的小于号,“`”为数字键1的左侧的`,<<Algebra`InequalitySolve`是装载程序包, ineq 可以是单个不等式,也可以是不等式组,不等式组写成用大括号括起来的中间逗号分割的若干个单个不等式的集合.注意前面简介的Mathematica 函数,都可以通过输入函数和适当的参数而直接使用,这些函数我们称之为系统的内部函数.还有一些系统扩展的功能不是作为系统的内部函数的,而这些功能是以文件的形式存储在磁盘上的,要使用它们,必须用一定的方式来调用这些文件,这些文件我们称之为程序包.此处InequalitySolve 及后面要学习的Rsolve 、FourierTrigSeries 等都属于这种情况.实验4 解不等式组⎪⎩⎪⎨⎧>-<--0101222x x x .解 In[20]:= <<Algebra`InequalitySolve`In[21]:=InequalitySolve[{x ^2-5x -6<0,x ^2-1>0}, x ] Out[21]= 1< 实验5 解不等式3)3(12>--x x .解 In[22]:= <<Algebra`InequalitySolve`In[23]:=InequalitySolve[Abs[x -1](x ^2-3) > 3, x ] Out[23]=即不等式的解为x <-2 或x >)131(21+.八、由递推式求数列的通项公式在Mathematica 系统中由递推式求数列的通项公式 格式为:<<DiscreteMath`RSolve` RSolve[{eqn, a [1]==k }, a [n ], n ]其中“<”为键盘上的小于号,“`”为数字键1的左侧的`,<<DiscreteMath`RSolve`是装载程序包,eqn 为递推式, a [1]==k 为数列的第一项.实验6 设.,1,11求数列的通项公式==-a na a n n解 In[24]:=<<DiscreteMath`RSolve`In[25]:=RSolve[{a [n ]==n a [n -1], a [1]==1}, a [n ], n ]实验一1.解下列方程:(1) 0122=--x x (2) 03241=-++x x2. 解方程组⎩⎨⎧=-=+1231y x y x .3. 解不等式0232>+-x x .4. 设.,1,31021求数列的通项公式==+=--a a a a a n n n九、作函数图像1、作图函数与输入格式在Mathematica 系统中用函数Plot 可以很方便地作出一元函数的静态图像,基本格式为:Plot[{f 1,f 2,…},{x ,xmin ,xmax },可选参数]其中表{f 1,f 2,…}的fi (i =1,2,3,…)是绘制图形的函数名,表{x ,xmin ,xmax }中x 为函数fi (i =1,2,3,…)的自变量,xmin 和xmax 是自变量的取值区间的左端点和右端点.实验7 作y =x 2-1在[-2,2]内的图像和作y =lg x 在[0.3,4]内的图像,其输入和输出如图7-5.图7-52、作图时的可选参数1)参数AspectRatio(面貌比)平时我们作图时,两个坐标轴的单位长度应该一致,即1:1.但在Mathematica系统中根据美学原理系统默认的纵横之比为1:0.618,而将参数AspectRatio的值设置为Automatic(自动的)时可使纵横比为1:1.实验8(1)作y=sin x和y=cos x在[0,2π]内的图像,且两坐标轴上的单位比为0.618.(2)作y=sin x和y=cos x在[0,2π]内的图像,且两坐标轴上的单位比为1:1.其输入和输出如图7-6.图7-62)参数PlotStyle(画图风格)PlotStyle的值是一个表,它决定画线的虚实、宽度、色彩等.(1)取值RGBColor[r,g,b]—决定画线的色彩.r,g,b分别表示红,绿,蓝色的强度,其值为[0,1]之间的数.实验9作y=sin x在[0,2π]内的图像,线条用红色.输入:Plot[Sin[x],{x,0,2Pi},PlotStyle->{RGBColor[1,0,0]}]表示画出的曲线为红色.(2) 取值Thickness[t](厚度,浓度)—决定画线的宽度.t是一个介于0,1之间的数,且远远小于1,因为整个图形的宽度为1.实验10 作y=sin x在[0,2π]内的图像,线条厚度t=0.02.输入:Plot[Sin[x],{x,0,2Pi},PlotStyle->Thickness[0.02]]输出如图7-7图7-7(3) 取值Dashing[{d1,d2,…}]—决定画线的虚实,其中表{d1,d2,…}确定线的虚实分段方式,di(i=1,2,…)的取值介于0,1之间.实验11作y=sin x在[0,2π]内的图像,线条用虚线.输入:Plot[Sin[x],{x,0,2Pi},PlotStyle->Dashing[{0.03,0.07}]]输出如图7-8图7-8实验12 作y=sin x和y=cos x在[0,2π]内的图像,且两坐标轴上的单位比为1:1,线条用蓝色虚线.输入:Plot[{Sin[x],Cos[x]},{x,0,2Pi},AspectRatio->Automatic,PlotStyle->{{RGBColor[0,0,1],Dashing[{0.02,0.05}]}}]输出如图7-9图7-93)参数DisplayFunction(显示函数)该参数决定图形的显示与否,当取值为Identity 时,图形不显示出来.当取值为$DisplayFunction时恢复图形的显示.1、图形的组合显示函数ShowPlot的作用可以同时在同一坐标系的同一区间内作出不同函数的图像,但有时需要在同一坐标系的不同区间作出不同函数的图像,或者在同一坐标系作一个函数而要求函数的各个部分具有不同的形态(像分段函数),这个时候就需要使用Show 函数.实验13 在同一坐标系中作出y =e x 和y =ln x 的图像,并说明它们的图像关于直线y =x 对称.输入:a =Plot[Exp[x ],{x ,-2,2},AspectRatio->Automatic,PlotStyle->RGBColor[0,1,0], DisplayFunction->Identity]b =Plot[Log[x ],{x ,0.3,3},AspectRatio->Automatic,PlotStyle->RGBColor[1,0,0], DisplayFunction->Identity]c =Plot[x ,{x ,-2,2},AspectRatio->Automatic,PlotStyle->Dashing[{0.09,0.04}], DisplayFunction->Identity]Show[a ,b ,c,DisplayFunction →$DisplayFunction]输出如图7-10.实验二.0ln 01.5.)42sin(3.4.log .3.)21(.2..122141的图像作分段函数在一个周期内的图像作函数的图像作函数的图像作函数的图像作函数⎩⎨⎧>≤+=+====x xx x y x y x y y x y x π6.在同一坐标系中作出y=x,y=sin x,x∈[-π/2,π/2]和y=arcsin x, x∈[-1,1]的图像, 且要求两坐标轴上的单位比为1:1, y=x用虚线和红色,y=sin x用绿色,y=arcsin x用蓝色.本次课小结:Mathematica软件是一个集成化的软件系统,正是由于它的主要功能的三个方面,即符号演算,数值计算和图形功能,使它成为我们学习数学知识解决实际问题中困难的助手和工具.该功能有自身的规定.我们在学习中一定要按规定执行,对基本的指令和语法等要熟记。
Mathematica简介Mathematica简介软件概述Mathematica是由美国Wolfram公司研究开发的⼀个著名的数学软件,是⼀种强⼤的数学计算、处理和分析的⼯具。
它有着强⼤的符号计算功能, 可以作多项式的各种运算(四则运算、展开、因式分解等)、有理式的各种计算;它可以求⼀个复杂函数的极限、导函数、不定积分和作幂级数的展开、矩阵的运算等。
强⼤的数值计算功能, 可以作任意位精确度(实数值或复数值) 的数值计算;可以求多项式⽅程、有理⽅程和超越⽅程的精确解和近似解;求解微分⽅程、计算定积分的任意精度的近似值等。
它还具有强⼤的可视化功能,可以将2D和3D函数图形,声⾳的制作和播放;强⼤的并⾏计算功能,提⾼了软件的计算能⼒等等。
功能介绍Mathematica主要⽤于求解研究和⼯程计算领域中的问题,也可处理能够完成符号运算、数值计算,图形可视化,并⾏计算,程序与编程等多种操作。
笔记本和⽂档Mathematica 笔记本包含了⼀个⾼质量的⽂字处理系统的所有常见功能,并添加了许多其它的特殊功能。
程序构建的符号⽂档,采⽤独特灵活的格式。
笔记本基础,笔记本格式和样式,特殊字符,布局和表,数学排版,笔记本和界⾯定制,⽂档⽣成,底层笔记本设计等。
Mathematica 的笔记本它⽀持完整的标记、级联样式表、快速改变⽂档的能⼒。
优化的笔记本不仅可以交互使⽤,⽽且可以输出到⽹页或打印设备。
符号计算Mathematica 的基本核⼼思想是所有对象、数据、程序、公式、图形、⽂档、可以⽤符号表达式来表⽰。
这个统⼀概念构成了其统⼀的符号规划范式,使更多独特的Mathematica语⾔和系统成为可能。
Mathematica 的核⼼是⾼级的符号语⾔,它与⼴泛应⽤的编程式程序规范相统⼀,并且它独特的符号设计概念为程序设计概念增加了新的灵活性。
数值计算Mathematica的数值计算功能,包括计算⽅法,最优化与数理统计⽅⾯的内容,它的特点是准确计算与数值计算相结合,能够通过可选参数提⾼计算精度。
Mathematica简介Mathematica是一款强大的数学软件,由Stephen Wolfram和Wolfram Research公司开发。
它可以进行符号计算、数值计算、数据分析和可视化等各种数学任务。
Mathematica提供了一个交互式的界面,使用户能够轻松地输入数学表达式和命令,并得到相应的结果。
Mathematica的功能非常广泛,涵盖了数学、物理、工程、统计学等多个领域,被广泛用于教学、研究和工程应用。
特点强大的符号计算能力Mathematica可以进行符号计算,能够处理各种数学表达式、方程、不等式等。
它能够对表达式进行简化、展开、合并等操作,并能够在数学中进行推导和证明。
Mathematica还提供了大量的预定义函数和符号,可以直接使用,或者通过定义新的函数和符号来进一步扩展功能。
多种数值计算方法除了符号计算,Mathematica还提供了各种数值计算方法。
它可以进行数值积分、数值求解方程、数值逼近等操作。
Mathematica使用高精度算法进行数值计算,可以得到非常精确的结果。
同时,Mathematica还支持并行计算和分布式计算,可以利用多台计算机进行计算,加快计算速度。
数据分析和可视化功能Mathematica拥有强大的数据分析和可视化功能。
它可以导入各种数据格式,包括Excel、CSV、数据库等,进行数据清洗、分析和建模。
Mathematica提供了丰富的数据处理函数和图形函数,可以对数据进行统计分析、机器学习、图像处理等操作。
同时,Mathematica还可以生成各种图表、图形和动画,直观地展示数据和结果。
丰富的拓展包和资源Mathematica拥有丰富的拓展包和资源。
它提供了大量的内置函数和算法,涵盖了数学、物理、工程、统计学等多个领域。
此外,Mathematica还支持第三方拓展包,用户可以下载和安装各种拓展包,扩展Mathematica的功能。
对于数学教育和研究领域的用户,Mathematica还提供了丰富的教程、文档和示例代码,用户可以参考和学习。
mathematica特征值【原创实用版】目录1.数学软件 Mathematica 简介2.特征值的概念及应用3.Mathematica 求解特征值的方法4.实际应用案例分析5.总结正文一、数学软件 Mathematica 简介Mathematica 是一款功能强大的数学软件,广泛应用于科学研究、工程技术以及教育等领域。
该软件由美国 Wolfram Research 公司开发,可以进行各种数学计算、可视化以及编程操作,为科研工作者和学生提供了极大的便利。
二、特征值的概念及应用特征值是线性代数中的一个重要概念,对于给定的矩阵 A,如果存在非零向量 x 和标量λ,使得 Ax=λx,则λ称为矩阵 A 的特征值。
特征值在很多实际问题中都有广泛的应用,例如在求解线性方程组、分析线性变换以及研究振动系统等方面。
三、Mathematica 求解特征值的方法在 Mathematica 中,可以使用命令“Eigenvalues”来求解特征值。
具体操作如下:1.首先,创建一个矩阵,例如:```A = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};```2.然后,使用“Eigenvalues”命令求解特征值,如下:```eigenvalues[A]```上述命令将返回矩阵 A 的特征值列表,例如:```{2, 3, 4}```四、实际应用案例分析假设有一个二维的振动系统,其运动方程如下:```m * a[x, y][t] + c * x[t] + k * y[t] = 0```其中,m、c、k 分别为质量、阻尼系数和弹性系数,a[x, y][t] 表示在 t 时刻物体在 x、y 方向上的加速度。
对该系统进行特征值分析,可以得到系统的固有频率,从而分析系统的稳定性。
在 Mathematica 中,可以利用“Eigenvalues”命令求解该系统的特征值,具体操作如下:1.定义系统的参数,例如:```m = 1;c = 1;k = 1;```2.创建系统的矩阵,例如:```A = {{m, 0, c}, {0, m, 0}, {c, 0, k}};```3.使用“Eigenvalues”命令求解特征值,如下:```eigenvalues[A]```上述命令将返回系统的特征值列表,例如:```{1, 1, 1}```五、总结通过以上案例分析,可以看出 Mathematica 在求解特征值方面的强大功能。
第零讲Mathematica软件使用简介一、系统概述Mathematica是美国Wolfram研究公司开发的一个功能强大的计算机数学软件系统,也称为符号计算系统。
Mathematica提供了范围广泛的数学计算功能,支持在各个领域的人们所需要的各种计算。
它是从事各种理论工作(数学、物理、……)的科学工作者、从事实际工作的工程技术人员、以及学校教师和学生的首选计算平台。
Mathematica的主要功能包括三个方面:符号演算、数值计算和图形技术。
例如,它可以做多项式的各种计算(四则计算、展开、因式分解等);求整式方程、有理式方程和的等的精确解和近似解;数值的或一般表达式的向量和矩阵的各种计算;求一般函数表达式的极限、导函数、积分、幂级数展开、求解某些微分方程等;任意位的整数的精确计算、分子分母为任意非零整数的有理数的精确计算(四则计算、乘方等)以及任意位精确度的数值(实数值或复数值)计算。
使用Mathematica还可以非常方便地作出以各种方式表示的一元和二元函数的图形,可以根据需要自由选择画图的范围和精确度。
因此,Mathematica的出现所带来的思维和解题工具的革新必将对各种需要数学计算和绘制函数图形的工作领域产生深远的影响。
Wolfram研究公司自从1988年推出Mathematica系统的1.0 DOS版本以来,历经多次升级和改版,目前已发出For Windows的 5.0版本。
本精品课程主要以Mathematica4.2 for Microsoft Windows版本为例简要介绍该系统的功能及其应用。
1.Mathematica的工作环境Mathematica的运行环境要成功安装并稳定地运行Mathematica for Windows4.2,用户的计算机必须满足以下基本配置条件:·P3或更高型号处理器的个人或多媒体计算机;·Microsoft Windows98、Windows2000、Windows XP或以上版本;·硬盘空间至少200MB,建议1GB以上Mathematica的工作窗口及使用运行Mathematica系统后,将出现下图所示的主窗口:Mathematica4.2的工作窗口有两种类型:笔记本(Notebook)工作窗口和基于文本(Text Based)的工作窗口,这两个工作窗口分别由Mathematica提供的两个基本组成系统――输入输出控制系统(Front End系统)和内核系统(Kernel系统)所包含的交互接口来实现。
数学软件Mathematica简介本文简要介绍该软件的基本使用方法,通过学习,初步了解Mathematica的功能及其使用方法.Mathematica是美国Wolfram Research公司开发的数学软件,主要用于解决科学研究、数学教学、工程技术等领域的符号运算、数值计算、程序设计、函数图形绘制等方面的问题.Mathematica是目前世界上最流行的数学软件之一,它是从事数学和其它科学研究的科研人员、高校师生,以及工程技术人员的得力助手和不可缺少的计算工具.一、算术运算进入Mathematica 系统后,显示在面前的是如图1-1所示的窗口,右边是基本工具板,我们立即可以在空白的窗口内进行预想的数学计算了.图1-1Mathematica中,空白窗口称为Notebook(记事本),窗口上端“Untitled-1”表示当前的记事本尚无标题,我们可以像使用普通计算器一样来进行数学运算. 计算结束后,执行File/Save as 命令,指定文件名称(扩展名为 *.nb)和路径将此记事本文件保存.算术与代数运算是数学中最基本的运算,我们先从最简单的算术运算做起.做数学计算,离不开加、减、乘、除和乘方,单击键盘上“+”、“-”、“*”、“/”和“^”输入这些运算符,其中乘号“*”可以用空格代替. 如果要计算图1-1所示的工具板上提供的某种数学运算,可用鼠标左键单击相应的按钮,便可将该运算符输入到窗口中,例如25+34*525+34*5然后用组合键Shift + Enter 或直接按小键盘上的Enter键(本书中,我们一律称这一操作为“执行”),便可输出计算结果. 屏幕上显示为In[1]:=25+34*5Out[1]=195这里“In[1]:=”和“Out[1]=”是由系统自动加上去的,表示输入和输出的编号. 此后的输入和输出,系统都会按照执行顺序自动加上“In[n]:=”和“Out[n]=”.本书中一般不再显示这些编号,而使用灰色底纹突出输入命令行,接在该行下面的式子、数值等则表示执行命令后的输出结果,并将二者用边框线框住. 输出的图形考虑到印刷的便利,一般予以编号.如果要计算较复杂的式子,需要按照运算顺序添加括号,例如计算3314(3523)23521+⋅+-⋅⎡⎤+⋅⎢⎥-⎣⎦,在窗口内输入(输入的式子中用乘号用空格代替):2+(18/5) (1+4 (3+5-2 3))/(2^3-1) 输出计算结果为23235又如计算(103.54+12.25)*1.2-3.3^5/5.263.68765(a+3)^3/(b-1)^2325 (3+a)(-1+b)对每一输入行和输出行,系统在Notebook 窗口的右边缘分别添加一个形如“”和“”的标记(图1-1),它随着输入行和输出结果行的宽度扩展,它标记的行称之为“Cell ”,即“细胞”或“单元”. 系统根据输入和相应输出的关系将有关的“细胞”组合起来形成多级细胞单元显示运算的层次.Mathematica 可以做任意位数的整数或分子分母为任意大整数的有理数的精确计算,也可以做具有任意位精度的数值(实、复数值)的近似计算. 一般使用 N[expr] 命令输出表达式expr 的近似值,用N[expr ,n]命令输出表达式expr 的n 位近似值,例如计算圆周率π的近似值,顺次输入Pi N[Pi] N[Pi,50]输出结果依次为π的精确值、近似值和精确到50位的近似值Pi3.141593.1415926535897932384626433832795028841971693993751也可以使用后缀格式“expr//N ”求表达式expr 的近似值,如求Sqrt[5]//N2.23607复数运算与实数运算一样,只需在输入复数时,虚数单位“i ”必须使用大写字母I ,输出结果中,显示为 ™ . 例如要计算复数123z i =-+⋅与复数232z i =--⋅的积、商以及1z 的3次方,则应输入(-2+3 I)(-3-2 I) (-2+3 I)/(-3-2 I) (-2+3 I)^312 -5 ™ -™ 46 +9 ™二、常数、变量和函数1.系统常数Mathematica系统中的数学常数列于表1-1.表1-1 数学常数∞2.变量和函数名Mathematica系统中,定义变量和函数名应遵从如下规则:变量或函数名必须以英文字母起头,后面接任意长度的字符或数字,各字符间不得有空格和其他运算符,如x、x1、xy2、T2x、data、Alpha、delta都是合法变量.系统区分变量中的大小写,X和x、xy1和Xy1视为不同的变量.系统内置函数名都以表示函数意义的完整英文单词为名,且起头的第一个字符必为大写字母,其余为小写字符,例如Sin[x]为x的正弦,Expand[expr]表示将表达式expr展开.如果函数名是几个英文单词复合而成,各单词的每个词头要大写,例如,FindRoot[eq1==eq2,{x,x0}]表示求方程式“eq1==eq2”的根. 用完整意义的单词作为函数名定义函数,常使用户能够“望文生义”,根据函数名就大致明确函数的意义. 不过,自定义函数时尽量不要与系统内置函数同名,因为系统内置函数的名称是受保护的.函数必须表示为“函数名[x]”的形式,自变量放在方括号内.3.系统内置函数Mathematica系统中的内置函数(Built-in Function),包括基本初等函数、特殊函数,还有众多旨在完成某项特定数学运算的功能函数,有时也称这类函数为“命令”.表1-2列出了常用的初等函数,它们与普通数学中的形式基本相同,只不过函数名的首字必须大写.表1-2 Mathematica的部分内置初等函数表1-2 续读者要了解更多的内置函数,可参阅书末的附录.4.自定义函数大量的数学问题还需要根据问题的具体意义,借助软件提供的运算功能自行定义函数加以解决,Mathematica 提供了两种自定义函数的方法:立即定义和延迟定义.立即定义,格式为:f[x_]=expr . 延迟定义,格式为:f[x_]:=expr .这里自变量x 右边的下划线“_”是非常重要的,称之为“空白”(blank ),x _表示定义的函数中的自变量,称为哑变量,可以用任何形式的参数或表达式去替代它.使用等号“=”和延迟赋值号“:=”定义的函数是不同的,二者的区别主要在于何时对表达式expr 进行计算,前者在定义f[x_ ]的同时就计算了expr ,而后者则是在需要计算函数 f 的值时才进行计算. 定义多元函数的方法也是相同的.我们用下面的例子来比较二者的区别,输入 f[x_]=Expand[(x +1)^3] 1+3 x+3 x 2 +x 3 f[x^2+1]1+3(1+x 2)+3(1+x 2)2+(1+x 2)3用立即定义法定义一个将多项式展开的函数:f[x_]=Expand[(x +1)^3],执行后,系统会立即输出(x+1)^3的展开式.而再输入f[x^2+1]时,输出的是1+3(1+x 2)+3(1+x 2)2+3(1+x 2)3.接下来用延迟定义法定义:g[x_]:=Expand[(x+1)^3],执行后,系统则不输出任何结果,只有再次调用g[x]时,系统才输出展开式.g[x_]:=Expand[(x+1)^3] g[x]1+3 x +3 x 2+x 3g[x^2+1]8+12 x 2+6 x 4+x 6g[2 a -3 b]1+6 a +12 a 2+8 a 3-9 b -36 a b-36 a 2 b +27 b 2+54 a b 2-27 b 35. 变量赋值、变量值的清除Mathematica 中,用等号“=”给变量赋值,也可以将一个表达式赋予一个变量,格式为 x = value 将值value 赋予变量x x = y = value 将值valu e 同时赋予变量x ,y x =.或 Clear[x]清除x 的值例1 使用一元二次方程求根公式求22230x x +-=的根.解 输入和输出结果为a =b =2;c =-3; Delta=b^2-4 a cx1 =(-b +Sqrt[Delta])/2/a x2 =(-b -Sqrt[Delta])/2/a 输出结果为28142142这里,把2、2、-3分别赋予变量a 、b 、c ,后面用“;”隔开,Mathematica 中,如果一个完整的输入语句之后面接分号“;”,该表达式的运算结果屏幕将不予显示. 把表达式b^2-4 a c 赋予变量Delta ,把计算根的表达式分别赋予变量x1和x2,执行后输出并显示出Delta 的值为28,两个根分别为1(24-±,而变量a 、b 、c 的值却没有显示出来. 如果接着输入 -b /2a Delta 则输出28对于赋了值的变量,如果在接下来的运算中不再使用,可以使用命令:“Clear[变量名]”或“变量=.”将它们清除,以免影响后续的数学运算. 例如,输入Clear[a ,B ,C ,Delta,x1,x2]执行后,这些变量便被清除了. 不再使用的自定义函数可使用同样的方法加以清除:Clear[f ,g]. 在Mathematica 运行期间,将不使用的变量及时加以清除,对保证后续运算结果的准确性是至关重要的,初学者应给予足够的重视.6. 括号的使用Mathematica 中,可以使用四种括号:方括号“[ ]”:仅用在函数表达式中,如f[x]、Sin[Pi/3]、Sqrt[3] 等; 圆括号“()”:用来表示运算项的结合顺序,例如,数学表达式223{5[2(2)]sin()}yx x x y x y⋅⋅++++⋅-应输入成如下形式:3(5(2 x + y /(x -y )+(2+x )^2)+Sin[x ^2] y)此外,在语句行的任何地方可以加入形如 (* …… *)”的括号,其中两星号之间可以输入一段注释语句意义的文字或其他, 其内容系统是不执行的.花括号“{ }”:用于定义一个“表”,如{a ,b ,c}; 双方括号“[[ ]]”:用于提取表中元素. 7. 变量替换Mathematica 提供了变量替换运算,其基本格式为:expr/.x →value以value 替代expr 中的xexpr/.{x →value1,y →value2,…} 以value 1和value 2等替代expr 中的x 、y Replace [expr,rules ] 按规则rules 替代expr例如x ^2+2x +3/.x →211x +y /.y →S in[x ]/.x →π/2Replace[x ^2+b ^2,x →a ]a ^2+b ^2{a ,b ,c }/.a →b /.b →d /.d →c{c ,c ,c }以上输入中的箭头“→”可以依次输入减号键“-”和大于号键“>”得到. 8. 先前变量值的调用在计算过程中,我们常常需要使用先前已经计算出来的结果,使用“%”、“%%”、“%...%”等分别来调出最后一个、倒数第二个和倒数第k 个计算结果. 例如,x +y /.{x →a ,y →b }a +b%+ca +b +c{%+d ,%%+d }{a +b +c +d ,a +b +c }三、 符号运算代数运算,即对使用字符代表数值的代数式进行运算,各种形式的代数式,在Mathematica 中,统称为表达式,如计算33()()a b a b +--,在计算机里做这种运算,称为“符号运算”. Mathematica 强大的符号运算功能,可以完成从初等数学到高等数学中众多的运算,如各种代数式运算、三角函数变换、函数求导、不定积分、级数展开、函数变换、向量矩阵运算等等. 在Mathematica 中,符号运算可以像普通数学运算一样进行,例如将代数式33232322a a a b ab b -++-化简,可以输入2 a^3-a ^3-3a ^2 b +3a b ^2-b ^3 输出为a 3-3 a 2b +3 a b 2-b 3在Notebook 中作符号运算时,有一点必须加以注意,参与运算的表达式中使用的字母符号(实际上,都是所谓的“变量”)必须是没有赋过值的,否则系统将把它当作数值对待,运算后,输出的将是表达式的值,而非预想的运算结果. 为了保证不出错误,应该在符号运算之前,先执行清除命令Clear[a ,x ,...].在大多数场合下,要完成代数运算,需要使用执行符号运算的命令,如表达式化简(Simplify )、分解因式(Factor)等等. 表1-3列出了几个常用的处理符号运算的命令(或称为函数).表1-3 处理符号运算的函数例如下面几个代数式的运算: Expand[(2 x +3 y-1)^2]1+4 x+4 x 2-6 y+12 x y+9 y 22 x^2+x -1//Factor(1+x )(-1+2 x)Together[x ^2/(x +2)-(x ^2-3)/(3x +1)] (*通分合并*)236+3 x -x +2 x (2+x) (1+3 x)Apart[(3 x^2-1)/(x^2+3 x +2)]321又如下列三角式的展开和化简: Sin[α-2β]//TrigExpandCos[β]2 Sin [α]-2 Cos[α] Cos[β] Sin[β]-Sin[α] Sin[β]2TrigReduce[%]Sin [α-2 β]将sin z 转化为指数型函数: TrigToExp[Sin[z]]12z将ln(/)m n a b 展开:PowerExpand[Log[a ^m /b ^n ]]m Log[a]-n Log[b]四、表与表的操作1. 表的概念“表”(List)是Mathematica中一个灵活、独特而重要的数据结构,它可以表示数学中点的坐标、向量、矩阵、集合、自变量取值范围、方程组等,其基本结构是{a,b,c,...},其中a,b,c,...称为表的元素,它们可以是数字、字符、表达式、函数、图形命令,甚至是表(子表),这时的表称为嵌套的表. Mathematica 中众多运算的输出结果也以表的形式给出.可以使用“表名[[num]]”提取该表中的第num个元素.对于嵌套表,用“表名[[num1,num2]]”提取该表中的第num1个子表中的第num2个元素,多层嵌套表也称为多维表.2. 建表方法Mathematica中有多种方法建表方法,可以直接定义法,输入一个花括号,将元素放在括号内,各元素之间用逗号分开即可.例如a={1,2,3}{1,2,3}a[[2]]2如下定义的嵌套表b代表一个23阶矩阵:b={{1,2,-2},{3,4,1}}; (* 定义表b,不做屏幕显示 *){b[[1]], b[[1,3]]} (* 输出表b的第一个子表,和第一个自表中的第三个元素 *){{1,2,-2},-2}b[[1]]相当于b的第一个元素,即矩阵的第一行. b[[1,3]]相当于13b.表作为一个整体可以参与相关的运算,也可以对表的元素进行相关的运算,例如a={1,2,3,4,5};a^2(* a的各元素平方组成的表 *){1,4,9,16,25}%+2a(* 上一个表加上a的各元素的2倍组成的表 *){3,8,18,24,35}10+a(* 将数10加到a的各个元素上去 *){11,12,13,14,15}Sum[a[[i]]^2,{i,5}] (* 计算a中各元素的平方和 *)55Sin[{Pi/6,Pi/3,Pi/2}] (* 将正弦函数作用到表的每个元素上 *)1 2,2使用建表函数Table、Range、Array等,可以建立元素具有某种规则的表,它们的最简单的使用格式为Table[expr,range] 产生一个指定范围内,元素按表达式expr计算出的表.Range[n] 产生一个从1到n的整数组成的表.Array[f,{m,n}] 产生一个以f[i,j]为元素的m n⨯阶数组.Table[ ]是一个非常有用的函数,在生成函数表、作图、制作动画等都会用到它. 例如a=Table[x^i,{i,5}](* 产生以函数i x为元素的表 *){x,x2,x3,x4,x5}Table[{i,Log[10,i]},{i,1,5}]//N(* 产生1-5的常用对数表 *){{1.,0.},{2.,0.30103},{3.,0.477121},{4.,0.60206},{5.,0.69897}}例2利用Table函数输出九九表.Table[i j,{i,9},{j,9}]{{1,2,3,4,5,6,7,8,9},{2,4,6,8,10,12,14,16,18},...,{9,18,27,36,45,54,63,72,81}} (注:此处略去部分输出结果)Range[n]函数的用法.例如,要产生一个从1到10的整数集合,输入b=Range[10]{1,2,3,4,5,6,7,8,9,10}Array[ ]函数的用法. 例如,要产生一个23⨯阶数组,输入Array[a,{2,3}]{{a[1,1],a[1,2],a[1,3]},{a[2,1],a[2,2],a[2,3]}}输出一个两行三列的数组a[i,j].例3用Array[]函数输出一个九九表.f[x_,y_]:=x y; c=Array[f,{9,9}]输出结果与例2的结果相同.有关表的更多的用法和操作,我们将在以后的相关章节中详细介绍.五、图形函数Mathematica有很多图形函数,利用它们可以方便地绘制各种数学函数的图形.其中,最常用的图形函数是产生平面曲线图形的函数命令为Plot[expr,{var,min,max},options]这里expr为函数表达式,var为自变量,min,max分别为自变量取值的下限和上限,它确定作图的自变量取值范围,options为针对输出图形或图元给出的各种控制选项. 也可以使用如下命令把几个函数图形在同一张图中显示出来,Plot[{expr1,expr2,...},{var,min,max},options]例4 做出函数sin()xf xx=的图形,可以输入f[x_]:=Sin[x]/xPlot[f[x],{x,-Pi,Pi},AspectRatio →0.4,PlotStyle →{RGBColor[0,0,1],Thickness[.01]}]Graphics 这里选项AspectRatio→0.4,表示图形的高和宽的比例为0.4 ,即高为宽的40%. 一般地,如果不输入这个选项,则系统默认图形的高和宽之比为黄金分割比,即1/GoldenRatio=0.618. 图形风格选项PlotStyle→{RGBColor[0, 0,1], Thickness[.01]}中,RGBColor[0, 0, 1] 表示图形中曲线的颜色为蓝色,RGBColor[1,0,0]和RGBColor[0,1,0]则分别表示颜色为红和绿,方括号中的三个数取0与1之间的数值.在Mathematica5.1以上的版本中,它们分别可以用Blue,Red和Green取代,Thickness[.01]表示曲线的粗细,方括号中的数值越大,曲线越粗.Mathematica中,凡是输出图形的下方,系统将输出一个字符串“ Graphics ”,如果在图形命令末尾加上分号“;”,则该字符串将不再显示.当函数图形绘制出来以后,用鼠标单击图形,它就被一个矩形框框住,鼠标指向该框内,鼠标变成一个纵横交叉的十字丝,这时按住Ctrl键,移动鼠标,跟踪平面上点的位置,在屏幕左下方的花括号内显示十字丝位置上点的坐标.不妨用这个函数并选择有关选项做出你所熟悉的一元函数的图形. 输出函数图形可用选项有很多,可以查阅帮助文件,也可以在Notebook中使用Option[]函数来了解:Options[Plot]执行后输出所有可用选项,由于选项太多,这里略去.要产生三维空间的曲面图形,最常用的函数为Plot3D[expr,{x,xmin,xmax},{y,ymin,ymax},options]Mathematica还提供了产生由参数方程确定的平面曲线、空间曲线、空间曲面的图形函数,产生极坐标系下曲线的图形函数等等. 图形函数以及它们的具体使用方法,这里不再介绍.此外,Mathematica也提供了利用一些基本图元作图的函数,其中,最常用的命令格式为Graphics[primitives,options]基本图元(primitives)包括: 点(Point)、线段(Line)、圆(Circle)、圆盘(Disk)、多边形(Polygon)、矩形(Rectangle)等,这样的图形需要调用如下的Show函数才将它显示出来.Show[plot,options]例 5 绘制单位圆和以圆与坐标轴的交点为顶点的内接正方形. 输入p=Graphics[{Thickness[0.01],Circle[{0,0},1]}];r=Graphics[{Thickness[0.01],Line[{{0,-1},{1,0},{0,1},{-1,0},{0,-1}}]}];Show[{p,r},Axes→True,AspectRatio→ Automatic];Show函数中,设置选项Axes→True,表示显示坐标轴,图形的显示比例为“自动”. 执行后输出的图形如图1-2所示.例6 利用图元“Circle ”绘制一幅奥林匹克五环标志图,并选取适当选项,显示“Beijing 2008”字样. 可以使用多种方法绘制出五环标志图,下面我们给出如下的命令,执行后输出如图1-3所示的五环标志. Apply[Circle,{{{0,0},1},{{2.4,0},1},{{4.8,0},1},{{1.2,-1.0},1},{{3.6,-1.0},1}},{1}];Show[Graphics[Table[{Blue,Thickness[0.03],%[[i ]]},{i ,5}]],AspectRatio → Automatic,PlotRange →{-3,2},PlotLabel →StyleForm["Beijing 2008",FontFamily →"Times", FontSize →28,FontWeight →"Bold",FontColor →Blue]];这里,使用Apply(应用)函数将Circle 命令作用到五个位置不同上去,产生包含五个圆环的表. 再用Table 函数将画圆的选项“Blue,Thickness[0.03]”分配给五圆表的每个元素,最后使用Show 函数将这五个圆环显示出来. 选择的选项中有:PlotRange →{-3,2}表示图形纵向范围,PlotLabel →StyleForm[]指出图形标签的风格形式,方括号内依次列出:字样“Beijing 2008”、字体、字号、字形和字体颜色等.作业:利用Mathematica 绘制一个尽量真实的奥林匹克五环标志图图1-2图1-3六、程序与编程Mathematica提供了众多可以解决各种数学问题的功能函数,但是,大量的数学问题仅靠这些函数来解决,还是远远不够的,需要自己编写计算机程序来解决. Mathematica系统为用户提供了一个功能非常强大的编程平台和编程语言,其语言结构简单、灵活,凡学过计算机语言(如C、Fortran等)的用户都能很快地掌握它.同任何程序语言的结构一样,Mathematica程序流程也分成顺序结构、循环结构、条件分支结构.1. 关系运算与逻辑运算在程序流程的控制中,需要用到关系运算和逻辑运算. 这些运算由相应的关系运算符和逻辑运算符完成,如果关系表达式和逻辑表达式成立,其输出结果为True,否则为False.关系运算符和逻辑运算符列于表1-4和表1-5中.表1-4 关系运算符及运算结果表1-5 逻辑运算符及运算结果2. 全局变量与局部变量当Mathematica开启并首次执行一个运算后,系统立即启动一个叫做“Mathematica Kernel”程序,它负责变量和函数的计算,并将计算结果暂时存储在这里.凡先前定义的变量的值,在Mathematica运行期间,该变量的值始终被保存,所以,在Mathematica中称这种变量为“全局(Global)变量”,全局变量的值只要没有及时地清除,很可能会影响后续的运算的结果.相对全局变量,Mathematica允许定义一种所谓的“局部(Local)变量”,不过这种变量必须放在一个由Module引起的模块中,用Module模块可以定义一个函数或者旨在完成某项具体任务的程序. 这个模块中定义的变量叫做局部变量. 局部变量的值仅在该模块内起作用,模块外的全局变量值与模块内定义的局部变量,即使它们同名也互不影响.Module模块的基本格式:Module[{x,y...},body],局部变量为x,y,...的模块.Module[{x=x0,y=y0,...},body],局部变量为x,y,...赋予初始值的模块.例如,输入x=10 (* x为全局变量,定义其值为 10*)f=Module[{x},x=(2 t-3 s)^2;x=Expand[x]](* Module中的变量x为局部变量*)不难看出,这里用Module模块定义的变量f,执行后输出结果为109 s2-12 s t+4 t2显然,输出的10为全局变量x的值,而模块内的变量x为局部变量,将(2 t-3 s)^2赋予x,再将它展开并输出展开式.这里须注意Module模块中最后一个语句为输出语句.3. 循环结构程序,实质上就是一系列有序的计算机指令组成的集合.大多数情况下,Mathematica程序,就是将一系列的命令组合在一起,按照先后顺序从前向后执行,当一个命令语句之后添加“;”时,计算结果不做屏幕显示,继续计算下一条命令,直到这组命令全部计算完备为止,这种程序结构,叫做顺序结构.但是,许多数学问题,需要利用计算机的高速运算多次循环计算才能得到结果,即需要编写一个循环结构的程序来完成. Mathematica中有多种建立循环结构程序的方法,我们仅介绍其中几种常用的方法.(1) Do循环Do循环的格式为Do[expr,{i,i min,i max}] 循环变量i从i min到i max,重复计算expr的值Do[expr,{i,i min,i max,di}] 循环变量i从i min到i max,以di为步长,重复计算expr的值.Do[expr,{i,i min,i max},{j,j min,j max}] 二重循环例7用Do循环计算前n个自然数的平方和,输出前15个自然数的平方和.Sqsum[n_Integer]:=Module[{s=0},Do[s+=k^2,{k,n}];s]Sqsum[15]1240输出结果为1240. 程序中k为循环变量,循环表达式“s+=k^2”,即“s=s+k^2”,循环变量的初值如果是1的话,可以省略.(2) For循环Fro循环的格式为For[start,test,incr,body] start为循环变量初值,test为检验条件,incr 为步进量,body为循环体.使用For循环作例6的问题:Sqsum1[n_]:=Module[{s=0},For[i=1,i<=n,i++,s+=i^2];s]Sqsum1[15]其中,循环变量i的初值为1,终值为n,i++表示步进量为1(它可以用i=i+1,或者i+=1代替),此程序的输出结果也是1240.(3) While循环While循环的格式为While[test, body]test为检验条件,body为循环体当检验条件满足,计算循环体,直到检验条件不满足为止.使用While循环作例6的问题,输入如下程序Sqsum2[n_]:=Module[{s=0,i=1},While[i<=n,s+=i^2;i+=1];s]Sqsum2[15]不难看出,这个程序的输出结果仍然是1240.4. 条件分支结构在数值或者非数值运算中,常常需要对给定的条件作逻辑判断,并根据判断结果控制程序的流向,这要用到分支结构.Mathematica中使用If、Which等命令控制程序的分支,下面简要介绍它们的用法.(1) If 语句格式If[cond,t,f],cond为检验条件,当cond为真时计算t,否则计算f.例8 编写程序从任意给出的3个数中挑选最大的数. 输入maxf[x_,y_,z_]:=Module[{m},If[x>y,m=x,m=y];If[z>m,m=z];Print[m,"i s the maximal number."]]程序中“Print”函数表示打印,其中引号中的字符串照原样打印.如果求ππee, 3,π中最大的数. 调用此程序并输出结果为maxf[E^Pi,3^Pi,Pi^E]π3is the maximal number.数学中的分段函数,常常要使用If命令来定义,我们将在实验1中详细讨论.,(2) Which 语句格式Which[cond1,expr1,cond2,expr2,...] 顺次检验条件cond i,当首次遇到某个条件cond k成立时,返回对应的表达式expr k的值.例9 用Which命令定义符号函数1 , 0 sgn[] 0 , 01 , 0xx xx-<⎧⎪==⎨⎪<⎩.sgn[x_]:=Which[x<0,-1,x==0,0,x>0,1]如果输入sgn[2.5],输出1,输入sgn[-3.1],则输出-1.为了解决复杂的问题,在计算机程序中,常常需要在适当的地方中改变程序的流向,例如在循环中,当循环结果符合要求以后,中断循环,跳出循环执行下面的语句,或控制程序转入下一轮循环. Mathematica 中提供了一些控制程序流程的命令函数,如Break[]、Continue[]、Return[expr]、Goto[name]等等. Mathematica 程序的语法与C语言语法基本相同,读者可以在所掌握的计算机语言的基础上,逐步熟悉程序的编写方法.例10 3N+1问题是数论中的一个有趣问题,任意给定一个正整数内 N ,如果它是偶数,则除以2,否则,将它乘以3再加上1,再将所得到的数当作新的N,重复上述计算步骤,经过有限次计算后,最后一定得到数1. 编写Mathematica程序验证这一事实.ThreeNPlus1[n_]:=Module[{m=n},For[i=1,i≤10^10,i++,{If[m==1,Break[],If[Mod[m,2]==0,m=m/2,m=3 m+1]]}]; Return[m]]程序里,对任意给定的正整数n,由于事前并不知道需要计算多少次,最后可以返回数1,故选取循环变量的终值为一个很大的数,这里取为1010.循环过程中,经过若干次计算后,一旦得到数1,程序执行到终止循环命令Break[](注:Break之后的方括号内不填任何值),则跳出循环,Return[m]表示返回到m的最后值. 可以验证,对于任何整数n调用这个函数,其返回值都是1.七、帮助与查询查阅软件提供的帮助是迅速掌握软件功能的重要途径,选择Help菜单下的Help Browser...菜单项(可单击F1) 打开帮助浏览器,其中介绍系统内置函数(Build-in Functions)、学习教科书(The Mathematica Book)、功能演示(Demos)、索引(Master Index)等内容,从中了解系统功能、函数与基本使用方法.Mathematica还提供了获取帮助的简便方法,要了解某个具体函数或者命令的意义,可以在Notebook中先输入“? 函数名”,例如,输入?Expand执行此命令,系统输出该函数的简要信息.Expand[expr] expands out products and positive integerpowers in expr. Expand[expr, patt] leaves unexpanded anyparts of expr that are free of the pattern patt. More...要了解更多的信息,可以单击上面这段文字末尾的“More...”按钮. 如果输入“??Expand”,执行后则输出该函数的详尽信息.如果忘记了某个函数或命令的英文拼写,可以输入?Ex*则会输出系统中所有以“Ex”起头的Mathematica命令的名称.八、加载程序包Mathematica提供的内置函数中,有一部分可以直接调用.还有些功能相对专业的函数,Mathematica将它们集中在一个个的程序包中,要使用这些函数首先必须调入包含着该函数的程序包,否则,若直接输入这些函数,系统并不能识别.加载程序包的方法是输入:<<程序包`子程序包名称` (或者Get[“程序包`子程序包名称`”])或者输入Needs[“程序包`子程序包名称`”]例如我们要做统计中线性回归方面的计算,就需要调入统计(Statistics)程序包中的线性回归子程序包,输入<<Statistics`LinearRegression`执行后就可以使用该程序包中的有关函数或命令做线性回归了. 注意,上面的命令中,要输入单引号“`”,需单击数字键1左边的那个键.Mathematica系统提供了代数、几何、微积分、数论、图形、统计等领域中的许多程序包,要了解这些程序包,从帮助浏览器的“Add-Ones&Link”卡中的标准程序包(Standard Packages)去查找.除了做数学的程序包外,有一个特殊的杂项(Miscellaneous)程序包,其中包括可以输出化学元素、物理常数、日历、城市数据等方面资料的子程序包. 例如,要想知道某年某月是星期几,需要加载中的日历(Calendar)子程序包,输入<<Miscellaneous`Calendar`执行后,比如要想知道2016奥运会的开幕日是星期几,输入DayOfWeek[{2016,8,5}]Friday即当天是星期五. 要想知道从2014年3月1日到2016奥运会开幕还有多少天,输入并执行后得到DaysBetween[{2014, 3, 1}, {2016, 8, 5}]888。
mathematica⼀、Mathematica⼊门1.Mathematica简介Mathematica是⼀个功能强⼤的计算机应⽤软件,由美国Wolfram Research公司开发,⾃1988年Mathematica1.0推出后,在计算技术领域引起了很⼤震动,使得Wolfram Research公司成为世界软件⼯业的先驱,并被⼴泛认为是技术和商业领域的佼佼者。
Mathematica是⼀个完全集成环境下的符号运算系统,具有强⼤的数值运算功能、符号运算功能、绘图功能。
利⽤Mathematica可以做任意位精度的数值计算。
如今,Mathematica 已⼴泛应⽤于数学、物理学、化学以及⼯程领域,被认为是现代技术的标志。
2. mathematica界⾯简介⼯作区窗⼝,基本输⼊模版,主菜单3. 会⾃制模版4.Mathematica的数值计算与符号运算使⽤Mathematica可以像使⽤标准科学计算器⼀样进⾏算术运算。
启动Mathematica后即可进⼊Mathematica系统集成界⾯,Mathematica集成界⾯可以输⼊⽂本、动画和实际的Mathematica输⼊。
加、减、乘、除、乘⽅的算符依次为+、-、*、/、^。
其中乘可以⽤空格来代替,减号可⽤来表⽰⼀个数的符号,并直接写在数的前边。
例1计算5.2+7.9。
解在Mathematica⼯作区输⼊:5.2+7.9,按Shift+Enter键后得结果:In[1]:=5.2+7.9Out[1]=13.1其中In[1]:=和Out[1]=是系统⾃动加上的,In后⾯代表输⼊的表达式,Out后⾯代表输出的结果。
Out[1]表⽰输⼊In[1]的输出结果,该结果可以被其它输⼊引⽤。
在Mathematica⼯作区输⼊命令后,按Shift+Enter键可以执⾏该命令,并输出结果。
本书各例中当有结果输出时,均需按Shift+Enter键。
In[2]:=Out[1]+10Out[2]=23.1但Mathematica⼜与计算器不同,它能给出精确的计算结果。
数学软件Mathematica的应用一、数学软件Mathematica简介★Mathematica是由美国Wolfram公司研究开发的一款著名的数学软件;★Mathematica能够完成符号运算、数学图形的绘制等,功能非常强大;★Mathematica能够做精确计算;★Mathematica的界面操作非常友好;★Mathematica是数学建模常用的数学软件之一。
二、利用模板进行微积分运算File(文件)→Palettes(模板)→BasicInput(基本输入)File(文件)→Palettes(模板)→BasicCalculations(基本计算)三、Mathematica中一些常用的函数(1(2(3((5(6(8)数值分析函数在Mathematica 中,一个逻辑表达式的值有三个:真(True )、假(False )和“非真非假”。
条件控制函数If(1) If 语句的结构与一般的程序设计语言中的If 的结构类似。
它有三种情况:If[逻辑表达式,表达式1]当逻辑表达式的值为真时则计算表达式1,表达式1的值就是整个If 结构的值;If[逻辑表达式,表达式1,表达式2]当逻辑表达式的值为真时则计算表达式1,为假时则计算表达式2; If[逻辑表达式,表达式1,表达式2,表达式3]当逻辑表达式的值为真时则计算表达式1,为假时则计算表达式2,其它情况则计算表达式3。
循环控制语句Mathematica 中有3种描述循环的语句,它们是Do,While 和For 语句。
下面是其一般形式:For[初值,条件,修正,循环体] While[条件,循环体] Do[循环体,{循环围}]四、结合图形进行分析1.作出函数xx f y 1sin )(==在区间]1,1[-上的图像,观察当0→x 时函数的变化情况;作出函数xx x f y 1sin)(==在区间]1,1[-上的图像,观察当0→x 时函数的变化情况;2.作出双曲抛物面xy z =的图形; 3.作weierstracs 函数)13cos(21)(1x x f n n nπ∑∞==(处处连续但处处不可导)的图像;4.x ∈(-5,5), y ∈(-5,5)的所有根;五、验证与探索1.x sin 的泰勒级数2.x sin 的无穷乘积猜想六、算法与程序1.分形图(迭代)2.将矩阵化为行最简形(步骤)七、实际问题的Mathematica 求解1.椭圆弧长的计算问题计算椭圆βα≤≤⎩⎨⎧==t t b y ta x ,sin cos 的弧长及近似值。
mathematica参数范围【原创实用版】目录1.Mathematica 简介2.参数范围的概念3.Mathematica 中的参数范围设置方法4.参数范围的应用实例5.总结正文1.Mathematica 简介Mathematica 是一款功能强大的数学软件,广泛应用于科学研究、工程设计以及教育等领域。
它拥有丰富的函数库和强大的计算能力,可以方便地解决各种数学问题。
2.参数范围的概念在 Mathematica 中,参数范围是指在计算过程中所涉及到的变量取值范围。
参数范围的设置有助于提高计算的准确性和效率,避免无效计算和错误结果。
3.Mathematica 中的参数范围设置方法在 Mathematica 中,可以通过以下几种方法设置参数范围:(1) 使用 Domain 函数:Domain 函数可以用于指定函数的定义域,从而限制函数的参数范围。
例如,对于函数 f(x)=1/x,我们可以使用Domain 函数指定其定义域为 x≠0,从而限制 x 的取值范围。
(2) 使用 Region 函数:Region 函数可以用于创建一个二维或三维的区域表示参数范围。
例如,我们可以创建一个表示 x 和 y 都大于 0的区域,然后使用该区域作为函数的参数范围。
(3) 使用条件语句:在 Mathematica 中,我们可以使用条件语句(如If、While 等)来根据参数的取值范围执行不同的计算步骤,从而实现参数范围的控制。
4.参数范围的应用实例假设我们要计算一个复合函数 f(g(x)) 的值,其中 x 的取值范围是[0, π],g(x) 的取值范围是 [0, 1],f(x) 的取值范围是 [0, π]。
在这种情况下,我们可以通过设置参数范围来避免无效计算和错误结果。
具体操作如下:(1) 计算 g(x) 的值域,得到参数范围{x, g(x)}(2) 根据 g(x) 的值域,计算 f(g(x)) 的定义域,得到参数范围{x, f(g(x))}(3) 使用 Domain 函数限制 f(g(x)) 的参数范围,得到最终的计算结果5.总结通过使用 Mathematica 设置参数范围,我们可以有效地提高计算的准确性和效率,避免无效计算和错误结果。