[数学软件]Mathematica入门

曾巧文 发布于:2012-4-26 13:35 分类:学习笔记 标签: 软件分享

 

Mathematica入门

 

一、引 言

Mathematica是美国Wolfram公司开发的一个功能强大的数学软件系统,它主要包括:数值计

算、符号计算、图形功能和程序设计. 本指导书力图在不大的篇幅中给读者提供该系统的一个简

要的介绍. 指导书是按Mathematica 4.0版本编写的, 但是也适用于Mathematica的任何其它图形

界面的版本.

Mathematica在数值计算、符号运算和图形表示等方面都是强有力的工具,并且其命令句法惊

人地一致, 这个特性使得Mathematica很容易使用.不必担心你还不太熟悉计算机.本入门将带你

迅速了解Mathematica的基本使用过程, 但在下面的介绍中,我们假定读者已经知道如何安装及启动Mathematica. 此外,始终要牢记的几点是:

  • Mathematica是一个敏感的软件. 所有的Mathematica函数都以大写字母开头;
  • 圆括号( ),花括号{ },方括号[ ]都有特殊用途, 应特别注意;
  • 句号".",分号";",逗号","感叹号"!"等都有特殊用途, 应特别注意;
  • 用主键盘区的组合键Shfit+Enter或数字键盘中的Enter键执行命令.

 

 

二、一般介绍

1. 输入与输出

例1 计算 1+1:在打开的命令窗口中输入

1+2+3

并按组合键Shfit+Enter执行上述命令,则屏幕上将显示:

In[1] : =1+2+3

Out[1] =6

这里In[1] : = 表示第一个输入,Out[1]= 表示第一个输出,即计算结果.

 

2. 数学常数

Pi 表示圆周率; E表示无理数e; I 表示虚数单位i;

Degree表示/180; Infinity表示无穷大.

:Pi,Degree,Infinity的第一个字母必须大写,其后面的字母必须小写.

 

3. 算术运算

Mathematica中用"+"、"-"、"*"、"/" 和"^"分别表示算术运算中的加、减、乘、除和

乘方.

例2 计算 .

输入 100^(1/4)*(1/9)^(-1/2)+8^(-1/3)*(4/9)^(1/2)*Pi

则输出

这是准确值. 如果要求近似值,再输入

N[%]

则输出 10.543

这里%表示上一次输出的结果,命令N[%]表示对上一次的结果取近似值. 还用 %% 表示上

上次输出的结果,用 %6表示Out[6]的输出结果.

:关于乘号*,Mathematica常用空格来代替. 例如,x y z 则表示x*y*z,而xyz 表示字符

串,Mathematica将它理解为一个变量名. 常数与字符之间的乘号或空格可以省略.

 

4. 代数运算

例3 分解因式

输入 Factor[x^2+3x+2]

输出

例4 展开因式

输入 Expand[(1+x)(2+x)]

输出

例5 通分

输入 Together[1/(x+3)+2/(x+2)]

输出

例6 将表达式 展开成部分分式

输入 Apart[(8+3x)/((2+x)(3+x))]

输出

例7 化简表达式

输入 Simplify[(1+x)(2+x)+(1+x)(3+x)]

输出

 

 

三、函数

1. 内部函数

Mathematica系统内部定义了许多函数,并且常用英文全名作为函数名,所有函数名的第一个

字母都必须大写,后面的字母必须小写. 当函数名是由两个单词组成时,每个单词的第一个字母都

必须大写,其余的字母必须小写. Mathematica函数(命令)的基本格式为

函数名[表达式,选项]

下面列举了一些常用函数:

算术平方根     Sqrt[x]

指数函数        Exp[x]

对数函数     Log[a,x]

对数函数        Log[x]

三角函数            Sin[x], Cos[x], Tan[x], Cot[x], Sec[x], Csc[x]

反三角函数        ArcSin[x], ArcCos[x], ArcTan[x],

ArcCot[x], AsrcSec[x], ArcCsc[x]

双曲函数            Sinh[x], Cosh[x], Tanh[x],

反双曲函数        ArcSinh[x], ArcCosh[x], ArcTanh[x]

四舍五入函数     Round[x] (*取最接近x的整数*)

取整函数         Floor[x] (*取不超过x的最大整数*)

取模          Mod[m,n] (*求m/n的模*)

取绝对值函数        Abs[x]

n的阶乘            n!

符号函数            Sign[x]

取近似值            N[x,n] (*取x的有n位有效数字的近似值,当n缺省时,n的默认值

为6*)

 

例8的有6位和20位有效数字的近似值.

输入 N[Pi] 输出 3.14159

输入 N[Pi, 20] 输出 3.1415926535897932285

注:第一个输入语句也常用另一种形式:

输入 Pi//N 输出 3.14159

 

例9 计算函数值

(1) 输入 Sin[Pi/3] 输出

(2) 输入 ArcSin[.45] 输出 0.466765

(3) 输入 Round[-1.52] 输出 -2

例10 计算表达式 的值

