Mathematica函数大全.docx
《Mathematica函数大全.docx》由会员分享,可在线阅读,更多相关《Mathematica函数大全.docx(20页珍藏版)》请在冰豆网上搜索。
Mathematica函数大全
Mathematica函数大全--运算符及特殊符号
一、运算符及特殊符号
Line1;执行Line,不显示结果
Line1,line2顺次执行Line1,2,并显示结果
?
name关于系统变量name的信息
?
?
name关于系统变量name的全部信息
!
command执行Dos命令
n!
N的阶乘
!
!
filename显示文件内容
>filename打开文件写
Expr>>>filename打开文件从文件末写
()结合率
[]函数
{}一个表
<*MathFun*>在c语言中使用math的函数
(*Note*)程序的注释
#n第n个参数
##所有参数
rule&把rule作用于后面的式子
%前一次的输出
%%倒数第二次的输出
%n第n个输出
var:
:
note变量var的注释
"Astring"字符串
Context`上下文
a+b加
a-b减
a*b或ab乘
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...黄金分割数
DegreePi/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的系数
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...}]解偏微分方程
Eliminate[eqns,vars]把方程组eqns中变量vars约去
SolveAlways[eqns,vars]给出等式成立的所有参数满足的条件
Reduce[eqns,vars]化简并给出所有可能解的条件
LogicalExpand[expr]用&&和||将逻辑表达式展开
InverseFunction[f]求函数f的逆函数
Root[f,k]求多项式函数的第k个根
Roots[lhs==rhs,var]得到多项式方程的所有根
五、微积分函数
D[f,x]求f[x]的微分
D[f,{x,n}]求f[x]的n阶微分
D[f,x1,x2..]求f[x]对x1,x2...偏微分
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..的偏微分
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的极限
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]化简并给出最常见的表达式
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]^nn阶小量x^n
O[x,x0]^nn阶小量(x-x0)^n
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..的偏微分
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的极限
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]化简并给出最常见的表达式
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的幂级数,其中ai
O[x]^nn阶小量x^n
O[x,x0]^nn阶小量(x-x0)^n
Mathematica函数及使用方法(4)
alx
点击次数:
314
2004-4-2716:
00:
00
多项式函数
Variables[poly]给出多项式poly中独立变量的列表
CoefficientList[poly,var]给出多项式poly中变量var的系数
CoefficientList[poly,{var1,var2...}]给出多项式poly中变量var(i)的系数列?
PolynomialMod[poly,m]poly中各系数modm同余后得到的多项式,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]n阶柱函数
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
Mathematica函数及使用方法(5)
alx
点击次数:
439
2004-4-2716:
00:
00
数值函数
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为初值,寻找方程数值解
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}]
ConstrainedMin[f,{inequ},{x,y,..}]
inequ为线性不等式组,f为x,y..之线性函数,得到最小值及此时的x,y..取值
ConstrainedMax[f,{inequ},{x,y,..}]同上
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,...}]得到每个表中的最小值
变换
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[3x+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]特征向量
特征值
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次
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分解
表函数
(*“表”,我认为是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[