救救你的REPORT(8)— 基本的公式书写

很不好意思晚更新了几天。最近事情较多,打赏太少,夜里没有太大的动力写文章。加上目前在airbnb找的地方晚上没有一个可靠的桌子,写文章的难度进一步加大。今天我们继续来说说公式该怎么想。LaTeX来书写公式,总体上还是有一点点难度的,尤其是很复杂的公式。但是考虑到word里写公式也是很麻烦,还经常卡死,所以写公式对于各种编辑器都是很难的事情了。话说回来,用Word写公司的难度随着你的使用并不会降低,但是LaTeX一但你掌握了,就特别快了。另外还是得再说一遍,本教程的大部分的讲解仅适用于我提供的模板。请看到新的文章就去Github上下载我最新上传的模板。在写课程的同时,我也在不断升级模板的。

公式应该是科研和学习中最重要的表达形式之一了,从我们学数学的第一天起,就和公式结下了不解之缘。一个好的公式,不仅要正确,还要看起来形式很美。这里的形式包括公式推导的形式和公式的表现形式。LaTeX作为全世界最流行的学术写作工具,在公式的表现上是一流的,初步掌握之后,就能写出教科书般漂亮的公式了。但是,看完这篇文章,并不能保证大家能够很快就学会怎么写公式。看完还是需要多加练习,即便是我也记不住很多特殊符号的命名。但我看到一个公式一点都不虚,我知道一定能写出来,而且不复杂。大家看完这一讲,如果能够不虚,我觉得就起到效果了。

公式的一般语法

插入语法

在LaTeX中,允许大家在文中插入三种形式的公式,但我们一般只用两种,所以我只讲两种:

1.  在行文中插入公式(inline mode)
其语法是:

质能方程的公式是$E=mc^2$

显示的效果为:
质能方程的公式是\(E=mc^2\)。

2.  将公式单独显示并编号(displayed mode)
其语法是:

欧拉公式为:
\begin{equation}\label{equ:equation1}
e^{ix}=\cos x+i\sin x
\end{equation}

显示的效果为:
欧拉公式为:
\[
e^{ix}=\cos x+i\sin x
\]

要注意的是,在实际的LaTeX环境下,公式的右侧会有编号,由于我在网页中无法完全模拟LaTeX环境,所以编号显示不出来。

这两种基本语法形式属于TeX语法,事实上LaTeX有自己的语法,但我觉得不如TeX语法简洁,使用中是兼容TeX语法的,所以只要掌握一种就好了。只有TeX和LaTeX的关系,感兴趣的同学请自己搜索。

交叉引用

和图片的交叉引用一样,使用

\ref{equ:xxx}

在行文中引用即可。在任何情况下使用交叉引用都要记得带标签的类别,也就是equ, fig之类的。

语法规则

从上面简单的例子中,可以看出,在公式中,可以使用数字、运算符号等元素,但由于数学中很多特殊的元素是无法直接输入的,所以必须通过命令来表示。和其他的LaTeX命令一样,用来表示数学符号的命令由“\”开始,如果带有参数,会以大括号的形式设置参数。例如:

\symbol{参数1}{参数2}...

除此之外,上下标因为非常常用,就可以通过“^”和“_”符号来进行标识。下一节我们会将常见的公式公式形式展现给大家。

公式的各种形式

数字与符号

在公式输入中,数字和英文字母是直接从键盘输入即可,对于希腊字母和其他,需要通过公式命令才可以输入,请看后文中的希腊字母表(电阻单位欧姆就是大写的Omega)。

运算符中\(+,-,=,<,>,[,],(,),!\)可以直接输入,标准的乘除号本身键盘上也没有,分别为 \times和\div。

上下标

上下标是公式中很常用的表示形式,在LaTeX表现形式很简单。上标使用 “^”,也就是美式键盘的主键区数字键-6上面的符号,下标就是下划线“_”。使用方法如下:

A^{bc}_{de}