输入 1/(1+Log[2])*Sin[Pi/6]-Exp[-2]/(2+2^(2/3))*ArcTan[.6]

输出 0.274921

 

2. 自定义函数

在Mathematica系统内,由字母开头的字母数字串都可用作变量名,但要注意其中不能包含空

格或标点符号.

变量的赋值有两种方式. 立即赋值运算符是"=",延迟赋值运算符是": =". 定义函数使用

的符号是延迟赋值运算符": =".

例11 定义函数 ,并计算,,.

输入

Clear[f,x]; (*清除对变量原先的赋值*)

f[x_]:=x^3+2*x^2+1; (*定义函数的表达式*)

f[2] (*求的值*)

f[x]/.{x->4} (*求的值,另一种方法*)

x=6; (*给变量立即赋值6*)

f[x] (*求的值,又一种方法*)

输出

17

97

289

:本例1、2、5行的结尾有";",它表示这些语句的输出结果不在屏幕上显示.

 

四、解方程

在Mathematica系统内,方程中的等号用符号"=="表示. 最基本的求解方程的命令为

Solve[eqns, vars]

它表示对系数按常规约定求出方程(组)的全部解,其中eqns表示方程(组),vars表示所求未知变量.

例12 解方程

输入 Solve[x^2+3x+2==0, x]

输出

例13 解方程组

输入 Solve[{a x + b y == 0,c x + d y ==1}, {x,y}]

输出

例14 解无理方程

输入 Solve[Sqrt[x-1]+ Sqrt[x+1] == a, x]

输出

很多方程是根本不能求出准确解的,此时应转而求其近似解. 求方程的近似解的方法有两种,

一种是在方程组的系数中使用小数,这样所求的解即为方程的近似解;另一种是利用下列专门用于

求方程(组)数值解的命令:

NSolve[eqns, vars] (*求代数方程(组)的全部数值解*)

FindRoot[eqns, {x, x0}, {y, y0}]

后一个命令表示从点出发找方程(组)的一个近似解,这时常常需要利用图像法先大

致确定所求根的范围,是大致在什么点的附近.

例15 求方程的近似解

输入 NSolve[x^3-1== 0, x]

输出 {{-0.5-0.866025ii},{-0.5+0.866025ii},{1.}}

输入 FindRoot[x^3-1==0,{x, .5}]

输出 {1.}

 

下面再介绍一个很有用的命令:

Eliminate[eqns, elims] (*从一组等式中消去变量(组)elims*)

例16从方程组 消去未知数yz.

输入

Eliminate[{x^2+y^2+z^2 ==1,

x^2+(y-1)^2 + (z-1)^2 ==1, x + y== 1},{y, z}]

输出

:上面这个输入语句为多行语句,它可以像上面例子中那样在行尾处有逗号的地方将行与行

隔开, 来迫使Mathematica从前一行继续到下一行在执行该语句. 有时候多行语句的意义不太明

确,通常发生在其中有一行本身就是可执行的语句的情形,此时可在该行尾放一个继续的记号"\",

来迫使Mathematica继续到下一行再执行该语句.

 

 

五、保存与退出

Mathematica 很容易保存Notebook中显示的内容,打开位于窗口第一行的File菜单,点击Save

后得到保存文件时的对话框,按要求操作后即可把所要的内容存为 *.nb文件. 如果只想保存全部

输入的命令,而不想保存全部输出结果,则可以打开下拉式菜单Kernel,选中Delete All Output,然后

再执行保存命令. 而退出Mathematica与退出Word的操作是一样的.

 

 

六、查询与帮助

查询某个函数(命令)的基本功能,键入"?函数名",想要了解更多一些,键入"??函数名",例如,

输入

?Plot

则输出

Plot[f,{x,xmin,xmax}] generates a plot of f as a function

of x from xmin to xmax. Plot[{f1,f2,…},{x,xmin,xmax}] plots several functions fi

它告诉了我们关于绘图命令"Plot"的基本使用方法.

例17 在区间上作出抛物线的图形.

输入 Plot[x^2,{x,-1,1}]

则输出

例18 在区间上作出的图形.

输入 Plot[{Sin[x],Cos[x]},{x,0,2Pi}]

则输出

如果输入

??Plot

则Mathematica会输出关于这个命令的选项的详细说明,请读者试之.

此外,Mathematica的Help菜单中提供了大量的帮助信息,其中Help菜单中的第一项Help

Browser(帮助游览器)是常用的查询工具,读者若想了解更多的使用信息,则应自己通过Help菜单

去学习.

版权所有:《曾巧文博客-关注互联网IT技术,记录生活点滴》 => 《[数学软件]Mathematica入门
本文地址://qiaowen.net/post-1181.html
除非注明,文章均为 《曾巧文博客-关注互联网IT技术,记录生活点滴》 原创,欢迎转载!转载请注明本文地址,谢谢。

有 4851 人浏览,获得评论 0 条

发表评论:

Powered by emlog 粤ICP备12040901号

>>本作品采用-知识共享署名-非商业-禁止演绎-协议-进行许可 |站点地图 | | | | 开放分类目录 |