当前位置:文档之家› Mathematica简介

Mathematica简介

Mathematica简介
Mathematica简介

数学软件Mathematica简介

本文简要介绍该软件的基本使用方法,通过学习,初步了解Mathematica的功能及其使用方法.

Mathematica是美国Wolfram Research公司开发的数学软件,主要用于解决科学研究、数学教学、工程技术等领域的符号运算、数值计算、程序设计、函数图形绘制等方面的问题.Mathematica是目前世界上最流行的数学软件之一,它是从事数学和其它科学研究的科研人员、高校师生,以及工程技术人员的得力助手和不可缺少的计算工具.

一、算术运算

进入Mathematica 系统后,显示在面前的是如图1-1所示的窗口,右边是基本工具板,我们立即可以在空白的窗口内进行预想的数学计算了.

图1-1

Mathematica中,空白窗口称为Notebook(记事本),窗口上端“Untitled-1”表示当前的记事本尚无标题,我们可以像使用普通计算器一样来进行数学运算. 计算结束后,执行File/Save as 命令,指定文件名称(扩展名为 *.nb)和路径将此记事本文件保存.

算术与代数运算是数学中最基本的运算,我们先从最简单的算术运算做起.

做数学计算,离不开加、减、乘、除和乘方,单击键盘上“+”、“-”、“*”、“/”和“^”输入这些运算符,其中乘号“*”可以用空格代替. 如果要计算图1-1所示的工具板上提供的某种数学运算,可用鼠标左键单击相应的按钮,便可将该运算符输入到窗口中,例如25+34*5

25+34*5

然后用组合键Shift + Enter 或直接按小键盘上的Enter键(本书中,我们一律称这一操作为“执行”),便可输出计算结果. 屏幕上显示为

In[1]:=25+34*5

Out[1]=195

这里“In[1]:=”和“Out[1]=”是由系统自动加上去的,表示输入和输出的编号. 此后的输入和输出,系统都会按照执行顺序自动加上“In[n]:=”和“Out[n]=”.本书中一般不再显示这些编号,而使用灰色底纹突出输入命令行,接在该行下面的式子、数值等则表示执行命令后的输出结果,并将二者用边框线框住. 输出的图形考虑到印刷的便利,一般予以编号.

如果要计算较复杂的式子,需要按照运算顺序添加括号,例如计算3314(3523)23521+?+-???

+???-??

,在窗口内输入(输入的式子中用乘号用空格代替):

2+(18/5) (1+4 (3+5-2 3))/(2^3-1) 输出计算结果为

232

35

又如计算

(103.54+12.25)*1.2-3.3^5/5.2

63.6876

5(a+3)^3/(b-1)^2

3

2

5 (3+a)

(-1+b)

对每一输入行和输出行,系统在Notebook 窗口的右边缘分别添加一个形如“”和“”的标记(图1-1),它随着输入行和输出结果行的宽度扩展,它标记的行称之为“Cell ”,即“细胞”或“单元”. 系统根据输入和相应输出的关系将有关的“细胞”组合起来形成多级细胞单元显示运算的层次.

Mathematica 可以做任意位数的整数或分子分母为任意大整数的有理数的精确计算,也可以做具有任意位精度的数值(实、复数值)的近似计算. 一般使用 N[expr] 命令输出表达式expr 的近似值,用N[expr ,n]命令输出表达式expr 的n 位近似值,例如计算圆周率π的近似值,顺次输入

Pi N[Pi] N[Pi,50]

输出结果依次为π的精确值、近似值和精确到50位的近似值

Pi

3.14159

3.1415926535897932384626433832795028841971693993751

也可以使用后缀格式“expr//N ”求表达式expr

Sqrt[5]//N

2.23607

复数运算与实数运算一样,只需在输入复数时,虚数单位“i ”必须使用大写字母I ,输出结果中,显示为 ? . 例如要计算复数123z i =-+?与复数232z i =--?的积、商以及1z 的3次方,则应输入

(-2+3 I)(-3-2 I) (-2+3 I)/(-3-2 I) (-2+3 I)^3

12 -5 ? -? 46 +9 ?

二、常数、变量和函数

1.系统常数

Mathematica系统中的数学常数列于表1-1.

表1-1 数学常数

2.变量和函数名

Mathematica系统中,定义变量和函数名应遵从如下规则:

变量或函数名必须以英文字母起头,后面接任意长度的字符或数字,各字符间不得有空格和其他运算符,如x、x1、xy2、T2x、data、Alpha、delta都是合法变量.

系统区分变量中的大小写,X和x、xy1和Xy1视为不同的变量.

系统内置函数名都以表示函数意义的完整英文单词为名,且起头的第一个字符必为大写字母,其余为小写字符,例如Sin[x]为x的正弦,Expand[expr]表示将表达式expr展开.如果函数名是几个英文单词复合而成,各单词的每个词头要大写,例如,FindRoot[eq1==eq2,{x,x0}]表示求方程式“eq1==eq2”的根. 用完整意义的单词作为函数名定义函数,常使用户能够“望文生义”,根据函数名就大致明确函数的意义. 不过,自定义函数时尽量不要与系统内置函数同名,因为系统内置函数的名称是受保护的.

函数必须表示为“函数名[x]”的形式,自变量放在方括号内.

3.系统内置函数

Mathematica系统中的内置函数(Built-in Function),包括基本初等函数、特殊函数,还有众多旨在完成某项特定数学运算的功能函数,有时也称这类函数为“命令”.表1-2列出了常用的初等函数,它们与普通数学中的形式基本相同,只不过函数名的首字必须大写.

表1-2 Mathematica的部分内置初等函数

表1-2 续

读者要了解更多的内置函数,可参阅书末的附录.

4.自定义函数

大量的数学问题还需要根据问题的具体意义,借助软件提供的运算功能自行定义函数加以解决,Mathematica 提供了两种自定义函数的方法:立即定义和延迟定义.

立即定义,格式为:f[x_ ]=expr .

延迟定义,格式为:f[x_ ]:=expr .这里自变量x 右边的下划线“_”是非常重要的,称之为“空白”(blank ),x _表示定义的函数中的自变量,称为哑变量,可以用任何形式的参数或表达式去替代它. 使用等号“=”和延迟赋值号“:=”定义的函数是不同的,二者的区别主要在于何时对表达式expr 进行计算,前者在定义f[x_ ]的同时就计算了expr ,而后者则是在需要计算函数 f 的值时才进行计算. 定义多元函数的方法也是相同的.

我们用下面的例子来比较二者的区别,输入 f[x_]=Expand[(x +1)^3] 1+3 x+3 x 2 +x 3 f[x^2+1]

1+3(1+x 2)+3(1+x 2)2+(1+x 2)3

用立即定义法定义一个将多项式展开的函数:f[x_]=Expand[(x +1)^3],执行后,系统会立即输出(x+1)^3的展开式.而再输入f[x^2+1]时,输出的是1+3(1+x 2)+3(1+x 2)2+3(1+x 2)3.

接下来用延迟定义法定义:g[x_]:=Expand[(x+1)^3],执行后,系统则不输出任何结果,只有再次调用g[x]时,系统才输出展开式.

g[x_]:=Expand[(x+1)^3] g[x]

1+3 x +3 x 2+x 3

g[x^2+1]

8+12 x 2+6 x 4+x 6

g[2 a -3 b]

1+6 a +12 a 2+8 a 3-9 b -36 a b-36 a 2 b +27 b 2+54 a b 2-27 b 3

5. 变量赋值、变量值的清除

Mathematica 中,用等号“=”给变量赋值,也可以将一个表达式赋予一个变量,格式为 x = value 将值value 赋予变量x x = y = value 将值valu e 同时赋予变量x ,y x =.或 Clear[x]

清除x 的值

例1 使用一元二次方程求根公式求22230x x +-=的根. 解 输入和输出结果为

a =

b =2;

c =-3; Delta=b^2-4 a c

x1 =(-b +Sqrt[Delta])/2/a x2 =(-

b -Sqrt[Delta])/2/a 输出结果为

28

这里,把2、2、-3分别赋予变量a 、b 、c ,后面用“;”隔开,Mathematica 中,如果一个完整的输入语句之后面接分号“;”,该表达式的运算结果屏幕将不予显示. 把表达式

b^2-4 a c 赋予变量Delta ,把计算根的表达式分别赋予变量x1和x2,执行后输出并显示出Delta 的值为28,两个根分别为