效果是:\(A^{bc}_{de}\),这里需要注意的是,如果上标只有一个字符的时候,是可以不加大括号的,不过建议大家不要省略,以免在后面修改公式的时候出错。上下标不仅仅可以是符号,也可以是各种复杂的表达式。

对于一些特殊的运算符,下标的位置可能是在运算符下面的,例如求极限:

\lim_{x \to \infty} \exp(-x) = 0

其显示效果是:
\[\lim_{x \to \infty} \exp(-x) = 0\]

分数

分数的命令是:

\frac{分子}{分母}

分数的命令很好记,就是英文fraction的缩写。分子分母可以是任何形式的表达式,当然也可以是分数的嵌套。例如:

z=\frac{\frac{1}{a}+\frac{1}{b}}{\frac{e}{f}-g}

显示效果为:\[z=\frac{\frac{1}{a}+\frac{1}{b}}{\frac{e}{f}-g}\]

还有另外一种斜着表示的分数,显示效果为\(^a/_b\),适用于inline模式,其语法为:

^a/_b

根号

根号的基本语法有点特殊,可以带有两个参数,但是开方次数是在中括号里的:

\sqrt[n]{m}

举一个一元二次方程求根公式的例子:

x=\frac{-b\pm \sqrt[2]{b^2-4ac}}{2a}

效果是:
\[x=\frac{-b\pm \sqrt[2]{b^2-4ac}}{2a}\]

累加和积分

累加和积分的命令是 \sum 和 \int, 两种符合的上下标分别用 “^” 和 “_” 来定义。例如:

\sum_{n=1}^{10}\frac{1}{n}
\int_{x=1}^{10}\frac{1}{x}\,mathrm{d}x

其效果是:
\[\sum_{n=1}^{10}\frac{1}{n}\]
\[\int_{x=1}^{10}\frac{1}{x}\,\mathrm{d}x\]

在inline模式的时候,累加和积分限制之类的信息会被放在符号右侧以节省空间。

另外还有多种类似于累加的运算符,用法是很类似的,下面将所有的类似运算符都列出:

\(\sum\)
\sum
\(\prod\)
\prod
\(\coprod\)
\coprod
\(\bigoplus\)
\bigoplus
\(\bigotimes\)
\bigotimes
\(\bigodot\)
\bigodot
\(\bigcup\)
\bigcup
\(\bigcap\)
\bigcap
\(\biguplus\)
\biguplus
\(\bigsqcup\)
\bigsqcup
\(\bigvee\)
\bigvee
\(\bigwedge\)
\bigwedge
\(\int\)
\int
\(\oint\)
\oint
\(\iint\)
\iint
\(\iiint\)
\iiint
\(\iiiint\)
\iiiint
\(\idotsint\)
\idotsint

有时候在累加或者二重积分的时候,会在运算符号下面加入不止一行的限制条件:
\[\sum_{\substack{
i>0 \\
j>0
}}
P(i,j)\]
其语法形式是:

\sum_{\substack{
   i&gt;0 \\
   j&gt;0
  }} 
 P(i,j)

各种括号

各种括号的用法为:

( x ),[ x ],\{ x \},| x |,\| x \|,\langle x \rangle,
\lfloor x \rfloor, \lceil x \rceil, \ulcorner x \urcorner

其显示效果为:
\[( x ),[ x ],\{ x \},| x |,\| x \|,\langle x \rangle, \lfloor x \rfloor, \lceil x \rceil, \ulcorner x \urcorner
\]

有时候,括号里会有很高的公式,例如分数,这时候需要把括号也同样变高:

z=\left( \frac{1-x}{1+y^2} \right)

效果为:
\[z=\left( \frac{1-x}{1+y^2} \right)\]

矩阵

矩阵是工程数学中最常用的表达形式,在LaTex中支持几乎所有的矩阵形式,矩阵的最简单形式是:

 \begin{matrix}
  a &amp; b &amp; c \\
  d &amp; e &amp; f \\
  g &amp; h &amp; i
 \end{matrix}

效果是:
\[
\begin{matrix}
a & b & c \\
d & e & f \\
g & h & i
\end{matrix}
\]

