Mathematica-使用入门-数学软件-Mathematica课件.ppt
数学软件 Mathematica, 使用入门,1,数学软件 Mathematica 使用入门1,主要内容,符号计算系统 Mathematica 基本用法 基本运算 符号计算 图形功能 程序设计(略),2,主要内容 符号计算系统2,符号计算系统,借助计算机速度快的特点,帮助人们完成在短时间内无法完成的公式推导计算。,也称为计算机代数 以推理为主,是一个表示数学知识和数学工具的系统 与代数计算、算法设计、机器学习、自动推理等紧密联系 一般由系统内核、符号计算语言和若干软件包组成 通常包括符号计算、数值计算、图形演示和程序设计,符号计算系统,3,符号计算系统借助计算机速度快的特点,帮助人们完成在短时间内,常见的符号计算软件,商业软件 Mathematica,Maple,MuPAD,MathCad,符号计算系统,免费软件 Axiom,CoCoA,Derive,Euler,GAP,Maxima, . . .,更多符号计算软件参见课程主页相关网络链接。,符号计算软件的两种运行方式:交互方式和程序方式,4,常见的符号计算软件 商业软件符号计算系统 免费软件更多符号,Mathematica 由美国 Wolfram Research 公司于 1988 年推出,目前的最新版本为 Mathematica 8.04,Mathematica 介绍,Mathematica 有简体中文版:中文界面和中文帮助 可在官方网站上下载试用版,Mathematica 很好地结合了数值和符号计算引擎、图形系统、编程语言、文本系统以及与其他应用程序的高级连接,是目前使用最广泛的数学软件之一,也是世界上符号计算系统中最强大的两个系统之一。,5,Mathematica 由美国 Wolfram Resea,Mathematica 欢迎界面,6,Mathematica 欢迎界面6,Mathematica 工作界面,Mathematica 的工作平台:自带的 Notebooks 环境,在 Notebooks 环境下输入命令,系统执行后返回结果,Mathematica 工作界面,菜单栏,Notebooks 环境,最好最完整的学习材料:系统自带的使用帮助和实例演示,7,Mathematica 工作界面 Mathematica 的,Mathematica 使用,Mathematica 语言规则, 所有命令和内置函数都是以大写字母开始 函数的参数是在方括号中给出 乘法运算符可以用空格代替(不建议这么做) 内置的函数名通常都很长,使用函数的名字的全拼,8,Mathematica 使用 Mathematica 语言规,Mathematica 使用,可以运行单个命令或语句 也可以运行多个语句:输入全部语句后再按执行键 命令(语句)分隔符:回车或分号 如果不需要显示运行结果:在语句后面加分号,Mathematica 命令的执行(简称执行键),输入和输出标识符:Inn: 和 Outn,In1:= SinPi/4+CosPi/4Out1=,Shift + Enter,9,Mathematica 使用 可以运行单个命令或语句 Ma,数学公式的输入,直接输入,数学公式的输入,In1:= SinPi/4+CosPi/4,借助 Mathematica 提供的面板 (Palettes),10,数学公式的输入 直接输入 数学公式的输入In1:= Si,一些常用符号,11,一些常用符号()运算的结合fx函数取值列表 k,内部常数,常用内部常数,Mathematica 中的数:普通数字和内部常数,整数,有理数,实数(任意精度和机器精度),复数,12,内部常数 常用内部常数 Mathematica 中的数:普通,基本运算符,基本运算:,算术运算,比较运算与逻辑运算,13,基本运算符 基本运算:+ - * /加减乘除幂!阶乘,变量与表达式,变量,通常字母开头,后面可以跟字母与数字 长度不限 区分大小写 可以包含希腊字母或中文,如 “数学”,用户自定义变量建议都用小写,避免与系统自带函数冲突,Mathematica 中一切皆为表达式 算术表达式,关系表达式,逻辑表达式,复合表达式,表达式,变量赋值:变量名=表达式,14,变量与表达式 变量 通常字母开头,后面可以跟字母与数字 用户,变量操作相关函数,例:已知 f(x,y)=2x+y, 计算 f(2,3),In1:= Clearx,y; In2:= f=2*x+y;In3:= f./x-2,y-3 (* f(2,3) 的值 *)In3:= f./2-5 (*把 2 替换成 5*),15,变量操作相关函数x=y=a给多个变量赋相同的值Unsetx,数的基本运算,Mathematica 中的实数分精确数和双精度数,在 Mathematica 中,当输入的式子中所有数字都为整数时,输出的结果是精确的;但若式子中含有小数点,则通常以近似方式输出运算结果。,16,数的基本运算Nx,nx 的带 n 位有效数字的近似值N,数字进制的转换,17,数字进制的转换bxxxxx输入一个 b 进制数 (2=,内置函数,Mathematica 具有超过 3000 个内置函数,具体见 “帮助” “参考资料中心” 的左下角处的 “函数索引”,Mathematica 函数命名规则, 第一个字母大写,后面跟小写字母,如 Sinx, Logx 大多数函数名与数学中的名称相同 当函数名分为几段时,每一段的头一个字母大写,后面的用小写字母,如:ArcSinx,寻求帮助: ?函数名,In1:= ?Sin,18,内置函数 Mathematica 具有超过 3000 个内置,常用初等函数,19,常用初等函数Absx绝对值Signx符号函数Powe,常用初等函数,20,常用初等函数Rex, Imx 提取实部和虚部Conj,随机函数,In1:= RandomReal,10,In2:= RandomInteger,1,100,21,随机函数Random生成 0,1 内的一个随机实数R,打印函数,In1:= x=5; Printx=,x,22,打印函数Printx,y,.在屏幕输出变量的值In,函数调用方式,标准方式 :函数名变量列表,In1:= x=Pi/4; Sinx,In2:= x=Pi/4; x/Sin (* 后缀形式 *),其它方式,In3:= x=Pi/4; Sinx (* 前缀形式 *),In4:= 5Mod3 (* 中缀形式,等价于 Mod5,3 *),23,函数调用方式 标准方式 :函数名变量列表In1:=,自定义函数,Mathematica 允许用户自定义函数,一般格式为,函数名自变量名1_, 自变量名2_, .:= 表达式,这里函数名与变量名的规定相同 方括号中的每个自变量名后都要有一个下划线 “_” 中间的 “:=” 为定义号 注意符号表达式与函数的区别,自定义函数前,最好先清除自变量的值,否则可能会出现意想不到的错误,24,自定义函数 Mathematica 允许用户自定义函数,一般,自定义函数,In1:= f=2*x+y (* 符号表达式 *),In2:= gx_,y_:=2*x+y (* 函数 *),In3:= f2,3 (* 结果是什么? *),In4:= g2,3 (* 这个结果又是什么? *),25,自定义函数In1:= f=2*x+y,字符串,字符串:用双引号括起来的字符序列,字符串相关函数,更多字符串相关函数参见 “参考资料中心”,26,字符串 字符串:用双引号括起来的字符序列 字符串相关函数Ch,列表,列表,分为标准列表和稀疏列表,是 Mathematica 的基本对象,可用来表示集合,数组等,标准列表: 用大括号括起来的有限个元素,元素之间用逗号分隔,稀疏列表:通常由 SparseArray 来定义,In1:= x=1,2,hello,1,0;,列表中的元素可以是不同类型的任意 Mathematica 对象 列表可以嵌套,如 矩阵,Mathematica 提供了上千个列表操作函数,参见 “参考资料中心”,27,列表 列表 分为标准列表和稀疏列表 是 Mathematic,列表生成,利用 Array,Range,Table 等函数,枚举法:利用大括号,直接输入,Table 中的 expr 一般给的是通项公式,28,列表生成 利用 Array,Range,Table 等函数,列表生成举例,In1:= x=ArraySin,3 Out1= Sin1, Sin2, Sin3,In2:= y=TableSink,k,3 Out2= Sin1, Sin2, Sin3,In3:= f=RandomReal1,5,2 Out3= 4.68541, 2.86979,In4:= z=Tablei*j,i,3,5,j,2,4,2 Out4= 6, 12, 8, 16, 10, 20,生成二维列表,29,列表生成举例In1:= x=ArraySin,3 I,列表分量,30,列表分量listk第 k 个分量list-k,列表修改,31,列表修改Droplist,k删除第 k 个分量Dro,列表运算,当函数作用在列表上时,表示作用在每个分量上,In1:= x=Range0,Pi,Pi/4;In2:= y=Sinx,利用列表可以同时给多个变量赋值,In3:= x,y=2,3,32,列表运算Sortlist从小到大排序Reverseli,矩阵定义,矩阵是列表的一种,可用 Array,Table 等函数创建,In1:= Cleari,j; fi_,j_:=1/(i+j-1);In2:= A=Arrayf,3,3,Array函数名,取值范围,33,矩阵定义 矩阵是列表的一种,可用 Array,Table 等,矩阵定义,Table通项公式,循环范围,循环范围,.,循环范围表示方法,34,矩阵定义Tableexpr,i,a,b,h向量Tab,矩阵举例,In1:= x=Table0,5 (* 长度为 5 的零向量 *)In2:= A=Table0,5,5 (* 5 阶零矩阵 *),In3:= A=Table1/(i+j-1),i,3,j,3In4:= B=Tablex+y,x,2,6,2,y,3,12,3,In5:= P=TableBinomiali,j,i,0,4,j,0,i;In6:= TableFormP (* 杨辉三角形 *),35,矩阵举例In1:= x=Table0,5,矩阵分量,In1:= TakeA,1,2,2,3/MatrixForm,36,矩阵分量MatrixFormA按矩阵方式显示TableF,特殊矩阵,In4:= A=RandomReal0,1,3,4 In5:= DimensionsA,1 (* 矩阵的行数 *),37,特殊矩阵IdentityMatrixnn 阶单位矩阵Co,矩阵运算,设 A,B 是矩阵,a 是标量,b 是向量,38,矩阵运算A+B, A-B, A+a, A-a矩阵加减A.B普,符号计算,多项式运算(略) 解代数方程(略) 解微分方程(略) 计算极限 计算导数 计算积分,39,符号计算 多项式运算(略)39,计算极限,In1:= LimitSinx/x, x-0,例:计算 和,In2:= Limit1/x, x-0, Direction-1,40,计算极限Limitf,x-ax 趋向于 a 时 f 的,计算导数,In1:= DSinx*Tanx, x,2,例:计算 和,In2:= DSinx*x*y3, x, y,41,计算导数Df,x计算 f 关于 x 的导数Df,x,计算积分,In1:= Integrate3*a*x*x, x,例:计算 和,In2:= Integrate2*x+y, x, y (* 注意积分顺序 *),In3:= IntegrateSinSinx, x,0,Pi,例:计算 的精确值和近似值,In4:= NIntegrateSinSinx, x,0,Pi,42,计算积分Integratef,x计算 f 关于 x 的,作图,二维曲线做图 函数作图 参数方程作图 极坐标作图 散点图 三维做图 三维曲线作图 三维曲面函数作图 三维曲面参数方程作图,43,作图 二维曲线做图43,二维函数作图,常用作图选项,曲线方程:,44,二维函数作图Plotf,x,a,b画 f 关于 x,作图选项,BaseStyle 和 PlotStyle 取值,In1:= PlotSinx2/(x+1), x,0,2*Pi,In2:= PlotSinx2/(x+1), x,0,2*Pi, AxesLabel-x,fx, AxesStyle-Thick, PlotLabel-y=sinx/(x+1), BaseStyle-RGBColor0.6,0.6,0.2, FontSize-15, PlotStyle-Blue,Thick,Dashed,45,作图选项 BaseStyle 和 PlotStyle 取值线,作图选项,更多作图选项,In3:= PlotSinx2/(x+1), x,0,2*Pi, Filling-Axis, Frame-True, BaseStyle-FontSize-15, PlotStyle-Blue,Thick,Dashed,可输入命令 OptionsPlot 查看 Plot 的所有作图选项,46,作图选项 更多作图选项In3:= PlotSinx,参数方程作图,In3:= ParametricPlotSint,Sin2*t, t,0,2*Pi, BaseStyle-FontSize-15, PlotStyle-Blue,Thick,Dashed,曲线方程:,该函数也可以同时绘制多个图像,47,参数方程作图ParametricPlotx,y,t,参数方程作图,In4:= ParametricPlot2*Cost,2*Sint, 2*Cost,Sint, Cost,2*Sint, Cost,Sint, t,0,2*Pi, PlotStyle-Blue,Thick, Red,Dashed, Green,Dotted, Black,DotDashed,48,参数方程作图In4:= ParametricPlot,极坐标方程作图,In1:= PolarPlot2, t,0,2*Pi,曲线极坐标方程:,In2:= PolarPlott, t,0,3*Pi,In3:= PolarPlot0.5,0.5+1/24*Sin12*t, t,0,2*Pi,In4:= PolarPlotExpCost-Pi/2-2*Cos4*(t-Pi/2) +Sin(t-Pi/2)/125, t,0,36*Pi, Axes-None,49,极坐标方程作图PolarPlotr,极坐标,散点图,常用选项,给的数据点:,50,散点图ListPlotx1,y1,x2,y2,.,散点图,In1:= list=Tablex,Sinx,x,-Pi,Pi,Pi/10; ListPlotlist,BaseStyle-FontSize-15, PlotStyle-PointSize0.03,In2:= ListPlotlist,PlotMarkers-, 25,In3:= ListPolarPlotSinRange0, 12*Pi, Pi/20, 0.8*SinRange0, 12*Pi, Pi/20, PlotMarkers-,12, Joined-True, Axes-None,51,散点图In1:= list=Tablex,Sinx,三维曲线作图,三维曲线方程:,In1:= ParametricPlot3Dt*Sint,t*Cost,t, t,0,100,PlotStyle-Blue,Thickness0.005,52,三维曲线作图ParametricPlot3Dx,y,z,三维曲面作图,In1:= Plot3DSinx+y*Cosx+y,x,0,Pi,y,0,Pi,例:画 的立体图,曲面方程:,53,三维曲面作图Plot3Dz,x,a,b,y,c,d,三维曲面作图,常用选项,In2:= Plot3DSinx*Cos2*y, x,-3,3, y,-2,2, Boxed-False, Axes-None, Mesh-False, PlotStyle - Opacity0.8,54,三维曲面作图 常用选项Boxed-False去除立体方框M,三维曲面参数方程作图,三维曲面参数方程:,In1:= ParametricPlot3D3*Secu*Cosv,3*Secu*Sinv, 5*Tanu, u,-Pi/3,Pi/3,v,0,2*Pi, Boxed-False,55,三维曲面参数方程作图ParametricPlot3Dx,三维做图演示,In1:= ParametricPlot3D 4+(3+Cosv)*Sinu,4+(3+Cosv)*Cosu,4+Sinv, 8+(3+Cosv)*Cosu,3+Sinv,4+(3+Cosv)*Sinu, u,0,2*Pi,v,0,2*Pi,Boxed-False,56,三维做图演示In1:= ParametricPlot3D,图形组合,图形组合:将多个图形放在一个绘图区域中,In1:= pic1=ParametricPlot3D3*Secu*Cosv, 3*Secu*Sinv,5*Tanu, u,-Pi/3,Pi/3,v,0,2*Pi,Boxed-False; (* 单页双曲面 *)In2:= pic2=ParametricPlot3D2*Sinu*Cosv, 2*Sinu*Sinv, 2*Cosu, u,0,Pi,v,0,2*Pi; (* 球面 *)In3:= Showpic1,pic2 (* 组合两个图形 *),57,图形组合 图形组合:将多个图形放在一个绘图区域中Showp,图形组合,58,图形组合58,动画做图演示,In1:= ManipulatePlotSinn*x/(x+1),x,0,2*Pi, PlotStyle-RGBColor(10-n)/10,n/10,0, Thickness0.01, n,1,20,1,59,动画做图演示In1:= ManipulatePlot,