本文对于MMAT(Mathematica)中常用符号进行整理归纳,若读者对于MMA运行还不了解,可以先观看:Mathematica最简教程

特殊符号

添加注释:1+2 (*输入注释*),注释内容的快捷键为Alt+/

%表示上一次的计算结果。

回车Enter表示换行,Shift键与回车Shift+Enter同时按下表示执行程序。

一个表达式以分号结尾则不输出计算结果,一行可以写多个表达式,但是需要用分号分隔。

()圆括号表示项的结合顺序,如(x+(y^x+1/(2x)))[]方括号表示函数,如Log[x]Sin[x,1]{}大括号表示一个“表”(一组数字、任意表达式、函数等的集合),如{2x,Sin[12 Pi],{1+A,y*x}}[[]]双方括号表示“表”或“表达式”的下标,如a[[2,3]]、{1,2,3}[[1]]=1

MMA中第一个元素下标为1

公式输入快捷键:分数线 Ctrl+/,二次根式Ctrl+2 n n n次根式Ctrl+2, Ctrl+5,上标Ctrl+6,下标Ctrl+_,同时输入上下标Ctrl+_,Ctrl+5

内置函数与自定义函数

Mathematica有已经定义好的内置变量与函数,其以大写字母开头,如常见的Pi表示 π \pi πSin[]正弦函数,Plot[]用于函数绘制等。

内置函数如Log[]求指数函数,Round[]四舍五入,Max[]取最大值,Exp[]指数函数,Sin[]正弦。自定义函数写作f[x_]=Fun[x],如f[x_]=x^2,这里的自变量用x_表示,如果是多变量的函数就用f[x_,y_,z_]来表示。

分段函数

分段函数定义需要使用内建函数If[],如x大于等于0时函数值等于x,函数值小于x时等于x^2,可写做f[x_]=If[x>=0,x=x,x=x ^2]。也可以用If实现多段函数的定义。

多段函数(三及以上)的绘制

f[x_] := If[x < 0, x - 1, If[x < 2, x^2, Sin[3 x]]]

Plot[u[x], {x, -2, 10}]

输出精度

Mathematica默认以绝对精确的形式输出计算结果。例如:输入 3/2,系统会输出 3 2 \frac{3}{2} 23,如果想得到近似解,则应输入 N[3/2,5],即求其5位有效数字的数值解,系统会输出0.66667。此外,Mathematica还可以根据你前面使用的数字的精度自动地设定精度。

可以用两个内置函数将数字转化为有理数或者实数,N[x,n]可以将x转化为实数,精度位数为n其中n可以省略,Rationalize[x,dx]将x转化为有理数,误差小于dx。

绘图

图形函数中最有代表性的函数为Plot[表达式,{变量,下限,上限},可选项],(其中表达式还可以是一个"表达式表",这样可以在一个图里画多个函数);变量为自变量;上限和下限确定了作图的范围;

单个图形:Plot[Fun[x],{x,xmin,xmax},options],即在区间{x,xmin,xmax}上,按选项的要求画出函数f的图形。

多个图形:Plot[{Fun1[x],Fun2[x]},{x,xmin,xmax},options],在区间{x,xmin,xmax}上,按选项的要求画出几个函数的图形。

可选项可要可不要,不写系统会按默认值作图,它表示对作图的具体要求。例如Plot[Sin[x],{x,0,2*Pi},AspectRatio-1]表示在0<x<2Pi的范围内作函数Sin[x]的图象,AspectRatio为可选项,表示图的x向y向比例,AspectRatio-1表示纵横比例为1:1,如果不写这一项,系统默认比例为1:GodenRatio,即黄金分割的比例 (注意,可选项的写法为可选项名-可选项值) ,Plot还有很多可选项,如PlotRange表示作图的值域PlotPoint表画图中取样点的个数,越大则图越精细,PlotStyle来确定所画图形的线宽、线型、颜色等特性,AxesLabel表式在坐标轴上作标记等等。

关于三维图的绘制

三维曲线:ParametricPlot[{x[t],y[t]},{t,t0,t1},options] 画一个X轴, Y轴坐标为{x[t],y[t]},参变量t在[t0,t1]中的参数曲线。

三维图形:Plot3D[f[x,y],{x,x0,x1},{y,y0,y1},选项],画出空间曲面f[x,y]。

