|
楼主 |
发表于 2005-7-29 20:43
|
显示全部楼层
微商和微分
在Mathematica中能方便地计算任何函数表达式的任意阶微商(导数).如果f是一元函数,D[f,x]表示 ;如果f是多元函数,D[f,x]表示 .微商函数的常用形式如下:
D[f,x]
In[1]:=D[x^x,x]
Out[1]:=
下面列出全微分函数Dt的常用形式及其意义:
Dt[f] 全微分
Dt[f,x] 全导数
Dt[f,x1,x2,…] 多重全导数
In[1]:=Dt[x^2+y^2]
Out[1]:=
. 求极限
计算函数极限 的一般形式是:
Limit[expr,x->x0] x->x0时函数的极限
Limit[expr,x->x0,Direction->-1] x-> 时函数的极限
Limit[expr,x->x0, Direction->1] x-> 时函数的极限
In[1]:= Dt[x^2+y^2]
Out[1]:=1
. 不定积分和定积分
1. 不定积分 Integreate函数主要计算只含有1“简单函数”的被积函数. “简单函数”包括有理函数、指数函数、对数函数和三角函数与反三角函数。不定积分一般形式如下:
Integrate[f,x] 计算不定积分
Integrate[f,x,y] 计算不定积分
Integrate[f,x,y,z] 计算不定积分
In[1]:=
Out[1]:=
In[2]:=
Out[2]:=
2.定积分
计算定积分的命令和计算不定积分是同一个Integrate函数,在计算定积分时,除了要给出变量外还要给出积分的上下限。当定积分算不出准确结果时,用N[%]命令总能得到其数值解.Nintegrate也是计算定积分的函数,其使用方法和形式和Integrate函数相同.用Integrate函数计算定积分得到的是准确解,Nintegrate函数计算定积分得到的是近似数值解.计算多重积分时,第一个自变量相应于最外层积分放在最后计算.
Integrate[f,{x,a,b}] 计算定积分
NIntegrate[f,{x,a,b}] 计算定积分
Integrate[f,{x,a,b},{y,c,d}] 计算定积分
NIntegrate[f,{x,a,b},{y,c,d}] 计算定积分
. 幂级数
幂级数展开函数Series的一般形式:
Series[expr,{x,x0,n}] 将expr在x=x0点展开到n阶的级数
Series[expr,{x,x0,n},{y,y0,m}] 先对y展开到m阶再对x展开n阶幂级数
用Series展开后,展开项中含有截断误差
. 常微分方程
求解常微分方程和常微分方程组的函数的一般形式如下:
Dsolve[eqns,y[x],x] 解y(x)的微分方程或方程组eqns,x为变量
Dsolve[eqns,y,x] 在纯函数的形式下求解
NDsolve[eqns,y[x],x,{xmin,xmax}] 在区间{xmin,xmax}上求解变量x的数的形式下求解常微分方程和常微分方程组eqns的数值解
.线性代数
1. 定义向量和矩阵函数 定义一个矩阵,可用函数Table或Array.当矩阵元素能用一个函数表达式时,用函数Table在定义矩阵大小的同时也给每个矩阵元素定义确定的值.用函数Range只能定义元素为数值的向量.Array只能用于定义向量、矩阵和张量,并规定矩阵和张量的元素下标从1开始.Array的一般形式: Array[向量元素名,n,f] 定义下标从f开始的有n个元素的向量,当f是1时可省略. Array[矩阵元素名,{m,n}] 定义m行n列的矩阵.其中:矩阵元素名是一个标识符,表示矩阵元素的名称,当循环范围是{u,v,w}时定义一个张量. Table[表达式f,循环范围] 表达式f表示向量或矩阵元素的通项公式;循环范围定义矩阵的大小. 循环范围的一般形式:{循环变量名,循环初值,循环终值,循环步长}. 在Array或Table的循环范围表示方法略有区别.
1. 矩阵的运算符号和函数
表达式 意义
A+c A为矩阵,c为标量,c与A中的每一个元素相加
A+B A,B为同阶矩阵或向量,A与B的对应元素相加
cA A为矩阵,c为标量,c与A中的每个元素相乘
U.V 向量U与V的内积
A.B 矩阵A与矩阵B相乘,要求A的列数等于B的行数
Det[M] 计算矩阵M的行列式的值
Transepose[M] M的转置矩阵( 或 )
Inverse[M] 计算矩阵M的逆矩阵( )
Eigenvalus[A] 计算矩阵A的全部(准确解)特征值
Eigenvalus[N[A]] 计算矩阵A的全部(数值解)特征值
Eigenvectors[A] 计算矩阵A的全部(准确解)特征向量
Eigenvectors[N[A]] 计算矩阵A的全部(数值解)特征向量
Eigensystem[A] 计算矩阵A的所有(准确解)特征值和特征向量
Eigensystem[N[A]] 计算矩阵A的所有(数值解)特征值和和特征向量
1. 方程组求解函数
在Mathematica中用LinerSolve[A,B],求解满足AX=B的一个解.如果A的行列式不为零,那么这个解是方程组的唯一解; 如果A的行列式是零,那么这个解是方程组的一个特解,方程组的全部解由基础解系向量的线性组合加上这个特解组成. NullSpace[A]计算方程组AX=0的基础解系的向量表,用LinerSolve[A,B]和NullSpace[A]联手解出方程组AX=B的全部解. Mathematica中还有一个美妙的函数RowReduce[A],它对A的行向量作化间成梯形的初等线性变换.用RowReduce可计算矩阵的秩,判断向量组是线性相关还是线性无关和计算极大线性无关组等工作.
解方程组函数 意义
RowReduce[A] 作行的线性组合化简A,A为m行n列的矩阵
LinerSolve[A,B] 求解满足AX=B的一个解,A为方阵
NullSpace[A] 求解方程组AX=0的基础解系的向量表, A为方阵
五.程序流程控制
循环语句有For[赋初值,循环条件,增量语句,语句块]表示如果满足循环条件,则执行语句块和增量语句,直到不满足条件为止,While[test,block]表明如果满足条件test则反复执行语句块block,否则跳出循环,Do[block,{i,imin,imax,istep}]与前者功能是相同的。还有Goto[lab], Label[lab]提供了程序中无条件跳转,Continue[]和Break[]提供了继续循环或跳出循环的控制,Catch[语句块1]和Throw[语句块2]提供了运算中对异常情况的处理。另外,在程序中书写注释可以用一对"(* *)"括起来,注释可以嵌套。
六.其他 1. 使用帮助,Mathematica的帮助文件提供了Mathematica内核的基本用法的说明,十分详细,可以参照学习。
2. 你可以使用"? 符号名"或"??符号名"来获得关于该符号(函数名或其他)的粗略或详细介绍。符号名中还可以使用通配符,例如?M*,则系统将给出所有以M开头的关键词和函数名,再如??For将会得到关于For语句的格式和用法的详细情况。
3. 在Mathematica的编辑界面中输入语句和函数,确认光标处于编辑状态(不断闪烁),然后按Insert键来对这一段语句进行求值。如果语句有错,系统将用红色字体给出出错信息,你可以对已输入的语句进行修改,再运行。如果运行时间太长,你可以通过Alt+.(Alt+句号)来中止求值。
4. 对函数名不确定的,可先输入前面几个字母(开头一定要大写),然后按Ctrl+K,系统会自动补全该函数名 |
|