2019-02-12_要编写数学公式,何不试试LaTeX语法?

好久没有登录简书了,前几天因为需要搜一些东西,偶然中登录简书看了下,竟然让我在不经意间看到简书现在居然支持公式了。真的是“千呼万唤始出来”,想想以前还写了篇《要编写数学公式,何不试试LaTeX语法?》,但是用简书发不出来,只能导出成图片后再发。今天正好比较懒,不想干正事,决定用简书直接把这篇闲文重新发一遍。
——2019年2月12日

前言:如果只是偶尔需要编写数学公式,而且大多时候只是在Word里编写,那么只要会使用鼠标就可以了。如果想稍微提高公式的编辑速度,可以试试快捷键。但如果工作、学习中经常需要编写数学公式,经常需要在Word、网页、Markdown中编写数学公式,我个人的看法是:学一学用LaTeX语法编写公式吧!!!

我是一个不懂编程的小白,白的不能再白的那种。因此,看到密密麻麻的代码,会天然产生一种恐惧心理。有时候写东西时需要写数学公式,我常常想都没想就选择了最直观的那种方法——先选择和公式形式差不多的占位符,然后再单击每个空位录入字符。用MathType编写过公式的朋友们看到这里可能都会会心的一笑,有的可能还会使用几个快捷键,比如录入分式时使用快捷键Ctrl+F,写上标时使用快捷键Ctrl+H。公式少而且应用环境单一时尚可,如果公式较多、较复杂,而且需要在网页、Markdown中显示公式,这种方法就会显得捉襟见肘、不堪敷用。此时,使用LaTeX语法编写公式则会显得优雅、高效许多。

想想,只需要花一点时间学一学LaTeX语法,便能让公式在Word、Markdown中显示,这是一件多划算的事情。每当想到这我都会窃喜不已,仿佛自己捡到了什么大便宜,也战胜了对密密麻麻的代码的恐惧,于是决定学一学如何用LaTeX语法编写公式。现将我对LaTeX语法编写公式的认知整理如下,与君共勉!!!


1. 公式标记

  • 行内公式
    行内公式,顾名思义就是和段落文本混排的公式,标记方法为:$公式$。比如:
在这个例子里,$E=mc^2$ 属于行内公式,因此它会和其他段落文本混合编排在一起。

渲染结果:

在这个例子里,E=mc^2 属于行内公式,因此它会和其他段落文本混合编排在一起。

  • 行间公式
    行间公式,顾名思义就是单独在文本段落间编排的公式,标记方法为:$$公式$$。比如:
在这个例子里,$$E=mc^2$$属于行间公式,因此它不会和其他段落文字混合编排在一起。

渲染结果:

在这个例子里,
E=mc^2
属于行间公式,因此它不会和其他段落文字混合编排在一起。

为了书写直观,建议这样写:

在这个例子里,    
$$E=mc^2$$    
属于行间公式,因此它不会和其他段落文字混合编排在一起。

行间公式比较复杂时候,建议这样写:

在这个例子里,    
$$    
E=mc^2    
$$    
属于行间公式,因此它不会和其他段落文字混合编排在一起。

2. 常用语法

2.1. 括号

()[]|表示自己,{}表示被括起来的部分是一组内容,当要显示大号的括号或分隔符时,要用\left和\right命令

使用\left和\right时公式的括号与不使用\left和\right时公式的括号对比如下:
使用\left和\right:
\left(3+\frac{7x+5}{1+y^2}\right)
不使用\left和\right:
(3+\frac{7x+5}{1+y^2})
显然,这种情况下使用大号的括号更美观。

实例:
x_{22}
x_{22}
y^{(x)}
y^{(x)}
f(x,y,z)=3y^2z\left(3+\frac{7x+5}{1+y^2}\right)
f(x,y,z)=3y^2z\left(3+\frac{7x+5}{1+y^2}\right)

\left和\right得成对使用,但是有时候我们希望其中一个后面跟的内容不显示,可以使用\left.或\right.隐藏其后面紧跟的内容。如:

\left.\frac{{\rm d}u}{{\rm d}x}\right|_{x=0}

\left.\frac{{\rm d}u}{{\rm d}x}\right|_{x=0}

2.2. 上下标

^表示后面内容为上标,_表示后面内容为下标。如:

a_i
a_i
a^i
a^i
x^{y^z}=\left(1+e^x\right)^{-2xy^w}
x^{y^z}=\left(1+e^x\right)^{-2xy^w}

2.3. 分数

分数的表现方法有2种:
一是横向书写,用斜线/作分号,写法为:分子/分母,如:
(x+y)/2
(x+y)/2
另一种是使用LaTeX语法,写法为:\frac{分子}{分母},如:
\frac{x+y}{2}
\frac{x+y}{2}

