当前位置:首页 >> 数学 >>

Mathematica教程-2常用的数学函数


常用的数学函数

Mathematica里定义了许多数学函数,包括三 角函数、指数对数函数、双曲函数和许多特殊 函数 。这些函数都可以用在表达式里。命名规 则一般使用习惯的英文缩写,应该注意的是: 函数名都是由字符串表示,字符之间不能有空 格;函数名字的第一个字母总是大写的,后面 的字母是小写的,但如果名字是由几个段构成 的(如ArcSin),则每段的第一个字母都必须 大写,这些是Mathematica内部函数取名的规则。 再一点应当特别注意:函数的参数是用方括号 括起来的。如Sin[x]

常用函数的命令格式
三角函数 :Sin[x],Cos[x] ,Tan[x] ,Cot[x] 等
反三角函数 :ArcSin[x] ,ArcCos[x] ,ArcTan[x]等 双曲函数与反双曲函数 :Sinh[x] ,Cosh[x] ,Tanh[x], ArcSinh[x],ArcCosh[x],ArcTanh[x] 指数函数E^x(或Exp[x]),指数函数a^x

对数函数ln x用Log[x],以a为底的对数函数用Log[a,x]
平方根函数 :Sqrt[x] ,绝对值函数 :Abs[x]
Max[x1,x1,……]: 取x1,x2,……中的最大值 Min[x1,x2,……]: 取x1,x2,……中的最小值

Sign[x]: 符号函数(x大于0时值为1,小于0时值为-1)



Round[x]: 最接近x的整数 Floor[x]: 不大于x的最大整数 Ceiling[x]: 不小于x的最小整数 Abs[x]: x的绝对值或复数的摸 x+Iy : 复数x+iy;Re[z]: 复数z的实部 Im[z]: 复数z的虚部;Arg[z]: 复数z的幅角 Divisors[n]: 能整除n的所有整数组成的表 Mod[m,n]: m被n除的正余数 Quotient[m,n]: m/n的整数部分 GCD[n1,n2……]: 求n1,n1,……的最大公因数 LCM[n1,n2……]: 求n1,n2,……的最小公倍数

Random[ ]: 0~1之间的随机数 Random[Real,xmax]: 0~xmax之间的随机数 Random[Real,{xmin,xmax}]: xmin~xmax之 间的随机数 N[表达式,k]--求表达式的近似值,k为可选项, 它指定计算结果的有效数字的位数。系统默认 精度为六位有效数字 N! : n的阶乘 N!! : n的双阶乘

自定义函数
在Mathematica中,除使用系统提供 的函数外,也可自定义函数。定义一个不 带附加条件的一元函数的规则是f[x_]:= 或f[x_]=后面紧跟一个以x为变量的表达 式,其中x_称为形式参数。如果需要给出 附加条件,可在表达式的后面通过“/;” 与表达式连接,即形式为:f[x_]:=表达 式/;条件。调用自定义函数f[x_]时,只 需用实在参数(变量或数值等)代替其中 的形式参数即可。对于定义的函数我们可 以使用命令Clear[f]清除掉或用Remove[f] 从系统中删除该函数。

函数的立即定义
立即定义函数的语法如下f[x_]=expr函数名为f, 自变量为x,expr是表达式。在执行时会把expr 中的x都换为f的自变量x(不是x_)。函数的自变 量具有局部性,只对所在的函数起作用。函数 执行结束后也就没有了,不会改变其它全局定 义的同名变量的值。例: 定义函数f(x)=x*Sinx+x2, 对定义的函数求函数 值,并绘制它的图形。

多变量函数的定义
也可以定义多个变量的函数,格式为 f[x_,y_,z_,…]=expr 自变量为x,y,z…., 相应的expr中的自变量

会被替换。例如定义函数
? f(x,y)=xy+ycosx

使用条件运算符定义和If命令定义 函数
如果要定义如:

可以使用条件运算符,基本格式为 f[x_]:=expr/;condition 当condition条件满足时才把expr赋给f

当然使用If命令也可以定义上面的函数


