LaTeX 常被用作科学文献的排版,基本上论文都是用 Tex 进行排版,生成 PDF。得益于 Markdown 标记语言的推广,排版交给了 Markdown 渲染器,而 LaTeX 只负责生成数学公式。采用 Markdown 书写数学公式的最大原因还是因为字丑,写下的公式隔几天就认不得了。
整个篇章结构如下:
LaTeX 环境
支撑 LATEX 的环境有很多,区别于传统的 Tex,一些 Markdown 编辑器都支持,比方说:
这里推荐使用 Obsidian 作为笔记工具,Obsidian 支持大量插件,可以方便进行同步。尤其是 Completr
插件,能够实现前后文补全和 LATEX 数学公式的提示补全。
单行 LaTeX 公式
下面总结的是在数学与物理中高频使用的 LATEX 符号,使用这些基本上可以完成绝大部分的数学与物理公式推导。个人感觉 LATEX 其实比 Word 之类的,写数学公式要方便,写 LATEX 就和写代码一样,很快,很方便,不用费心思去寻找某一个符号。用 LATEX 写数学公式,学起来不难,多打几个公式就熟练了。
通用
代码 |
符号 |
说明 |
a^{b} |
ab |
上标 |
a_{b} |
ab |
上标 |
a_{_b} |
ab |
下标多字符 |
\frac{a}{b} |
ba |
分数(fraction) |
基本
运算符
代码 |
符号 |
说明 |
\times |
× |
乘号 |
\cdot |
⋅ |
中间点(乘法) |
\div |
÷ |
除号 |
\sqrt{a} |
a |
根号 |
\sqrt[n]{2} |
n3 |
根号 |
a \bmod b |
amodb |
同余 |
键盘上有的符号,比方说 +
、-
、=
都没有对应的 LATEX 表达式,需要用这些符号时直接输入即可。
符号
代码 |
符号 |
说明 |
\pm |
± |
正负号 |
\le |
≤ |
小于等于 |
\ge |
≥ |
大于等于 |
\neq |
= |
不等于 |
\approx |
≈ |
约等于 |
\equiv |
≡ |
恒等于 |
\propto |
∝ |
正相关于 |
上表没有没有大于号、小于号以及等于号,因为他们就是键盘上的 >
、<
和 =
。
集合
代码 |
符号 |
说明 |
\Rightarrow |
⇒ |
双线右箭头 |
\rightarrow |
→ |
右箭头 |
\Leftarrow |
⇐ |
双线左箭头 |
\Leftrightarrow |
⇔ |
双箭头 |
\in |
∈ |
元素属于 |
\subset |
⊂ |
子集 |
\subseteq |
⊆ |
真子集 |
\exists |
∃ |
存在 |
\forall |
∀ |
对于所有 |
\boxed |
□ |
正方形(证毕) |
\{x \in s∣0 \leq x < \infty \} |
{x∈s∣0≤x<∞} |
集合 |
这里的符号,在别的地方会有不同的含义,请以具体运用的地方为准。
对于 {
和 }
两个符号是 LaTeX 保留格式,需要加上斜杆 \
进行转义,也就是 \{
和 \}
。
数列
代码 |
符号 |
说明 |
a_{1} + a_{2} + \cdots + a_{n} |
a1+a2+⋯+an |
省略号 |
\sum \limits_{i=1}^{n} |
i=1∑n |
连加 |
\sum_{i=1}^{n} |
∑i=1n |
连加(单行) |
|
|
|
- For modular equivalence, use
\pmod
like this: a\equiv b\pmod n
a≡b(modn)�≡�(mod�). For the binary mod operator, use \bmod
like this: a\bmod 17
微积分
算式
代码 |
符号 |
说明 |
\lim \limits_{\Delta \rightarrow 0} x_{\Delta} |
Δ→0limxΔ |
极限 |
\inf |
∫ |
积分号 |
\inf^{1}_{0} \, dx |
∫01dx |
定积分 |
dx |
dx |
微分 |
\partial x |
∂x |
偏微分 |
\sum \limits_{i=1}^{n} |
i=1∑n |
连加 |
\sum_{i=1}^{n} |
∑i=1n |
连加(单行) |
\prod \limits_{i=1}^{n} |
i=1∏n |
连乘 |
\oint_{G} |
∮G |
环积分 |
\iinf |
∬ |
重积分号 |
有的地方会说微分应当是用\rm{d} x
也就是 dx,这样子看起来更正式一点。但实际上用 dx
即 dx 就行了,没必要那么麻烦。
连加和极限推荐用 \limits
来进行约束,这样子可以强制上下标,而非并做一行 limΔ→0xΔ 和 ∑i=1n 。
符号
代码 |
符号 |
说明 |
\infty |
∞ |
无穷 |
实部虚部
代码 |
符号 |
说明 |
\Re\{\} |
ℜ{a} |
虚部 |
\Im\{\} |
ℑ{a} |
虚部 |
同余取模
代码 |
符号 |
说明 |
a\bmod 17 |
amod17 |
模(余) |
a\equiv b\pmod n |
a≡b(modn) |
同余 |
物理
代码 |
符号 |
说明 |
\vec{F} |
F |
矢量 |
\hat{x} |
x^ |
尖帽 |
\dot{x} |
x˙ |
上一点/一阶导数 |
\ddot{x} |
x¨ |
上两点/二阶导数 |
\nabla |
∇ |
算子 |
字母表
代码 |
字母 |
代码 |
字母 |
\alpha |
α |
\nu |
ν |
\beta |
β |
\xi |
ξ |
\gamma |
γ |
\omicron |
ο |
\delta |
δ |
\pi |
π |
\epsilon |
ϵ |
\rho |
ρ |
\zeta |
ζ |
\sigma |
σ |
\eta |
η |
\tau |
τ |
\theta |
θ |
\upsilon |
υ |
\iota |
ι |
\phi |
ϕ |
\kappa |
κ |
\chi |
χ |
\varkappa |
ϰ |
\psi |
ψ |
\lambda |
λ |
\omega |
ω |
\mu |
μ |
|
|
异体字
代码 |
字母 |
代码 |
字母 |
代码 |
字母 |
\Epsilon |
E |
E |
ϵ |
\varepsilon |
ε |
\Theta |
Θ |
\theta |
θ |
\vartheta |
ϑ |
\Kappa |
K |
K |
κ |
\varkappa |
ϰ |
\Pi |
Π |
\pi |
π |
\varpi |
ϖ |
\Rho |
P |
P |
ρ |
\varrho |
ϱ |
\Sigma |
Σ |
\sigma |
σ |
\varsigma |
ς |
\Phi |
Φ |
\phi |
ϕ |
\varphi |
φ |
一些希腊字母的大写,在 LATEX 当中就是英文字母大写。
字体设置
文字样式
代码 |
符号 |
说明 |
\boxed{text} |
text |
文字加边框 |
A\large{A} |
AA |
加大字体 |
A\small{A} |
AA |
缩小字体 |
A\boldsymbol{A} |
AA |
加粗字体 |
A\mathbb{A} |
AA |
空心字体 |
详细的字体形式可以查阅 LATEX 的文档, LATEX 也支持彩色显示。
其他
代码 |
符号 |
说明 |
\stackrel{a}{b} |
ba |
下大上小 |
a \atop b |
ba |
下大等大小 |
\overline{a + b} |
a+b |
上划线,共轭 |
\underline{a + b} |
a+b |
上划线,共轭 |
在 LATEX 中,上方符号一般带 over
下方一般带 under
。
多行 LaTeX 公式
括号
括号大小自适应
使用 \left
和 \right
关键词,实现自适应大小的括号:
sin(x)
小号:
sin(x)
中号:
sin(x2)
大号:
sin(2πx)
超大号:
sin(2ex)
无论里面的内容多大,都会根据 \left
和 \right
之间的高度来调整大小。
上下括号
上括号 \overbrace
下括号 \underbrace
123321a+b+c+d+e+f
1
| \underbrace{a+b+c+d+e+f}_{123321}
|
和上括号:
a+b+c+d+e+f123321
1
| \overbrace{a+b+c+d+e+f}^{123321}
|
如果这里的括号显示残缺,十有八九是编辑器的缩放问题,导致渲染不完全,试着放大页面即可解决。
多行对齐
多行需要用到块,固定是 \begin{}
和 \end{}
组成对,不可嵌套,也不可交叠。
一般文本块的标识是 aligned
即 \begin{aligned}
和 \end{aligned}
,在块中使用 &
实现任意位置对齐,配合 \\
进行换行:
x+y+zy−z=1,=2,x>2z<1
1 2 3 4
| \begin{aligned} x + y + z &= 1, & x>2 \\ y-z&=2, &z<1 \end{aligned}
|
其中的 &
是对齐标志位,在 align
默认左边第一个左对齐,剩下一律靠右。
比方说傅里叶级数:
fN(x)=B0+k=1∑NBkcos(kω0x)+k=1∑NCksin(kω0x)
的各项系数,可以用 &
实现对齐:
⎩⎨⎧B0=T01∫0T0f(x)dxBk=T02∫0T0f(x)cos(kω0x)dx, (k∈[1,+∞), T0=ω02π)Ck=T02∫0T0f(x)sin(kω0x)dx, (k∈[1,+∞), T0=ω02π)
多行算式
用 \left \{
和 \right
标识对,包住了 \begin{aligned}
和 \end{aligned}
块,可以在块外面生成一个大括号,实现表达分段函数:
f(x)={1,2,x=0x=1
1 2 3 4 5 6 7
| f(x)= \left \{ \begin{aligned} &1, &x=0 \\ &2, &x=1 \\ \end{aligned} \right .
|
最简洁的是用 \cases{}
直接在括号里面输入公式,即可实现多行,优点是可以在 \begin{align}
和 \end{align}
对的块内使用,缺点是无法输入分数,至少我目前使用的渲染器不支持。
f(x)=
\cases{
1, &x=0 \\
2, &x=1 \\
}
1 2 3 4 5
| f(x)= \cases{ 1, &x=0 \\ 2, &x=1 \\ }
|
简洁起见,用 case
也就是 \begin{case}\end{cases}
对也可以实现:
f(x)={1,2,x=0x=1
1 2 3 4 5
| f(x)= \begin{cases} 1, &x=0 \\ 2, &x=1 \\ \end{cases}
|
注意这里的 \begin{case}\end{cases}
对固定是 {
形式的符号,无法改变。
阵列
数阵
数阵是 matrix
,即 \begin{matrix}
和 \end{matrix}
一对组成块,当中使用 &
做分割号,和其他块一样,采用 \\
作为换行标识。
1324
1 2 3 4
| \begin{matrix} 1 & 2 \\ 3 & 4 \\ \end{matrix}
|
行列式
行列式是 vmatrix
,即采用 \begin{vmatrix}
和 \end{vmatrix}
一对组成块:
1324
1 2 3 4
| \begin{vmatrix} 1 & 2 \\ 3 & 4 \\ \end{vmatrix}
|
矩阵
矩阵是 bmatrix
,采用 \begin{bmatrix}
和 \end{bmatrix}
一对:
[1324]
1 2 3 4
| \begin{bmatrix} 1 & 2 \\ 3 & 4 \\ \end{bmatrix}
|
带省略矩阵
带省略矩阵在矩阵的基础上,采用 \ddots
(⋱) 、 \vdots
(⋮) 和 \cdots
(⋯) 构成:
0⋮0⋯⋱⋯0⋮0
1 2 3 4 5
| \begin{bmatrix} 0 & \cdots & 0 \\ \vdots & \ddots & \vdots \\ 0 & \cdots & 0 \\ \end{bmatrix}
|
以上语法,可能看起来非常拥挤,实际上这样子写也是可以的:
1 2 3 4 5 6 7 8
| \begin{bmatrix} 0 & \cdots & 0 \\ \vdots & \ddots & \vdots \\ 0 & \cdots & 0 \\ \end{bmatrix}
|
表格
表格用的是 array
即 \begin{array}
与 \end{array}
一对,可以用来表示真值表:
a0011b0101XOR0110
1 2 3 4 5 6 7
| \begin{array}{|c|c|c|} a & b & XOR \\ \hline 0&0&0\\ 0&1&1\\ 1&0&1\\ 1&1&0\\ \end{array}
|
示例公式
只需要多写,多练习,就能很自然地掌握 LATEX 公式排版,事实上,LATEX 公式表中的公式只会用到一部分,只需要掌握这一小部分,就能应付绝大部分情况。
这里是一些数学和物理中常见的大型公式,基本上涵盖了大部分使用 LATEX 公式的情况。
欧拉公式
ejπejθ=1=cos(θ)+jsin(θ)
1 2 3 4 5
| \begin{aligned} e^{i \pi} &= 1 \\ e^{i\theta} &= \cos(\theta) + i\sin(\theta) \end{aligned}
|
平均数
HnGnAnQn=a11+a21+...+an1n=na1⋅a2⋅...⋅an=na1+a2+...+an=na12+a22+...+an2(调和平均数)(几何平均数)(算术平均数)(平方平均数)
1 2 3 4 5 6 7 8 9 10 11 12 13
| \begin{aligned} H_{n} &= \frac{n}{\frac{1}{a_{1}} + \frac{1}{a_{2}}+...+\frac{1}{a_{n}}} &(调和平均数)\\ \\ G_{n} &= \sqrt[n]{a_{1} \cdot a_{2} \cdot ... \cdot a_{n}} &(几何平均数)\\ \\ A_{n} &= \frac{a_{1}+ a_{2}+...+a_{n}}{n} &(算术平均数)\\ \\ Q_{n} &= \sqrt{\frac{a^{2}_{1} + a^{2}_{2} +...+ a^{2}_{n}}{n}} &(平方平均数)\\ \end{aligned}
|
和差化积,积化和差
积化和差
cos(α)cos(β)sin(α)sin(β)sin(α)cos(β)cos(α)sin(β)=2cos(α+β)+cos(α−β)=2cos(α−β)−cos(α+β)=2sin(α−β)+sin(α+β)=2sin(α+β)−sin(α−β)
1 2 3 4 5 6 7 8 9
| \begin{aligned} \cos(\alpha)\cos(\beta) &=\frac{\cos(\alpha+\beta) + \cos(\alpha-\beta)}{2} \\ \sin(\alpha)\sin(\beta) &= \frac{\cos(\alpha-\beta) - \cos(\alpha+\beta)}{2} \\ \sin(\alpha)\cos(\beta) &=\frac{\sin(\alpha-\beta) + \sin(\alpha+\beta)}{2} \\ \cos(\alpha)\sin(\beta) &= \frac{\sin(\alpha+\beta) - \sin(\alpha-\beta)}{2}\\ \end{aligned}
|
和差化积
cos(α)+cos(β)cos(β)−cos(α)sin(β)+sin(α)sin(α)−sin(β)=2cos(2α+β)cos(2α−β)=2sin(2α+β)sin(2α−β)=2sin(2α+β)cos(2α−β)=2cos(2α+β)sin(2α−β)
1 2 3 4 5 6 7 8 9 10
| \begin{aligned} \cos(\alpha) + \cos(\beta) &= 2\cos(\frac{\alpha+\beta}{2})\cos(\frac{\alpha-\beta}{2}) \\ \cos(\beta) - \cos(\alpha) &= 2\sin(\frac{\alpha+\beta}{2})\sin(\frac{\alpha-\beta}{2}) \\ \sin(\beta) + \sin(\alpha) &= 2\sin(\frac{\alpha+\beta}{2})\cos(\frac{\alpha-\beta}{2}) \\ \sin(\alpha) - \sin(\beta) &= 2\cos(\frac{\alpha+\beta}{2})\sin(\frac{\alpha-\beta}{2}) \\ \end{aligned}
|
麦克斯韦方程组
∇⋅E∇×E∇×B∇⋅B=c0ρ=∂t∂B=c0c2j=0
1 2 3 4 5 6 7 8 9
| \begin{aligned} \nabla \cdot E &= \frac{\rho}{c_{0}} \\ \nabla \times E &= \frac{\partial B}{\partial t} \\ \nabla \times B &= \frac{j}{c_{0}c^{2}} \\ \nabla \cdot B &= 0 \end{aligned}
|
麦克劳林级数
几个常见函数的麦克劳林级数展开:
excos(x)sin(x)=n=0∑+∞n!(jx)n=1+jx+2!(jx)2+3!(jx)3+...+2n!(jx)2n+(2n+1)!(jx)2n+1+...=n=0∑+∞(2n+1)!(−1)nxn=1−2!x2+4!x4+...+(2n)!(−1)nx2n+...=n=0∑+∞(2n+1)!(−1)nxn=x−3!x3+5!x5+...+(2n+1)!(−1)nx2n+1+...
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| \begin{aligned} e^{x} &= \sum\limits^{+\infty}_{n=0} \frac{(jx)^{n}}{n!} \\&= 1+ jx + \frac{(jx)^{2}}{2!} + \frac{(jx)^{3}}{3!} + ...+\frac{(jx)^{2n}}{2n!}+\frac{(jx)^{2n+1}}{(2n+1)!} +... \\ \cos(x) &= \sum\limits^{+\infty}_{n=0} \frac{(-1)^{n}x^{n}}{(2n+1)!} \\&= 1 - \frac{x^{2}}{2!}+\frac{x^{4}}{4!}+...+\frac{(-1)^{n}x^{2n}}{(2n)!}+... \\ \sin(x) &= \sum\limits^{+\infty}_{n=0} \frac{(-1)^{n}x^{n}}{(2n+1)!} \\&= x - \frac{x^{3}}{3!}+\frac{x^{5}}{5!}+...+\frac{(-1)^{n}x^{2n+1}}{(2n+1)!}+... \\ \end{aligned}
|
傅里叶变换
连续信号傅里叶级数
周期为 T 的连续信号 x(t) 变换到 无穷区间上 ∞ 离散的 ak
akx(t)=T1∫Tx(t)ejkω0tdt=k=−∞∑+∞akejkωt(ω02π=T)
1 2 3 4 5
| \begin{aligned} a_{k} &= \frac{1}{T} \int_{T} x(t) e^{j k \omega_{0}t}dt x(t) &= \sum \limits^{+\infty}_{k=-\infty} a_{k}e^{j k \omega t} &\left(\frac{2\pi}{\omega_{0}}= T\right)\\ \end{aligned}
|
连续信号傅里叶变换
周期延拓到无穷区间上 ∞ 的连续信号 x(t) 变换到 无穷区间上 ∞ 连续的 X(jω)
X(jω)x(t)=∫−∞+∞x(t)e−jωtdt=2π1∫−∞+∞X(jω)ejωtdω
1 2 3 4 5
| \begin{aligned} X(j \omega) &= \int^{+\infty}_{-\infty} x(t) e^{-j \omega t} dt \\ x(t) &= \frac{1}{2 \pi} \int^{+\infty}_{-\infty}X(j \omega) e^{j \omega t}d\omega \end{aligned}
|
离散信号傅里叶变换
延拓到无穷大的离散信号 x[n] ,变换到周期 2π 上连续的 X(ejω)
X(ejω)x[n]=n=−∞∑+∞x[n]ejωn=2π1∫2πX(ejω)ejωndω
1 2 3 4
| \begin{aligned} X(e^{j \omega}) &= \sum \limits^{+\infty}_{n=-\infty} x[n] e^{j \omega n}\\ x[n] &= \frac{1}{2\pi} \int_{2\pi} X(e^{j \omega})e^{j \omega n}d \omega \\ \end{aligned}
|
离散信号傅里叶级数
从有限的 N−1 离散信号 x[n] 到变换到有限的 N−1 离散信号 ak
akx[n]=n=0∑N−1x[n]e−jN2πnk=N1k=0∑N−1akejN2πnk
1 2 3 4
| \begin{aligned} a_{k} &= \sum \limits^{N-1}_{n=0}x[n]e^{-j \frac{2\pi}{N} nk} \\ x[n] &= \frac{1}{N} \sum \limits^{N-1}_{k=0}a_{k}e^{j \frac{2\pi}{N} nk} \end{aligned}
|
复数积分
这里只是个例子,比方说对这个式子进行积分
∫−∞+∞tsin(ωt)dt=π
1
| \int^{+\infty}_{-\infty}\frac{\sin(\omega t)}{t}dt = \pi
|
用费曼积分方法可以得到结果为 π ,这里给出更容易理解的过程。由于这个函数非常难积分,不妨设:
I(a)=∫0+∞tsin(t)e−atdt
1
| I(a) = \int^{+\infty}_{0}\frac{\sin(t)}{t} e^{-at}dt
|
显然有:
I(0)I(+∞)=∫0+∞tsin(t)e−0tdt=∫0+∞tsin(t)dt=a→∞lim∫0+∞tsin(t)e−atdt=0
1 2 3 4 5 6 7 8 9
| \begin{align} I(0) &= \int^{+\infty}_{0}\frac{\sin(t)}{t} e^{-0t}dt \\ &= \int^{+\infty}_{0}\frac{\sin(t)}{t} dt \\ I(+\infty) &= \lim\limits_{a \to \infty} \int^{+\infty}_{0}\frac{\sin(t)}{t} e^{-at}dt \\ &= 0 \end{align}
|
两边对 a 求导,就能有:
dadI(a)I′(a)=dad∫0+∞tsin(t)e−atdt=∫0+∞tsin(t)⋅−te−atdt=∫0+∞tsin(t)⋅−te−atdt=−∫0+∞2j[ejt−e−jt]e−atdt=2j1∫0+∞e−(a+j)t−e−(a−j)tdt=−2j1[a+j1e−(a+j)t−a−j1e−(j−a)t]0+∞=−2j1[a+j1(0−1)−a−j1(0−1)]=2j1[a+j1−a−j1]=2j1a2−1−2j=a2+1−1
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
| \begin{aligned} \frac{d}{da}I(a) &= \frac{d}{da} \int^{+\infty}_{0}\frac{\sin(t)}{t} e^{-at}dt \\ I'(a) &= \int^{+\infty}_{0}\frac{\sin(t)}{t} \cdot -t e^{-at}dt \\ &= \int^{+\infty}_{0}\frac{\sin(t)}{t} \cdot -t e^{-at}dt \\ &= -\int^{+\infty}_{0} \frac{j}{2}[e^{jt}-e^{-jt}] e^{-at}dt \\ &= \frac{1}{2j}\int^{+\infty}_{0}e^{-(a+j)t}-e^{-(a-j)t}dt \\ &= -\frac{1}{2j}\left[ \frac{1}{a+j}e^{-(a+j)t}-\frac{1}{a-j}e^{-(j-a)t}\right]^{+\infty}_{0} \\ &=-\frac{1}{2j}\left[ \frac{1}{a+j}(0-1)-\frac{1}{a-j}(0-1)\right] \\ &=\frac{1}{2j}\left[ \frac{1}{a+j}-\frac{1}{a-j}\right] \\ &=\frac{1}{2j}\frac{-2j}{a^{2}-1} \\ &= \frac{-1}{a^{2}+1} \end{aligned}
|
再重新对 a 积分就有:
∫0+∞I′(a)∫0+∞a2+1−1da∫0+∞a2+11daarctan(a)∣0+∞2π−02ππ=I(+∞)−I(0)=0−∫0+∞tsin(t)dt=∫0+∞tsin(t)dt====∫−∞+∞tsin(t)dt
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
| \begin{aligned} \int^{+\infty}_{0} I'(a) &= I(+\infty) - I(0) \\ \int^{+\infty}_{0} \frac{-1}{a^{2}+1} da &= 0-\int^{+\infty}_{0}\frac{\sin(t)}{t} dt \\ \int^{+\infty}_{0} \frac{1}{a^{2}+1} da &= \int^{+\infty}_{0}\frac{\sin(t)}{t} dt \\ \arctan(a)|^{+\infty}_{0} &= \\ \frac{\pi}{2} - 0 &= \\ \frac{\pi}{2} &= \\ \pi &= \int^{+\infty}_{-\infty}\frac{\sin(t)}{t} dt \end{aligned}
|
这个方法已经比直接积分简单很多了,看着很长,实际上只是加入了一个抑制 e−at 后进行积分,用了复数的方法化简了过程。费曼积分法也是加入了一个因子,只不过用的是纯初等变换的方法,比复数方法稍微复杂一点点。
参考资料
【1】:转载-LaTeX各种符号 | SnailDove’s blog
【2】:LaTeX 各种命令,符号_GarfieldEr007的博客客
【3】:【LaTeX应用】常用数学公式和符号
【4】:Latex#对齐(align)#入门教程
【5】:帮助:数学公式 - 维基百科
【6】:MathJax basic tutorial and quick reference - Mathematics Meta Stack Exchange