在插入矩阵的时候,每一列之间用 & 符号隔开,每一行用 \\ 来换行即可。

但是我们使用矩阵的时候往往是在两边使用括号、中括号、大括号或者竖线来表达不同的含义的,在这里我们并不需要使用上一小节中讲的使用括号的方法插入括号,而是直接修改 \begin{}里的环境名称即可,支持的环境有:

pmatrix: (), 括号

bmatrix: [], 中括号

Bmatrix: {}, 大括号

vmatrix: | |, 竖线

Vmatrix: || ||, 双竖线。

请大家多多尝试这些环境。

有些时候,我们会使用点点点来省略重复或者有规律的项,这时候可以使用类似的语法:

A_{m,n} = 
 \begin{bmatrix}
  a_{1,1} &amp; a_{1,2} &amp; \cdots &amp; a_{1,n} \\
  a_{2,1} &amp; a_{2,2} &amp; \cdots &amp; a_{2,n} \\
  \vdots  &amp; \vdots  &amp; \ddots &amp; \vdots  \\
  a_{m,1} &amp; a_{m,2} &amp; \cdots &amp; a_{m,n} 
 \end{pmatrix}

\[
A_{m,n} =
\begin{bmatrix}
a_{1,1} & a_{1,2} & \cdots & a_{1,n} \\
a_{2,1} & a_{2,2} & \cdots & a_{2,n} \\
\vdots & \vdots & \ddots & \vdots \\
a_{m,1} & a_{m,2} & \cdots & a_{m,n}
\end{bmatrix}
\]

所有的点的表示形式如下:

\(\dots\)
\dots
\(\ldots\)
\ldots
\(\cdots\)
\cdots
\(\vdots\)
\vdots
\(\ddots\)
\ddots

重音符号

重音符号在公式中常有不同的含义,有的用来指示向量,有的在文章中定义了具体的操作,常见的重音符号有:

\(a’\)
a’
\(a”\)
a”
\(\hat{a}\)
\hat{a}
\(\bar{a}\)
\bar{a}
\(\grave{a}\)
\grave{a}
\(\acute{a}\)
\acute{a}
\(\dot{a}\)
\dot{a}
\(\ddot{a}\)
\ddot{a}
\(\not{a}\)
\not{a}
\(\mathring{a}\)
\mathring{a}
\(\overrightarrow{AB}\)
\overrightarrow{AB}
\(\overleftarrow{AB}\)
\overleftarrow{AB}
\(\overline{aaa}\)
\overline{aaa}
\(\check{a}\)
\check{a}
\(\breve{a}\)
\breve{a}
\(\vec{a}\)
\vec{a}
\(\dddot{a}\)
\dddot{a}
\(\ddddot{a}\)
\ddddot{a}
\(\widehat{AAA}\)
\widehat{AAA}
\(\widetilde{AAA}\)
\widetilde{AAA}
\(\stackrel\frown{AAA}\)
\stackrel\frown{AAA}
\(\tilde{a}\)
\tilde{a}
\(\underline{a}\)
\underline{a}

今天这一讲可以满足大家基本的公式书写需求了,请大家不断的尝试,否则还是无法熟练的掌握LaTeX中公式的书写的。这一讲确实有一些枯燥,不要尝试记住所有的命令,只要明白规则,然后知道可以在我这里查到就可以了。下一讲我会将所有常用的符合命令全部列给大家。


参考文献:

https://en.wikibooks.org/wiki/LaTeX/Mathematics 这个网站讲的也非常好,就是太多了,我把有用的拿出来给大家讲讲。

另外感谢MathJax提供了HTML的LaTeX公式插件。

公式这一讲虽然比较枯燥,但是我写起来真是特别麻烦,而且专门去弄了插件来在网页上显示公式。请大家多多支持,扫码支持或者通过支付宝13584435676。比特币钱包是1NBzPagXqFHrwzxT4haGnX7S9FuwTkvX39.


作者:程飞。未经作者允许请勿转载其他网站,可以转载朋友圈。阅读量: 2,418

发表评论

电子邮件地址不会被公开。 必填项已用*标注