将一些相互关联的元素放在一起,使它们成 为一个整体。既可以对整体操作,也可以对 整体中的一个元素单独进行操作。在 Mathematica中这样的数据结构就称作表 (List)。表主要有三个用法:表{a,b,c} 可以表示一个向量;表{{a,b},{c,d}}可表示一 个矩阵。

建表
在表中元素较少时,可以采取直接列表的方式 列出表中的元素,如{1,2,3} In[1]:={1,2,3}

Out[1]={1,2,3}
下面是符号表达式的列表

In[2]:=1+%x+x^% Out[2]={1+2x,1+2x+x2,1+3x+x2}

下面是对列表中的表达式对x求导 In[3]:=D[%,x] Out[3]={2,2+2x,3+2x} In[4]:=%/.x->1 Out[4]={2,4,5}

下面给出x乘i的值的表,i的变化范围为[2,6]
In[1]:=Table[x*i,{i,2,6}] Out[1]={2x,3x,4x,5x,6x} In[2]:=Table[x^2,{4}] Out[2]={x2,x2,x2,x2}

用Range函数生成一个序列数
In[3]:=Range[10] Out[3]={1,2,3,4,5,6,7,8,9,10} 下面这个序列是以步长为2,范围从8到20

In[4]:=Range[8,20,2] Out[4]={8,10,12,14,16,18,20}

如果表中的元素较多时,可以用建表函数进行建表

Table[f,{ i,min,max,step}] :以step为步长给出f的 数值表,i由min变到max,
Table[f,{min,max}] : 给出f的数值表,i由min变到 max 步长为1 Table[f,max] : 给出max个f的表 Table[f,{ i,imin,imax},{j,jmin,jmax},….] : 生成一个 多维表 TableForm[list]: 以表格格式显示一个表 Range[n]: 生成一个{1,2,……..}的列表 Range[n1,n2,d]: 生成{n1,n1+d,n1+d,….,n2} 的列表

表达式
表达式的含义
Mathematica 能处理数学公式,表以及图形等 多多种数据形式。尽管他们从形式上看起来不 一样,但在Mathematica内部都被看成同种类 型,即都把他们当作表达式的形式。 Mathematica 中的表达式是由常量、变量、函 数、命令、运算符和括号等组成,最典型的形 式是f[x,y]

表达式的表示形式

在显示表达式时,由于需要的不同,有时我们需要表达 式的展开形式,有时又需要其因子乘积的形式。在我们 计算过程中可能得到很复杂的表达式,这时我们又需要 对它们进行化简。常用的处理这种情况的函数。

Expand〔expr〕: Factor〔expr〕 : Simplify〔expr〕: 的最少项形式

按幂次升高的顺序展开表达式 以因子乘积的形式表示表达式 进行最佳的代数运算,并给出表达式

Apart[expr]: 将多项式为化为部分分式之和

表达式(x+y)^4(x+y^2) 展开:

还原上面的表达式为因子乘积的形式:

多项式表达式的项数较多,比较复杂,在显示时 显得比较杂乱,而且在计算过程中没有必要知道 全部的内容;或表达式的项很有规律,没有必要 打印全部的表达式的结果, Mathematica 提供了 一些命令,可将它缩短输出或不输出

expr/Short : 显示表达式的一行形式 Short〔expr,n〕: 显示表达式的n行形式,命令后加 一分号“;” 不打印结果

将表达式(1+x)^30展开,并仅显示一行有代表 项的式子:

运算结果的读取---%运算符
“%”称ditto运算符,有重复以前内容的意思。 在计算过程中某次的计算可能要用到上次的计 算结果,或者前几次的计算结果,就可用”%”符, 用法如下:
% %% %%...%(n个) 读取上一个运算结果 读取上上一个运算结果 读取前第n个运算结果

%n或Out[n]

读取第n个运算结果

置换运算符—“/.”
代数式里的变量可以用某表达式替换,生成新的 代数式。也可以把代数式里的所有的变量用数值替 换,得到此代数式的计算结果。替换的格式为: expr/.x->x0:表示将表达式里的变量x用x0代替。

