Mathematica简易教程
周六1-4节8:00-11:10
第1章 1.1 1.2 1.3 第2章 2.1 2.2 2.3 2.4 2.5 2.6 2.7
MATHEMATICA概述 ............................................................................................... 3 MATHEMATICA的启动与运行 .......................................................................................... 3 表达式的输入 ................................................................................................................... 4 MATHEMATICA的联机帮助系统 ...................................................................................... 6 MATHEMATICA的基本量 ....................................................................................... 8 数据类型和常数 ............................................................................................................... 8 变量 ................................................................................................................................. 10 函数 ................................................................................................................................. 11 表 ..................................................................................................................................... 14 表达式 ............................................................................................................................. 17 常用的符号 ..................................................................................................................... 19 练习题 ............................................................................................................................. 19
周六5-8节14:00-17:10
第3章 微积分的基本操作 ......................................................................................................... 20 3.1 3.2 3.3 3.4 3.5
极限 ................................................................................................................................. 20 微分 ................................................................................................................................. 20 计算积分 ......................................................................................................................... 22 无穷级数 ......................................................................................................................... 24 练习题 ............................................................................................................................. 24
周六9-10节19:00-20:30
第4章 微分方程的求解 ............................................................................................................. 26 4.1 4.2 4.3
微分方程解 ..................................................................................................................... 26 微分方程的数值解 ......................................................................................................... 26 练习题 ............................................................................................................................. 27
周日1-4节8:00-11:10
第5章 5.1 5.2 5.3 5.4
MATHEMATICA的基本运算 ................................................................................. 28 多项式的表示形式 ......................................................................................................... 28 方程及其根的表示 ......................................................................................................... 29 求和与求积 ..................................................................................................................... 32 练习题 ............................................................................................................................. 34
第6章 函数作图 ......................................................................................................................... 35 6.1 6.2
基本的二维图形 ............................................................................................................. 35 二维图形元素 ................................................................................................................. 40
6.3 6.4 基本三维图形 ................................................................................................................. 42 练习题 ............................................................................................................................. 46
周日5-8节14:00-17:10
第7章 7.1 7.2 7.3 7.4 7.5 7.6 7.7 7.8 7.9 7.10 第8章 8.1 8.2 8.3 8.4 8.5
MATHEMATICA函数大全 ..................................................................................... 48 运算符和一些特殊符号,系统常数 ............................................................................. 48 代数计算 ......................................................................................................................... 49 解方程 ............................................................................................................................. 50 微积分 ............................................................................................................................. 50 多项式函数 ..................................................................................................................... 51 随机函数 ......................................................................................................................... 52 数值函数 ......................................................................................................................... 52 表相关函数 ..................................................................................................................... 53 绘图函数 ......................................................................................................................... 54 流程控制 ......................................................................................................................... 57 MATHEMATICA程序设计 ..................................................................................... 59 模块和块中的变量 ......................................................................................................... 59 条件结构 ......................................................................................................................... 61 循环结构 ......................................................................................................................... 63 流程控制 ......................................................................................................................... 65 练习题 ............................................................................................................................. 67
周日9-10节19:00-20:30
小测验
第1章 Mathematica概述
1.1 Mathematica的启动与运行
Mathematica是美国Wolfram研究公司生产的一种数学分析型的软件,以符号计算见长,也具有高精度的数值计算功能和强大的图形功能。
假设在Windows环境下已安装好Mathematica7.0,启动Windows后,在“开始”菜单的“程序”中单击
就启动了Mathematica7.0
,
在屏幕上显示如图的Notebook窗口,系统暂时取名“未命名-1”,直到用户保存时重新命名为止。
输入1+1,然后按下
Shif+Enter
键,这时系统开始计算并输出计算结果,并给输入和输出附上次序标识In[1]和Out[1],注意In[1]是计算后才出现的;再输入第二个表达式,要求系统将一个二项式展开,按Shift+Enter输出计算结果后,系统分别将其标识为In[2]和Out[2].如图
在Mathematica的Notebook界面下,可以用这种交互方式完成各种运算,如函数作图,求极限、解方程等,也可以用它编写像C那样的结构化程序。在Mathematica系统中定义了许多功能强大的函数,我们称之为内建函数(built-in function), 直接调用这些函数可以取到事半功倍的效果。这些函数分为两类,一类是数学意义上的函数,如:绝对值函数Abs[x],正弦函数Sin[x],余弦函数Cos[x],以e为底的对数函数Log[x],以a为底的对数函数Log[a,x]等;第二类是命令意义上的函数,如作函数图形的函数Plot[f[x],{x,xmin,xmax}],解方程函数Solve[eqn,x],求导函数D[f[x],x]等。
如果输入了不合语法规则的表达式,系统会显示出错信息,并且不给出计算结果,例如:要画正弦函数在区间[-10,10]上的图形,输入plot[Sin[x],{x,-10,10}],则系统提示
“可能有拼
写错误, 新符号 plot 很像已经存在的符号 Plot ”,实际上,系统作图命令“Plot”第一个字母必须大写,一般地,系统内建函数首写字母都要大写。再输入Plot[Sin[x],{x,-10,10} ,系统又提示缺少右方括号,并且将不配对的括号用蓝色显示,如图
一个表达式只有准确无误,方能得出正确结果。学会看系统出错信息能帮助我们较快找出错误,提高工作效率。 完成各种计算后,点击File->Exit退出,如果文件未存盘,系统提示用户存盘,文件名以“.nb”作为后缀,称为Notebook文件。以后想使用本次保存的结果时可以通过File->Open菜单读入,也可以直接双击它,系统自动调用Mathematica将它打开。
1.2 表达式的输入
Mathematica 提供了多种输入数学表达式的方法。除了用键盘输入外,还可以使用工具面版或者快捷方式健入运算符、矩阵或数学表达式。
1、数学表达式二维格式的输入
Mathematic提供了两种格式的数学表达式。形如x/(2+3x)+y/(x-w)的称为一维格式,形如
的称为二维格式。
你可以使用快捷方式输入二维格式,也可用基本输入工具栏 输入二维格式。下面列出
可以按如下顺序输入按键:
另外也可从“面板”菜单中激活“数学”工具栏,也可输入, 并且使用工具栏可输入更复杂的数学表达式。
2、特殊字符的输入
MathemMatica 还提供了用以输入各种特殊符号的工具样。基本输入工具样包含了常用的特殊字符(上图),只要单击这些字符按钮即可输入。若要输入其它的特殊字符或运算符号,必须使用从“插入”菜单中选取“特殊字符”工具栏,如上图(右),单击符号后即可输入。
1.3 Mathematica的联机帮助系统
用Mathematica的过程中,常常需要了解一个命令的详细用法,或者想知道系统中是否有完成某一计算的命令,联机帮助系统永远是最详细、最方便的资料库。
1、获取函数和命令的帮助
在笔记本界面下,用 ?或 ?? 可向系统查询运算符、函数和命令的定义和用法,获取简单而直接的帮助信息。 例如,向系统查询作图函数Plot命令的用法?Plot ,系统将给出调用Plot的格式以及Plot命令的功能(如果用两个问号“??”,则信息会更详细一些)。也可以使用通配符“*”,? Plot* 给出所有以Plot这四个字母开头的命令。
2、帮助菜单
任何时候都可以通过按F1键或点击帮助菜单项“参考资料中心”,调出帮助菜单,如图所示。该文档全面整合的文件中心容纳几千个详细举例、动画、辅导课程和其它资料。这些都被翻译成中文,帮助您使用 Mathematica。
如果要查找Mathematica中具有某个功能的函数,可以通过帮助菜单中的“函数浏览器”,通过其目录索引可以快速定位到自己要找的帮助信息。例如:需要查找Mathematica中有关解方程的命令,单击“数学和算法”——>“方程求解”按钮,在目录中找到有关解方程的节次,点击相应的超链接,有关内容的详细说明就马上调出来了(如图所示)。
如果知道具体的函数名,但不知其详细使用说明,可以在“参考资料中心”的“搜寻”的文本框中键入函数名,按回车键后就显示有关函数的定义、例题和相关联的章节。例如,要查找函数Plot的用法,只要在文本框中键入Plot,按回车键后显示如图的窗口,再点击“Plot”,则显示Plot函数的详细用法和例题。
3、在线帮助
访问网址:http:///mathematica/guide/Mathematica.html 4、Mathematica4全书第四版中文版
第2章 Mathematica的基本量
2.1 数据类型和常数
1、数值类型
在Mathematic中,基本的数值类型有四种:整数,有理数、实数和复数。如果你的计算机的内存足够大,Mathemateic可以表示任意长度的精确实数,而不受所用的计算机字长的影响。整数与整数的计算结果仍是精确的整数或是有理数。例如:2的100次方是一个31位的整数:
在Mathematica中允许使用分数,也就是用有理数表示化简过的分数。当两个整数相除而又不能整除时,系统就用有理数来表示,即有理数是由两个整数的比来组成。如:
实数是用浮点数表示的,Mathematica实数的有效位可取任意位数,是一种具有任意精确度的近似实数,当然在计算的时候也可以控制实数的精度。实数有两种表示方法:一种是小数点,另外一种是用指数方法表示的。如:
实数也可以与整数,有理数进行混合运算,结果还是一个实数。
复数是由实部和虚部组成。实部和虚部可以用整数,实数,有理数表示。在Mathematica中,用I 表示虚数单位。如:
2、不同类型数的转换
在Mathematica的不同应用中,通常对数字的类型要求是不同的。例如在公式推导中的数字常用整数或有理数表示,而在数值计算中的数字常用实数表示。在一般情况下在输出行Out[n]中,系统根据输入行ln[n]的数字类型对计算结果做出相应的处理。如果有一些特殊的要求,就要进行数据类型转换。
在Mathematica中的提供以下几个函数达到转换的目的:
举例
第二个输出是把上面计算的结果变为10位精度的数字。%表示上一输出结果。 3、数学常数
Mathematica
数学常数可用在公式推导和数值计算中。在数值计算中表示精确值。如:
4、数的输出形式
在数的输出中可以使用转换函数进行不同数据类型和精度的转换。另外对一些特殊要求的格式还可以使用如下的格式函数:
例如:显示数字近似值 的前 10 个数字
下面的函数输出幂指数可被3整除的实数
2.2 变量
1、变量的命名
Mathematica中内部函数和命令都是以大写字母开始的标示符。为了不会与它们混淆,我们自定义的变量应该是以小写字母开始,后跟数字和字母的组合,长度不限。例如:a12,ast,aST都是合法的,而12a,z*a是非法的。另外在Mathematica中的变量是区分大小写的。在Mathematica中,变量不仅可以存放一个数值,还可以存放表达式或复杂的算式。
2、给变量赋值
在Mathmatica中用等号“=”为变量赋值。同一个变量可以表示一个数值,一个数组,一个表达式,甚至一个图形。如:
对不同的变量可同时赋不同的值,例如:
对于已定义的变量,当你不再使用它是,为防止变量值的混淆,可以随时用“=.”清除他的值,如果变量本身也要清除,则用函数Clear[x]。例如
3、变量的替换
在给定一个表达式时其中的变量可能取不同的值,这是可用变量替换来计算表达式的不同值。方法为用“expr/.”例如:
如果表达式中有多个变量也可以同时替换方法为expr/.{x->xval,y->val} ,例如:
2.3 函数
1、系统函数
在Mathmatica中定义了大量的数学函数可以直接调用,这些函数其名称一般表达了一
Mathematica中的函数与数学上的函数有些不同的地方,Mathematica中函数是一个具有独立功能的程序模块,可以直接被调用。同时每一函数也可以包括一个,或多个参数,也可以没有参数。参数的的数据类型也比较复杂。更加详细的可以参看系统的帮助,了解各个函数的功能和使用方法是学习Mathematica软件的基础。
2、函数的定义
(1)函数的立即定义
立即定义函数的语法如下“f[x_]=expr”函数名为f,自变量为x,expr是表达式。在执行时会把expr 中的x都换为f的自变量x (不是x_)。函数的自变量具有局部性,只对所在的函数起作用。函数执行结束后也就没有了,不会改变其它全局定义的同名变量的值。请看下面的例子。
定义函数f(x)=x*Sinx+x2,对定义的函数,我们可以求函数值,也可绘制它的图形
对于定义的函数我们可以使用命令Clear[f]清除掉而Remove[f]则从系统中完全删除该函数,以使得它们的名称不再为 Mathematica 所识别。
(2)、多变量函数的定义
也可以定义多个变量的函数,格式为“f[x_,y_,z_, ]=expr”自变量为x,y,z, ,相应的expr中的自变量会被替换。例如定义函数f(x,y)=x+y+ycosx 。
(3)、延迟定义函数
延迟定义函数从定义方法上与即时定义的区别为“=”与“:=”,延迟定义的格式为f[x_]:=expr其他操作基本相同。那么延迟定义和即时定义的主要区别是什么?即时定义函数在输入函数后立即定义函数并存放在内存中并可直接调用。延时定义只是在调用函数时才真正定义函数。
(4)、使用条件运算符定义和If命令定义函数 如果要定义如:
这样的分段函数应该如何定义,显然要根据x 的不同值给出不同的表达式。一种办法是使用条件运算符,基本格式为“f[x_]:=expr/;condition ”,当condition条件满足时,才把expr赋给f。下面的定义方法,通过图形可以验证所定义函数的正确性。
当然使用If命令也可以定义上面的函数,If语句的格式为“If[条件,值1,值2]”如果条件成立取“值1”,否则取“值2”,下面用If语句的定义结果。
可以看出用If定义的函数g(x)和前面函数f(x)相同,这里使用了两个If嵌套,逻辑性比较强。关于其他的条件命令的进一步讨论请看后面的章节。
2.4 表
将一些相互关联的元素放在一起,使它们成为一个整体。既可以对整体操作,也可以对整体中的一个元素单独进行操作。在Mathematica中这样的数据结构就称作表(List)。表主要有三个用法:表{a,b,c}可以表示一个向量;表{{a,b},{c,d}}可表示一个矩阵。
1、建表
在表中元素较少时,可以采取直接列表的方式列出表中的元素,如{1,2,3}。请看下面的操作
下面是符号表达式的列表
下面是对列表中的表达式对x求导
用Range函数生成一个序列数
下面这个序列是以步长为2,范围从8到20
上面的参数变化都是只有一个,也可制成包括多个参数的表,下面生成一个多维表
使用函数TableForm可以以表格的方式输出
构造帕斯卡三角形:
2、表的元素的操作
当t表示一个表时,t[[i]]表示t中的第i个子表。如果t={1,2,a,b}那么t[[3]]表示“a”。如:
对于表的操作Mathematica提供了丰富的函数,详细的可以查阅后面的附录或者系统帮助。
3、对表中元素的调整
在使用表的过程中,调整表中元素的系统函数下表
例如