发布时间 : 星期六 文章Mathematica使用教程更新完毕开始阅读
求
解方程式的根
Solve[lhs==rhs,x] 解方程式lhs==rhs,求x Nsolve[lhs==rhs,x] 解方程式lhs==rhs的数值解
Solve[{lhs1==rhs1,lhs2==rhs2,…},{x,y,…}] 解联立方程式,求x,y,… NSolve[{lhs1==rhs1,lhs2==rhs2,…},{x,y,…}] 解联立方程式的数值解
FindRoot[lhs==rhs,{x,x0}] 由初始点x0求lhs==rhs的根
Mathematica 的四种括号
(term) 圆括号,括号内的term先计算 f[x] 方括号,内放函数的引数
{x,y,z} 大括号或串列括号,内放串列的元素 p[[i ]] 或 Part[p,i] 双方括号,p的第i项元素
p[[i,j]] 或 Part[p,i,j] p的第i项第j个元素
缩短Mathematica输出的指令
expr//Short 显示一行的计算结果 Short[expr,n] 显示n行的计算结果
Command; 执行command,但不列出结果
查询Mathematica的物件
?Command 查询Command的语法及说明
??Command 查询Command的语法和属性及选择项 ?Aaaa* 查询所有开头为Aaaa的物件
函数的定义、查询与清除
f[x_]= expr 立即定义函数f[x] f[x_]:= expr 延迟定义函数f[x]
f[x_,y_,…] 函数f有两个以上的引数 ?f 查询函数f的定义
Clear[f] 或 f=. 清除f的定义 Remove[f] 将f自系统中清除掉 含有预设值的Pattern
a_+b_. b的预设值为0,即若b从缺,则b以0代替 x_ y_ y的预设值为1
x_^y_ y的预设值为1
9
条件式的自订函数
lhs:=rhs/;condition 当condition成立时,lhs才会定义成rhs
If指令
If[test,then,else] 若test为真,则回应then,否则回应else
If[test,then,else,unknow] 同上,若test无法判定真或假时,则回应unknow
极限
Limit[expr,x->c] 当x趋近c时,求expr的极限 Limit[expr,x->c,Direction->1] Limit[expr,x->c,Direction->-1]
微分
D[f,x] 函数f对x作微分
D[f,x1,x2,…] 函数f对x1,x2,…作微分 D[f,{x,n}] 函数f对x微分n次
D[f,x,NonConstants->{y,z,…}] 函数f对x作微分,将y,z,…视为x的函数
全微分
Dt[f] 全微分df Dt[f,x] 全微分
Dt[f,x1,x2,…] 全微分
Dt[f,x,Constants->{c1,c2,…}] 全微分,视c1,c2,…为常数
不定积分
Integrate[f,x] 不定积分 ∫f dx
定积分
Integrate[f,{x,xmin,xmax}] 定积分
Integrate[f,{x,xmin,xmax},{y,ymin,ymax}] 定积分 数
列之和与积
Sum[f,{i,imin,imax}] 求和
Sum[f,{i,imin,imax,di}] 求数列和,引数i以di递增 Sum[f,{i,imin,imax},{j,jmin,jmax}] Product[f,{i,imin,imax}] 求积
Product[f,{i,imin,imax,di}] 求数列之积,引数i以di递增
10
Product[f,{i,imin,imax},{j,jmin,jmax}]
函数之泰勒展开式
Series[expr,{x,x0,n}] 对 expr於x0点作泰勒级数展开至(x-x0)n项 Series[expr,{x,x0,m},{y,y0,n}] 对x0和y0展开 关系运算子 a==b 等於 a>b 大於
a>=b 大於等於 a
a<=b 小於等於 a!=b 不等於
逻辑运算子
!p not p||q||… or
p&&q&&… and
Xor[p,q,…] exclusive or
LogicalExpand[expr] 将逻辑表示式展开
基本二维绘图指令
Plot[f,{x,xmin,xmax}]
画出f在xmin到xmax之间的图形 Plot[{f1,f2,…},{x,xmin,xmax}] 同时画出数个函数图形
Plot[f,{x,xmin,xmax},option->value]
指定特殊的绘图选项,画出函数f的图形
Plot[]几种常用选项的指令
选项 预设值 说明
AspectRatio 1/GoldenRatio 图形高和宽之比例,高/宽 Axes True 是否把坐标轴画出
AxesLabel Automatic 为坐标轴贴上标记,若设定为 AxesLabel->{?ylabel?},则为y轴之标记。若设定为AxesLabel->{?xlabel?,?ylabel?} ,则为{x轴,y轴}的标记
AxesOrigin Automatic 坐标轴的相交的点
DefaultFont $DefaultFont 图形里文字的预设字型
11
Frame False 是否将图形加上外框
FrameLabel False 从x轴下方依顺时针方向加上图形外框的标记 FrameTicks Automatic (如果Frame设为True)为外框加上刻度; None则不加刻度
GridLines None 设Automatic则於主要刻度上加上网格线 PlotLabel None 整张图之图名
PlotRange Automatic 指定y方向画图的范围
Ticks Automati 坐标轴之刻度,设None则没有刻度记号出现
※「Automatic、None、True、False」为Mathmatica常用的选项设定,其代表意义分别为「使用内部设定、不包含此项、作此项目、不作此项目」。
串列绘图
ListPlot[{y1,y2,…}] 画出{1,y1},{2,y2},…的点
ListPlot[{{x1,y1},{x2,y2},…}] 画出{x1,y1},{x2,y2},…的点
ListPlot[{{x1,y1},{x2,y2},…},PlotJoined->True] 把画出来的点用线段连接
绘图颜色的指定
Plot[{f1,f2,…},{x,xmin,xmax},
PlotStyle->{RGBColor[r1,g1,b1],RGBColor[r2,g2,b2],…}]
彩色绘图
Plot[{f1,f2,…},{x,xmin,xmax},
PlotStyle->{GrayLevel,GrayLevel[j],…}] 灰阶绘图
图形处理指令
Show[plot] 重画一个图
Show[plot1,plot2,…] 将数张图并成一张 Show[plot,option->opt] 加入选项
图形之排列
Show[GraphicsArray[{plot1,plot2,…}]] 将图形横向排列 Show[GraphicsArray[{,,…}]] 将图形垂直排列
Show[GraphicsArray[{{plot1,plot2,…},…}]] 将图形成二维矩阵式排列 二维参数图
ParametricPlot[{f1,f2},{t,tmin,tmax}] 参数绘图
12