expr/.{x->x0,y->y0,?}:表示将代数式里的 变量 x,y?用x0,y0,?代替。
字符串” /.”由一个除号和一个圆点符号组成 字符串”->”由一个减号和一个大于符号连成

关系表达式与逻辑表达式
关系表达式是最简单的逻辑表达式,我们常 用关系表达式表示一个判别条件。例如: x>0,y=0。关系表达式的一般形式是:表达式 +关系算子+表达式。其中表达式可为数字 表达式、字符表达式或意义更广泛的表达式, 如一个图形表达式等。在我们实际运用中, 这儿的表达式常常是数字表达式或字符表达 式。

关系运算
判断式
A==B A>B A>=B A<B

说明
等于 大于 大于等于 小于

A<=B
A!=B

小于等于
不等于

例如:
In[1]:=x=2;y=9

Out[1]=9;
In[2]:=x>y

Out[2]=false
下面是比较两个表达式的大小 In[3]:=3^2>y+1 Out[3]=True

逻辑运算
? 四种主要逻辑运算:逻辑非、逻辑与、逻辑或、逻 辑异或 !p P&&q 非运算 并运算

P||q Xor[e]

或运算 异或运算

常用的符号
? (term) 圆括号用于组合运算

? f[x] 方括号用于函数
? { } 花括号用于列表 ? [[i]] 双括号用于排序 ? % 代表最后产生的结果 ? %% 倒数第二次的算结果 ? %%%(k) 倒数第k次的计算结果 ? %n 例出行Out[n])的结果

多项式的表示形式
多项式的运算与表达式的运算基本一样, 表达式中的各种输出形式也可用于多项式 的输出。Mathematica提供一组按不同形 式表示代数式的函数。

Expand[ploy] 按幂次展开多项式
ployExpand[ploy] 全部展开多项式

ployExpandAll[ploy] 全部展开多项式ploy
Factor[ploy] 对多项式poly 进行因式分解

FactorTerms[ploy,{x,y,…}] 按变量 x,y,…进行分解
Simplify[poly] 把多项式化为最简形式

FullSimplify[ploy] 把多项式展开并化简
Collect[ploy,x]把多项式poly按x幂展开

Collect[poly,{x,y…}] 把多项式poly按x,y….的幂次展开

对x^8-1 进行分解

展开多项式(1+x)^5

化简(2+x)^4(1+x)^4(3+x)^3

多项式的代数运算

使用Cancel函数可以约去公因式

In[8] := Cancel[(2+3a+a^2)/(1+a)]

Out[8] = 2+a

? 两个多项式相除,总能写成一个多项式和 一个有理式相加Mathematic中提供两个函 数PolynomialQuotient和 PolynomialRemainder分别返商式和余式。

两个多项式相除,总能写成一个多项式和 一个有理式相加

Mathematic中提供两个函数 PolynomialQuotient和 PolynomialRemainder分别返回商式和余 式。

方程及其根的表示
Mathematica把方程看作逻辑语句。在数学 方程式表示为形如“x^2-2x+1=0”的形式,在 Mathematica中用“==”表示逻辑等号,则 方程应表示为“x^2-2x+1==0” 。方程的解 同原方程一样被看作是逻辑语句。例如用 Roots求方程x^2-3x+2的根显示为

用Solve[ ]可得解集形式。

求解一元代数方程
Solve[lhs==rhs,vars]:给出方程的解集

NSolve[lhs==rhs,vars]:直接给出方程的数值解 集
Roots[lhs==rhs,vars]:求表达式的根 FindRoot[lhs==rhs,{x,x0}] 以x=x0为初始值, 求方程的解

当方程中有一些复杂的函数时, Solve[ ] 可能无 法直接给出解来。此时可用FindRoot[ ]来求解, 例如:求3Cosx=logx的解

如果方程有几个不同的解,当给定不同的 初始值时,会给出不同的解。如上例若求 x=10附近的,则

因此确定解的起始位置是比较关键,一种 常用的方法是,先绘制图形观察后再解

