《Mathematica讲义学习教程.pptx》由会员分享,可在线阅读,更多相关《Mathematica讲义学习教程.pptx(47页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、基础知识编写简单的Mathematica程序图形处理(二维、三维及其参数方程的形式)求解数学问题(极限、微分与积分、求解方程(组)、微分方程(组)、在线形代数方面的应用、数值处理)文件及其它高级操作Mathematica与C/C+、.net的结合第1页/共47页第一章 基础知识一、Mathematica3.0 界面及运行介绍二、基本数值运算1.整数运算:加、减、乘、除、幂、阶乘2.数学常量:E、Pi、I、Degree、Infinity3.函数及数学函数4.浮点数及复数运算:N函数第2页/共47页三、变量及表达式 1.变量的定义及清除 变量的特点(1)变量的默认作用域是全局的(2)全局变量不需事
2、先定义或声明(3)尽量避免使用下划线定义变量 2.表达式“头”的概念:Head及Apply函数第3页/共47页 3.多项式及其操作(1)定义、替换符操作(2)常用操作:Expand、Factor、Together、ApartSimplify、Collect、Coefficient、Exponent第4页/共47页四、序列及其操作 1.序列的定义 2.序列的生成:Table函数 3.序列的操作 (1)检测:Length、Count、Position (2)添加删除:Append、Prepend、Insert、Delete、DeleteCases (3)取元素:Part、Take、Drop、Sel
3、ect第5页/共47页五、自定义函数 1.一元函数例:Clearf,xfx_:=x2+4x-2 2.多元函数例:fx_,y_:=x2+y2-3 3.迭代函数例:fn_:=fn-1+fn-2;f0=1;f1=1;第6页/共47页1 条件语句 逻辑判断符=!=!=第二章 编程语言第7页/共47页 逻辑运算符!|&/;运算符x=a/;test仅当test为True时才执行赋值语句 If 语句语法:If test,then,else若test为 True,则执行then,若test为False,则执行else.第8页/共47页 Which 语句语法:Which test1,value1,test2,依
4、次计算testi,给出对应第一个test为True 的value Switchexpr,form1,value1,form2,比较expr与formi,给出与第一个form值匹配的value第9页/共47页例1.定义如下的函数:使用/;定义:f x_:=0 /;x0&x2第10页/共47页 使用 If 定义:f x_:=If x2,x2,x 使用Which定义:f x_:=Which x2,x2,True,x 2 输出语句Print第11页/共47页3 循环语句 Do 语句语法:Doexpr,i,imin,imax,di计算expr,i=imin,imax,步长为di While 语句语法:W
5、hiletest,body当test为True时,计算body第12页/共47页 For 语句语法:Forstart,test,incr,body以start为起始值,重复计算body和incr,直到test为False时为止 循环控制语句Break和ContinueBreak退出最里面的循环Continue转入当前循环的下一步第13页/共47页基本二维图形 Plot f,x,xmin,xmax,用于绘制形如y=f(x)的函数的图形。当将多个图形绘制在同一坐标系上时,形如:Plot f1,fn,x,xmin,xmax注意:有时需要使用Evaluate函数。第三章 图形处理第14页/共47页例:
6、在同一坐标系下绘出sinx,sin2x,sin3x,sin4x,sin5x的图形。常用的选项:PlotStyleHuea设置线条颜色PlotRangea,b控制显示范围DisplayFunction控制图形显示AspectRatio图形的宽、高比AxesOrigin设置原点坐标第15页/共47页程序:Cleara,y,xv=200;g=9.8;ya_,x_:=Tana*x-g*x2*Seca2/(2v2)PlotEvaluateTableyi,x,i,Pi/12,5Pi/12,Pi/12,x,0,4000例:有如下的抛物线簇:第16页/共47页ListPlot List,用于绘制散点图。注意,
7、List的形式应为:例:在同一坐标系下绘制下列两组散点图p1=0,0,0,45,5.3,89.6,22.6,131.2;p2=0,0,2.68,44.8,12.57,88.28,27,130.3;程序:g1=ListPlotp1,PlotJoined-True,DisplayFunction-Identity;g2=ListPlotp2,PlotJoined-True,DisplayFunction-Identity;Showg1,g2,DisplayFunction-$DisplayFunction;第17页/共47页ParametricPlot fx,fy,t,tmin,tmax 用于绘制
8、形如x=fx(t),y=fy(t)的参数方程图形。例:绘制以点(3,4)为圆心,半径为2的圆。ParametricPlot3+2Cost,4+2Sint,t,0,2Pi可增加如下选项:AspectRatio-1,AxesOrigin-0,0第18页/共47页2.其它二维图形 ContourPlot f,x,xmin,xmax,y,ymin,ymax,用于绘制形如z=f(x,y)的函数的等高线图。DensityPlot f,x,xmin,xmax,y,ymin,ymax,用于绘制形如z=f(x,y)的函数的密度图。例:绘制函数f=sinxsiny的等高线图和密度图第19页/共47页3.三维图形
9、Plot3D f,x,xmin,xmax,y,ymin,ymax绘制形如Z=f(x,y)的三维图形。例:绘制以下的函数图形:Z=10sin(x+siny)命令:Plot3D10 Sinx+Siny,x,-10,10,y,-10,10可增加选项:PlotPoints-40第20页/共47页ParametricPlot3D fx,fy,fz,t,tmin,tmax,u,umin,umax 用于绘制形如x=fx(t),y=fy(t),z=fz(t)的参数图形。第21页/共47页第22页/共47页4.利用函数包绘制特殊图形载入图形函数包的方法:类名包名例:GraphicsGraphics PolarP
10、lotr,t,tmin,tmax绘制极坐标图形 LogPlotf,x,xmin,xmax画对数线性图 BarChartlist画出list的条形图 PieChartlist画出list的百分图第23页/共47页例:xo 求 x 逼近 xo时expr的极限某些函数在一点处的极限随逼近方向不同而不同,可用Direction选择方向:Limitexpr,x-xo,Direction-1 左极限 Limitexpr,x-xo,Direction-1 右极限例:求1/x 的左右极限例:第26页/共47页3.微分D f,x,n求f 的n阶偏微分 Dt f 求f 的全微分例:Dxn,x,3 Dtx2+y2例
11、:y=xarctgx,求其100阶导数及其在0 点的值第27页/共47页4.积分Integrate f,x求f 的不定积分Integrate f,x,xmin,xmax 求 f 的定积分Integrate f,x,xmin,xmax,y,ymin,ymax求 f 的多重积分例:第28页/共47页第三章 线性代数1.构造矩阵和向量Table f,i,m,j,n构造mn矩阵,f 是i,j的函数,给出i,j项值Array f,m,n构造mn矩阵,i,j项的值是 f i,jDiagonalMatrix List生成对角线元素为List的对角矩阵IdentityMatrixn构造n阶单位阵第29页/共4
12、7页截取矩阵块 Mi取矩阵M的第 i 行Map#i&,M 取矩阵M的第 i 列 Mi,j 取矩阵M的i,j 位置的元素 Mi1,ir,j1,js矩阵M的rs子矩阵,元素行标为ik,列标为jk MRangei0,i1,Rangej0,j1 矩阵M的从 i0到i1行,j0到j1列元素组成的子矩阵第30页/共47页3.矩阵及向量的运算M.N对M、N做矩阵乘法(向量内积)M*N将M、N的对应位置元素相乘OuterTimes,M,N求M、N的外积Dimensions M 给出矩阵M的维数Transpose M 转置Inverse M 求逆Det M 方阵M的行列式值第31页/共47页MatrixPowe
13、rM,nn阶矩阵幂MatrixExpM矩阵指数Eigenvalues M M的特征值EigenvectorsMM的特征向量第32页/共47页第四章求解方程(组)、微分方程(组)1.求解多项式方程(组)Solve eqns,vars求解多项式方程Solveeqn1,eqnn,var1,varn求解多项式方程组注:Solve只能给出多项式方程(组)的解,因此它们只适用于幂次不高、规模不大的多项式方程(组)。第33页/共47页NSolve eqns,vars 求多项式方程的数值解NSolveeqn1,eqnn,var1,varn求多项式方程组的数值解对于数值解,可以直接用NSolve求解例:求解以下
14、方程(组)x2+ax=2x3+34x+1=0 x5-1331x+11=0第34页/共47页2.求解微分方程(组)DSolve eqns,yx,x 求解yx的微分方程DSolve eqns,y,x 以纯函数的形式给出y的解DSolveeqn1,eqn2,y1,y2,x 求解微分方程组例:求解以下微分方程(组)y=y y k y=1第35页/共47页第五章 数值处理1.数值积分NIntegrateexpr,x,xmin,xmax注意,NIntegrate直接计算数值积分,不先给出符号结果,而Integrate/N会尽可能的先求精确解的形式。数值根求解2.FindRootlhs=rhs,x,x0 以
15、x0为初始点求方程的数值解第36页/共47页FindRootlhs=rhs,x,x0,x1 给出两个初值求数值根(方程的符号导数无法求出时,必须使用此形式)FindRooteqn1,eqn2,x,x0,y,y0,对联立方程 eqni 求数值解例:求解下列方程(组)cosx=xx600+5x+3=0第37页/共47页3.微分方程数值解NDSolveeqn1,eqn2,y,x,xmin,xmax求函数y的数值解,x的范围为xmin,xmaxNDSolveeqn1,eqn2,y1,y2,x,xmin,xmax求函数yi的数值解注:以上两种形式用于求解常微分方程(组)NDSolve以Interpola
16、tingFunction目标生成函数yi的解。InterpolatingFunction目标提供独立变量x在xmin到xmax范围内yi的近似值。第38页/共47页例:求解以下微分方程(组)并画出函数y的图形第39页/共47页NDSolveeqn1,eqn2,y,x,xmin,xmax,t,tmin,tmax 求由函数y构成的偏微分方 程的数值解NDSolveeqn1,eqn2,y1,y2,x,xmin,xmax,t,tmin,tmax求由函数yi构成的偏微分方程组的数值解 例:求下面微分方程的数值解并绘图。第40页/共47页第41页/共47页4.极大极小值ConstrainedMax f,i
17、nequalities,x,y,ConstrainedMax f,inequalities,x,y,求由目标函数 f 和不等式约束inequalities构成的线形规划例:ConstrainedMaxx+y,x1,y2,x,yFindMinimum f,x,x0以x0为初始点,求函数的局部极小值注:FindMinimum的用法与FindRoot完全相同。第42页/共47页Minimize和NMinimize用于求解带约束条件的极值问题第43页/共47页5.曲线拟合Fit data,funs,vars用变量为vars的函数funs拟合一组数据data 例:points=0,-1,1,2,3,7,
18、4,6,7,9,11,14;注:5.0 及以上版本可用FindFit函数代替第44页/共47页第五章文 件 及 相 关 操 作1.目录及文件操作SetDirectory“dir”设定当前工作目录FileNames“form”列出符合形式的文件CopyFile“file1”,“file2”DeleteFile“file”第45页/共47页2.数据文件的读入和输出ReadList“file”,type 从文件中读入数据“file”为文件名,可以包含路径type 为数据类型,常用的如:Number,String,Character等3.局部变量Blockx=x0,y=y0,,body第46页/共47页感谢您的观看!第47页/共47页