2.4. 根式

根式的写法为:\sqrt[n]{内容},如果是2次方根,[n]省略不写,如:
\sqrt{2}
\sqrt{2}
\sqrt[a]{x}
\sqrt[a]{x}
\sqrt{1+\sqrt[p]{1+a^2}}
\sqrt{1+\sqrt[p]{1+a^2}}

2.5. 求和

求和的写法为:\sum_下标^上标紧跟公式内容,如:

(x,y)=\sum_{i=1}^nx_iy_i

(x,y)=\sum_{i=1}^nx_iy_i

时隔这么久,再看看当初自己写的公式,觉得很多地方还有不足。比如上面的写法虽然也行,但是现在让我写,为了更直观明了,我会这样写。即:在x_iy_i两边加一个花括号{}
——2019年2月12日 注

(x,y)=\sum_{i=1}^n{x_iy_i}

(x,y)=\sum_{i=1}^n{x_iy_i}

强制上下限在上下侧的写法为:\limits
强制上下限在右侧的写法为:\nolimits
例如:
强制上下限在上下侧时,求和的写法为:\sum\limits_下标^上标紧跟公式内容,如:
\sum\limits_{k=1}^nkx
\sum\limits_{k=1}^nkx
强制上下限在右侧时,求和的写法为:\sum\nolimits_下标^上标紧跟公式内容,如:
\sum\nolimits_{k=1}^nkx
\sum\nolimits_{k=1}^nkx

2.6. 积分

积分写法为:\int_下标^上标紧跟公式内容,如:
\int_a^bf(x){\rm d}x
\int_a^bf(x){\rm d}x

2.7. 极限运算

极限运算写法为:\lim_下标紧跟公式内容,如:
\lim_{x \to x^{(0)}}f(x)=a
\lim_{x \to x^{(0)}}f(x)=a
一般习惯将下标写在lim下面,所以建议这样写:

\lim\limits_{x \to x{(0)}}f(x)=a

\lim\limits_{x \to x{(0)}}f(x)=a

2.8. 上划线和下划线

  • 上划线写法:\overline{公式内容},如:
    \overline{a+b}
    \overline{a+b}

  • 下划线写法:\underline{公式内容},如:
    \underline{a+b}
    \underline{a+b}

2.9. 上花括号和下花括号

  • 上花括号:\overbrace{公式内容}^{内容},如:
    \overbrace{a+b+c+\dots+n}^{m个}
    \overbrace{a+b+c+\dots+n}^{m个}
  • 下花括号:\underbrace{公式内容}_{内容},如:
    \underbrace{a+b+c+\dots+n}_{m个}
    \underbrace{a+b+c+\dots+n}_{m个}

2.10. 省略号和点号

  • 跟文本底线对齐的省略号:\ldots,如:
    i \ldots n
    i \ldots n
  • 跟文本中线对齐的省略号:\cdots,如:
    i \cdots n
    i \cdots n
  • 句点式乘号:\cdot,如:
    \vec{a} \cdot \vec{b}=\vec{c}
    \vec{a} \cdot \vec{b}=\vec{c}

2.11. 向量

向量写法为:\vec{内容},如:
\vec{a}\cdot\vec{b}=0

\vec{a}\cdot\vec{b}=0

2.12. 公式换行

换行的写法:\\,如:

