Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

实验一 Mathematica软件简介

2,548 views

Published on

  • Be the first to comment

  • Be the first to like this

实验一 Mathematica软件简介

  1. 1. 实验一 Mathematica 软件简介 实验目的: 1.掌握软件的基本功能,为数学实验提供工具。 2.掌握用 Mathematica 软件作函数图形的语句或作图方法。 实验重点: 软件 Mathematica 的运行环境及基本知识 实验难点: 软件 Mathematica 的命令格式 实验过程与要求: 教师利用多媒体组织教学,边讲边操作示范。 实验的内容: Mathematica 系统是美国 Wolfram 公司的产品,1986 年由美国伊利诺大学复杂系统研究 中心主任、 物理学、 数学和计算机科学教授 Stephen Wolfram 研制。 Mathematica 系统是符号计 算系统,它使用方便、 功能强大、 用户友好、 扩展便利。 Mathematica 是最大的单应用程序之一, 它内容丰富、 功能强大的函数覆盖了初等数学、 微积分和线性代数等众多的数学领域。 它包含 了数学多方向的新方法和新技术;它包含的近百个作图函数,是数据可视化的最好工具; 它也是“数学模型”和“数学实验”课程最好的工具之一,世界各地的大学和高等教育工 作者已开发基于 Mathematica 的多门课程。 Mathematica 是用 C 语言编写的,具有 BASIC 语言的简单易学的交互式操作方式;具 有 MathCAD、 Matlab 那样强的数值计算功能;具有 Macsyma、Maple、Reduce 和 SMP 那样的 符号计算功能;具有 APL 和 LISP 那样的人工智能列表处理功能;象 C 与 PASCAL 那样的 结构化程序设计语言。 这里主要介绍 Windows 环境下的 4. 1 版本在高等数学等领域的应用,其它版本类似. 一、Mathematica 软件功能简介 (1)作函数的图像:用作图程序,当输入被作函数时,计算机直接作出该函数的图像. (2)数值计算:可简单地计算函数值,积分值等,可求微分方程的数值解等. (3)符号运算:可计算函数的极限,导数,不定积分,求微分方程的通解等.在这以 前,计算机只能作数值计算,不能作符号运算. 二、Mathematica 的启动与基本操作 ( 1 ) 启 动 : 系 统 安 装 好 以 后 , 在 Windows98 中 , 用 鼠 标 点 击 开 始 — 程 序 — Mathematica 4.1—Mathematica 4.1 菜单即可进入系统.计算机屏幕出现 Mathematica 的 主工作窗口(图 1). (2)基本操作:进入系统后,出现 Mathematica 的主工作窗口,即可键入指令.如键 入 1+2,然后同时按下 Shift+Enter,即可得到结果.窗口显示如图 2,其中 In[1]为第一输 入行的标志,Out[1] 为第一输出行的标志(注意:输入行的标志 In[1]:=, In[2]:=, ……;输出行的标志 Out[1]=,Out[2]=,……均是计算机自动给出的).如果输入的语句 和表达式不能在一行显示完,可以按 Enter 键后在下一行继续输入,但一个命令或表达式 在没写完需换行则要加“”,在后面接着按 Enter 后继续输入.
  2. 2. 图1 图2 三、Mathematica 中的数、运算符、变量与表达式 1.数 Mathematica 的数据分为两大类:一类是我们平常写出的数,叫普通数,另一类是系 统内部的常数,有固定的写法. Mathematica 中的普通数有整数、有理数、实数、复数四种类型,见表 1 表1 类型 描述 实例 特征说明 整数 Integer 33889 任意长度的精确数 有理数 Rationa 27/79 化简过的分数 l 实数 Real 109.0 任意精确度的近似数 复数 Complex 12.0+2I 实部、虚部可为整数、有理数、实数
  3. 3. 常数 在 Mathematica 中定义了一些常数和常量,现将它们列如下表: 常量名 数学含义 解释 Pi π 圆周率 E e 自然对数的底数 I i 虚数单位 Infinity ∞ 无穷大 Degree π/180 度数 GoldRatio (1 + 5 ) / 2 黄金分割率 In[1]:=N[Pi,50] Out[1]= 3.1415926535897932384626433832795028841971693993751 要注意这些数书写时必须以大写字母开头. 2.运算符 (1)算术运算符 +、 *、 ^分别表示加、 -、 /、 减,乘、 乘方的运算,其中在不引起混淆的情况下乘法运算 除、 符“*”也可省略不写,另外开方可以表示成分数指数,上述运算的优先顺序同数学运算完 全一致. (2)关系运算符 = =、!=、>、>=、<、<=分别表示等于、不等于、大于、大于等于、小于、小于等于. (3)逻辑运算符 逻辑运算符及其意义见表 2 表2 逻辑运算符 名称 实例 意义 ! 非 !A 若 A 为真,则!A 为假;若 A 为假,则!A 为真 && 与 A&&B 当 A,B 均真时,则 A&&B 为真;否则 A&&B 为假 || 或 A||B 当 A,B 中有一为真,则 A||B 为真;否则 A||B 为假 3.变量 Mathematica 中变量的名称是以小写字母(不能以数字开头)开头的字符或字符串, 但不能有空格和标点符号,例如: abc 和 g2 均是合法的变量名.在 Mathematica 中,变量即 取即用,不需先说明变量的类型后再使用.在 Mathematica 中变量不仅可存放一个整数或复 数,还可存放一个多项式或复杂的算式. 4.表达式 表达式是以变量、常量、运算符构成的式子、表、甚至是图形,例如 3*x^3-2*x+5 和 x<=0 分别是算术表达式和关系表达式. 写表达式时,要注意以下几点: (1)所有表达式必须以线性形式写出.因此分子、 分母、指数、下标等都必须写在同一行上. (2)只能使用合法的标识符(字符或字符串). (3)为了指定运算的次序可以利用括号.括号必须成对出现,且只有一种括号“(”与“) ”,除了特定符号外不得使用方括号“[”与“]”及花括号“{”与“}”. 变量的赋值,格式为:变量名=表达式 或 变量名 1=变量名 2=表达式.
  4. 4. 例如:a=3*5^2 y=2*x^2-1 代数式中的变量也可以用另一个变量(或代数式)替换,如把上例中变量 y 中的 x 用 Pi-x 替换,可表述为 y=2*x^2-1; y/.x->Pi-x x->Pi-x 中的“->”是由键盘上的减号及大于号组成的,以后各节中不在说明. 变量的清除,当一个变量 a 无用时,可以用命令 Clear[a]加以清除,以免影响后面计 算的结果.注意在 Mathematica 中,内部函数或命令都是以大写字母开头的标识符(字符或 字符串). 四、用 Mathematica 作算术运算与代数运算 1.算术运算 进入系统后,出现 Mathematica 的主工作窗口(图 1),此时可以通过键盘输入要计 算的表达式,再按 Shift+Enter 键得运算结果. 实验 1 计算 80!. 解 在主工作窗口用户区输入 80!. 按下 Shift+Enter 键得运算结果(图 3). 图3 2 实验 2 先求表达式 3 × 5 − 10 ÷ (1 + 4) 的值,再求该表达式的平方. 解 在主工作窗口用户区输入表达式 3*5^2-10/(1+4)后 按下 Shift+Enter 键得该表达式运算结果,然后输入%^2 按下 Shift+Enter 键得该表 达式平方运算结果(图 4). 其中%代表上一输出结果,该例中指 73;如果输入行的标志 In[1]:=, In[2]:=, ……;输出行的标志 Out[1]=,Out[2]=,……代表的表达式是唯一的,则可将其写入以后 的运算表达式中代表其对应的表达式参与运算 .例如上例中求表达式的平方还可输入为 In[1]^2 或 Out[1]^2 后按下 Shift+Enter 键得该表达式平方运算结果.
  5. 5. 图4 2.代数运算 Mathematica 的一个重要的功能是进行代数公式演算,即符号运算. 2 3 实验 3 设有多项式 x − x − 2和x − 1 . (1)求二者的和,差,积; (2)将二者的积分解因式; (3)将二者的积展开成单项式的和. 解 In[1]:=p1=x^2-x-2 2 Out[1]= - 2 - x + x In[2]:=p2=x^3-1 3 Out[2]= - 1 + x In[3]:=p1+p2 2 3 Out[3]= - 3 - x + x + x In[4]:=p1-p2 2 3 Out[4]= - 1 - x + x - x In[5]:=p1*p2 Out[5]= In[6]:=Factor[p1*p2] Out[6]= In[7]:=Expand[p1*p2] 2 3 4 5 Out[7]= 2 + x - x - 2 x - x + x 其中 Factor[多项式]表示将其括号内的多项式分解因式;Expand[多项式] 表示将其 括号内的多项式展开成按升幂排列的单项式之和的形式. 值得注意的是,上面提到的 Factor[多项式]和 Expand[多项式]均是 Mathematica 系 统中的函数,其中 Factor 和 Expand 分别为其函数名(函数名的第一个字母必须大写) . 事实上 Mathematica 系统中含有丰富的函数,后面将结合具体内容介绍有关函数命令. 课后实验一
  6. 6. 1.计算下列各式: (1)61 15 (2) 169 (3)90! 3 2 2.将多项式 x − 6 x + 5 x分解因式. 3 4 3 3.设有多项式 x − 2 x − 2和2 x + 2 x − +5 x − 1 ,求二者的和、差、积. 五、函数运算 (一)常用函数 Mathematica 系统中的数学函数是根据定义规则命名的.就大多数函数而言,其名字通 常是英文单词的全写.对于一些非常通用的函数,系统使用传统的缩写 .下面给出一些常用 函数的函数名及功能. 1.数值函数 N[x,k] 求出表达式的近似值,其中 k 为可选项,它指有效数字的位数 Round[x] 舍入取整 Abs[x] 取绝对值 Max[x1,x2,…] 取 x1,x2,…中的最大值 Min[x1,x2,…] 取 x1,x2,…中的最小值 x+Iy 复数 x+iy Re[z] 复数 z 的实部 Im[z] 复数 z 的虚部 Abs[z] 复数 z 的模 Arg[z] 复数 z 的辐角 PrimeQ[n] n 为素数时为真,否则为假 Mod[m,n] m 被 n 除的正余数 GCD[n1,n2,…] n1,n2…的最大公约数 LCM[n1,n2,…] n1,n2…的最小公倍数 Sqrt[x] 求平方根 2.基本初等函数 Exp[x] 以 e 为底的指数函数 Log[a,x] 以 a 为底的对数函数 Log[x] 以 e 为底的对数函数 Sin[x] 正弦函数 Cos[x] 余弦函数 Tan[x] 正切函数 Cot[x] 余切函数 Sec[x] 正割函数 Csc[x] 余割函数
  7. 7. ArcSin[x] 反正弦函数 ArcCos[x] 反余弦函数 ArcTan[x] 反正切函数 ArcCot[x] 反余切函数 使用 Mathematica 系统中的数学函数要注意以下几点: (1)Mathematica 系统中的函数都以大写字母开头.如果用户输入的函数没有用大写 字母开头,Mathematica 将不能识别,并提出警告信息; (2)Mathematica 系统中的函数的自变量都应放在方括号内; (3)这些函数的自变量可以是数值,也可以是算术表达式; (4)计算三角函数时,要注意使用弧度制,如果要使用角度制,不妨把角度制先乘以 Degree 常数(Degree=π/180),转换为弧度制. 实验 4 求表达式 lg2+ln3 的值. 解 In[1]:=Log[10,2]+Log[3] In[2]:=N[Log[10,2]+Log[3],6] Out[2]= 1.39964 In[3]:=Log[10.0,2]+Log[3.] Out[3]= 1.39964 实验 4 中,对应于输入语句 In[1],输出语句 Out[1]并没有给出 lg2 及 ln3 的“数值 结果”,这是由于 Mathematica 符号计算系统的“对于只含有准确数的输入表达式也只进 行完全准确的运算并输出相应的准确结果”的特性所决定的 .在 In[2]中用数值转换函数 N[Log[10,2]+Log[3],6],将对表达式 Log[10,2]+Log[3]的运算转换成了计算结果具有 6 位 有 效 数 字 的 实 数 形 式 运 算 , 所 以 输 出 结 果 Out[2]= 1.39964 . 在 In[3]:=Log[10.0,2]+Log[3.]中,用实数 10.0 代替整数 10,用实数 3.代替整数 3,这里 10.0 及 3.都是实数的表示法,两种表示可以任选其一. 计算时欲得“数值结果”输入数时用实数形式. 实验 5 求 sin90o. 解 In[4]:=Sin[90Pi/180] (二)自定义函数 1.不带附加条件的自定义函数 在 Mathematica 系统中,所有的输入都是表达式,所有的操作都是调用转化规则对表 达式求值.一个函数就是一条规则,定义一个函数就是定义一条规则 .定义一个一元函数的 规则是: f[x_ ]:=表达式 其中表达式是以 x 为自变量的,x_称为形式参数,f 是函数名,函数名的命名规则同变 量名的命名规则. 调用自定义函数 f[x_ ],只需用实在参数(变量或数值等)代替其中的形式参数 x_即 可. 在运行中,可用“f[x_ ]:=.”清除函数 f[x_ ]的定义,用 Clear[f]清除所有以 f 为 函数名的函数定义. π 定义函数 f ( x) = x + 2 x + sin x ,先分别求 x = 1,5.1, 3 实验 6 2 时的函数值, 2 再求 f ( x ) .
  8. 8. 解 In[5]:=f[x_]:=x^3+2Sqrt[x]+Sin[x] In[6]:=f[1.] Out[6]= 3.84147 In[7]:=f[5.1] Out[7]= 136.242 In[8]:=f[N[Pi]/2.] Out[8]= 7.38241 In[9]:=f[x^2] 2 在 Out[9]中,由于系统不知道变量 x 的符号,所以没有对 x 进行开方运算. 2. 带附加条件的自定义函数 在使用“f[x_ ]:=表达式”定义规则时,可以给规则附加条件,附加条件放在定义规 则表达式后面,通过“/;”与表达式连接.规则的附加条件形式为: f[x_ ]:=表达式/;条件 在调用上述规则时,实在参数必须满足附加条件,系统才调用规则. “附加条件”经常写成用关系运算符连接着的两个表达式,即关系表达式 .用一个关 系表达式只能表示一个条件,如表示多个条件的组合,必须用逻辑运算符将多个关系表达 式组合到一起. 实验 7 设有分段函数 e x sin x x≤0  f ( x) = ln x 0< x≤e   x x>e 求f (−100), f (1.5), f (2)及f (100). 解 In[10]:=f[x_]:=Exp[x]Sin[x]/;x<=0 In[11]:=f[x_]:=Log[x]/;(x>0)&&(x<=E) In[12]:=f[x_]:=Sqrt[x]/;x>E In[13]:=f[-100.0] - 44 Out[13]= 1.88372 ´ 10 In[14]:=f[1.5] Out[14]= 0.405465 In[15]:=f[2.0] Out[15]= 0.693147 In[16]:=f[100.0] Out[16]= 10. 课后实验二 1.求表达式 lg100+lne-lg5 的值. 2.求 sin30o. 3.求复数 3+2i 的模,辐角,实部及虚部. 4.设 f(x)=sin2x-5lnx-ex,求 f(1.3),f(2)及 f(100).
  9. 9. x 2 + 1 x<0 5.设函数 f ( x) =  ,求 f(-1.5)及 f(2). ln( x + 1) x≥0 六、作函数图像 1、作图函数与输入格式 在 Mathematica 系统中用函数 Plot 可以很方便地作出一元函数的静态图像,基本格式 为: Plot[{f1,f2,…},{x,xmin,xmax},可选参数] 其中表{f1,f2,…}的 fi(i=1,2,3,…)是绘制图形的函数名,表{x,xmin,xmax}中 x 为函 数 fi(i=1,2,3,…)的自变量,xmin 和 xmax 是自变量的取值区间的左端点和右端点. 实验 7 作 y=x2-1 在[-2,2]内的图像和作 y=lgx 在[0.3,4]内的图像,其输入和输出如图 5. 图5 2、作图时的可选参数 1)参数 AspectRatio(面貌比) 平时我们作图时,两个坐标轴的单位长度应该一致,即 1:1.但在 Mathematica 系统中 根 据 美 学 原 理 系 统 默 认 的 纵 横 之 比 为 1 : 0.618, 而 将 参 数 AspectRatio 的 值 设 置 为 Automatic(自动的)时可使纵横比为 1:1. 实验 8 (1)作 y=sinx 和 y=cosx 在[0,2π]内的图像,且两坐标轴上的单位比为 0.618. (2)作 y=sinx 和 y=cosx 在[0,2π]内的图像,且两坐标轴上的单位比为 1:1. 其输入和输出如图 6.
  10. 10. 图6 2)参数 PlotStyle(画图风格) PlotStyle 的值是一个表,它决定画线的虚实、宽度、色彩等. (1)取值 RGBColor[r,g,b]—决定画线的色彩.r,g,b 分别表示红,绿,蓝色的强度,其值 为[0,1]之间的数. 实验 9 作 y=sinx 在[0,2π]内的图像,线条用红色. 输入:Plot[Sin[x],{x,0,2Pi},PlotStyle->{RGBColor[1,0,0]}] 表示画出的曲线为红色. (2) 取值 Thickness[t](厚度,浓度)—决定画线的宽度.t 是一个介于 0,1 之间的数,且 远远小于 1,因为整个图形的宽度为 1. 实验 10 作 y=sinx 在[0,2π]内的图像,线条厚度 t=0.02. 输入:Plot[Sin[x],{x,0,2Pi},PlotStyle->Thickness[0.02]] 输出如图 7 1 0.5 1 2 3 4 5 6 -0.5 -1 图7 (3) 取值 Dashing[{d1,d2,…}]—决定画线的虚实,其中表{d1,d2,…}确定线的虚实分 段方式,di(i=1,2,…)的取值介于 0,1 之间. 实验 11 作 y=sinx 在[0,2π]内的图像,线条用虚线. 输入:Plot[Sin[x],{x,0,2Pi},PlotStyle->Dashing[{0.03,0.07}]] 输出如图 8
  11. 11. 1 0.5 1 2 3 4 5 6 -0.5 -1 图8 实 验 12 作 y =sin x 和 y =cos x 在 [0,2π] 内 的 图 像 , 且 两 坐 标 轴 上 的 单 位 比 为 1:1,线条用蓝色虚线. 输入: Plot[{Sin[x],Cos[x]},{x,0,2Pi},AspectRatio->Automatic,PlotStyle- >{{RGBColor[0,0,1],Dashing[{0.02,0.05}]}}] 输出如图 9 1 0.5 1 2 3 4 5 6 -0.5 -1 图9 3)参数 DisplayFunction(显示函数) 该参数决定图形的显示与否,当取值为 Identity 时,图形不显示出来. 当取值为$DisplayFunction 时恢复图形的显示. 图形的组合显示函数 Show Plot 的作用可以同时在同一坐标系的同一区间内作出不同函数的图像,但有时需要在 同一坐标系的不同区间作出不同函数的图像,或者在同一坐标系作一个函数而要求函数的各 个部分具有不同的形态(像分段函数),这个时候就需要使用 Show 函数. 实验 13 在同一坐标系中作出 y=ex 和 y=lnx 的图像,并说明它们的图像关于直线 y=x 对称. 输入: a=Plot[Exp[x],{x,-2,2},AspectRatio->Automatic,PlotStyle->RGBColor[0,1,0], DisplayFunction->Identity] b=Plot[Log[x],{x,0.3,3},AspectRatio->Automatic,PlotStyle->RGBColor[1,0,0], DisplayFunction->Identity] c=Plot[x,{x,-2,2},AspectRatio->Automatic,PlotStyle->Dashing[{0.09,0.04}], DisplayFunction->Identity] Show[a,b,c,DisplayFunction- $DisplayFunction] 输出如图 10.
  12. 12. 4 3 2 1 -2 -1 1 2 3 -1 -2 图 10 课后实验三 1 1.作函数y = x 4的图像. 1 2.作函数y = ( ) x 的图像. 2 3.作函数y = log 1 x的图像. 2 π 4.作函数y = 3 sin( 2 x + )在一个周期内的图像. 4 x 2 + 1 x ≤ 0 5.作分段函数y =  的图像. ln x x>0 6.在同一坐标系中作出 y=x,y=sinx,x∈[-π/2,π/2]和 y=arcsinx, x∈[-1,1]的图 像, 且要求两坐标轴上的单位比为 1:1, y=x 用虚线和红色,y=sinx 用绿色,y=arcsinx 用 蓝色.

×