ListLinePlot[Table[RandomInteger[{1, 10}], {10}]]`,先产生十个一到十之间的随机整数,放到表中。然后画出拆线图。

Plot3D[Sin[x + y], {x, -3, 3}, {y, -2, 2}],当变量有两个时,输出函数的立体图。

动画 ListAnimate[Table[Plot[Sin[n x],{x,0,10}],{n,5}]]

解方程与微积分

求解方程组,使用函数Solve[]Solve[a*x^2 + b*x + c == 0, x]或写为Solve[a x^2 + b x + c == 0, x]

MMA中空格可以代替乘号,若a与x中间没有空格或*,那么MMA会将ax视作变量,错误示范:Solve[ax^2 + bx + c == 0, x]

解方程 { x + 3 y = 2 − 2 x + 6 y = 0 \left\{\begin{array}{l}x+3 y=2 \\ -2 x+6 y=0\end{array}\right. {x+3y=22x+6y=0

Solve[{x+3*y==2&&-2*x+6*y==0},{x,y}],方程用&&连接

不定积分:Integrate[1/(1 - x^2), x]

求导函数,用D: D[%, x],%表示上一个输出结果。D[%, {x, 5}]为求 n n n阶导。

化简:Simplify[%]

计算定积分:Integrate[Sin[x], {x, 0, Pi}]

计算二重积分:Integrate[Sqrt[x^2 + y^2], {x, 0, 1}, {y, 0, x}]

解微分方程:DSolve[y''[x] == a y[x], y[x], x]

解常微分方程组:NDSolve[{x'[t] == -y[t] - x[t]^2, y'[t] == 2 x[t] - y[t]^3, x[0] == y[0] == 1}, {x, y}, {t, 20}] NSolve是先求出解析解(精确的表达式),然后计算它的数值

求反函数:Clear[f]; f[x_] := 3x/(3x+2); InverseFunction[f][x]

如果我们需要求解 x = sin ⁡ x e x x=\sin{x}e^x x=sinxex 这类没有解析解的函数,Solve和NSolve都会失效,这时我们就要用到FindRoot[],FindRoot直接求数值解FindRoot[x == Sin[x]*Exp[x], {x, 1}]

解数列通项用RSolve,比如解 a n + 1 − 2 a n = 1 a_{n+1}-2a_n=1 an+12an=1RSolve[a[n + 1] - 2 a[n] == 1, a[n], n],如果还有初始条件,那么RSolve[{a[n + 1] - 2 a[n] == 1, a[0] == 1}, a[n], n]

求极限:Limit[(2^(1/x) - 1)/(2^(1/x) + 1), x -> 0]

矩阵

矩阵的表示,以二阶矩阵 A = ( 3 4 0 0 3 4 ) A=\left(\begin{array}{cc} \frac{3}{4} & 0 \\ 0 & \frac{3}{4} \end{array}\right) A=(430043) 为例: A={{3/4, 0}, {0, 3/4}}

为方便观看,还可以增加//MatrixForm输出矩阵形式
输入:A = {{3/4, 0}, {0, 3/4}}
输出:{{3/4, 0}, {0, 3/4}}
输入:A = {{3/4, 0}, {0, 3/4}} // MatrixForm
输出: ( 3 4 0 0 3 4 ) \left(\begin{array}{cc} \frac{3}{4} & 0 \\ 0 & \frac{3}{4} \end{array}\right) (430043)

列向量乘行向量构造矩阵:{{a}, {b}, {c}}.{{a, b, c}}

单位矩阵:IdentityMatrix[n]

对角矩阵:DiagonalMatrix[{1,2,3,4}]

为了简洁,之后使用A表示矩阵

数乘运算:2A

矩阵乘法
输入:{a, b, c} . {x, y, z}
输出:{a x + b y, c x + d y}
输入:{{a, b}, {c, d}} . {{r, s}, {t, u}}
输出:{{a r + b t, a s + b u}, {c r + d t, c s + d u}}

矩阵的逆:Inverse[A]

矩阵的转置:Transpose[A]

矩阵的迹:Tr[A]

矩阵的行列式:Det[A]

矩阵特征值:Eigenvalues[A]

其他

MMA的三个基本构造块,即三个atom是:符号 symbol,数字 number,串 string

至于常用数据,在MMA中,是经常用表 (list) 来表示的,用{}括起来。{1, 2, 3}

Sin[x]^2表示 sin ⁡ 2 x \sin^2{x} sin2x
Sin[x^2]表示 sin ⁡ ( x 2 ) \sin(x^2) sin(x2)

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