1

(24

-±,而变量a 、b 、c 的值却没有显示出来. 如果接着输入 -b /2a Delta 则输出

28

对于赋了值的变量,如果在接下来的运算中不再使用,可以使用命令:“Clear[变量名]”或“变量=.”将它们清除,以免影响后续的数学运算. 例如,输入

Clear[a ,B ,C ,Delta,x1,x2]

执行后,这些变量便被清除了. 不再使用的自定义函数可使用同样的方法加以清除:Clear[f ,g]. 在Mathematica 运行期间,将不使用的变量及时加以清除,对保证后续运算结果的准确性是至关重要的,初学者应给予足够的重视.

6. 括号的使用

Mathematica 中,可以使用四种括号:

方括号“[ ]”:仅用在函数表达式中,如f[x]、Sin[Pi/3]、Sqrt[3] 等; 圆括号“()”:用来表示运算项的结合顺序,例如,数学表达式223{5[2(2)]sin()}y

x x x y x y

??++++?-应输入成如下形式:

3(5(2 x + y /(x -y )+(2+x )^2)+Sin[x ^2] y)

此外,在语句行的任何地方可以加入形如 (* …… *)”的括号,其中两星号之间可以输入一段注释语句意义的文字或其他, 其内容系统是不执行的.

花括号“{ }”:用于定义一个“表”,如{a ,b ,c}; 双方括号“[[ ]]”:用于提取表中元素. 7. 变量替换

Mathematica 提供了变量替换运算,其基本格式为:

expr/.x→value以value替代expr中的x

expr/.{x→value1,y→value2,…}以value1和value2等替代expr中的x、y

Replace[expr,rules]按规则rules替代expr

例如

x^2+2x+3/.x →2

11

x+y/.y→S in[x]/.x→π/2

Replace[x^2+b^2,x→a]

a^2+b^2

{a,b,c}/.a→b/.b→d/.d→c

{c,c,c}

以上输入中的箭头“→”可以依次输入减号键“-”和大于号键“>”得到.

8. 先前变量值的调用

在计算过程中,我们常常需要使用先前已经计算出来的结果,使用“%”、“%%”、“%...%”等分别来调出最后一个、倒数第二个和倒数第k个计算结果. 例如,

x+y/.{x→a,y→b}

a+b

%+c

a+b+c

{%+d,%%+d}

{a+b+c+d,a+b+c}

三、符号运算

代数运算,即对使用字符代表数值的代数式进行运算,各种形式的代数式,在Mathematica中,统称为表达式,如计算33

+--,在计算机里做这种运算,称为“符号运算”.Mathematica强大的符号运

()()

a b a b

算功能,可以完成从初等数学到高等数学中众多的运算,如各种代数式运算、三角函数变换、函数求导、不定积分、级数展开、函数变换、向量矩阵运算等等.在Mathematica中,符号运算可以像普通数学运算一样进行,例如将代数式332323

-++-化简,可以输入

a a a

b ab b

22

2 a^3-a^3-3a^2 b+3a b^2-b^3

输出为

a3-3 a2b+3 a b2-b3

在Notebook中作符号运算时,有一点必须加以注意,参与运算的表达式中使用的字母符号(实际上,都是所谓的“变量”)必须是没有赋过值的,否则系统将把它当作数值对待,运算后,输出的将是表达式的值,而非预想的运算结果. 为了保证不出错误,应该在符号运算之前,先执行清除命令Clear[a,x,...].

在大多数场合下,要完成代数运算,需要使用执行符号运算的命令,如表达式化简(Simplify )、分解因式(Factor)等等. 表1-3列出了几个常用的处理符号运算的命令(或称为函数).

表1-3 处理符号运算的函数

例如下面几个代数式的运算: Expand[(2 x +3 y-1)^2]

1+4 x+4 x 2-6 y+12 x y+9 y 2

2 x^2+x -1//Factor

(1+x )(-1+2 x)

Together[x ^2/(x +2)-(x ^2-3)/(3x +1)] (*通分合并*)

23

6+3 x -x +2 x (2+x) (1+3 x)

Apart[(3 x^2-1)/(x^2+3 x +2)]

又如下列三角式的展开和化简: Sin[α-2β]//TrigExpand

Cos[β]2 Sin [α]-2 Cos[α] Cos[β] Sin[β]-Sin[α] Sin[β]2

TrigReduce[%]

Sin [α-2 β]

将sin z 转化为指数型函数: TrigToExp[Sin[z]]

将ln(/)m n a b 展开:

PowerExpand[Log[a ^m /b ^n ]]

m Log[a]-n Log[b]

四、表与表的操作

1. 表的概念

“表”(List)是Mathematica中一个灵活、独特而重要的数据结构,它可以表示数学中点的坐标、向量、矩阵、集合、自变量取值范围、方程组等,其基本结构是{a,b,c,...},其中a,b,c,...称为表的元素,它们可以是数字、字符、表达式、函数、图形命令,甚至是表(子表),这时的表称为嵌套的表. Mathematica 中众多运算的输出结果也以表的形式给出.

可以使用“表名[[num]]”提取该表中的第num个元素.对于嵌套表,用“表名[[num1,num2]]”提取该表中的第num1个子表中的第num2个元素,多层嵌套表也称为多维表.

2. 建表方法

Mathematica中有多种方法建表方法,可以直接定义法,输入一个花括号,将元素放在括号内,各元素之间用逗号分开即可.例如

a={1,2,3}

{1,2,3}

a[[2]]

2

如下定义的嵌套表b代表一个23

阶矩阵:

b={{1,2,-2},{3,4,1}}; (* 定义表b,不做屏幕显示 *)

{b[[1]], b[[1,3]]} (* 输出表b的第一个子表,和第一个自表中的第三个元素 *)

{{1,2,-2},-2}

b.

b[[1]]相当于b的第一个元素,即矩阵的第一行. b[[1,3]]相当于

13

表作为一个整体可以参与相关的运算,也可以对表的元素进行相关的运算,例如

a={1,2,3,4,5};

a^2(* a的各元素平方组成的表 *)

{1,4,9,16,25}

%+2a(* 上一个表加上a的各元素的2倍组成的表 *)

{3,8,18,24,35}

10+a(* 将数10加到a的各个元素上去 *)

{11,12,13,14,15}

Sum[a[[i]]^2,{i,5}] (* 计算a中各元素的平方和 *)

55

Sin[{Pi/6,Pi/3,Pi/2}] (* 将正弦函数作用到表的每个元素上 *)

使用建表函数Table、Range、Array等,可以建立元素具有某种规则的表,它们的最简单的使用格式为

Table[expr,range] 产生一个指定范围内,元素按表达式expr计算出的表.

Range[n] 产生一个从1到n的整数组成的表.

Array[f,{m,n}] 产生一个以f[i,j]为元素的m n

?阶数组.

Table[ ]是一个非常有用的函数,在生成函数表、作图、制作动画等都会用到它. 例如

a=Table[x^i,{i,5}](* 产生以函数i x为元素的表 *)

{x,x2,x3,x4,x5}

Table[{i,Log[10,i]},{i,1,5}]//N(* 产生1-5的常用对数表 *)

{{1.,0.},{2.,0.30103},{3.,0.477121},{4.,0.60206},{5.,0.69897}}

例2利用Table函数输出九九表.

Table[i j,{i,9},{j,9}]

{{1,2,3,4,5,6,7,8,9},{2,4,6,8,10,12,14,16,18},...,{9,18,27,36,45,54,

63,72,81}} (注:此处略去部分输出结果)

Range[n]函数的用法.例如,要产生一个从1到10的整数集合,输入

b=Range[10]

{1,2,3,4,5,6,7,8,9,10}

Array[ ]函数的用法. 例如,要产生一个23

?阶数组,输入

Array[a,{2,3}]

{{a[1,1],a[1,2],a[1,3]},{a[2,1],a[2,2],a[2,3]}}

输出一个两行三列的数组a[i,j].

例3用Array[]函数输出一个九九表.

f[x_,y_]:=x y; c=Array[f,{9,9}]

输出结果与例2的结果相同.

有关表的更多的用法和操作,我们将在以后的相关章节中详细介绍.

五、图形函数

Mathematica有很多图形函数,利用它们可以方便地绘制各种数学函数的图形.其中,最常用的图形函数是产生平面曲线图形的函数命令为

Plot[expr,{var,min,max},options]

这里expr为函数表达式,var为自变量,min,max分别为自变量取值的下限和上限,它确定作图的自变量取值范围,options为针对输出图形或图元给出的各种控制选项. 也可以使用如下命令把几个函数图形在同一张图中显示出来,

Plot[{expr1,expr2,...},{var,min,max},options]

例4 做出函数

sin

()

x

f x

x

=的图形,可以输入

f[x_]:=Sin[x]/x

Plot[f[x],{x,-Pi,Pi},AspectRatio →0.4,

PlotStyle →{RGBColor[0,0,1],Thickness[.01]}]

Graphics ?

这里选项AspectRatio→0.4,表示图形的高和宽的比例为0.4 ,即高为宽的40%. 一般地,如果不输入这个选项,则系统默认图形的高和宽之比为黄金分割比,即1/GoldenRatio=0.618. 图形风格选项

PlotStyle→{RGBColor[0, 0,1], Thickness[.01]}中,RGBColor[0, 0, 1] 表示图形中曲线的颜色为蓝色,RGBColor[1,0,0]和RGBColor[0,1,0]则分别表示颜色为红和绿,方括号中的三个数取0与1之间的数值.在Mathematica5.1以上的版本中,它们分别可以用Blue,Red和Green取代,Thickness[.01]表示曲线的粗细,方括号中的数值越大,曲线越粗.

Mathematica中,凡是输出图形的下方,系统将输出一个字符串“ Graphics ?”,如果在图形命令末尾加上分号“;”,则该字符串将不再显示.

当函数图形绘制出来以后,用鼠标单击图形,它就被一个矩形框框住,鼠标指向该框内,鼠标变成一个纵横交叉的十字丝,这时按住Ctrl键,移动鼠标,跟踪平面上点的位置,在屏幕左下方的花括号内显示十字丝位置上点的坐标.

不妨用这个函数并选择有关选项做出你所熟悉的一元函数的图形. 输出函数图形可用选项有很多,可以查阅帮助文件,也可以在Notebook中使用Option[]函数来了解:

Options[Plot]

执行后输出所有可用选项,由于选项太多,这里略去.

要产生三维空间的曲面图形,最常用的函数为

Plot3D[expr,{x,xmin,xmax},{y,ymin,ymax},options]

Mathematica还提供了产生由参数方程确定的平面曲线、空间曲线、空间曲面的图形函数,产生极坐标系下曲线的图形函数等等. 图形函数以及它们的具体使用方法,这里不再介绍.

此外,Mathematica也提供了利用一些基本图元作图的函数,其中,最常用的命令格式为

Graphics[primitives,options]

基本图元(primitives)包括: 点(Point)、线段(Line)、圆(Circle)、圆盘(Disk)、多边形(Polygon)、矩形(Rectangle)等,这样的图形需要调用如下的Show函数才将它显示出来.

Show[plot,options]

例 5 绘制单位圆和以圆与坐标轴的交点为顶点的内接正方形. 输入

p=Graphics[{Thickness[0.01],Circle[{0,0},1]}];

r=Graphics[{Thickness[0.01],

Line[{{0,-1},{1,0},{0,1},{-1,0},{0,-1}}]}];

Show[{p,r},Axes→True,AspectRatio→ Automatic];

Show函数中,设置选项Axes→True,表示显示坐标轴,图形的显示比例为“自动”. 执行后输出的图形如图1-2所示.

例6 利用图元“Circle ”绘制一幅奥林匹克五环标志图,并选取适当选项,显示“Beijing 2008”字样. 可以使用多种方法绘制出五环标志图,下面我们给出如下的命令,执行后输出如图1-3所示的五环标志. Apply[Circle,{{{0,0},1},{{2.4,0},1},{{4.8,0},1},

{{1.2,-1.0},1},{{3.6,-1.0},1}},{1}];

Show[Graphics[Table[{Blue,Thickness[0.03],%[[i ]]},{i ,5}]],

AspectRatio → Automatic,PlotRange →{-3,2},

PlotLabel →StyleForm["Beijing 2008",FontFamily →"Times", FontSize →28,FontWeight →"Bold",FontColor →Blue]];

这里,使用Apply(应用)函数将Circle 命令作用到五个位置不同上去,产生包含五个圆环的表. 再用Table 函数将画圆的选项“Blue,Thickness[0.03]”分配给五圆表的每个元素,最后使用Show 函

数将

这五个圆环显

示出来. 选择的选项中有:PlotRange →{-3,2}表示图形纵向范围,PlotLabel →StyleForm[]指出图形标签的风格形式,方括号内依次列出:字样“Beijing 2008”、字体、字号、字形和字体颜色等.

作业:利用Mathematica 绘制一个尽量真实的奥林匹克五环标志图

图1-2

图1-3

六、程序与编程

Mathematica提供了众多可以解决各种数学问题的功能函数,但是,大量的数学问题仅靠这些函数来解决,还是远远不够的,需要自己编写计算机程序来解决. Mathematica系统为用户提供了一个功能非常强大的编程平台和编程语言,其语言结构简单、灵活,凡学过计算机语言(如C、Fortran等)的用户都能很快地掌握它.同任何程序语言的结构一样,Mathematica程序流程也分成顺序结构、循环结构、条件分支结构.

1. 关系运算与逻辑运算

在程序流程的控制中,需要用到关系运算和逻辑运算. 这些运算由相应的关系运算符和逻辑运算符完成,如果关系表达式和逻辑表达式成立,其输出结果为True,否则为False.

关系运算符和逻辑运算符列于表1-4和表1-5中.

表1-4 关系运算符及运算结果

表1-5 逻辑运算符及运算结果

2. 全局变量与局部变量

当Mathematica开启并首次执行一个运算后,系统立即启动一个叫做“Mathematica Kernel”程序,它负责变量和函数的计算,并将计算结果暂时存储在这里.凡先前定义的变量的值,在Mathematica运行期间,该变量的值始终被保存,所以,在Mathematica中称这种变量为“全局(Global)变量”,全局变量的值只要没有及时地清除,很可能会影响后续的运算的结果.

相对全局变量,Mathematica允许定义一种所谓的“局部(Local)变量”,不过这种变量必须放在一个由Module引起的模块中,用Module模块可以定义一个函数或者旨在完成某项具体任务的程序. 这个模块中定义的变量叫做局部变量. 局部变量的值仅在该模块内起作用,模块外的全局变量值与模块内定义的局部变量,即使它们同名也互不影响.

Module模块的基本格式:

Module[{x,y...},body],局部变量为x,y,...的模块.

Module[{x=x0,y=y0,...},body],局部变量为x,y,...赋予初始值的模块.

例如,输入

x=10 (* x为全局变量,定义其值为 10*)

f=Module[{x},x=(2 t-3 s)^2;x=Expand[x]]

(* Module中的变量x为局部变量*)

不难看出,这里用Module模块定义的变量f,执行后输出结果为

10

9 s2-12 s t+4 t2

显然,输出的10为全局变量x的值,而模块内的变量x为局部变量,将(2 t-3 s)^2赋予x,再将它展开并输出展开式.这里须注意Module模块中最后一个语句为输出语句.

3. 循环结构

程序,实质上就是一系列有序的计算机指令组成的集合.大多数情况下,Mathematica程序,就是将一系列的命令组合在一起,按照先后顺序从前向后执行,当一个命令语句之后添加“;”时,计算结果不做屏幕显示,继续计算下一条命令,直到这组命令全部计算完备为止,这种程序结构,叫做顺序结构.

但是,许多数学问题,需要利用计算机的高速运算多次循环计算才能得到结果,即需要编写一个循环结构的程序来完成. Mathematica中有多种建立循环结构程序的方法,我们仅介绍其中几种常用的方法.

(1) Do循环

Do循环的格式为

Do[expr,{i,i min,i max}] 循环变量i从i min到i max,重复计算expr的值

Do[expr,{i,i min,i max,di}] 循环变量i从i min到i max,以di为步长,重复计算expr的值.

Do[expr,{i,i min,i max},{j,j min,j max}] 二重循环

例7用Do循环计算前n个自然数的平方和,输出前15个自然数的平方和.

Sqsum[n_Integer]:=Module[{s=0},Do[s+=k^2,{k,n}];s]

Sqsum[15]

1240

输出结果为1240. 程序中k为循环变量,循环表达式“s+=k^2”,即“s=s+k^2”,循环变量的初值如果是1的话,可以省略.

(2) For循环

Fro循环的格式为

For[start,test,incr,body] start为循环变量初值,test为检验条件,incr 为步进量,body为循环体.

使用For循环作例6的问题:

Sqsum1[n_]:=Module[{s=0},For[i=1,i<=n,i++,s+=i^2];s]

Sqsum1[15]

其中,循环变量i的初值为1,终值为n,i++表示步进量为1(它可以用i=i+1,或者i+=1代替),此程序的输出结果也是1240.

(3) While循环

While循环的格式为

While[test, body]test为检验条件,body为循环体

当检验条件满足,计算循环体,直到检验条件不满足为止.

使用While循环作例6的问题,输入如下程序

Sqsum2[n_]:=Module[{s=0,i=1},While[i<=n,s+=i^2;i+=1];s]

Sqsum2[15]

不难看出,这个程序的输出结果仍然是1240.

4. 条件分支结构

在数值或者非数值运算中,常常需要对给定的条件作逻辑判断,并根据判断结果控制程序的流向,这要用到分支结构.

Mathematica中使用If、Which等命令控制程序的分支,下面简要介绍它们的用法.

(1) If 语句格式

If[cond,t,f],cond为检验条件,当cond为真时计算t,否则计算f.

例8 编写程序从任意给出的3个数中挑选最大的数. 输入

maxf[x_,y_,z_]:=Module[{m},If[x>y,m=x,m=y];

If[z>m,m=z];

Print[m,"i s the maximal number."]]

程序中“Print”函数表示打印,其中引号中的字符串照原样打印.如果求ππe

e, 3,π中最大的数. 调用此程序并输出结果为

maxf[E^Pi,3^Pi,Pi^E]

π

3is the maximal number.

数学中的分段函数,常常要使用If命令来定义,我们将在实验1中详细讨论.,

(2) Which 语句格式

Which[cond1,expr1,cond2,expr2,...] 顺次检验条件cond i,当首次遇到某个条件cond k成立时,返回对应的表达式expr k的值.

例9 用Which命令定义符号函数

1 , 0 sgn[] 0 , 0

1 , 0

x

x x

x

-<

?

?

==

?

?<

?

.

sgn[x_]:=Which[x<0,-1,x==0,0,x>0,1]

如果输入sgn[2.5],输出1,输入sgn[-3.1],则输出-1.

为了解决复杂的问题,在计算机程序中,常常需要在适当的地方中改变程序的流向,例如在循环中,当循环结果符合要求以后,中断循环,跳出循环执行下面的语句,或控制程序转入下一轮循环. Mathematica 中提供了一些控制程序流程的命令函数,如Break[]、Continue[]、Return[expr]、Goto[name]等等. Mathematica 程序的语法与C语言语法基本相同,读者可以在所掌握的计算机语言的基础上,逐步熟悉程序的编写方法.

例10 3N+1问题是数论中的一个有趣问题,任意给定一个正整数内 N ,如果它是偶数,则除以2,否则,将它乘以3再加上1,再将所得到的数当作新的N,重复上述计算步骤,经过有限次计算后,最后一定得到数1. 编写Mathematica程序验证这一事实.

ThreeNPlus1[n_]:=Module[{m=n},

For[i=1,i≤10^10,i++,{If[m==1,Break[],

If[Mod[m,2]==0,m=m/2,m=3 m+1]]}]; Return[m]]

程序里,对任意给定的正整数n,由于事前并不知道需要计算多少次,最后可以返回数1,故选取循环变量的终值为一个很大的数,这里取为1010.循环过程中,经过若干次计算后,一旦得到数1,程序执行到终止循环命令Break[](注:Break之后的方括号内不填任何值),则跳出循环,Return[m]表示返回到m

的最后值. 可以验证,对于任何整数n调用这个函数,其返回值都是1.

七、帮助与查询

查阅软件提供的帮助是迅速掌握软件功能的重要途径,选择Help菜单下的Help Browser...菜单项(可单击F1) 打开帮助浏览器,其中介绍系统内置函数(Build-in Functions)、学习教科书(The Mathematica Book)、功能演示(Demos)、索引(Master Index)等内容,从中了解系统功能、函数与基本使用方法.

Mathematica还提供了获取帮助的简便方法,要了解某个具体函数或者命令的意义,可以在Notebook中先输入“? 函数名”,例如,输入

?Expand

执行此命令,系统输出该函数的简要信息.

Expand[expr] expands out products and positive integer

powers in expr. Expand[expr, patt] leaves unexpanded any

parts of expr that are free of the pattern patt. More...

要了解更多的信息,可以单击上面这段文字末尾的“More...”按钮. 如果输入“??Expand”,执行后则输出该函数的详尽信息.

如果忘记了某个函数或命令的英文拼写,可以输入

?Ex*

则会输出系统中所有以“Ex”起头的Mathematica命令的名称.

八、加载程序包

Mathematica提供的内置函数中,有一部分可以直接调用.还有些功能相对专业的函数,Mathematica将它们集中在一个个的程序包中,要使用这些函数首先必须调入包含着该函数的程序包,否则,若直接输入这些函数,系统并不能识别.

加载程序包的方法是输入:

<<程序包`子程序包名称` (或者Get[“程序包`子程序包名称`”])

或者输入

Needs[“程序包`子程序包名称`”]

例如我们要做统计中线性回归方面的计算,就需要调入统计(Statistics)程序包中的线性回归子程序包,输入

<

执行后就可以使用该程序包中的有关函数或命令做线性回归了. 注意,上面的命令中,要输入单引号“`”,需单击数字键1左边的那个键.

Mathematica系统提供了代数、几何、微积分、数论、图形、统计等领域中的许多程序包,要了解这些程序包,从帮助浏览器的“Add-Ones&Link”卡中的标准程序包(Standard Packages)去查找.

除了做数学的程序包外,有一个特殊的杂项(Miscellaneous)程序包,其中包括可以输出化学元素、物理常数、日历、城市数据等方面资料的子程序包. 例如,要想知道某年某月是星期几,需要加载中的日历(Calendar)子程序包,输入

<

执行后,比如要想知道2016奥运会的开幕日是星期几,输入

DayOfWeek[{2016,8,5}]

Friday

即当天是星期五. 要想知道从2014年3月1日到2016奥运会开幕还有多少天,输入并执行后得到DaysBetween[{2014, 3, 1}, {2016, 8, 5}]

888

Mathematica函数及使用方法

Mathematica函数及使用方法 (来源:北峰数模) --------------------------------------------------------------------- 注:为了对Mathematica有一定了解的同学系统掌握Mathematica的强大功能,我们把它的一些资料性的东西整理了一下,希望能对大家有所帮助。 --------------------------------------------------------------------- 一、运算符及特殊符号 Line1; 执行Line,不显示结果 Line1,line2 顺次执行Line1,2,并显示结果 ?name 关于系统变量name的信息 ??name 关于系统变量name的全部信息 !command 执行Dos命令 n! N的阶乘 !!filename 显示文件内容 < Expr>> filename 打开文件写 Expr>>>filename 打开文件从文件末写 () 结合率 [] 函数 {} 一个表 <*Math Fun*> 在c语言中使用math的函数

(*Note*) 程序的注释 #n 第n个参数 ## 所有参数 rule& 把rule作用于后面的式子 % 前一次的输出 %% 倒数第二次的输出 %n 第n个输出 var::note 变量var的注释"Astring " 字符串 Context ` 上下文 a+b 加 a-b 减 a*b或a b 乘 a/b 除 a^b 乘方 base^^num 以base为进位的数 lhs&&rhs 且 lhs||rhs 或 !lha 非 ++,-- 自加1,自减1 +=,-=,*=,/= 同C语言 >,<,>=,<=,==,!= 逻辑判断(同c)

Mathematica使用教程

【Mathematica 简介】 Mathematica 软件是由沃尔夫勒姆研究公司(Wolfram Research Inc.)研发的。Mathematica 版发布于1988年6月23日。发布之后,在科学、技术、媒体等领域引起了一片轰动,被认为是一个革命性的进步。几个月后,Mathematica 就在世界各地拥有了成千上万的用户。今天,Mathematica 已经在世界各地拥有了数以百万计的忠实用户。 Mathematica 已经被工业和教育领域被广泛地采用。实际上,Mathematica 负责将高级的数学和计算引入了传统上非技术的领域,极大的增加了科技软件的市场。一个包含应用、咨询、书籍、和课程软件的行业支持着国际化的 Mathematica 用户群,这个行业还在不断地膨胀。随着沃尔夫勒姆研究公司不断地扩大和 Mathematica 的使用被不断地扩展到不同的领域,将会看到 Mathematica 在全世界范围内对未来产品、重要研究发现、和教学的巨大影响。 数学软件是现在科研工作者的必备的工具,个人比较喜欢用Mathematica,因为它是最接近数学语言的。Mathematica 在15日发布,其最显著的变化是允许自由形式的英文输入,而不再需要严格按照Mathematica语法,这类似于Wolfram|Alpha搜索引擎。Mathematica 8允许用户按照自己习惯的思考过程输入方程式或问题,最令人激动的部分是软件不是逐行执行命令,而是能理解上下文背景。 1. Enter your queries in plain English using new free-form linguistic input 2. Access more than 10 trillion sets of curated, up-to-date, and ready-to-use data 3. Import all your data using a wider array of import/export formats 4. Use the broadest statistics and data visualization capabilities on the market 5. Choose from a full suite of engineering tools, such as wavelets and control systems 6. Use more powerful image processing and analysis capabilities 7. Create interactive tools for rapid exploration of your ideas 8. Develop faster and more powerful applications Wolfram Research 的 CEO 和创立者斯蒂芬·沃尔夫勒姆表示:“传统上,让计算机执行任务必须使用计算机语言或者使用点击式界面:前者要求用户掌握它的语法;而后者则限制了可访问函数的范围。”“自由格式语言学能够理解人类的语言,并将其转化为具有特定语法结构的语言。这是产品适用性上的一个突破。 Mathematica 8 是这种创新思想下的第一个产品,但是它已经能够大幅度提高用户的工作效率。” Mathematica简明教程 第1章Mathematica概述 运行和启动:介绍如何启动Mathematica软件,如何输入并运行命令

Mathematica函数大全(内置)

Mathematica函数大全--运算符及特殊符号一、运算符及特殊符号 Line1;执行Line,不显示结果 Line1,line2顺次执行Line1,2,并显示结果 ?name关于系统变量name的信息 ??name关于系统变量name的全部信息 !command执行Dos命令 n! N的阶乘 !!filename显示文件内容 > filename打开文件写 Expr>>>filename打开文件从文件末写 () 结合率 []函数 {}一个表 <*Math Fun*> 在c语言中使用math的函数 (*Note*)程序的注释 #n第n个参数 ##所有参数 rule& 把rule作用于后面的式子 %前一次的输出 %%倒数第二次的输出 %n第n个输出 var::note变量var的注释 "Astring "字符串 Context ` 上下文 a+b 加

a-b减 a*b或a b 乘 a/b除 a^b 乘方 base^^num以base为进位的数 lhs&&rhs且 lhs||rhs或 !lha非 ++,-- 自加1,自减1 +=,-=,*=,/= 同C语言 >,<,>=,<=,==,!=逻辑判断(同c) lhs=rhs立即赋值 lhs:=rhs建立动态赋值 lhs:>rhs建立替换规则 expr//funname相当于filename[expr] expr/.rule将规则rule应用于expr expr//.rule 将规则rule不断应用于expr知道不变为止param_ 名为param的一个任意表达式(形式变量)param__名为param的任意多个任意表达式(形式变量) 二、系统常数 Pi 3.1415....的无限精度数值 E 2.17828...的无限精度数值 Catalan 0.915966..卡塔兰常数 EulerGamma 0.5772....高斯常数 GoldenRatio 1.61803...黄金分割数 Degree Pi/180角度弧度换算 I复数单位 Infinity无穷大

Mathematica语言

附录Mathematica 软件简介 Mathematica是一个功能强大的数学软件.它集数值计算、符号运算,绘图功能于一身,堪称众多数学软件中的佼佼者.加之其语法规则简单,操作使用方便,深受广大科技工作者的喜爱,得到广泛的使用. 数学函数和常数 Mathematica提供了大量的数学函数,给运算带来很大方便. 下面列出一些常用的函数. 注:Mithematica提供的函数,其名称中的字母大小写是固定的(特别开头字母均为大写),不得误用;函数的自变量以方括号[ ]括起来. Mathemaica还提供了许多数学常数,下面列出了一些常数(均以大写字母开头).Pi -------------------π; E---------------------e ; Infinity--------------∞ I----------------------1 函数和常数均可参与运算,下面是一些运算的例子.

In[ l]:=Pi^2 Out[ 1]=π2 In[2]:=N[ Pi,11] Out[2]=3.1415626535 In[3]:=Log[E^8] Out[3]=8 In[4]:=Sin[Sqrt[%1]/6] Out[4]=1/2 用户不仅可以使用Mathemaica提供的函数和常数,还可以自定义函数和常数.方法如下: 形式功能 f[x_]:= expr-------------定义函数f f[x_,y_]:=exp r-----------定义多变量的函数f ?f------------------------显示函数的定义 Clear[f]-----------------清除f的定义 x=value-------------给变量x赋值 x=.清除变量x的值 注:定义函数时,在等式左端的方括号中的变量必须跟随下到线符号“_”;定义的函数或变量的名称不要使用大写字母开头,以免和Mathemaica的函数或常数混淆.例: In[1]:=f[x_]:=x^5;f[x_,y_]:=Sqrt[x^2+y^2];z=3; 其中输入语句后的分号“;”表示不显示输出结果,定义了函数、变量以后,便可以在运算中使用. In[4]:=f[2] Out[4]=32 In[5]:=f[1+b] Out[5]=(1+b)2 In[6]:=g[z,4] Out[6]=5 如果忘记了已定义的函数的容,可以使用?f查询f的定义.当函数或变量使用完以后,最好将其清除,以免带来麻烦. 3.符号运算 符号运算即代数式的运算.它是Mathemaica的重要功能.下面简介符号运算的主要功能. (1)符号赋值 Mathemaica不仅可以把一个常值赋给一个符号,还可以把一个表达式赋给一个符

数学 mathematics

数学mathematics, maths(BrE), math(AmE) 公理axiom 定理theorem 计算calculation 运算operation 证明prove 假设hypothesis, hypotheses(pl.) 命题proposition 算术arithmetic 加plus(prep.), add(v.), addition(n.) 被加数augend, summand 加数addend 和sum 减minus(prep.), subtract(v.), subtraction(n.) 被减数minuend 减数subtrahend 差remainder 乘times(prep.), multiply(v.), multiplication(n.) 被乘数multiplicand, faciend 乘数multiplicator 积product 除divided by(prep.), divide(v.), division(n.) 被除数dividend 除数divisor 商quotient 等于equals, is equal to, is equivalent to 大于is greater than 小于is lesser than 大于等于is equal or greater than

小于等于is equal or lesser than 运算符operator 数字digit 数number 自然数natural number 整数integer 小数decimal 小数点decimal point 分数fraction 分子numerator 分母denominator 比ratio 正positive 负negative 零null, zero, nought, nil 十进制decimal system 二进制binary system 十六进制hexadecimal system 权weight, significance 进位carry 截尾truncation 四舍五入round 下舍入round down 上舍入round up 有效数字significant digit 无效数字insignificant digit 代数algebra 公式formula, formulae(pl.) 单项式monomial 多项式polynomial, multinomial

Mathematica简介

Mathematica简介 §1 引言 Mathematica软件是一个功能强大的数学软件。 利用Mathematica软件可以完成许多数值计算与符号演算的工作。它可以做任意位精确度 的数值计算,可以做有理式的各种演算,可以求有理式与超越方程的精确解,可以做一般表 达式的向量与矩阵的各种运算,可以求一般表达式的极限`导数`积分以及幂级数展开,可以求 解微分方程等等。 利用Mathematica软件可以非常方便地绘制图形。它可以做出一元和二元的散点图等等。 Mathematica软件的命令系统本身构成了一种功能强大的程序设计语言,用这种语言可以 比较方便地定义用户需要的各种函数和程序包,系统本身也提供了许多应用程序包。 §2 Mathematica 软件的基本命令 双击Mathematica软件的图标即可启动Mathematica软件。 在命令窗口中输入命令,如Sin[Pi/2],然后同时按下Shife与Enter键即可执行相应的命令。 在输入的命令前出现提示符“In[1]:=”,其中“In”表示“输入”,数字“1”表示输入命令的序号;在运行结果之前会自动出现提示符“Out[1]=”,其中“Out”表示“输出”。 2.1 算术运算 Mathematica软件的算术运算是指加减乘除及乘方`开方运算。 例1In[1]:= 3*(5-2)+4^(6-3)/2 Out[1]= 41 在Mathematica软件中,乘法用“*”或“”(空格)表示,除法用“/”表示,乘法用“^” 表示。 例2In[2]:= 3^(1/3) Out[2]= 31/3 In[3]:= 1/3+2/5 11 Out[3]= 15 在Mathematica软件中,若输入的数据是精确的,计算结果保留精确数字。若要计算近似值,可用下面的命令: 例3 In[4]:= N[3^(1/3)] Out[4]= 1.44225 函数N[x]表示x的近似值。 若采用浮点数输入,则计算结果为近似值,见例4。 例4In[5]:= 1./3+2/5 Out[5]= 0.733333 例5In[6]:= 2^100 (*计算2的100次方的精确值*)

数学 mathematics

数学mathematics, maths(BrE), math(AmE) 被除数dividend 除数divisor 商quotient 等于equals, is equal to, is equivalent to 大于is greater than 小于is lesser than 大于等于is equal or greater than 小于等于is equal or lesser than 运算符operator 数字digit 数number 自然数natural number 公理axiom 定理theorem 计算calculation 运算operation 证明prove 假设hypothesis, hypotheses(pl.) 命题proposition 算术arithmetic 加plus(prep.), add(v.), addition (n.)被加数augend, summand 加数addend 和sum 减minus(prep.), subtract (v.), subtraction(n.) 被减数minuend 减数subtrahend 差remainder 乘times(prep.), multiply(v.), multiplication(n.) 被乘数multiplicand, faciend 乘数multiplicator 积product 除divided by(prep.), divide (v.), division(n.) 整数integer 小数decimal 小数点decimal point 分数fraction 分子numerator 分母denominator 比ratio 正positive 负negative 零null, zero, nought, nil

Mathematica软件快速上手指南11

Mathematica 软件快速上手指南(11) ———数学课件制作简介 梁肇军 (华中师范大学数学系,湖北 武汉 430079) 中图分类号:G 434 文献标识码:B 文章编号:0488-7395(2001)09-0005-02 收稿日期:2001-02-20 作者简介:梁肇军(1938— ),男,广西柳州人,华中师范大学数学系教授.1 课件制作的基本程序 一篇优秀的数学课件,必须具备下述三个条件: 1.能体现现代、先进的教育思想,符合教育的科学 原理.2.能充分反映计算机在教学中的独特作用,利用其超强的计算能力,精确、快速的图形效果,能实时调控以及具有动画功能等.3.符合数学的基本原理,内容科学.因此,我们分下述三步来进行一篇数学课件的制作. 1.1 选取数学课件的脚本  数学课件的脚本,可以是一本教材,也可以是一个讲稿,或者是课本中的某一章某一节内容,按照讲义的要求处理,力求简练. 内容选取以后,我们需要把讲授的文稿设计成框图,框图里的信息力求简明扼要,框图里的内容要有先后顺序安排.同时,要设计一定的师生交流以及人机交流的内容.当然,巩固练习的安排也是必不可少的.由于计算机的内存有限,在这里我们还要考虑课件所需计算机存贮空间的分配. 1.2 按照教育教学原理,把脚本进行适当的编排、 增补  在排列学习项目时,应注意分析问题、逻辑推理的合理性和思维过程的流畅性.同时,适当地安排一些具有意外性的内容,对学生具有挑战性,能引起学生学习上的兴趣.为了避免学生在长期的紧张、连续的学习中产生疲劳,把学习过程分为若干个阶段是适宜而且应该的.在学习结束时,针对学生在练习中反映的问题,课件的最后应安排一定的小结内容. 在利用计算机进行辅助教学中,对计算机的实时调控,图形的逼真,动画的直观,以及教师与学生的对话、人机互动等等,要能深刻体现教育教学基本规律,要能充分调动学生学习的积极性. 1.3 数学式的软件语言处理  我们可以把课件内容大致分为两部分:一类是静态的,如中西文文字说明,图形,表格数据等,这部分内容制作者只需将其按Mathematica 系统的对其的输入要求录入到课件中即可;另一类是动态的,如代数式的实时运算,作图,动画,比较(包括代数式中某此数据修改后的结果对比,图形叠加,加色,数学模型中的适时调控等).下面将从中西文文字、作图、动画等三个方面来说明如何用Mathematica 软件语言处理上述数学式.至于Mathematica 系统在建立数学模型、开放实验等方面的有关问题,我们将另文说明. 中西文文字、图形、表格、数据(含代数式)在数学课件中主要起说明作用,除图形外其它的都可以直接利用键盘输入,只不过代数式的输入要按照Mathem 2 atica 系统规定的格式对它进行处理.对于图形,我们 可以通过函数作图或者是图元作图,即先输入一行正确的命令,然后运行它,输出结果即为需要的图形,存盘后即可保留在文稿上.对某些需要输出结果的代数式,也可如上办理.需要运算的代数式要放在独立的单元Cell 里,一个完整代数式建立一个独立的单元.由于计算机的计算速度快,一般几秒钟即可完成,为了教学的需要,我们需要把代数式分成几个部分,一步一步地让计算机执行.如化简一个代数式,我们可 5 2001年第9期 数学通讯

Microsoft Mathematics三种数学工具的介绍(李红权)

Microsoft Mathematics三种数学工具的介绍 深圳第二实验学校李红权 Microsoft Mathematics 在在“主页”选项卡上的“工具”组中,显示了四 种特定的计算工具按钮—方程求解器、公式和方程、三角求解器、单位转换器.如图 1. 图1 利用"方程求解器"可以同时求解一个或多个方程。在方程求解器,您可以输入单个方程或方程组,然后将在Microsoft Mathematics 工作表中显示方程的解。本教程之《求方程组的解和求曲线交点坐标》一文已经介绍过,此处赘述. “公式和方程”就是常用公式库和方程库,其中为您准备了数学(包括代数、几何学、三角学、指数定律、对数性质及常数)和科学学科(包括物理学和化学)的常用公式、常量和方程。您可以方便地单击某个方程来对某特定变量绘图和求解。如图2图3,可以方便在输入一个含有4个参数的椭圆方程. 图 2

图 3中绘制出的椭圆方程,四个参数a 、b 、h 、k 都可以通过动画效果按钮进行调节,调范围也是可以改变的. 图 3 “三角求解器”就是一个解三角 形的工具.输入足可解三角形的边角 书籍条件,哪怕有两个解,其结果都 会瞬间"显示"出来. 如图 4,同时还可以在"计算法则" 下显示,用于从输入的已知边和角的 度量计算未知边和角的度量的定理和 公理。在"三角形类型"下三角形的 类型情况。在"高和面积"下显示, 三个条高和三角形的面积的数据。 边与角六个元素中,三个阴影部 分表示,求出来的结果. "单位转换器"可帮助您将度量从一个度量单位转换为另一个度量单位。 如长度、 图 4

面积、体积、质量、温度、压强、重量、能量、功率、速度、时间、力等方面的单位转换.如图5 图 5

Mathematica作为一个优秀的符号计算系统

第4节Mathematica基础 Mathematica作为一个优秀的符号计算系统, 不同于一般的计算软件或简单编程, 它以符号记录计算的精确结果, 能达到任意位的精度(只要你拥有足够的内存). 并且, 它还有教强的作图以及简单的编程功能. 因此, 在科学研究, 在工程应用, 在诸多领域中,Mathematica 将是一个得心应手的工具.希望这些简单的讲述,能让大家对Mathematica软件有个初步的了解. 其实Mathematica本身的帮助是非常强大的, 相信在你上手这个软件之后, 会更轻松地读懂并发现它的帮助中的各项内容的.适用版本:简记Mathematica为math math 1.2 for DOS,math 2.2 for Windows, math 3.0 for win95, math 3.0 for UNIX. 教程目录: 01 简介02 试试你的math 03 基本计算 04 代数变换05 微积分运算(2-1) 06 微积分运算(2-2) 07 矩阵/表的运算08 表的运算.2 09 二维图形 10 三维图形11 基本图元作图12 表达式与纯函数 13 转化规则与参数14 过程编程15 程序包 4.1简介 我们平日用到编程语言时, 大家都知道编程中用到的整型,实型, 甚至双精度数, 都只是一个近似的数, 其精度有限, 有效数字有限, 在很多时候达不到实际需要的要求. 符号计算与数值计算的区别就在于符号计算以准确值记录计算的每一步的结果, 如果需要时, 可以将精确表示按需要计算成任意位数的小数表示出来(只要机器内存足够大). 最常见的符号计算系统有maple, mathematica, redues等,这些软件各有侧重, 比如,maple内存管理及速度比math 好, 但是图形方面不如math; redues没找到, 没用过, 未明; 而用得较多的matlab编程环境特好, 和C语言接口极其简单, 符号计算采用Maple内核, 数值计算功能很强. 所以, 就实用而全面来说,math是一个很好用的软件. math软件不仅能够进行一般的+-*/及科学函数如Sin, Log等计算, 而且能进行因式分解, 求导, 积分, 幂级数展开, 求特征值等符号计算, 并且, math有较强的图元作图, 函数作图, 三维作图及动画功能. 4.2试试你的math math自发布以来, 目前比较常见的有math 1.2 for DOS,math 2.2 for Windows, math 3.0/4.0 for win95, math 3.0/4.0 for UNIX. DOS下的math的好处就是系统小, 对机器要求低, 在386机器4M内存下就能运行得很好(机器再低点也是可以用的, 比如说286/2M). 在DOS下直接键入math<回车>即可进入math系统, 出现的提示符In[1]:=,这时就可以进行计算了, 键入math函数, 回车即可进行运算. 如果输入的Quit, 则退出math. 这里要注意的是, math区分大小写的, 一般 math的函数均以大写字母开始的. windows下的math对机器要求就要高一些了, math3.0更是庞大,安装完毕有100M之多(2.2大约十多兆). 同windows下的其他软件一样,math可以双击图标运行, 在File菜单下有退出这一项. windows下的math有其优越性, 就是可以在windows下随心所欲地拷贝粘贴图形.math3.0更是能输入和显示诸如希腊字母, 积分符号, 指数等数学符号. DOS的math

Mathematica7.0简易教程

Mathematica7.0简易教程 第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]等。 必须注意的是:

mathematica数学实验报告 实验二

数学实验报告 实 验 二 学院:数学与统计学院 班级:信息与计算科学(1)班 姓名:郝玉霞 学号:201171020107

实验二 一、实验名称:π的计算 二、实验目的:首先在Mathematica环境中用多种方法计算圆周率π的值,通过 实验来体会各种方法的区别,比较各种方法的优劣,接着尝试自己提出新的 方法来计算圆周率π的值。 三、实验环境:学校机房,Mathematica软件。 四、实验的基本理论和方法 1、用Mathematica绘图函数Plot绘制圆周率π; 2、计算圆周率π的数值积分法、泰勒级数法、蒙特卡罗法,并且利用特定 的公式来计算圆周率π。 五、实验的内容和步骤及实验的结果和结果分析 步骤一、数值积分法计算π 因为单位圆的半径为1,它的面积等于π,所以只要计算出单位圆的面积,就算出了π。在坐标轴上画出以圆点为圆心,以1为半径的单位圆,则这个单位圆在第一象限的部分是一个扇形,而且面积是单位圆的1/4,于是,我们只要算出此扇形的面积,便可以计算出π。 当n=5000时; 语句: n=5000;y[x_]:=4/(1+x*x); s1=(Sum[y[k/n],{k,1,n-1}]+(y[0]+y[1])/2)/n; s2=(y[0]+y[1]+2*Sum[y[k/n],{k,1,n-1}]+4*Sum[y[(k-1/2)/n],{k,1,n}])/(6*n); Print[{N[s1,20],N[s2,30],N[Pi,30]}]; 实验结果: 3.1415926469231265718,3.14159265358979323846264334 3.14159265358979323846264338328 当n=10000时; 语句: n=10000;y[x_]:=4/(1+x*x); s1=(Sum[y[k/n],{k,1,n-1}]+(y[0]+y[1])/2)/n; s2=(y[0]+y[1]+2*Sum[y[k/n],{k,1,n-1}]+4*Sum[y[(k-1/2)/n],{k,1,n}])/(6*n); Print[{N[s1,20],N[s2,30],N[Pi,30]}]; Plot[{4(1-x*x)},{x,0,1}] 实验结果: 3.1415926519231265718,3.14159265358979323846264338 3.14159265358979323846264338328

mathematica实用教程

mathematica实用教程

此文档9.0.1.0版的mathematica为例,侧重函数作图、方程求解、置信区间等方面,仅限学习交流。 以后更新在blog:https://www.doczj.com/doc/f98667529.html,/post/228eea_1507ef1,email:misaraty@https://www.doczj.com/doc/f98667529.html,。 misaraty 2014.8.9

mathematica简介 (1) 特殊字符插入(希腊字母、积分号、运算符号...) . (3) 特殊排版插入(上下标、根号...) (4) 运算的执行和中断 (4) 已完成计算的简单调用 (4) 数的类型及表达 (4) 数型之间的转换 (5) 系统中常见的数学常量 (6) 函数与变量的命名规则 (7) 变量赋值和变量替换 (7) 表的使用方法 (7) 四则运算 (7) 初等函数 (8) 常用函数 (8) 函数的定义与输入格式 (8) 分段函数 (9) 绘制函数图形 (10) 数据组的绘图 (15) 图形的合并与排列 (16) 计算极限 (17) 求函数导数 (17) 求函数的积分 (18) 求解微分方程 (18) 计算行列式 (19) 方程的求解 (19) 曲线拟合及回归分析 (20) 描述统计 (22) 置信区间 (23) 参考文献 (24)

mathematica简介 mathematica界面: mathematica是美国wolfram research公司于1988年开发的数学计算软件,目前有中文版,人们称之“数学草稿纸”,具有数值计算(计算过程和结果不包含任何未知数/代数,以具体的数值形式进行)、符号计算(运算过程包含代数的运算)及作图功能,每个输入命令需要全名(输入时会有列表提示),还有强大的帮助-参考资料中心等,为数学外学科提供智力支持。

mathematica数学实验报告

高等数学实验报告 实验一 一、实验题目 S in u Sin v ,Sin u Cos v ,Cos u , u,0,Pi , v,0,2 1:作出各种标准二次曲面的图形 ParametricPlot3D Graphic v ,u Cos v ,u^2 , u,0,2 , v,0,2Pi ,PlotPoint ParametricPlot3D u Sin

v,2,2 ,PlotPoints Graphic ParametricPlot3D u,v,u^2v^2,u,2,2 , u Sin v ,Sec u Cos v ,Tan u , u,Pi 4,Pi 4 , Graphic ParametricPlot3D S ec

Graphic

Graphic show Graphics3D , Graphics ParametricPlot3D u Cos v ,u Sin v ,u , u ,6,6 , v ,0,2Pi ,PlotPoints Graphic 2:作出曲面所围的图形 t1 ParametricPlot3D S in u Sin v ,Sin u Cos v ,Cos u , u ,Pi 2,pi 2 , v ,0,2Pi ,PlotPoints 60 t2 ParametricPlot3D 0.5Cos u 1 2,0.5Sin u ,0,2Pi , v ,0,2Pi ,PlotPoints 60 t3 Plot3D 0,PlotPoints 60 show t 1,t2,t3

二、实验目的和意义 方法的理论意义和实用价值。 如利用数形结合的方法观察数列的极限,可以从点图上看出数列的收敛性,以及近似地观察出数列的收敛值;通过编程可以输出数列的任意多项值,以此来得到数列的收敛性。通过此实验对数列极限概念的理解形象化、具体化。 三、计算公式 请写出在程序中所需要的计算公式。比如定积分的数值计算中,如用梯形法计算的,请描述梯形法的公式。 四、程序设计 五、程序运行结果 六、结果的讨论和分析 如初值对结果的影响;不同方法的比较;该方法的特点和改进;整个实验过程中(包括程序编写,上机调试等)出现的问题及其处理等广泛的问题,以此扩大知识面和对实验环节的认识

用数学软件mathematica做微积分

上海大学2011~2012学年冬季学期课程论文课程名称:微积分课程编号:01014106 论文题目: 用数学软件mathematica做微积分 作者姓名: 学号: 成绩: 论文评语: 评阅人: 评阅日期:

用数学软件Mathematica做微积分 姓名:学号: 摘要:Mathematica是著名的数学软件,具有强大的的数学运算能力和绘图功能。 本报告用Mathematica来计算微积分中的各种习题,并绘制了很多图形。 在本报告中,我运用软件mathematica解决了在微积分学习过程中学到的很多知识和所遇到的问题。 本款软件可以解决我们从开始学习微积分到目前为止所有的问题。从求极限、导数、积分、空间解析几何到多元微分学、多元微分学的应用、重积分、曲线积分、曲面积分等等,无不包含其中。 关键词:Mathematica 数学软件微积分 正文: 首先我想从最简单的求函数极限到多远微分学慢慢来展现这款软件对微积分学习的帮助。 一、求函数极限 1、自变量趋于有限值的极限 例假设求极限 0sin lim x x x 我们只需输入: f[x_]:=Sin[x]/x; Limit[f[x],x 0] 则会输出:1 2、求单侧极限

例 求右极限01lim arctan x x +→ 只需输入: f[x_]:=ArcTan[1/x]; Limit[f[x],x 0,Direction -1] 输出: /2 3、自变量趋于无穷大的极限 例 求极限2 21lim sin 3x x x →∞ 输入: f[x_]:=x^2Sin[3/x^2]; Limit[f[x],x Infinity] 输出:3 4、单向极限 例 求极限 lim arctan x x →+∞ 输入: f[x_]:=ArcTan[x]; Limit[f[x],x Infinity] 输出:π/2 例 求极限 lim arctan x x →-∞ 输入: f[x_]:=ArcTan[x]; Limit[f[x],x -Infinity] 输出:-(π/2) 5、无穷大的极限 例 求极限10 lim x x e + → 输入: f[x_]:=Exp[1/x]; Limit[f[x],x 0,Direction -1] 输出: 正无穷 6、列表观察数列的极限 输入:f[1]=N[Sqrt[2],10]; f[n_]:=N[Sqrt[2+f[n-1]],10]; Do[Print[n," ",f[n]],{n,10}] 结果: 1 1.41421356 2 2 1.847759065 3 1.961570561

mathematica数学实验报告

mathematica数学实验报告

姓名 *** 学院 数信学院 班级 ************ 学号 ************ 实验题目 素数 评分 实验目的: 1、掌握素数的判别方法,并会求解某些范围内的素数; 2、通过编程演示某些范围内的素数、深刻了解其求解过程; 3、通过上机来增强自己的动 手能力及实践创新能力。 实验环境: 学校机房,Mathematica4.0软件 实验基本理论和方法: 1、Mathematica 中常用的函数及函数调用的方法; 2、对素数的概念及特征的掌握,利用素数的特征求素数。 实验内容和步骤: 如果一个大于1的自然数只能被1及它本身整除,则该数称为素数。否则被称为合数。从数学史的黎明时期开始,数学家就一直在探索自然数的奥秘。远在古希腊时代,欧几里得就证明了每一个合数都可以分解为若干个素数的乘积,并在不计较素数的排列顺序时这种分解是唯一的,这就是所谓的算术基本定理,算术基本定理表明,素数是构造自然数的基石,正如物质的基本粒子一样。正是由于素数如此重要的地位才使得一代又一代数学家努力地探索素数的规律。首先,一个最基本的问题是 素数到底有多少个? 会不会在某一充分大的自然数以后就没有素数了呢?答案是否定的。欧几里得时代已证明了这一结论。他使用的简洁而优美的论证方法至今仍不失为数学推理的光辉典范。假设素数只有有限个,按从小到大的顺序排列为12,,...,.n p p p 。令12...1n N p p p =+,则N 不被,1,2,...,i p i n =中任何一个整除。因而,N 要么是素数,要么有比n p 大的素因子,这与n p 为最大素数相矛盾。 关于素数的下一个基本问题是:如何求出小于某一给定整数的所有素数? 1. Eratosthenes 筛法求素数 古希腊的另一位学者Eratosthenes 给出了解决这一问题的方法,这一方法被后人称为Eratosthenes 筛法。Eratosthenes 筛法的基本思想是,将自然数列从2开始按顺序排列至某一整数N 。首先,从上述数列中划去所有2的倍数(不包括2)。在剩下的数中,除2外最小的是3。接着,从数列中划去3的倍数(不包括3)。然后在剩下的数中,再划去5的倍数……。这个过程一直进行下去,则最后剩下的数就是不超过N 的所有素数。下面我们就利用筛法通过编程实现求某个数的所有素数。 利用Eratosthenes 筛法,通过计算机编程求100,500,1000,1500的所有素数,运行过程如下:

Mathematica用法简介

Mathematica 软件使用简介 Mathematica 是一个功能强大的常用数学软件, 它是由美国物理学家Stephen Wolfram领导的Wolfram Research公司用C语言开发的数学系统软件。不但可以解决数学中的数值计算问题, 还可以解决符号演算问题, 并且能够方便地绘出各种函数图形。这里介绍的命令可以适用于Windows操作系统的Mathematica2.2以上版本运行。 一、Mathematica 的进入/退出 如果你的计算机已经安装了Mathematica 软件, 系统会在Windows【开始】菜单的【程序】子菜单中加入启动Mathematica命令的图标: 图1.1 启动Mathematica 用鼠标单击它就可以启动Mathematica系统进入Mathematica系统工作界面: 图1.2 Mathematica2.2工作界面图

图1.3 Mathematica4.0工作界面图 Mathematica系统工作界面是基于Windows 环境下的Mathematica 函数或程序运行与结果显示的图形用户接口, 是Mathematica的工作屏幕。界面上方的主菜单和工具条的功能类似于Windows中的Word软件。其中的空白位置称为Notebook用户区, 在这里可以输入文本、实际的Mathematica命令和程序等来达到使用Mathematica的目的。在用户区输入的内容被 Mathematica用一个具有扩展名为“.ma” (Mathematica2.2)或“.mb”(Mathematica4.0)在的文件名来纪录,该文件名是退出Mathematica时保存在用户区输入内容的默认文件名,一般是文件名:“Newnb-1.ma”或“Newnb-1.mb”。 退出Mathematica系统像关闭一个Word文件一样, 只要用鼠标点击Mathematica系统集成界面右上角的关闭按钮即可。关闭前, 屏幕会出现一个对话框, 询问是否保存用户区的内容, 如果单击对话框的“否(N)”按钮, 则关闭Notebook窗口, 退出Mathematica系统; 如果单击对话框的“是(Y)”按钮, 则先提示你用一个具有扩展名为 .ma或.mb的文件名来保存用户区内的内容, 再退出Mathematica系统。 二、 Mathematica 中的数与运算符、变量、函数 1.数与运算符 Mathematica有整数(写法同于常见方式。但输入时,构成整数的各数字之间不能有空格、逗号和其它符号)、实数(带小数点的数和数学中的无理数)、复数(用含有字母I来表示虚数单位的数)和数学常数,常用的有: Pi 表示圆周率π=3.14159… E 表示自然数e =2.71828… Degree表示几何的角度1?或π /180 I 表示虚数单位-1开平方I Infinity表示数学中的无穷大∞ ●算术运算符 +、-、*、/ 和 ^ 表示加、减、乘、除和乘方。 ●关系运算符 符号含义对应的数学符号例子 = = 相等关系 = 如x+3=0应该写为x+3= =0 !=不等关系≠如x+3≠0应该写为x+3!=0 >大于关系 > 如x>4应该写为x>4 >=大于等于关系≥如x ≥ 4应该写为x>= 4 ●逻辑运算符 符号名称含义 !逻辑非当关系表达式A为真时,!A为假; 当关系表达式A为假时,!A为真。 &&逻辑与当关系表达式A和B都为真时,A&&B为真,否则为假。 ||逻辑或当关系表达式A和B都为假时,A||B为假,否则为真。 2.变量 ●变量名的书写规则 以小写字母开头,可以包含任意多的字母数字,但不能包含空格或标点符号。 ●变量的赋值命令 1)变量 = 表达式 作用:把表达式的值赋给左边变量,如 s=x^2-5x+6, t=x^2+y^2-2x*y 2)变量= Input[ ] 作用:通过键盘输入给左边的变量赋值,例如: x = Input[ ] ●清除变量 清除变量的含义是清除前面已经给变量所赋的值,命令形式为

相关主题
文本预览
相关文档 最新文档