如上例通过图形可断定在x=5附近有另一根

求方程组的根
使用Solve和NSolve,FindRoot也可求方 程组的解 求解

求方程的全解
求ax^2+bx+c=0的根. 我们用Solve函数解 的结果是:

这不大合理,因为对不同的a,b,c方程的解 有不同的情况,而上面只是给出部分解。 如果要解决这个问题可用Reduce命令, 它可根据,a,b,c的取值给出全部值。

解条件方程
在作方程计算时,可以把一个方程看作你 要处理的主要方程,而把其他方程作为必 须满足的辅助条件,你将会发现这样处理 很方便。譬如在求解像 这样的 方程时,通常我们采用 的代换方法使 求解方程得到简化。在Mahematica中, 我们通常是首先命名辅助条件组,然后用 名字把辅助条件包含在你要用函数Solve[] 求解的方程组中。 用Sc定义方程: 条件下,求解方程。 ,在这种

求和与求积
在Mathematica中,数学上的和式符号 用Sum表示,连乘 用Product表示。

Sum[f,{i,imin,imax}] 求和
Sum[f,{i,imin,imax,di}] 以步长di增加i求和 Sum[f,{i,imin,imax},{j,jmin,jmax}] 嵌套求和 Product[f,{i,imain,imax}] 求积

Product [f,{i,imin,imax,di}] 以步长di增加i求积
Product[f,{I,imin,imax},{j,jmin,jmax}] 嵌套求积

Nsum[f,{i,imin,Infinity}] 求

近似值

NProduct[f,{i,imin,Infinity}] 求

近似值


相关文章:
Mathematica函数大全--运算符及特殊符号
Mathematica函数大全--运算符及特殊符号_数学_自然...{x1,x2...}] 按复数实部虚部展开 FunctionExpand...[expr] 化简并给出最常见的表达式 SeriesCoefficient...
Mathematica函数大全
Mathematica函数大全_数学_自然科学_专业资料。...不显示结果 W,f Sg#V&o Line1,line2 顺次执行...[miu,sigma]]等 常用的分布如 BetaDistribution,...
Mathematica函数及使用方法
Mathematica函数及使用方法_数学_自然科学_专业资料。...{x1,x2...}] 按复数实部虚部展开 FunctionExpand...[expr] 化简并给出最常见的表达式 SeriesCoefficient...
Mathematica7.0简易教程
Mathematica7.0简易教程_数学_自然科学_专业资料。...第二点要注意的是,在 Mathematica 中,函数名和...数值类型 在 Mathematic 中,基本的数值类型有四种:...
Mathematica运算符特殊符号函数大全
Mathematica运算符特殊符号函数大全_数学_自然科学_专业...{x1,x2...}] 按复数实部虚部展开 FunctionExpand...[expr] 化简并给出最常见的表达式 SeriesCoefficient...
Mathematica语句基本命令
Mathematica常用内部数学函数 指数函数 Exp[x]以 e 为底数 对数函数 ...[2], f[3],?, f[nmax]} Table[f[n],{n, nmin, nmax}]n 从 ...
Mathematica入门教程
Mathematica 入门教程 Mathematica基本语法特征 如果...[二维函数表达式,{变量 1,下限,上限}, {变量 2,...四.数学函数的用法 Mathematica 系统内核提供了丰富的...
第十章 Mathematica 数学实验
本章将通过与本书配套的 22 个精编的数学实验问题,介绍 Mathematica 的各种基本...二 实验目的能熟练地使用 Mathematica 进行四则运算;并能熟练地对初等函数进行...
Mathematica函数(书)
Mathematica函数(书)_数学_自然科学_专业资料。Mathematica...2 数值计算选项 Compiled 是各种数值函数和画图函数...(1+w)) w ew 椭圆积分和椭圆函数常见椭圆积分和...
数学软件Mathematica的应用
Mathematica 的界面操作非常友好; ★ Mathematica 是数学建模常用的数学软件之...{t,t0,t 1},选项] 数据作图函数 ListPlot[{x1,y1},{x2,y2},…] ...
更多相关标签: