文档库 最新最全的文档下载
当前位置:文档库 › Mathematica函数大全(内置)

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无穷大

-Infinity负无穷大

ComplexInfinity复无穷大

Indeterminate不定式

三、代数计算

Expand[expr]展开表达式

Factor[expr]表达式因式分解

域分解

Factor[poly,Modulus->p] Z

p

Factor[poly,Extension->{a1, a2,… }] 代数数域分解

Factor[poly,GaussianIntegers->True] 复整数域分解

Factor[poly,Extension->Automatic]poly的系数所在数域分解(以下函数都可在各数域内进行)

Simplify[expr]化简表达式

FullSimplify[expr]将特殊函数等也进行化简

PowerExpand[expr]展开所有的幂次形式

ComplexExpand[expr,{x1,x2...}]按复数实部虚部展开

FunctionExpand[expr]化简expr中的特殊函数

Collect[expr, x]合并同次项

Collect[expr, {x1,x2,...}]合并x1,x2,...的同次项

Together[expr]通分

Apart[expr]部分分式展开

Apart[expr, var] 对var的部分分式展开

Cancel[expr]约分

ExpandAll[expr]展开表达式

ExpandAll[expr, patt] 展开表达式

FactorTerms[poly]提出共有的数字因子

FactorTerms[poly, x] 提出与x无关的数字因子

FactorTerms[poly, {x1,x2...}]提出与xi无关的数字因子

Coefficient[expr, form]多项式expr中form的系数

Coefficient[expr, form, n]多项式expr中form^n的系数

Exponent[expr, form]表达式expr中form的最高指数

Numerator[expr] 表达式expr的分子

Denominator[expr]表达式expr的分母

ExpandNumerator[expr]展开expr的分子部分ExpandDenominator[expr]展开expr的分母部分ExpandDenominator[expr]展开expr的分母部分

TrigExpand[expr]展开表达式中的三角函数

TrigFactor[expr]给出表达式中的三角函数因子

TrigFactorList[expr]给出表达式中的三角函数因子的表TrigReduce[expr]对表达式中的三角函数化简

TrigToExp[expr] 三角到指数的转化

ExpToTrig[expr]指数到三角的转化

RootReduce[expr]

ToRadicals[expr]

四、解方程

Solve[eqns, vars]从方程组eqns中解出vars

Solve[eqns, vars, elims] 从方程组eqns中削去变量elims,解出vars DSolve[eqn, y, x]解微分方程,其中y是x的函数

DSolve[{eqn1,eqn2,...},{y1,y2...},x]解微分方程组,其中yi是x的函数DSolve[eqn, y, {x1,x2...}]解偏微分方程

RSolve[eqn, a[n], n] 解函数方程

例1、RSolve u x 2x1u x1

z

u x2,

{{u[x] BesselJ[x,z] C[1]+BesselY[x,z] C[2]}}

2、RSolve[{y[x+2]==ay[x+1]+y[x],y[0]==0,y[1]==1},y,x] RSolve[{eqn1, eqn2, … }, {a1[n], a2[n], …}, n]

RSolve[eqn, a[n1, n2, …], {n1, n2, …}]

Resolve[expr]

Resolve[expr, dom]

FindInstance[expr, vars]求不定方程的特解

FindInstance[expr, vars, dom]求不定方程的特解(在dom数域内)FindInstance[expr, vars, dom, n]求不定方程的n个特解

Eliminate[eqns, vars] 把方程组eqns中变量vars约去

SolveAlways[eqns, vars] 给出等式成立的所有参数满足的条件

Reduce[eqns, vars] 化简并给出所有可能解的条件

Reduce x22y21&&x0&&y0&&x y Integers, LogicalExpand[expr] 用&&和||将逻辑表达式展开

InverseFunction[f] 求函数f的逆函数

Root[f, k] 求多项式函数的第k个根

Roots[lhs==rhs, var] 得到多项式方程的所有根

五、微积分函数

D[f, x]求f[x]的微分?f/?x

D[f, {x, n}]求f[x]的n阶微分n f

D[f,x1,x2..] 求f[x]对x1,x2...偏微分x

1x2...

Dt[f, x]求f[x]的全微分df/dx

Dt[f]求f[x]的全微分df

Dt[f, {x, n}] n阶全微分df^n/dx^n

Dt[f,x1,x2..]对x1,x2..的偏微分d d x

1d d x2...

Integrate[f, x] f[x]对x在的不定积分

Integrate[f, {x, xmin, xmax}] f[x]对x在区间(xmin,xmax)的定积分

Integrate[f, {x, xmin, xmax}, {y, ymin, ymax}] f[x,y]的二重积分

Limit[expr, x->x0] x趋近于x0时expr的极限

Limit[expr, x->x0, Direction -> 1] x趋近于x0+时expr的极限

Limit[expr, x->x0, Direction ->-1] x趋近于x0-时expr的极限

Residue[expr, {x,x0}] expr在x0处的留数

Series[f, {x, x0, n}] 给出f[x]在x0处的幂级数展开

Series[f, {x, x0,nx}, {y, y0, ny}]先对y幂级数展开,再对x

Normal[expr]化简并给出最常见的表达式(可截断Series的误差O[x])SeriesCoefficient[series, n]给出级数中第n次项的系数

SeriesCoefficient[series, {n1,n2...}]

' 或Derivative[n1,n2...][f]一阶导数

InverseSeries[s, x] 给出逆函数的级数

ComposeSeries[serie1,serie2...] 给出两个基数的组合

SeriesData[x,x0,{a0,a1,..},nmin,nmax,den]表示一个在x0处x的幂级数,其中aii 为系数

O[x]^n n阶小量x^n

O[x, x0]^n n阶小量(x-x0)^n

六、多项式函数

Variables[poly]给出多项式poly中独立变量的列表

CoefficientList[poly, var]给出多项式poly中变量var的系数

CoefficientList[poly, {var1,var2...}]给出多项式poly中变量var(i)的系数列? PolynomialMod[poly, m] poly中各系数mod m同余后得到的多项式,m可为整式

PolynomialQuotient[p, q, x]以x为自变量的两个多项式之商式p/q PolynomialRemainder[p, q, x] 以x为自变量的两个多项式之余式PolynomialGCD[poly1,poly2,...] poly(i)的最大公因式

PolynomialLCM[poly1,poly2,...] poly(i)的最小公倍式

PolynomialReduce[poly, {poly1,poly2,...},{x1,x2...}]得到一个表{{a1,a2,...},b}其中Sum[ai*polyi]+b=poly

Resultant[poly1,poly2,var]约去poly1,poly2中的var

Factor[poly]因式分解(在整式范围内)

FactorTerms[poly] 提出poly中的数字公因子

FactorTerms[poly, {x1,x2...}]提出poly中与xi无关项的数字公因子

FactorList[poly]给出poly各个因子及其指数{{poly1,exp1},{...}...} FactorSquareFreeList[poly]同上

FactorTermsList[poly,{x1,x2...}]给出各个因式列表,第一项是数字公因子,第二项是与xi无关的因式,其后是与xi有关的因式按升幂的排排?

Cyclotomic[n, x]C n x

x e2i k(割圆多项式,即单位根的极小

k

多项式)

Decompose[poly, x]迭代分解,给出{p1,p2,...},其中p1(p2(...))=poly InterpolatingPolynomial[data, var]在数据data上的插值多项式data可以写为{f1,f2..}相当于{{x1=1,y1=f1}..} data可以写为{{x1,f1,df11,df12,..},{x2,f2,df21..} 可以指定数据点上的n阶导数值RootSum[f, form]得到f[x]=0的所有根,并求得Sum[form[xi]]

七、随机函数

Random[type,range]产生type类型且在range范围内的均匀分布随机数,type可以为Integer,Real,Complex,不写默认为Real ,range为{min,max},不写默认为{0,1} Random[] 0~1上的随机实数

SeedRandom[n] 以n为seed产生伪随机数如果采用了<在 2.0版本为<<"D:\\Math\\PACKAGES\\STATISTI\\Continuo.m"

Random[distribution]可以产生各种分布如

Random[BetaDistribution[alpha, beta]]

stribution[alpha, beta]}

Random[NormalDistribution[miu,sigma]]等

常用的分布如

BetaDistribution,CauchyDistribution,ChiDistribution, NoncentralChiSquareDistribution,ExponentialDistribution,

ExtremeValueDistribution,NoncentralFRatioDistribution,

GammaDistribution,HalfNormalDistribution, LaplaceDistribution, LogNormalDistribution,LogisticDistribution,

RayleighDistribution,NoncentralStudentTDistribution,

UniformDistribution, WeibullDistribution

八、数值函数

N[expr] 表达式的机器精度近似值

N[expr, n]表达式的n位近似值,n为任意正整数

NSolve[lhs==rhs, var]求方程数值解

NSolve[eqn, var, n] 求方程数值解,结果精度到n位

NDSolve[eqns, y, {x, xmin, xmax}]微分方程数值解

NDSolve[eqns, {y1,y2,...}, {x, xmin, xmax}]

FindRoot[lhs==rhs, {x,x0}]以x0为初值,寻找方程数值解

精确到100位有效数字FindRoot x52,x,1,WorkingPrecision

FindRoot[lhs==rhs, {x, xstart, xmin, xmax}]

NSum[f, {i,imin,imax,di}] 数值求和,di为步长

NSum[f, {i,imin,imax,di}, {j,..},..] 多维函数求和

NProduct[f, {i, imin, imax, di}]函数求积

NIntegrate[f, {x, xmin, xmax}] 函数数值积分

优化函数:

FindMinimum[f, {x,x0}]以x0为初值,寻找函数最小值

FindMinimum[f, {x, xstart, xmin, xmax}]

LinearProgramming[c,m,b]解线性组合c.x在m.x>=b&&x>=0约束下的最小值,x,b,c为向量,m为矩阵

LatticeReduce[{v1,v2...}]向量组vi的极小无关组

数据处理:

Fit[data,funs,vars]用指定函数组对数据进行最小二乘拟和

data可以为{{x1,y1,..f1},{x2,y2,..f2}..}多维的情况

emp: Fit[{10.22,12,3.2,9.9}, {1, x, x^2,Sin[x]}, x]

Interpolation[data]对数据进行差值,

data同上,另外还可以为{{x1,{f1,df11,df12}},{x2,{f2,.}..}指定各阶导数InterpolationOrder默认为3次,可修改

ListInterpolation[array]对离散数据插值,array可为n维

ListInterpolation[array,{{xmin,xmax},{ymin,ymax},..}] FunctionInterpolation[expr,{x,xmin,xmax}, {y,ymin,ymax},..]以对应expr[xi,yi]的为数据进行插值

Fourier[list] 对复数数据进行付氏变换

InverseFourier[list]对复数数据进行付氏逆变换

Min[{x1,x2...},{y1,y2,...}]得到每个表中的最小值

Max[{x1,x2...},{y1,y2,...}]得到每个表中的最大值

Select[list, crit] 将表中使得crit为True的元素选择出来

Count[list, pattern] 将表中匹配模式pattern的元素的个数

Sort[list] 将表中元素按升序排列

Sort[list,p]将表中元素按p[e1,e2]为True的顺序比较list 的任两个元素e1,e2,实际上Sort[list]中默认p=Greater

集合论:

Union[list1,list2..] 表listi的并集并排序

Intersection[list1,list2..]表listi的交集并排序

Complement[listall,list1,list2...]从全集listall中对listi的差集

九、虚数函数

Re[expr]复数表达式的实部

Im[expr] 复数表达式的虚部

Abs[expr] 复数表达式的模

Arg[expr]复数表达式的辐角

Conjugate[expr] 复数表达式的共轭

十、数的头及模式及其他操作

Integer _Integer整数

Real _Real实数

Complex _Complex复数

Rational_Rational 有理数

(*注:模式用在函数参数传递中,如MyFun[Para1_Integer,Para2_Real]

规定传入参数的类型,另外也可用来判断If[Head[a]==Real,...]*) IntegerDigits[n,b,len]数字n以b近制的前len个码元

RealDigits[x,b,len]类上

FromDigits[list] IntegerDigits的反函数

Rationalize[x,dx] 把实数x有理化成有理数,误差小于dx

Chop[expr, delta]将expr中小于delta的部分去掉,dx默认为10^-10 Accuracy[x]给出x小数部分位数,对于Pi,E等为无限大

Precision[x]给出x有效数字位数,对于Pi,E等为无限大

SetAccuracy[expr, n] 设置expr显示时的小数部分位数

SetPrecision[expr, n] 设置expr显示时的有效数字位数

十一、区间函数

Interval[{min, max}] 区间[min, max](* Solve[3 x+2==Interval[{-2,5}],xx]*) IntervalMemberQ[interval, x] x在区间内吗?

IntervalMemberQ[interval1,interval2]区间2在区间1内吗?IntervalUnion[intv1,intv2...] 区间的并

IntervalIntersection[intv1,intv2...]区间的交

十二、矩阵操作

a.b.c或Dot[a, b, c]矩阵、向量、张量的点积

Inverse[m] 矩阵的逆

Transpose[list]矩阵的转置

Transpose[list,{n1,n2..}]将矩阵list 第k行与第nk列交换

Det[m]矩阵的行列式

Eigenvalues[m]特征值

Eigenvectors[m]特征向量

Eigensystem[m]特征系统,返回{eigvalues,eigvectors}

LinearSolve[m, b] 解线性方程组m.x==b

NullSpace[m] 矩阵m的零空间,即m.NullSpace[m]==零向量

RowReduce[m] m化简为阶梯矩阵

Minors[m, k] m的所有k*k阶子矩阵的行列式的值(伴随阵,好像是) MatrixPower[mat, n] 阵mat自乘n次

MatrixExp[mat]e mat

Outer[f,list1,list2..] listi中各个元之间相互组合,并作为f的参数的到的矩矩? Outer[Times,list1,list2]给出矩阵的外积

SingularValues[m] m的奇异值,结果为{u,w,v},

m=Conjugate[Transpose[u]].DiagonalMatrix[w].v

PseudoInverse[m] m的广义逆

QRDecomposition[m] QR分解

SchurDecomposition[m] Schur分解

LUDecomposition[m] LU分解

Norm[z]=Abs[z];Norm[v]=Sqrt[v.Conjugate[v]];向量的模(内积开平方)Norm[v, p]=Total[Abs[v^p]]^(1/p)。

Norm[{a,b,c}]=a2b

Norm[{a,b,c},p]=a p b p

十三、表函数

(*“表”,我认为是Mathematica中最灵活的一种数据类型*)

(*实际上表就是表达式,表达式也就是表,所以下面list==expr *)

(*一个表中元素的位置可以用于一个表来表示*)

表的生成

{e1,e2,...}一个表,元素可以为任意表达式,无穷嵌套

Table[expr,{imax}] 生成一个表,共imax个元素

Table[expr,{i, imax}] 生成一个表,共imax个元素expr[i]

Table[expr,{i,imin,imax},{j,jmin,jmax},..] 多维表

Range[imax] 简单数表{1,2,..,imax}

Range[imin, imax, di]以di为步长的数表

Array[f, n] 一维表,元素为f[i] (i从1到n)

Array[f,{n1,n2..}] 多维表,元素为f[i,j..] (各自从1到ni)

IdentityMatrix[n] n阶单位阵

DiagonalMatrix[list] 对角阵

元素操作

Part[expr, i]或expr[[i]]第i个元

expr[[-i]] 倒数第i个元

expr[[i,j,..]] 多维表的元

expr[[{i1,i2,..}] 返回由第i(n)的元素组成的子表

First[expr]第一个元

Last[expr]最后一个元

Head[expr]函数头,等于expr[[0]]

Extract[expr, list]取出由表list制定位置上expr的元素值

Take[list, n]取出表list前n个元组成的表

Take[list,{m,n}] 取出表list从m到n的元素组成的表

Drop[list, n]去掉表list前n个元剩下的表,其他参数同上

Rest[expr] 去掉表list第一个元剩下的表

Select[list, crit]把crit作用到每一个list的元上,为True的所有元组成的表表的属性

Length[expr] expr第一层元素的个数

Dimensions[expr] 表的维数返回{n1,n2..},expr为一个n1*n2...的阵Depth[expr] expr最大深度

Level[expr,n]给出expr中第n层子表达式的列表

Count[list, pattern]满足模式的list中元的个数

MemberQ[list, form] list中是否有匹配form的元

FreeQ[expr, form] MemberQ的反函数

Position[expr, pattern] 表中匹配模式pattern的元素的位置列表Cases[{e1,e2...},pattern]匹配模式pattern的所有元素ei的表

表的操作

Append[expr, elem] 返回在表expr的最后追加elem元后的表Prepend[expr, elem] 返回在表expr的最前添加elem元后的表Insert[list, elem, n]在第n元前插入elem

Insert[expr,elem,{i,j,..}]在元素expr[[{i,j,..}]]前插入elem

Delete[expr, {i, j,..}]删除元素expr[[{i,j,..}]]后剩下的表DeleteCases[expr,pattern]删除匹配pattern的所有元后剩下的表ReplacePart[expr,new,n]将expr的第n元替换为new

Sort[list]返回list按顺序排列的表

Reverse[expr] 把表expr倒过来

RotateLeft[expr, n]把表expr循环左移n次

RotateRight[expr, n]把表expr循环右移n次

Partition[list, n]把list按每n各元为一个子表分割后再组成的大表Flatten[list] 抹平所有子表后得到的一维大表

Flatten[list,n]抹平到第n层

Split[list] 把相同的元组成一个子表,再合成的大表

FlattenAt[list, n]把list[[n]]处的子表抹平

FlattenAt[list, n]把list[[n]]处的子表抹平

Permutations[list] 由list的元素组成的所有全排列的列表

Order[expr1,expr2] 如果expr1在expr2之前返回1,如果expr1在expr2之后返回-1,如果expr1与expr2全等返回0

Signature[list]把list通过两两交换得到标准顺序所需的交换次数(排列数,逆序数)

以上函数均为仅返回所需表而不改变原表

AppendTo[list,elem]相当于list=Append[list,elem];

PrependTo[list,elem] 相当于list=Prepend[list,elem];

十四、绘图函数

二维作图

Plot[f,{x,xmin,xmax}] 一维函数f[x]在区间[xmin,xmax]上的函数曲?

Plot[{f1,f2..},{x,xmin,xmax}]在一张图上画几条曲线

ListPlot[{y1,y2,..}]绘出由离散点对(n,yn)组成的图

ListPlot[{{x1,y1},{x2,y2},..}] 绘出由离散点对(xn,yn)组成的图

ParametricPlot[{fx,fy},{t,tmin,tmax}]由参数方程在参数变化范围内的曲线ParametricPlot[{{fx,fy},{gx,gy},...},{t,tmin,tmax}]在一张图上画多条参数曲线选项:

PlotRange->{0,1} 作图显示的值域范围

AspectRatio->1/GoldenRatio生成图形的纵横比

PlotLabel ->label标题文字

Axes ->{False,True}分别制定是否画x,y轴

AxesLabel->{xlabel,ylabel}x,y轴上的说明文字

Ticks->None,Automatic,fun用什么方式画轴的刻度

AxesOrigin ->{x,y}坐标轴原点位置

AxesStyle->{{xstyle}, {ystyle}}设置轴线的线性颜色等属性

Frame ->True,False是否画边框

FrameLabel ->{xmlabel,ymlabel,xplabel,yplabel}

边框四边上的文字

FrameTicks同Ticks 边框上是否画刻度

GridLines同Ticks 图上是否画栅格线

FrameStyle ->{{xmstyle},{ymstyle}设置边框线的线性颜色等属性

ListPlot[data,PlotJoined->True] 把离散点按顺序连线

PlotSytle->{{style1},{style2},..}曲线的线性颜色等属性

PlotPoints->15 曲线取样点,越大越细致

三维作图

Plot3D[f,{x,xmin,xmax}, {y,ymin,ymax}] 二维函数f[x,y]的空间曲面

Plot3D[{f,s}, {x,xmin,xmax}, {y,ymin,ymax}]同上,曲面的染色由s[x,y]值决定ListPlot3D[array] 二维数据阵array的立体高度图

ListPlot3D[array,shades]同上,曲面的染色由shades[数据]值决定ParametricPlot3D[{fx,fy,fz},{t,tmin,tmax}]二元数方程在参数变化范围内的曲线

ParametricPlot3D[{{fx,fy,fz},{gx,gy,gz},...},{t,tmin,tmax}]多条空间参数曲线

选项:

ViewPoint ->{x,y,z}三维视点,默认为{1.3,-2.4,2}

Boxed -> True,False是否画三维长方体边框

BoxRatios->{sx,sy,sz}三轴比例

BoxStyle三维长方体边框线性颜色等属性

Lighting ->True 是否染色

LightSources->{s1,s2..}si为某一个光源si={{dx,dy,dz},color} color为灯色,向dx,dy,dz方向照射

AmbientLight->颜色函数慢散射光的光源

Mesh->True,False是否画曲面上与x,y轴平行的截面的截线

MeshStyle截线线性颜色等属性

MeshRange->{{xmin,xmax}, {ymin,ymax}}网格范围

ClipFill->Automatic,None,color,{bottom,top}指定图形顶部、底部超界后所画的

颜色

Shading ->False,True 是否染色

HiddenSurface->True,False 略去被遮住不显示部分的信息

等高线

ContourPlot[f,{x,xmin,xmax},{y,ymin,ymax}]二维函数f[x,y]在指定区间上的等高线图

ListContourPlot[array] 根据二维数组array数值画等高线

选项:

Contours->n画n条等高线

Contours->{z1,z2,..}在zi处画等高线

ContourShading -> False是否用深浅染色

ContourLines -> True是否画等高线

ContourStyle -> {{style1},{style2},..}等高线线性颜色等属性

FrameTicks同上

密度图

DensityPlot[f,{x,xmin,xmax},{y,ymin,ymax}] 二维函数f[x,y]在指定区间上的密度图

ListDensityPlot[array] 同上

图形显示

Show[graphics,options] 显示一组图形对象,options为选项设置

Show[g1,g2...] 在一个图上叠加显示一组图形对象

GraphicsArray[{g1,g2,...}]在一个图上分块显示一组图形对象SelectionAnimate[notebook,t]把选中的notebook中的图画循环放映

选项:(此处选项适用于全部图形函数)

Background->颜色函数指定绘图的背景颜色

RotateLabel -> True竖着写文字

TextStyle此后输出文字的字体,颜色大小等

ColorFunction->Hue等把其作用于某点的函数值上决定某点的颜色RenderAll->False是否对遮挡部分也染色

MaxBend曲线、曲面最大弯曲度

十四、绘图函数(续)

图元函数

Graphics[prim, options] prim为下面各种函数组成的表,表示一个二维图形对象Graphics3D[prim, options] prim为下面各种函数组成的表,表示一个三维图形对象

SurfaceGraphics[array, shades]表示一个由array和shade决定的曲面对象ContourGraphics[array]表示一个由array决定的等高线图对象DensityGraphics[array]表示一个由array决定的密度图对象

以上定义图形对象,可以进行对变量赋值,合并显示等操作,也可以存盘

Point[p] p={x,y}或{x,y,z},在指定位置画点

Line[{p1,p2,..}]经由pi点连线

Rectangle[{xmin, ymin}, {xmax, ymax}] 画矩形

Cuboid[{xmin,ymin,zmin},{xmax,ymax,zmax}]由对角线指定的长方体

Polygon[{p1,p2,..}]封闭多边形

Circle[{x,y},r]画圆

Circle[{x,y},{rx,ry}] 画椭圆,rx,ry为半长短轴

Circle[{x,y},r,{a1,a2}]从角度a1~a2的圆弧

Disk[{x, y}, r] 填充的圆、椭圆、圆弧等,参数同上

Raster[array,ColorFunction->f] 颜色栅格

Text[expr,coords]在坐标coords上输出表达式

PostScript["string"] 直接用PostScript图元语言写

Scaled[{x,y,..}]返回点的坐标,且均大于0小于1

颜色函数(指定其后绘图的颜色)

GrayLevel[level]灰度level为0~1间的实数

RGBColor[red, green, blue] RGB颜色,均为0~1间的实数

Hue[h, s, b] 亮度,饱和度等,均为0~1间的实数

CMYKColor[cyan, magenta, yellow, black] CMYK颜色

其他函数(指定其后绘图的方式)

Thickness[r]设置线宽为r

PointSize[d]设置绘点的大小

Dashing[{r1,r2,..}] 虚线一个单元的间隔长度

ImageSize->{x, y}显示图形大小(像素为单位)

ImageResolution->r图形解析度r个dpi 小(像素为单位)

ImageResolution->r 图形解析度r个dpi

ImageMargins->{{left,right},{bottom,top}}四边的空白

ImageRotated->False是否旋转90度显示

十五、流程控制

分支

If[condition, t, f]如果condition为True,执行t段,否则f段

If[condition, t, f, u] 同上,即非True又非False,则执行u段

Which[test1,block1,test2,block2..]执行第一为True的testi对应的blocki Switch[expr,form1,block1,form2,block2..] 执行第一个expr所匹配的formi所对应的blocki段

循环

Do[expr,{imax}] 重复执行expr imax次

Do[expr,{i,imin,imax}, {j,jmin,jmax},...]多重循环

While[test, body] 循环执行body直到test为False

For[start,test,incr,body]类似于C语言中的for,注意","与";"的用法相反examp: For[i=1;t =x,i^2<10,i++,t =t+i;Print[t]]

异常控制

Throw[value] 停止计算,把value返回给最近一个Catch处理

Throw[value, tag] 同上,

Catch[expr] 计算expr,遇到Throw返回的值则停止

Catch[expr, form]当Throw[value, tag]中Tag匹配form时停止

其他控制

Return[expr]从函数返回,返回值为expr

Return[ ] 返回值Null

Break[ ]结束最近的一重循环

Continue[ ]停止本次循环,进行下一次循环

Goto[tag] 无条件转向Label[Tag]处

Label[tag] 设置一个断点

Check[expr,failexpr]计算expr,如果有出错信息产生,则返回failexpr的值Check[expr,failexpr,s1::t1,s2::t2,...]当特定信息产生时则返回failexpr CheckAbort[expr,failexpr]当产生abort信息时放回failexpr

Interrupt[ ]中断运行

Abort[ ] 中断运行

TimeConstrained[expr,t] 计算expr,当耗时超过t秒时终止MemoryConstrained[expr,b]计算expr,当耗用内存超过b字节时终止运算交互式控制

Print[expr1,expr2,...] 顺次输出expri的值

examp: Print[ "X=" , X//N , " " ,f[x+1]];

Input[ ] 产生一个输入对话框,返回所输入任意表达式

Input["prompt"] 同上,prompt为对话框的提示

Pause[n] 运行暂停n秒的提示

Pause[n] 运行暂停n秒

十六、函数编程

(*函数编程是Mathematica中很有特色也是最灵活的一部分,它充分体现了*) (*Mathematica的“一切都是表达式”的特点,如果你想使你的Mathematica程*) (*序快于高级语言,建议你把本部分搞通*)

纯函数

Function[body]或body& 一个纯函数,建立了一组对应法则,作用到后面的表达达式?

Function[x, body]单自变量纯函数

Function[{x1,x2,...},body]多自变量纯函数

#,#n 纯函数的第一、第n个自变量

## 纯函数的所有自变量的序列

examp: #1^#2& [2,3] 返回第一个参数的第二个参数次方

映射

Map[f,expr]或f/@expr将f分别作用到expr第一层的每一个元上得到的列表Map[f,expr,level] 将f分别作用到expr第level层的每一个元上

Apply[f,expr]或f@@expr将expr的“头”换为f

Apply[f,expr,level] 将expr第level层的“头”换为f

MapAll[f,expr]或f//@expr把f作用到expr的每一层的每一个元上

MapAt[f,expr,n]把f作用到expr的第n个元上

MapAt[f,expr,{i,j,...}] 把f作用到expr[[{i,j,...}]]元上

MapIndexed[f,expr]类似MapAll,但都附加其映射元素的位置列表

Scan[f, expr]按顺序分别将f作用于expr的每一个元

Scan[f,expr,levelspec]同上,仅作用第level层的元素

复合映射

Nest[f,expr,n]返回n重复合函数f[f[...f[expr]...]]

NestList[f,expr,n] 返回0重到n重复合函数的列表{expr,f[expr],f[f[exprr]]..}

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的强大功能,我们把它的一些资料性的东西整理了一下,希望能对大家有所帮助。 --------------------------------------------------------------------- 一、运算符及特殊符号 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的内部常数 Pi , 或π(从基本输入工具栏输入, 或“Esc”+“p”+“Esc”)圆周率π E (从基本输入工具栏输入, 或“Esc”+“ee”+“Esc”)自然对数的底数e I (从基本输入工具栏输入, 或“Esc”+“ii”+“Esc”)虚数单位i Infinity, 或∞(从基本输入工具栏输入, 或“Esc”+“inf”+“Esc”)无穷大∞ Degree 或°(从基本输入工具栏输入,或“Esc”+“deg”+“Esc”)度 Mathematica的常用内部数学函数 指数函数Exp[x]以e为底数 对数函数Log[x]自然对数,即以e为底数的对数 Log[a,x]以a为底数的x的对数 开方函数Sqrt[x]表示x的算术平方根 绝对值函数Abs[x]表示x的绝对值 三角函数 (自变量的单位为弧度)Sin[x]正弦函数 Cos[x]余弦函数 Tan[x]正切函数 Cot[x]余切函数 Sec[x]正割函数 Csc[x]余割函数 反三角函数ArcSin[x]反正弦函数 ArcCos[x]反余弦函数 ArcTan[x]反正切函数 ArcCot[x]反余切函数 ArcSec[x]反正割函数 ArcCsc[x]反余割函数 双曲函数Sinh[x]双曲正弦函数 Cosh[x]双曲余弦函数 Tanh[x]双曲正切函数 Coth[x]双曲余切函数 Sech[x]双曲正割函数 Csch[x]双曲余割函数 反双曲函数ArcSinh[x]反双曲正弦函数 ArcCosh[x]反双曲余弦函数 ArcTanh[x]反双曲正切函数 ArcCoth[x]反双曲余切函数 ArcSech[x]反双曲正割函数 ArcCsch[x]反双曲余割函数 求角度函数ArcTan[x,y]以坐标原点为顶点,x轴正半轴为始边,从原点到点(x,y)的射线为终边的角,其单位为弧度 数论函数GCD[a,b,c,...]最大公约数函数 LCM[a,b,c,...]最小公倍数函数

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 建立替换规则 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 无穷大 -Infinity 负无穷大 ComplexInfinity 复无穷大 Indeterminate 不定式 三、代数计算 Expand[expr] 展开表达式 Factor[expr] 展开表达式 Simplify[expr] 化简表达式 FullSimplify[expr] 将特殊函数等也进行化简 PowerExpand[expr] 展开所有的幂次形式 ComplexExpand[expr,{x1,x2...}] 按复数实部虚部展开 FunctionExpand[expr] 化简expr中的特殊函数 Collect[expr, x] 合并同次项 Collect[expr, {x1,x2,...}] 合并x1,x2,...的同次项 Together[expr] 通分 Apart[expr] 部分分式展开 Apart[expr, var] 对var的部分分式展开 Cancel[expr] 约分 ExpandAll[expr] 展开表达式 ExpandAll[expr, patt] 展开表达式 FactorTerms[poly] 提出共有的数字因子 FactorTerms[poly, x] 提出与x无关的数字因子 FactorTerms[poly, {x1,x2...}] 提出与xi无关的数字因子 Coefficient[expr, form] 多项式expr中form的系数

Mathematica常用指令

表达式: Plot[4 x - 9, {x, 0, 9}] f[x_] = x^3 Plot[f[x], {x, 0, 9}] a = Plot[4 x - 9, {x, 0, 9}] b = Plot[x^3, {x, 0, 3}] 两图画在一个坐标系 Show[a, b] a = Plot[4 x - 9, {x, 0, 9}] b = Plot[x^3, {x, 0, 3}] 两图画在一起(一排) c = GraphicsArray[{a, b}] Show[c] a = Plot[4 x - 9, {x, 0, 9}] b = Plot[x^3, {x, 0, 3}] c = GraphicsArray[{a}, {b}] 两图画在一起(两排) Show[c] 二维画图: Automatic 默认值 DisplayFunction -> Identity 不出现图 DisplayFunction -> $DisplayFunction 出现图 PlotRange -> All 画出所有点,指定区域点 PlotStyle -> {RGBColor[1, 0, 0]} 图像颜色 PlotStyle -> {Dashing[{0.01}]} 图像成虚线 PlotStyle -> {Thickness[0.01]} 图像粗细 AxesLabel -> {"x/t", "y/cm"} 坐标标签 PlotLabel -> {"s-t"} 图像标签 Frame -> True 图像边框 Axes -> {True, True} 坐标轴的显示 AxesOrigin -> {0, -5} 设置坐标原点 GridLines -> {{-π, -π/2, 0, π/2, π}, {-1,-0.5,0, 0.5, 1}} 给坐标轴分网格 TextStyle -> {FontSize -> 30} 坐标字体大小AspectRatio -> Automatic 坐标比例一致 Ticks -> {{0, 1, 2, 3}, {0,10,20}} 在坐标轴上显示特定点ParametricPlot[x(t),y(t)},{t,0,6,}] 画参数方程

附录B:Mathematica的基本应用b

附录B :Mathematica 的基本应用 1. 什么是Mathematica Mathematica 是美国Wolfram Research 公司开发的通用科学计算软件,主要用途是科学研究与工程技术中的计算,这里介绍的是第6版(2008年更新为第7版)。由于它的功能十分强大,使用非常简便,现在已成为大学师生进行教学和科研的有力工具。它的主要特点有: 1)既可以进行程序运行,又可以进行交互式运行。一句简单的Mathematic 命令常常可以完成普通的c 语言几十甚至几百个语句的工作。例如解方程:x 4 + x 3 + 3x -5 = 0只要运行下面的命令: Solve[x^4+x^3+3 x-5 0,x] 。 2) 既可以进行任意高精度的数值计算,又可以进行各种复杂的符号演算,如函数的微分、积分、幂级数展开、矩阵求逆等等。它使许多以前只能靠纸和笔解决的推理工作可以用计算机处理。例如求不定积分:? x 4 e -2x dx 只要运行下面的命令: Integrate[x^4*Exp[2 x],x]。 3) 既可以进行抽象计算,又可以用图形、动画和声音等形式来具体表现,使人能够直观地把握住研究对象的特性。例如绘制函数图形:y = e -x /2 cos x , x ∈ [0, π],只要运行下面的命令: Plot[Exp[x/2]*Cos[x],{x,0,Pi}]。 4) Mathematica 把各种功能有机地结合在一个集成环境里,可以根据需要做不同的操作,给使用者带来极大的方便。 2. Mathematica 的基本功能 2.1 基本运算及其对象 Mathematica 的基本数值运算有加法、减法、乘法、除法和乘(开)方,分别用运算符“+”、“-”、“*”、“/”和“^”来表示(在不引起误解的情况下,乘号可以省略或用空格代替),例 如2.4*3^2 -(5/(6+3))^(1/3)表示3236534.2)(+÷-?。小括号“(”和“)”作为表示运算优先顺 序的符号,用于组合运算;中括号用于命令和函数,大括号用于集合和列表。 Mathematica 的关系运算符有:>、<、>=、<=、!=、== 等,它们的意义与通常的数学语言相同,要注意“!=”表示不等于,双等号“==”表示等于。而单等号“=”和冒号等号“:=”表示定义或赋值,不表示相等。逻辑运算符主要有:!、&&、||,它们的意义与c 语言中相同,分别是“非”、“与”、“或”。 Mathematica 的基本数值运算对象有常数、变数和函数,包含整数,有理数、实数和复数等数值类型。为了方便,Mathematica 预先用符号表示了一些重要常数,如Pi 表示圆周率π,E 表示自然对数的底e = 2.17828…,I 表示虚单位i ,Infinity 表示无穷大∞等。比如说,E^(2*Pi*I)表示i e π2。 Mathematica 还预先定义了大量数学函数以供调用,调用格式为“函数名[自变量]”,预定义的函数名用大写字母开始的标识符表示,常用的有

Mathematica中的常用函数命令

第8章Mathematica中的常用函数8.1 运算符及特殊符号 Linel 执行Line,不显示结果 Linel,line2 顺次执行Line1,Line2,并显示结果 ?name 关于系统变量name的信息 ??name 关于系统变量name的全部信息 !command 执行Dos命令 N! N的阶乘 !!filename 显示文件内容 <>filename 打开文件写 Expr>>>filename 打开文件从文件末写 ( ) 结合率 [ ] 函数 { } 一个表 <*MathFun*> 在c语言中使用math的函数 (*Note*) 程序的注释 #n 第n今参数 ## 所有参数 Rule& 把rule作用于后面的式子 % 前一次的输出 %% 倒数第二次的输出 Var::mote 变量var的注释 “Astring”字符串 Context 上下文 A+b 加 a-b 减 A*b或ab 乘 A/b 除 8.2 系统常量 Pi 3.1415的无限精度数值 E 2.17828的无限精度数值 Catalan 0.915966Catalan常数 EulerGamma 0.5772Euler常数 Khinchin 2.68545Khinchin Glaisher 0.915966Glaisher GoldenRatio 1.61803黄金分割数 Degree π/l80角度弧度换算 I 复数单位 Infinity 无穷大

-Infinity 负无穷大 Complexlnfinity 复无穷大 Indeterminate 不定式 8.3 代数计算 Expand[expr] 展开表达式 Factor[expr] 展开表达式 Simplify[expr] 化简表达式 FullSimplify[expr] 将特殊函数也进行化简PowerExpand[expr] 展开所有的幂次形式ComplexExpand[expr,{x1,x2…}] 按复数实部虚部展开FunctionExpand[expr] 化简表达式中的特殊函数 Collect[expr,x] 合并同次项 Collect[expr,{x1,x2,…}] 合并x1,x2,...的同次项 Together[expr] 通分 Apart[expr] 部分分式展开 Apart[expr,var] 对var的部分分式展开 Cancel[expr] 约分 ExpandAll[expr] 展开表达式 ExpandAll[expr,patt] 展开表达式 FactorTermsrpoly] 提出共有的数字因子 FactorTerms[poly,x] 提出与x无关的数字因子 FactorTerms[poly,(x1,x2…)] 提出与xi无关的数字因子 Coefficient[expr,form] 多项式expr中form的系数 Coefficient[expr,form,n] 多项式expr中form^n的系数 Exponent[expr,form] 表达式expr中form的最高指数 Numerator[expr] 表达式expr的分子 Denominator[expr] 表达式expr的分母 ExpandNumerator[expr] 展开expr的分子部分 8.4 解方程 Solve[eqns,vats] 从方程组eqns中解出Vats Solve[eqns,vats,elims] 从方程组eqns中削去变量elims,解出vats DSolve[eqn,y,x] 解微分方程,其中、y是x的函数 DSolve[{eqnl,eqn2,…},{y1,y2…},] 解微分方程组,其中yi是x的函数DSolve[eqn,y,{x1,x2…}]解偏微分方程 Eliminate[eqns,Vats] 把方程组eqns中变量vars约去SolveAlways[eqns,vars] 给出等式成立的所有参数满足的条件Reduce[eqns,Vats] 化简并给出所有可能解的条件LogicalExpand[expr] 用&&和,,将逻辑表达式展开InverseFunction[f] 求函数f的反函数 Root[f,k] 求多项式函数的第k个根

Mathematical常用功能大全-精简版

Mathematica for Windows 常用用法 一、Mathematica 的主要功能 Mathematica 是美国Wolfram 公司开发的一个功能强大的计算机数学系统,提供了范围广泛的数学计算功能,主要包括三个方面:符号演算、数值计算、图形。例如:多项式的四则运算、展开、因式分解,有理式的各种计算,有理方程、超越方程的解,向量和矩阵的各种计算,求极限、导数、极值、不定积分、定积分、幂级数展开式,求解微分方程,作一元、二元函数的图形等等。 二、Mathematica 的基本知识 1.输入表达式:直接输入一个表达式(包括算式和命令,长表达式用“Enter ”换行)后,按“Shift+Enter ”执行,执行后以“Out[命令序号]= ……”形式输出执行结果,输出的结果可在后续的表达式中使用。 若命令后有分号,则不输出执行结果(图形输出与Print 命令除外)。 “%”表示上一个输出,“%%”表示倒数第2个输出,“%i”表示第i个 命令的输出。 2.运算符:+、-、*、/、^ ,“*”可用空格代替,“^”表示乘方。 如:In[1]:=2^10,输出为“Out[1]= 1024”,其中“In[1]:=”不需要输入。 In[2]:=3+5,Out[2]= 8;In[3]:=%-2,Out[3]= 6; In[4]:=%2+4,Out[4]= 12; In[5]:=1/3-1/4,Out[5]=12 1 ;In[6]:=N[%],Out[6]= 0.0833333; In[7]:=N[%5+12,10],Out[7]= 12.08333333(注意字母的大小写) 3.变量赋值:变量=表达式,“x=.”或Clear[x] 表示清除对x 的赋值。 表达式/.t ->c ,将表达式中的t 全替换成c 。?x ,查x 信息。 4.常用的数学常数:Pi (π)、E(e)、Infinity (∞)、I (1-) 5.常用的数学函数:Abs, Sin, Cos, Tan, Cot, ArcSin, Log (自然对数), Sqrt, Exp 如:In[1]:=Sqrt[2]+1;In[2]:=Sin[2]+ArcSin[1];In[3]:=Exp[2]+% (自变量用[ ]括,区分大小写,首字母大写) 三、常用运算 1.多项式运算:In[1]:= (2+4*x^2)*(1-x)^3 或 In[1]:= t = (2+4*x^2)*(1-x)^3 (将右端表达式赋值给t ); In[2]:=a=t/.x->4 (计算表达式t 当x=4时的值,并赋值给变量a ) In[3]:=a=. (清除变量a ) In[3]:=Expand[t](展开);In[4]:=Factor[%](把上一个结果因式分解) 2.解方程:In[1]:=Solve[x^2+3*x = = 2];In[2]:=N[%]; In[3]:=Solve[a*x-b= = 0, x]; In[4]:=NSolve[{x-2*y= =0,x^2-y= =1},{x,y}](解方程组并得到数值解) 3.自定义函数:In[1]:= f [x_ ]:=x^2+2*x ; In[2]:=f[5]+7; In[3]:=f[a+b] 4.求极限:In[1]:=Limit[Sin[x]/x, x ->0]; In[2]:=Limit[(1+1/n)^n, n->Infinity],Out[2]=E 5.求(偏)导数:In[1]:=D[a*x^2+3, x];In[2]:=D[x^2+y^3-Sin[2*y], y](对y 的偏导数); In[3]:=D[Log[x], {x,2}] (求对x 的二阶导数); In[4]:=D[Sin[x+y]*Exp[z*y^2],x,y] (求对x 、y 的二阶混合偏导数); In[5]:=Simplify[%] (对前一结果化简); In[6]:=D[Sin[x+y]*Exp[z*y^2],{x,2},{y,3}] 6.求不定积分:In[1]:=Integrate[x^2,x];In[2]:=Integrate[1/(x^2+a^2),x] 7.定积分:In[1]:=Integrate[x^2, {x,0,1}];In[2]:=Integrate[x^2,{x,a,b}]; In[3]:=Integrate[x^2+y^2, {x,0,a},{y,0,b}];(求矩形域上的二重积分) In[4]:=Integrate[1, {x,-1,1},{y,-Sqrt[1-x^2],Sqrt[1-x^2]}];Out[4]=Pi (圆面积) 8.幂级数展开:In[1]:=Series[Exp[x],{x,0,4}](在x=0处展开到x 的四次幂) 9.矩阵的输入和输出:In[1]:= a ={{1,2},{3,4}}(定义一个2x2的矩阵a ,按 行写); In[2]:=MatrixForm[a](输出为矩阵形式);In[3]:=Transpose[a](a 的转置); In[4]:=a[[2]](a 的第2行);In[5]:=Tanspose[a][[2]](a 的第2列); In[6]:=Inverse[a](求a 的逆矩阵);In[7]:=Det[a](矩阵的行列式); In[8]:=Eigenvalues[a](求特征值);In[9]:=Eigenvectors[a](求特征向量); In[10]:=RowReduce[a](把a 化为阶梯形,可用于求矩阵的秩、判断线性相关性); In[11]:= b ={{5,6,7},{8,9,10}};In[12]:= a .b (矩阵a 与b 的乘积) 10.解线性方程组: In[1]:= a ={{3,4,5,6},{6,8,10,12},{4,5,6,7},{5,6,7,8}};(a 的秩为2) In[2]:= b ={1,2,3,5}(列向量);(增广矩阵的秩也为2) In[3]:=LinearSolve[a,b](求线性方程组ax=b 的一个特解); In[4]:=NullSpace[a](求线性方程组ax=0的一个基础解系); In[5]:= x =k1%4[[1]]+k2%4[[2]]+%3(ax=b 的全部解,k1、k2为任意常数) 11.求和:In[1]:=NSum[Sin[n]/n^3,{n,1,Infinity}](求级数∑ ∞=13sin n n n 的和) 12.求极小值:In[1]:=FindMinimum[Sin[x]*Cos[x],{x,0.5}](求函数在0.5附 近的极小值); In[2]:=FindMinimum[Sin[x*y]*Exp[x^2],{x,0.2}, {y,0.3}](求多元函数极小值) 13.求解线性规划问题:Min cx ,mx ≥b ,x ≥0,求向量x 。 In[1]:= c ={2,-3}(列向量);In[2]:= m ={{-1,-1},{1,-1},{1,0}}; In[3]:= b ={-10,2,1}; In[4]:=LinearProgramming[c,m,b] 14.数据拟合:In[1]:= d ={{1,2.18},{1.2,2.56},{1.6,3.0},{1.8,2.66}}; In[2]:= f =Fit[d,{1, x, x^2}, x](求和上面4个点吻合最好的二次多项式f ); 检验效果:In[3]:=ListPlot[d](画d 中4个点的图); In[4]:=Plot[f,{x,0.8,2.0}](画多项式f 在x 从0.8到2.0之间的图); In[5]:=Show[%3, %4](把上面两个图画在一起) 注:函数集{1, x, x^2}可以是更高次的或其它函数集,如三角函数集等。 15.一元函数作图:In[1]:=Plot[Exp[-x^2]*Sin[6*x],{x,-2,2}](如图1) 参数方程作图:In[2]:=ParametricPlot[{Sin[t]^3,Cos[t]^3},{t,0,2*Pi}] 16.二元函数作图:In[1]:=Plot3D[Sin[x*y],{x,-Pi, Pi},{y,-Pi, Pi}];(如图2) In[2]:=Plot3D[Sin[x*y],{x,-Pi, Pi},{y,-Pi, Pi},PlotPoints->40, ViewPoint->{2,-3,2}] In[3]:=ParametricPlot3D[{Cos[u]*Cos[v],Sin[u]*Cos[v],Sin[v]},{u,0,2*P i},{v,-Pi/2,Pi/2}] 17.数据画图:In[1]:= d ={{1,2},{3,4},{7,6}};In[2]:=ListPlot[d]; In[3]:=ListPlot[d, PlotStyle->{RGBColor[1,0,0], PointSize[0.02]}](红色 的大点); 或直接用 In[4]:=ListPlot[{1,2},{3,4},{7,6}] 代替“In[2]:=”。 18.作图范围:In[1]:=Plot[x-x^3/6,{x,-4,4}]; In[2]:=Plot[x-x^3/6,{x,-4,4},PlotRange->{-5,2}](限定纵坐标(函数值)范围) 19.图形组合:In[1]:=Plot[{Sin[x],Cos[x]},{x,0,2*Pi}];或 In[2]:= g1=Plot[Sin[x],{x,0,2*Pi}, PlotStyle->{RGBColor[1,0,0]}]; In[3]:= g2=Plot[Cos[x],{x,0,2*Pi}, PlotStyle->{RGBColor[0,0,1]}]; In[4]:=Show[g1,g2](把g1、g2画在一起) 20.文件的使用:In[1]:= y =25;In[2]:= a ={{1,4},{2,6}};In[3]:= f [x_ ]:=x^2 ; In[4]:= g =Plot[Sin[x],{x,0,2*Pi}, PlotStyle->{RGBColor[1,0,0]}]; In[5]:=Save[“abc .m”,a,y,f,g](将a, y, f, g 保存在文件“abc .m ”中,扩 展名为m ); In[6]:=!!abc .m (显示文件内容); In[1]:=<8,3,4];In[2]:=x=10; In[3]:=y=20;In[4]:=If[x==y,a,b] 2. 循环:(1) For[初值,条件,增量表达式,循环体] 先赋初值,再判断条件,条件为真时执行循环体,最后计算增量,再判断条件。 In[1]:=For[a=1, a<5, a=a+1, Print[a]] In[2]:=For[k=1;s=0;t=1, k<=10, k=k+1, s=s+k ;t=t*k] In[3]:=Print[“s=”,s , “\n ”, “t=”,t ] In[4]:=For[k=1, k<3, k=k+1, Plot[Sin[x],{x,k,2*Pi+k}]] (2) Do[循环体,{循环变量,起始值,终止值,步长}] In[1]:=s=0;Do[s=s+i,{i,1,100,1}];s In[2]:=Do[p[i]=Plot[Sin[i*x],{x,0,Pi}],{i,1,2}] In[3]:=Show[p[1],p[2]] 五、一个编程例子 ===================================================== (* 这是一个例题 每行后按回车键 用半角标点符号*) Print["请回答3个题目"] For[i=1,i<=3,i=i+1, a=Random[Integer,{1,100}]; b=Random[Integer,{1,100}]; Print["第(",i,")题 ",a,"+",b,"=?"]; c=Input["请输入计算结果"]; If[c==a+b, Print[" 对了!"], Print[" 错,应为 ",a+b] ] ]; Print["没有题目了。"] ====================================================== 六、编程练习:从数据文件中读出5组身高与体重数据(ReadList ),(1) 画出散点图(ListPlot );(2) 用Fit 求出拟合直线;(3) 用回归公式求出回归直线; (4) 画出回归直线的图形(Plot );(5) 将回归直线和散点图画在一起(Show )。 注:数据文件内容为 1.54 48 1.6 55 1.65 60 1.71 62 1.74 70

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乘方 除 a^b乘方 base^^num以base为进位的数 lhs&&rhs且 lhs||rhs或 !lha非 ++,--自加1,自减1

+=,-=,*=,/=同C语言 >,<,>=,<=,==,!=逻辑判断(同c) lhs=rhs立即赋值 lhs:=rhs建立动态赋值 lhs:>rhs建立替换规则 lhs->rhs建立替换规则 expr//funname相当于filename[expr] expr/.rule将规则rule应用于expr expr//.rule将规则rule不断应用于expr知道不变为止param_名为param的一个任意表达式(形式变量)param__名为param的任意多个任意表达式(形式变量)二、系统常数 Pi3.1415....的无限精度数值 E2.17828...的无限精度数值 Catalan0.915966..卡塔兰常数 EulerGamma0.5772....高斯常数 GoldenRatio1.61803...黄金分割数 Degree Pi/180角度弧度换算 I复数单位 Infinity无穷大 -Infinity负无穷大 ComplexInfinity复无穷大 Indeterminate不定式 三、代数计算 Expand[expr]展开表达式 Factor[expr]展开表达式 Simplify[expr]化简表达式 FullSimplify[expr]将特殊函数等也进行化简PowerExpand[expr]展开所有的幂次形式ComplexExpand[expr,{x1,x2...}]按复数实部虚部展开FunctionExpand[expr]化简expr中的特殊函数 Collect[expr,x]合并同次项 Collect[expr,{x1,x2,...}]合并x1,x2,...的同次项 Together[expr]通分 Apart[expr]部分分式展开 Apart[expr,var]对var的部分分式展开 Cancel[expr]约分 ExpandAll[expr]展开表达式 ExpandAll[expr,patt]展开表达式 FactorTerms[poly]提出共有的数字因子 FactorTerms[poly,x]提出与x无关的数字因子FactorTerms[poly,{x1,x2...}]提出与xi无关的数字因子Coefficient[expr,form]多项式expr中form的系数

mathematica函数

其它函数HoldPattern用模式匹配,输出匹配之后的值MonomialList提取函数变量 Dynamic动态函数 Manipulate动态演示 Animate制作动画 ListAnimate将所有的图象制作动画 UpdateInterval更新时间间隔 Pause运算间隔 ToCharacterCode给出ASCII码 FromCharacterCode由ASCII码转化 Import载入 Export输出 DateList调取当时的时刻 Compile并行运算 Module局部变量 Block模块 Clear清除变量 CellularAutomaton元胞自动机 TuringMachine图灵机 ProgressIndicator变量追踪 Boole变量函数 True/TrueQ检测是否为真 False/FalseQ检测是否为假 Not否定 IntegerQ检测是否为整数 PrimeQ检测是否为质数 VectorQ检测是否为向量(单层链表) MatrixQ检测是否为矩阵(双层链表) NumberQ检测是否为数字(非变量,不识别含有属性的数字)NumericQ检测是否为数字 OddQ检测是否为奇数 EvenQ检测是否为偶数 MemberQ检测是否为元素 ImageQ是否为图片 画图函数 Plot画非隐式单变量函数 ParametricPlot参数函数画图 PolarPlot极坐标画图 Plot3D画非隐式双变量函数 ListPlot画二维点 ListPointPlot画二维点 ListLinePlot一次插值函数图 ListPlot3D画三维经一次插值之后的图象

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 计算 π??? ? ?? ?+??? ???- -2 13 12 1494891100. 输入 100^(1/4)*(1/9)^(-1/2)+8^(-1/3)*(4/9)^(1/2)*Pi 则输出 3 103π + 这是准确值. 如果要求近似值,再输入 N[%] 则输出 这里%表示上一次输出的结果,命令N[%]表示对上一次的结果取近似值. 还用 %% 表示上 上次输出的结果,用 %6表示Out[6]的输出结果. 注:关于乘号*,Mathematica 常用空格来代替. 例如,x y z 则表示x*y*z,而xyz 表示字符 串,Mathematica 将它理解为一个变量名. 常数与字符之间的乘号或空格可以省略. 4. 代数运算 例3 分解因式 232++x x 输入 Factor[x^2+3x+2] 输出 )x 2)(x 1(++ 例4 展开因式 )2)(1(x x ++

Mathematica函数

Mathematica中数的类型: Integer任意长度的精确整数 Rational有理数的最简形式 Real实数 Complex复数 检验不同类型的数: NumberQ[x]检验x是否是数 IntegerQ[x] 检验x是否是整数 EvenQ[x] 检验x是否是偶数 OddQ[x] 检验x是否是奇数 PrimeQ[x] 检验x是否是素数 Head[x]===type 检验数的类型 数的输入形式: 不同形式的数之间的转换 IntegerDigits[n]整数n在十进制中的每一位数的列表 IntegerDigits[n, b]整数n在b进制中的每一位数的列表 IntegerDigits[n, b, len]在每位数的列表中的左端补0,使列表长度达到lenIntegerExponent[n, b]整数n在b进制中末尾零的个数 RealDigits[x]实数x在十进制中每一位数的列表,并给出小数点左边的位数RealDigits[x, b]实数x在b进制中的每一位数的列表 RealDigits[x, b, len] 实数x在b进制中的前len位的每一位数的列表

RealDigits[x, b, len, n]从b n的系数开始的前len位的列表FromDigits[list]从其十进制每位数的序列重构该数 FromDigits[list, b] 从其b进制每位数的序列重构该数 b^^nnnn b进制下的数 BaseForm[x, b] x在b进制下的形式 MantissaExponent[x]给出包含x的尾数和指数的列表(科学计数法)MantissaExponent[x, b]给出b进制下的尾数和指数 数值精度 Precision[x] x的十进制下的有效数位的总数 Accuracy[x] x的十进制下小数点后边的有效数位的数目 不定结果和无穷结果 Indeterminate 不确定的数值结果 Infinity 正无穷大量 -Infinity 负无穷大量(DirectedInfinity[-1])DirectedInfinity[r] 具有复方向r的无穷大量ComplexInfinity 不定方向的无穷大量 DirectedInfinity[ ] 等价于ComplexInfinity

Mathematica 教材

Mathematica5教程 第1章Mathematica概述 1.1 运行和启动:介绍如何启动Mathematica软件,如何输入并运行命令1.2 表达式的输入:介绍如何使用表达式 1.3 帮助的使用:如何在mathematica中寻求帮助 第2章Mathematica的基本量 2.1 数据类型和常量:mathematica中的数据类型和基本常量 2.2 变量:变量的定义,变量的替换,变量的清除等 2.3 函数:函数的概念,系统函数,自定义函数的方法 2.4 表:表的创建,表元素的操作,表的应用 2.5 表达式:表达式的操作 2.6 常用符号:经常使用的一些符号的意义 第3章Mathematica的基本运算 3.1 多项式运算:多项的四则运算,多项式的化简等 3.2 方程求解:求解一般方程,条件方程,方程数值解以及方程组的求解3.3 求积求和:求积与求和 第4章函数作图 4.1 二维函数作图:一般函数的作图,参数方程的绘图 4.2 二维图形元素:点,线等图形元素的使用 4.3 图形样式:图形的样式,对图形进行设置 4.4 图形的重绘和组合:重新显示所绘图形,将多个图形组合在一起 4.5 三维图形的绘制:三维图形的绘制,三维参数方程的图形,三维图形的 设置 第5章微积分的基本操作 5.1 函数的极限:如何求函数的极限 5.2 导数与微分:如何求函数的导数,微分 5.3 定积分与不定积分:如何求函数的不定积分和定积分,以及数值积分5.4 多变量函数的微分:如何求多元函数的偏导数,微分 5.5 多变量函数的积分:如何计算重积分 5.6 无穷级数:无穷级数的计算,敛散性的判断 第6章微分方程的求解 6.1 微分方程的解:微分方程的求解 6.2 微分方程的数值解:如何求微分方程的数值解 第7章Mathematica程序设计 7.1 模块:模块的概念和定义方法 7.2 条件结构:条件结构的使用和定义方法

相关文档