好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

Mathematica基础知识.ppt

75页
  • 卖家[上传人]:ni****g
  • 文档编号:590673722
  • 上传时间:2024-09-15
  • 文档格式:PPT
  • 文档大小:357KB
  • / 75 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 天水师范学院高等数学实验(Mathematica篇)任课教师:高忠社Mathematica基础知识 序序一、目前常见的数学软件分类⑴ 公共基础软件:Basic、Fortran、Turbo C、 Pascal等.⑵ 矩阵实验室系统:Matlab.⑶ 计算机代数系统:Mathematica、Maple等.⑷ 交互式数学软件:MatheCAD等.Mathematica基础知识 二、部分数学软件各自的特点描述Mathematica: 数值运算和解析运算可以非常地 精确.MathCAD: 可视化数学运算工具.Matlab: 数值计算十分快捷.Matematica\Maple: 符号运算更为有力.Mathematica基础知识 第一章第一章 Mathematica用法简介用法简介 Mathematica是美国Wolfram研究公司生产的一种数学分析型软件主要包括:数值计算、符号计算、图形功能和程序设计4个方面的功能,含有功能强大、种类丰富的内部函数,用户也可以自由地定义自己的函数并扩充到系统函数中Mathematica基础知识 Mathematica也是一个交互式的系统,其用户界面为图形形式,使用起来很方便,且可以很方便的与其它软件(如字处理软件等)交换信息,图形处理也更直观、方便,使用更广泛。

      下面主要以Mathematica5.0版本为基础来介绍其基本使用方法Mathematica基础知识 1 1、、Mathematica 基本操作基本操作Mathematica基础知识 1.1 1.1 启动与退出启动与退出 假设在Windows下已安装好Mathematica,启动Windows后,在“开始”菜单的“程序”中单击,就启动了Mathematica,在屏幕上显示如下图的Notebook主窗口,系统暂时取名为Untitled-1,直到用户保存时重新命名为止Mathematica基础知识 Mathematica基础知识 在主窗口中,可以开始输入命令进行计算工作需要注意的是:Mathematica的计算核心一般不是进入系统后马上启动的,只有在给出了确实的计算指令后才开启,因此Mathematica的第一条命令的执行速度相对会慢一些 退出Mathematica与其它Windows程序一样,可以用Alt+F4、File->Exit或关闭按钮Mathematica基础知识 1.2 1.2 输入命令输入命令 进入Mathematica后,就可以输入命令系统解释并执行命令后,将把输入命令编号,前面加上In[num]:=的信息(”num”代表输入命令的序号),输出结果前将加上提示符Out[num]=。

      注意:输入命令并不是以回车符(Enter)结束,可以一次输入多行命令执行命令一般是Shift+Enter或数字键盘中的Enter键Mathematica基础知识 1.3 NoteBook1.3 NoteBook Mathematica中的输入输出都是在NoteBook中进行的每一次输入和输出作为单元(cell)出现,所有的资料,包括文本和图形都被组成有序的单元,通过定制,可以改变单元的字体、大小、放大缩小图形,还可以利用鼠标单元右部的标志线选择一个或一组单元,进行单元的操作退出Mathematica时会询问是否保存本次工作Mathematica基础知识 1.4 1.4 复制和剪切复制和剪切 尽管Mathematica可以保存自己的工作,但也可以将算出的结果保存到其它文件中,或者将在其它文本编辑器中编辑的命令调到Mathematica中执行这些操作都可以通过Windows剪贴板来完成Mathematica基础知识 1.5 1.5 使用以前的结果使用以前的结果 任何时候都可以在输入表达式里写百分号”%”表示上一次计算的结果这样就可以方便的使用前面的计算结果构造新的计算例如: In[1]:=x^2+2x*y+5x*y^2 In[2]:=%*(x^2+y)注:%%表示倒数第二个计算结果; %n表示第n个计算结果。

      Mathematica基础知识 1.6 1.6 使用联机求助系统使用联机求助系统 在使用Mathematica的过程中,常常需要了解一个命令的详细用法,或者想知道是否有完成某一任务的函数此时就需要借助帮助系统来实现⑴ 运算区的查询 在运算区内输入相应的命令,可以查询内部函数(操作)的有关信息Mathematica基础知识 ø常见输入方式有:① ?Name: 给出有关Name的有关信息;② ??Name: 给出有关Name的消息信息;③ ?L*: 给出以L开头的所有函数(操作)的全 名如:?Log语句将给出函数Log[x]的有关信息Mathematica基础知识 ⑵ Windows格式的查询 在Mathematica的工作窗口中,通过File->Help Browser或Shift+F1可以激活Help Browser帮助系统窗口如下图所示:Mathematica基础知识 Mathematica基础知识 pHelp Browser中主要帮助信息解析:Build-in Funtion: 查询Mathematica的所有内部命令与 函数的使用方法;Add-ons: 查询Mathematica的函数库命令与函数的用 法;The Mathematica Book: Mathematica的完整手册;Getting Started/Demos: 初学者使用说明与范例;Other Information: 其它信息,包括Mathematica集成环境介绍、数学表达式二维格式的输入方法等;Master Index:用索引的方法查询Mathematica关键词。

      Mathematica基础知识 p帮助系统使用说明: 选择搜索主题的类别之后,输入关键词,单击GOTO按钮开始搜索主题,或者在最左边的选项列表中选择搜索主题类别后,在逐渐缩小查询范围,进行搜索如:查询Limit可以直接在Help Browser中输入Limit,也可以选择Algebraic Computation->Calculus->Limit查询Mathematica基础知识 ⑶ 关于“;”的使用 Mathematica中规定“;”为其语句分隔符,当其后不再有Mathematica语句时,其含义为要求系统不再输出该语句的运算结果中Out后面的结果;若其后还有其它语句时,则认为两语句为并列关系,且最后一个语句的结果为它们顺序执行后的最终结果但由于绘图执行后,其图形在Out语句出现前画出,因而图形给出,不再有Out语句后内容Mathematica基础知识 ⑷ 打开文件与打开程序包 主菜单中File->Open的用法与“<<”的用法:① Open用于打开已保存的文件;② <<用于读入Mathematica命令编写的程序块或程序包,并同时执行打开程序块时,给出运行结果;读入程序包时,只是将包中的变量与操作函数调入内存,无其它执行结果。

      Mathematica基础知识 1.7 1.7 初学者易犯的错误初学者易犯的错误⑴ 大小写错误:只要指系统的内部操作命令及内部函数的首写字母;⑵ 括号错误:大、中、小三种括号在Mathematica中各自的位置;或括号个数的不配对;⑶ 空格符号错误:相乘时一定要加空格或乘号,变量之间绝对不能用空格;⑷ 未清除某些变量先前定义或赋值,导致异常结果Mathematica基础知识 2、Mathematica基本量Mathematica基础知识 2.1 数据类型和常数  1、数值类型 l在Mathematica中,基本的数值类型有四种:整数,有理数、实数和复数l如果计算机的内存足够大,Mathematica可以表示任意长度的精确实数,而不受所用的计算机字长的影响l整数与整数的计算结果仍是精确的整数或是 有理数 Mathematica基础知识 例如:2的100次方是一个31位的整数 In[1]:=2^100      Out[1]=126765294376p在Mathematica中允许使用分数,也就是用有理数表示化简过的分数当两个整数相除而又不能整除时,系统就用有理数来表示,即有理数是由两个整数的比来组成。

      如: In[2]:=12345/5555Out[2]=2469/1111Mathematica基础知识 p实数是用浮点数表示的,Mathematica实数的有效位可取任意位数,是一种具有任意精确度的近似实数,当然在计算的时候也可以控制实数的精度 实数有两种表示方法:一种是小数点;另外一种是用指数方法表示的如:    ln[3]:=0.239998   Out[3]=0.239998   ln[4]:=0.12*10^11   Out[4]=1.2*10^10Mathematica基础知识 p实数也可以与整数,有理数进行混合运算,结果还是一个实数如: In[5]:=2+1/4+0.5                       Out[5]=2.75p复数是由实部和虚部组成实部和虚部可以用整数,实数,有理数表示在Mathematica中,用i表示虚数单位如:                        In[6]:=3+0.7i                        Out[6]=3+0.7iMathematica基础知识 2、不同类型数的转换 在Mathematica的不同应用中,通常对数字的类型要求是不同的。

      例如在公式推导中的数字常用整数或有理数表示,而在数值计算中的数字常用实数表示一般情况下在输出行Out[n]中,系统根据输入行In[n]的数字类型对计算结果做出相应的处理如果有一些特殊的要求,就要进行数据类型转换 Mathematica基础知识 在Mathematica中的提供以下几个函数达到转换的目的: N[x]                    将将x转换成实数转换成实数 N[x,n]                 将将x转换成近似实数,精度为转换成近似实数,精度为n Rationalize[x]    给出给出x的有理数近似值的有理数近似值 Rationalize[x,dx]   给出给出x的有理数近似值,误的有理数近似值,误                                 差小于差小于dx Mathematica基础知识 举例:          In[1]:=N[5/3,20]          Out[1]=1.66666666666666666667          In[2]:=N[%,10]   (%表示上一输出结果%表示上一输出结果)          Out[2]=1.666666667           In[3]=Rationalize[%]          Out[3]=5/3Mathematica基础知识 3、数学常数 Mathematica 中定义了一些常见的数学常数,这些数学常数都是精确数,例如表示圆周率。

      Pi                     表示 =3.14159…… E                      自然对数的底e=2.71828…… Degree                /180 i                        虚数单位 Infinity           无穷大 -infinity         负的无穷大 - GoldenRatio     黄金分割数1.61803 Mathematica基础知识 数学常数可用在公式推导和数值计算中在数值计算中表示精确值:如:                  In[1]:=Pi^2                  Out[1]=                    In[2]:=Pi^2//N                  Out[2]=9.86961Mathematica基础知识 4、数的输出形式 在数的输出中可以使用转换函数进行不同数据类型和精度的转换另外对一些特殊要求的格式还可以使用如下的格式函数:oNumberForm[expr,n]:以n位精度的实数形式输出实数expr oScientificFormat[expr]:以科学记数法输出实数expr oEngineergForm[expr]:以工程记数法输出实数expr Mathematica基础知识 举例:In[1]:=N[Pi^30,30]Out[1]=In[2]:=NumberForm[%,10] Out[2]=In[3]=EngineeringForm[%%] Out[3]=Mathematica基础知识 2.2 表达式的输入 Mathematica 提供了多种输入数学表达式的方法。

      除了用键盘输入外, 还可以使用工具样或者快捷方式键入运算符、矩阵或数学表达式 Mathematica基础知识 1、数学表达式二维格式的输入 Mathematica提供了两种格式的数学表达式形如x/(2+3x)+y/(x-w)的称为一维格式,形如 的称为二维格式可以使用快捷方式输入二维格式,也可用基本输入工具栏 输入二维格式下面列出了用快捷方式输入二维格式的方法 :Mathematica基础知识 Mathematica基础知识 另外也可从FILE菜单中激活Plaettes->Basic Input  工具栏,也可输入, 并且使用工具栏可输入更复杂的数学表达式 如下图:Mathematica基础知识 Mathematica基础知识 2、特殊字符的输入 Mathematica 还提供了用以输入各种特殊符号的工具样基本输入工具样包含了常用的特殊字符(上图),只要单击这些字符按钮即可输入若要输入其它的特殊字符或运算符号,必须使用从FILE菜单中选取Complete Characters工具栏,如下图: Mathematica基础知识 Mathematica基础知识 2.3 变量1、变量的命名 Mathematica中内部函数和命令都是以大写字母开始的标示符。

      为了不会与它门混淆,我们自定义的变量应该是以小写字母开始,后跟数字和字母的组合,长度不限 如: a12,ast,aST都是合法的,而12a,z*a是非法的 另外,在Mathematica中变量是区分大小写的在Mathematica中,变量不仅可以存放一个数值,还可以存放表达式或复杂的算式 Mathematica基础知识 2、给变量赋值 在Mathmatica中用等号“=”为变量赋值同一个变量可以表示一个数值,一个数组,一个表达式,甚至一个图形 如:           In[1]:=x=3            Out[1]=3           In[2]:=x^2+2x      Out[2]=15           In[3]:=x=%+1      Out[3]=16Mathematica基础知识 对不同的变量可同时赋不同的值例如:              In[4]:={u,v,w}={1,2,3}              Out[4]={1,2,3}              In[5]:=2u+3v+w              Out[5]=11Mathematica基础知识 对于已定义的变量,当你不再使用它时,为防止变量值的混淆,可以随时用=.清除它的值,如果变量本身也要清除用函数Clear[x]。

      例如:                         In[6]:=u=.                          In[7]:=2u+v                         Out[7]=2+2uMathematica基础知识 3、变量的替换 在给定一个表达式时,其中的变量可能取不同的值,这时可用变量替换来计算表达式的不同值方法为用expr/var->c例如: In[1]:=f=x/2+1 Out[1]=          In[2]:=f/.x->1 Out[2]=          In[3]:=f/.->4 Out[3]=3Mathematica基础知识 如果表达式中有多个变量也可以同时替换,方法为 expr/.{var1->c1,…,varn->cn}例如:      In[4]:=(x+y)(x-y)^2/.{x->3,y->1-a} Out[4]=Mathematica基础知识 4、立即赋值和延迟赋值 在Mathematica中有两种不同的赋值方式,分别为:lhs=rhs和lhs:=rhs。

      赋 值意 义lhs=rhs立即赋值,赋值的同时计算rhslhs:=rhs延迟赋值,当要求得到lhs时计算rhsMathematica基础知识 例:对下面两个赋值进行比较: ex[x_]:=Expand[(a+b*x)^2]; iex[x_]=Expand[(a+b*x)^2]; In[1]:=ex[y+2] In[2]:=iex[y+2]Mathematica基础知识 注:在定义函数时,“:=”和“=”都很有用,但一定要注意它们具有不同的意义一个经验规则是:当想得到表达时的最终结果时,可用“=”;当希望得到的是一个特殊的“命令”,最好用“:=”如: k[n_]:=Sum[i,{i,1,n}] k[n_]=Sum[i,{i,1,n}]Mathematica基础知识 ø在计算时当得到符号参数的结果,想继续利用此计算结果得到参数的各个不同值时,选择“=”更为合适如:In[1]:=D[Log[Sin[x]]^2,x] In[1]:=D[Log[Sin[x]]^2,x] Out[1]=2Cot[x]Log[Sin[x]] Out[1]=2Cot[x]Log[Sin[x]]In[2]:=dlog[x_]=%; In[2]:=dlog[x_]:=%;In[3]:=dlog[1+a] In[3]:=dlog[1+a] Out[3]=2Cot[1+a]Log[Sin[1+a]] Out[3]=2Cot[x]Log[Sin[x]]Mathematica基础知识 ø在用“=”和“:=”对变量进行赋值时,前者结果立即被计算出来,而后者则保持没有被计算时的形式。

      如:In[1]:=rd1=Random[] Out[1]=0.327946 In[2]:=rd2:=Random[] (使用时才计算) In[3]:={rd1,rd2} Out[3]={0.327946,0.450938} In[4]:={rd1,rd2} Out[4]={o.327946,0.334043}Mathematica基础知识 ø在许多计算中,可能要对同一函数访问多次,在这种情况下,可以让Mathematica记住它发现的所有函数值的方法来节省时间 定义: f[x_]:=f[x]=rhs (定义一个能记住它发现的所有值的函数)如:定义函数f,该函数存取它发现的所有值 f[x_]:=f[x]=f[x-1]+f[x-2] f[0]=f[1]=1Mathematica基础知识 2.4 函数1、系统函数 Mathematica基础知识 注:Mathematica中的函数与数学上的函数有些不同的地方,Mathematica中函数是一个具有独立功能的程序模块,可以直接被调用。

      同时每一函数也可以包括一个,或多个参数,也可以没有参数参数的数据类型也比较复杂 Mathematica基础知识 2、函数的定义 ⑴ 函数的立即定义 立即定义函数的语法如下:f[x_]=expr函数名为f,自变量为x,expr是表达式在执行时会把expr 中的x都换为f的自变量x(不是x_) 函数的自变量具有局部性,只对所在的函数起作用函数执行结束后也就没有了,不会改变其它全局定义的同名变量的值 Mathematica基础知识 对于定义的函数我们可以求函数值,也可绘制它的图形 对于定义的函数我们可以使用命令Clear[f]清除掉,而Remove[f]则从系统中删除该函数 Mathematica基础知识 ⑵ 多变量函数的定义 格式为:f[x_,y_,z_,…]=expr 自变量为x,y,z….,相应的expr中的自变量会被替换例如:定义函f(x,y)=xy+ycosx Mathematica基础知识 ⑶ 延迟定义函数 延迟定义函数从定义方法上与即时定义的区别为“=”与“:=”延迟定义的格式为f[x_]:=expr其它操作基本相同那么延迟定义和即时定义的主要区别是什么?即时定义函数在输入函数后立即定义函数并存放在内存中并可直接调用。

      延时定义只是在调用函数时才真正定义函数 Mathematica基础知识 ⑷ 使用条件运算符定义和If命令定义函数如果要定义如: 这样的分段函数应该如何定义,显然要根据x 的不同值给出不同的表达式一种办法是使用条件运算符,基本格式为f[x_]:=expr/;condition 当condition条件满足时才把expr赋给fMathematica基础知识 如:Mathematica基础知识 If语句的格式为If[条件,值1,值2]如果条件成立取“值1”,否则取“值2”如: Mathematica基础知识 2.5 表 将一些相互关联的元素放在一起,使它们成为一个整体既可以对整体操作,也可以对整体中的一个元素单独进行操作在Mathematica中这样的数据结构就称作表(List)表主要有两个用法:表{a,b,c}可以表示一个向量;表{{a,b},{c,d}}可表示一个矩阵 Mathematica基础知识 1、建表 在表中元素较少时,可以采取直接列表的方式列出表中的元素,如{1,2,3}     In[1]:={1,2,3}            Out[1]={1,2,3}下面是符号表达式的列表            In[2]:=1+%x+x^%            Out[2]={1+2x,1+2x+x^2,1+3x+x^3}Mathematica基础知识 下面是对列表中的表达式对x求导                        In[3]:=D[%,x]                      Out[3]={2,2+2x,3+2x}                       In[4]:=%/.x->1                      Out[4]={2,4,5}如果表中的元素较多时,可以用建表函数进行建表,如下图:Mathematica基础知识 oTable[f,{i,min,max,step}] 以step为步长给出f的数值表,i由min变到max,oTable[f,{min,max}]  给出f的数值表,I由min变到max 步长为1oTable[f,max]                 给出max个f的表oTable[f,{i,imin,imax},{j,jmin,jmax},….] 生成一个多维表 oTableForm[list]    以表格格式显示一个表 oRange[n]       生成一个{1,2,……..}的列表oRange[n1,n2,d]   生成{n1,n1+d,n1+d,….,n2}的列表 Mathematica基础知识 举例:In[1]:=Table[x*i,{i,2,6}]          Out[1]={2x,3x,4x,5x,6x}In[2]:=Table[x^2,{4}]              Out[2]={x2,x2,x2,x2}In[3]:=Range[10]                     Out[3]={1,2,3,4,5,6,7,8,9,10}In[4]:=Range[8,20,2]               Out[4]={8,10,12,14,16,18,20}In[5]:=Table[2i+j,{i,1,3},{j,3,5}] Out[5]={{5,6,7},{7,8,9},{9,10,11}}                              5 6 7In[6]:=%//TableForm Out[6]//TableForm= 7 8 9                                                                                     9 10 11                                                                                         Mathematica基础知识 2、表的元素的操作 当t表示一个表时,t[[i]]表示t中的第i个子表。

      如果t={1,2,a,b}那么t[[3]]表示“a” 如: In[1]:=t=Table[i+2,j{i,1,3},{j,3,5}] Out[1]={{7,9,11},{8,10,12},{9,11,13}}                           In[2]:=t[[2]] Out[2]={8,10,12}Mathematica基础知识 2.6 表达式1、表达式的含义 Mathematica 能处理数学公式,表以及图形等多多种数据形式尽管他们从形式上看起来不一样,但在Mathematica内部都被看成同种类型,即都把他们当作表达式的形式 Mathematica 中的表达式是由常量、变量、函数、命令、运算符和括号等组成,最典型的形式是f[x,y]Mathematica基础知识 2、表达式的表示形式 表达式表示形式函数 意义Expand(expr) 按幂次升高的顺序展开表达式Factor(expr)以因子乘积的形式表示表达式Simplify(expr)进行最佳的代数运算,并给出表达式的最少项形式Mathematica基础知识 3、关系表达式与逻 辑表达式 ⑴ 关系表达式 x==y相等x!=y不相等x>y大于x>=y大于或等于xy>z,etc严格递减Mathematica基础知识 举例:        In[1]:=x=2;y=9           Out[1]=9;        In[2]:=x>y                   Out[2]=false;        In[3]:=3^2>y+1          Out[3]= falseMathematica基础知识 ⑵ 逻辑表达式!非&&并||或Xor异或If条件Mathematica基础知识 举例:              In[4]:=3x^2

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.