\left\{ \begin{array}{c} u^2-v&=&3x+y,\\ u-2v^2&=&x-2y.\\ \end{array} \right.

$$
\left\{ 
\begin{array}{c}
    u^2-v & = & 3x+y,\\
    u-2v^2 & = & x-2y.\\
\end{array} 
\right. 
$$

&是对齐点,表示在此对齐。

再比如:

\cos2\theta = \cos^2\theta-\sin^2\theta\\ = 2\cos^2\theta

\cos2\theta=\cos^2\theta-\sin^2\theta\\
=2\cos^2\theta

2.13. 矩阵

对于少于10列的矩阵,可使用 matrix无括号,pmatrix圆括号( ),bmatrix方括号[ ],Bmatrix花括号{ },vmatrix竖线| |和 Vmatrix 双竖线|| ||等环境。
这些环境的使用方法为:

\begin{matrix}    
中间写公式
\end{matrix}

例如(matrix):

\begin{matrix} -1& 9& 2& 9&\\ 3& 2& 3& 19&\\ \end{matrix}

$$
\begin{matrix}
-1& 9& 2& 9&\\   
3& 2& 3& 19&\\
\end{matrix}
$$

再如(pmatrix(圆括号)):

\begin{pmatrix} -1& 9& 2& 9&\\ 3& 2& 3& 19&\\ \end{pmatrix}

$$
\begin{pmatrix}
-1& 9& 2& 9&\\   
3& 2& 3& 19&\\
\end{pmatrix}
$$

当矩阵规模超过10列,或者上述矩阵类型不敷需求,可使用 array 环境。
array环境的使用方法为:

$$
\begin{array}{ccc}    
中间写公式    
\end{array}

例如:

\left[ \begin{array}{ccc} -1& 9& 2& \\ 3& 2& 3& \\ \end{array} \right]

$$
\left[
\begin{array}{ccc}    
-1&    9&    2&    \\    
3&    2&    3&    \\        
\end{array}
\right]
$$

{ccc}表示列样式,c的多少表示列的多少,c表示居中对齐center,也可以使用l,表示靠左对齐left,如{lll}

LaTeX语法中如果需要显示空格#$%&_{},可以使用反斜线\转义。看过《Markdown快速上手指南》的朋友会发现,LaTeX语法的转义和Markdown的转义如出一辙啊。

3. 空格

序号 空格大小 LaTeX语法 效果 说明
1 quad空格 a \quad b a \quad b 一个m的宽度
2 两个quad空格 a \qquad b a \qquad b 两个m的宽度
3 大空格 a\b a\b 1/3m宽度
4 中等空格 a;b a\\;b 2/7m宽度
5 小空格 a,b a\\,b 1/6m宽度
6 没有空格 ab ab 正常
7 紧贴 a!b a\\!b 缩进1/6m宽度

4. 希腊字母

序号 大写 LaTeX代码 小写 LaTeX代码 中文名称
1 Α A α \alpha 阿尔法
2 Β B β \beta 贝塔
3 Γ \Gamma γ \gamma 伽马
4 Δ \Delta δ \delta 德尔塔
5 Ε E ε \epsilon 伊普西隆
6 Ζ Z ζ \zeta 泽塔
7 Η H η \eta 伊塔
8 Θ \Theta θ \theta 西塔
9 Ι I ι \iota 约塔
10 Κ K κ \kappa 卡帕
11 Λ \Lambda λ \lambda 兰姆达
12 Μ M μ \mu
13 Ν N ν \nu
14 Ξ \Xi ξ \xi 克西
15 Ο O ο \omicron 欧米克隆
16 Π \Pi π \pi
17 Ρ P ρ \rho
18 Σ \Sigma σ \sigma 西格玛
19 Τ T τ \tau
20 Υ Y υ \upsilon 宇普西隆
21 Φ \Phi φ \phi 弗爱
22 Χ X χ \chi
23 Ψ \Psi ψ \psi 普赛
24 Ω \Omega ω \omega 欧米伽

5. 关系运算符

序号 运算符 LaTeX代码
1 ± \pm
2 × \times
3 ÷ \div
4 \leq
5 \geq
6 \neq
7 \approx
8 \sum
9 \prod
10 \mid
11 \nmid
12 \cdot
13 \circ
14 \ast
15 \bigodot
16 \bigotimes
17 \bigoplus
18 \equiv
19 \coprod

6. 微积分运算符

序号 运算符 LaTeX代码
1 lim \lim
2 \int
3 \iint
4 \iiint
5 ∬∬ \iiiint
6 \oint
7 \infty
8 \nabla
9 \prime

7. 对数运算符

序号 运算符 LaTeX代码
1 log \log
2 lg \lg
3 ln \ln

8. 字体转换

要对公式的某一部分字符进行字体转换,可以用{\rm 需转换的部分字符}命令,其中\rm可以参照下表选择合适的字体。一般情况下,公式默认为意大利体。

序号 LaTeX代码 字体
1 \rm 罗马体(整体)
2 \it 意大利体(斜体)
3 \bf 黑体
4 \cal 花体
5 \sl 倾斜体
6 \sf 等线体
7 \mit 数学斜体
8 \tt 打字机字体
9 \sc 小体大写字母

9. 集合运算符

序号 符号 LaTeX代码
1 \emptyset
2 \in
3 \notin
4 \subset
5 \supset
6 \subseteq
7 \supseteq
8 \bigcap
9 \bigcup
10 \bigvee
11 \bigwedge
12 \biguplus
13 \bigsqcup

10. 三角运算符

序号 符号 LaTeX代码
1 \bot
2 \angle
3 30∘ 30^\circ
4 sin \sin
5 cos \cos
6 tan \tan
7 cot \cot
8 ec \sec
9 csc \csc

11. 逻辑运算符

序号 符号 LaTeX代码
1 \because
2 \therefore
3 \forall
4 \exists
5 \not=
6 \not>
7 ⊄ \not\subset
8 ¬ \neg

12. 带帽符号

序号 符号 LaTeX代码
1 \hat{y} \hat{y}
2 \check{y} \check{y}
3 \breve{y} \breve{y}
4 \tilde{x} \tilde{x}

13. 箭头

序号 符号 LaTeX代码
1 \uparrow
2 \downarrow
3 \Uparrow
4 \Downarrow
5 \rightarrow
6 \leftarrow
7 \Rightarrow
8 \Leftarrow
9 \longrightarrow
10 \longleftarrow
11 \Longrightarrow
12 \Longleftarrow

14. LaTeX语法编写公式案例

u=\frac{1}{\sqrt{x^2+y^2-4}}

$$
u=\frac{1}{\sqrt{x^2+y^2-4}}
$$

设函数
f(\frac{y}{x})=\frac{\sqrt{x^2+y^2}}{x},x>0,
f{(x)}

设函数
$$
f(\frac{y}{x})=\frac{\sqrt{x^2+y^2}}{x},x>0,
$$
求$f{(x)}$

注:公式中的是中文状态下的标点符号。

\left| x^{(k)}-x^{(0)} \right| =\sqrt{\sum\limits_{i=1}^n \left( x_i^{(k)}-x_i^{(0)} \right)^2} \leq \sqrt{n} \max\limits_{1 \leq i \leq n} \left| x_i^{(k)}-x_i^{(0)} \right|

$$
\left|
    x^{(k)}-x^{(0)}
\right|
=\sqrt{\sum\limits_{i=1}^n \left( x_i^{(k)}-x_i^{(0)} \right)^2} 
\leq \sqrt{n} \max\limits_{1 \leq i \leq n} \left| x_i^{(k)}-x_i^{(0)} \right|
$$

\lim\limits_{x \to x^{(0)}} \frac{f(x)}{g(x)} = \frac{\lim\limits_{x \to x^{(0)}} f(x)}{\lim\limits_{x \to x^{(0)}} g(x)} =\frac{a}{b}

$$
\lim\limits_{x \to x^{(0)}} \frac{f(x)}{g(x)}
= \frac{\lim\limits_{x \to x^{(0)}} f(x)}{\lim\limits_{x \to x^{(0)}} g(x)}
=\frac{a}{b}
$$

f(x,y) = \left\{ \begin{array}{l} (x+y)\sin\frac{1}{x}\\sin\frac{1}{y},xy\neq0,\\ 0,xy=0,\\ \end{array} \right.

则由于

\left| f(x,y) \right| \leq \left| x+y \right|,

可知\lim\limits_{(x,y) \to (0,0)}f(x,y)=0.但显然有\lim\limits_{x \to 0}\lim\limits_{y \to 0}f(x,y)都不存在.

设

$$
f(x,y) =
\left\{
    \begin{array}{l}
        (x+y)\sin\frac{1}{x}\sin\frac{1}{y},xy\neq0,\\
        0,xy=0,\\
    \end{array}
\right.
$$

则由于

$$
\left|
    f(x,y)
\right|
\leq
\left|
    x+y
\right|,
$$

可知$\lim\limits_{(x,y) \to (0,0)}f(x,y)=0$.但显然有$\lim\limits_{x \to 0}\lim\limits_{y \to 0}f(x,y)$都不存在.

\sum\limits_{i,y=1}^n {a_{ij}x_ix_j}为实对称正定二次型,b_i(i=1,\cdots,n)c为常数.计算

\lim\limits_{R \to \infty} \overbrace{\int \cdots \int}^n_{\left| x \right| \leq R} {\rm exp} \\{-\sum\limits_{i,j=1}^n a_{ij}x_ix_j + 2\sum\limits_{i=1}^n b_ix_i + c \\} {\rm d}x_1 \cdots {\rm d}x_n,

其中\left| x \right|=\sqrt{x_1^2+\cdots+x_n^2}.

设$\sum\limits_{i,y=1}^n {a_{ij}x_ix_j}$为实对称正定二次型,$b_i(i=1,\cdots,n)$和$c$为常数.计算

$$
\lim\limits_{R \to \infty} \overbrace{\int \cdots \int}^n_{\left| x \right| \leq R} {\rm exp} \{-\sum\limits_{i,j=1}^n a_{ij}x_ix_j + 2\sum\limits_{i=1}^n b_ix_i + c \} {\rm d}x_1 \cdots {\rm d}x_n,
$$

其中$\left| x \right|=\sqrt{x_1^2+\cdots+x_n^2}$.