1、单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,数学四个分支与数学机械化,数学四大分支:,分析学,代数学,几何学,计算机数学,老三基,近代数学的三大基础课:,数学分析,斐礼文:,数学分析中的典型问题与方法,,高等教育出版社,高等代数,解析几何,新三基,泛函分析,抽象代数,微分几何,陈省生(整体微分几何的奠基人),天衣岂无缝,匠心剪接成。浑然归一体,广邃妙绝伦。造化爱几何,四力纤维能。千古存心事,欧高黎嘉陈。,数学机械化,数学机械化的基本内容主要有两方面:,一方面,将传统数学中可以算法化求解,或求证的问题,利用计算机及数学软件完成或实现;,另一方面,实现
2、数学机械化首先要将问题转化为可算法化问题,,然后按照,MAP,思想,即,Model,(模型),+Algorithm,(算法),+Program,(程序),确定正确的具有操作性的算法,再选择适当的平台软件设计相应的计算机程序,也就是:,问题,数学问题,算法,程序,计算机实现,数学建模:,Matlab,在数学建模中的应用,Matlab,神经网络,30,个案例分析,Mathematica,基础,教材:,Mathematica,在大学数学课程中的应用,丁大正 编著,数学软件,公共基础软件:,BASIC,,,FORTRAN,,,C,等,数学软件:为解决数学问题的专用系统,应具备的一般功能,:,数值计算,
3、符号计算,绘制图形,编程功能,著名的,数学软件,MathCAD,Matlab,Mathematica,Maple,LINDO,、,SPSS,、,SAS,、,IDL,由美国,Mathsoft,公司开发,早期的,DOS,下的,1.0,版本(,1986,),Windows,下的,4.0,版本,14.0,版本(,PTC,),Win9X/NT,下的,7.0,采用,WYSWYG,界面,功能:集文本编辑、数学计算、程序编辑和仿真于一体,1,、,MathCAD,常用的有,MathCAD 7.0,及,MathCAD 2000,70,年代,:,Matrix Lab.,用来提供,Linpack,和,Eispack,
4、软件包的接口程序。用,Fortran,编写。,80,年代,:,3.0,版本(,DOS,),1984,年,:成立,Mathworks,公司,2008,年,:,7.6,版本(,Windows,),2009,年,:,2009a,,,2009b,(,Win,Unix,),2,、,MatLAB,Cleve,Moler,由主程序和各种工具包组成,主程序包,:数百个内部核心函数,工具包,:复杂系统仿真、信号处理工具包、系统识别工具包、优化工具包、神经网络工具包、控制系统工具包、,分析和综合工具包、样条工具包、符号数学工具包、图像处理工具包、统计工具包,数值计算的先锋,,以矩阵作为基本数据单位,数值计算不能完
5、全依赖于,Matlab,!,通用数学软件,耗费系统资源较大,使用,Java,内核,速度比较慢,Matlab,不适合大计算量大规模的数值计算,大计算量的数值计算最佳选择为,Fortran,(,77,、,90,、,95,)和,C,语言,LAPACK,、,BLAS,程序包是好帮手,Waterloo,大学开发(,1980,,,1988,商业化),功能强大,*数值处理、符号计算、,提供了,2000,余种数学函数,内置的编程语言,MathCAD,和,MatLAB,等软件的符号处理的核心,3.Maple,最新版,Maple 12,(,2008,年,5,月),4,、,Mathematica,由,Wolfram
6、 Research,公司开发,用,C,语言开发,可移植到各种平台上,功能强大,*数值处理、符号计算、图形功能,1988,年,Mathematica,1.0,版,标志着,现代科技计算,的开始,2008,年,Mathematica,6.03,版,2009,年,Mathematica,7.01,版,1959,年出生于伦敦,15,岁 发表首篇粒子物理方面的论文;,17,岁,论文发到了,Nuclear Physics,20,岁,Caltech,理论物理,Ph.D,22,岁 最年轻的,MacArthur,Genius Fellowship,研究领域:高能物理、量子场论、宇宙学,Stephen Wolfra
7、m,1981,年 复杂性的起源,1986,年,Univ.Illinois,的物理学、数学和计算机科学教授,创立,Wolfram Research,Inc,1988,年,6,月,23,日 发布数学软件,Mathematica,Stephen Wolfram,Weinberg,说他学会使用,Mathematica,软件的那一天是个快乐的日子,它们属,通用,数学软件,但各有千秋,各有专长,Matlab,:,数值,计算和,仿真,接口全,使用方便,Scilab,:类似于,Matlab,,,免费,,,开源,Mathematica,:精确的,数值,和,符号,运算,Maple,与,Mathematica,类似
8、可以同时使用,选用何种数学软件,?,Mathematica,、,Maple,与,Matlab,侧重点非常不同,前两者更在抽象的符号运算上更加强大,后者在数值计算上更具有优势,三者接口都很方便。对于计算量很小的简单数值计算,三者皆可。,价格上,Matlab,最贵,,Maple,最便宜,Maple,使用,Java,内核,速度相对较慢,免费包很多。,Mathematica,速度相对较快,商用包较多,第一章,Mathematica,基础,窗口操作指令,执行指令的方法:,Shift+Enter,执行部分指令的方法:,Ctrl+Shift+Enter,终止指令进行的方法:,alt+.,注释符号:,(,
9、时间到*,),数的表示与计算,Mathematica,是通过符号运算得出计算结果,所以如果不声明,则计算结果是,准确的数学表达式,而不是近似的数字。,Mathematica,的“计算精度是任意的”。,In1:=,1/7,out1=,1/7,In2:=,N1/7,out2=,0.142857,In3:=,N1/7,20,out3=,0.14285714285714285714,N,表达式,or,表达式,/N,表达式的,6,位数字近似值,N,表达式,n,表达式的,n,位数字近似值,近似数的精度控制,函数,N,输入小数自动进入数值计算模式,不是无限精度!,常用常数符号,常数每个单词都以大写字母开头
10、Pi,或,圆周率,E,自然对数的底,Degree,或,o,角度,,360,o,=2,Infinity,或,无穷,ComplexInfinity,复无穷大,GoldenRatio,黄金分割率,变量,1.,变量命名规则,Mathematica,中的变量名必须以字母开头的、由字母或数字组成的字符串,不能含有空格或标点符号,大写与小写字母表示不同的变量。,例如:,x,a1,b12,Tc,都是合法的变量;,2a,是不合法的变量;,a1,与,A1,代表不同的变量。,变量查找,;,不显示运算结果,分开一行中的多个命令,?,变量名显示变量信息,?,变量名 显示更详细的信息,变量赋值,一个变量可以表示各种类型
11、的数或字符串,也可以表示一个算式。与,C,语言不同,不必事先声明变量的类型,,Mathematica,会根据用户给变量所赋的值自动处理。,使用等号给变量赋值,具体格式如下:,x=Value,给,x,赋值;,x=y=Value,同时给,x,,,y,赋值;,x,,,y,,,=Value1,,,Value2,,,同时给,x,,,y,,,z,,,赋值。,变量赋值命令举例,变量赋值命令举例,x=.,清除,x,的值但保留变量,x,Clearx,清除,x,的值但保留变量,x,Removex,将变量,x,清除,Clear“Global,*”,清除所有变量的值,Remove“Global,*”,清除所有变量,变
12、量清除,变量清除命令举例,%,的作用,%,:表示前一个输出的内容,%,:表示倒数第,2,个输出的内容,%n,:表示第,n,个输出的内容,%,作用举例,函数,命名规则,函数名首字母都要大写,后面字母小写,参数用方括号括起来,不能用圆括号,例如:,Sinx,常见函数举例,常用内置函数,Sqrtx,x,的算术平方根,Absx,x,的绝对值,Signx,x,的符号,1,-1,0,Factorialn,或,n!,n,的阶乘,Modn,m,整数,n,除以,m,的余数,Roundx,x,最近的整数,Floorx,不大于,x,的最大整数,Logb,x,以,b,为底的对数,Expx,指数,Sinx,Cosx,三
13、角函数,ArcSinx,ArcCosx,反三角函数,Sinhx,Coshx,双曲三角函数,ArcSinhx,ArcCoshx,反双曲三角函数,常用内置函数,丰富的特殊函数,LegendreP,SphericalHarmonicY,Gamma,BesselJ,几乎所有常用的特殊函数,ClebschGordan,ThreeJSymbol,SixJSymbol,PauliMatrix,数据结构,表,表是存储多个数、变量或算式等对象的一种数据结构,一个表用一对花括号表示,它的成员(元素)在括号内用逗号隔开,同一个表的成员可以有不同的数据类型,表的成员还可以是一个表(子表),表,举例,tn,或,Partt,n,表示表,t,的第,n,个元素,t-n,或,Partt,-n,表示表,t,的倒数第,n,个元素,tn,1,n,2,或,Partt,n,1,n,2,表示表,t,的第,n,1,n,2,个元素,ti,j,或,Partt,i,j,表示表,t,的第,i,个子表的第,j,个元素,Lengtht,表示表,t,的元素个数,表的元素的操作,表的元素操作命令举例,表的操作,Joint,1,t,2,将表,t,1,t,2,连接成一个表,Uniont,1,t,2,取表,t,1,t,2,的并集组成一个表,Intersectiont,1,t,2,取表,t,1,t,2,的交集组成一个表,。,表的操作命令举例,






