需要注意的是:
1.本文只對第四章排版數學公式進行簡單整理
2.本文大量內容直接引自官網,尤其是涉及4.開頭的標題,為方便讀者查閱對比,就不一一刪改和引注,你可以點此訪問官網對應內容。
3.文中部分LaTeX格式未達到演示效果,可能是由於博客園標准不一樣,具體以實驗為准
TeX
TEX 是高德納 (Donald E.Knuth) 開發的、以排版文字和數學公式為目的的一個計算機軟件 [6]。高德納從 1977 年開始開發 TEX ,以發掘當時開始用於出版工業的數字印刷設備的潛力。正 在編寫著作《計算機程序設計藝術》的高德納,意圖扭轉排版質量每況愈下的狀況,以免影響他 的出書。我們現在使用的 TEX 排版引擎發布於 1982 年,在 1989 年又稍加改進以更好地支持 8-bit 字符和多語言排版。TEX 以其卓越的穩定性、跨平台、幾乎沒有 Bug 而著稱。TEX 的版本 號不斷趨近於 π,當前為 3.141592653。 TEX 讀作 “Tech” ,其中 “ch” 的發音類似於 “h” ,與漢字“泰赫”的發音類似。TEX 的拼寫 來自希臘詞語 τεχνική (technique,技術) 的開頭幾個字母。在 ASCII 字符環境,TEX 寫作 TeX。
LaTeX
L ATEX 為 TEX 基礎上的一套格式,令作者能夠使用預定義的專業格式以較高質量排版和印 刷他們的作品。L ATEX 的最初開發者為 Leslie Lamport 博士 [1]。L ATEX 使用 TEX 程序作為自己 的排版引擎。當下 L ATEX 主要的維護者為 Frank Mittelbach。 L ATEX 讀作 “Lah-tech” 或者 “Lay-tech” ,近似於漢字“拉泰赫”或“雷泰赫”。L ATEX 在 ASCII 字符環境寫作 LaTeX。當前的 L ATEX 版本為 L ATEX2ε,意思是超出了第二版,接近但沒 達到第三版,在 ASCII 字符環境寫作 LaTeX2e。
在介紹數學公式排版之前,簡單介紹一下 AMS 宏集。AMS 宏集合是美國數學學會 (American Mathematical Society) 提供的對 L ATEX 原生的數學公式排版的擴展,其核心是 amsmath 宏 包,對多行公式的排版提供了有力的支持。此外,amsfonts 宏包以及基於它的 amssymb 宏包提 供了豐富的數學符號;amsthm 宏包擴展了 L ATEX 定理證明格式。 本章介紹的許多命令和環境依賴於 amsmath 宏包。這些命令和環境將以藍色示意。
1.插入方式
數學公式有兩種排版方式:其一是與文字混排,稱為行內公式;其二是單獨列為一行排版, 稱為行間公式。
1.1行內公式
行內公式由一對 $ 符號包裹
格式:
其他正文$公式$其他正文
例子:
Add $a$ squared and $b$ squared to get $c$ squared. Or, using a more mathematical approach: $a^2 + b^2 = c^2$
效果:
Add $a$ squared and $b$ squared to get $c$ squared. Or, using a more mathematical approach: $a^2 + b^2 = c^2$
1.2行間公式
1.2.1形式一:帶編號
單獨成行的行間公式在 L ATEX 里由 equation 環境包裹。
equation 環境為公式自動生成一 個編號,這個編號可以用 \label 和 \ref 生成交叉引用,amsmath 的 \eqref 命令甚至為引用 自動加上圓括號;
可以用 \tag 命令手動修改公式的編號,或者用 \notag 命令取消為公式編 號(與之基本等效的命令是\nonumber)。
格式:
其他正文 \begin{equation}
公式
公式 {暗標記}
公式 \tag{自定義編號}
公式 \notag
\end{equation} 其他正文
注意:
1.{暗標記}可有可無,主要方便引用,詳見例子
2. \notag 為手動取消標號
例子:
Add $a$ squared and $b$ squared
to get $c$ squared
\begin{equation}
a^2 + b^2 = c^2
\end{equation}
Einstein says
\begin{equation}
E = mc^2 \label{clever}
\end{equation}
This is a reference to \eqref{clever}.
It’s wrong to say
\begin{equation}
1 + 1 = 3 \tag{dumb}
\end{equation}
or
\begin{equation}
1 + 1 = 4 \notag
\end{equation}
效果:
Add $a$ squared and $b$ squared
to get $c$ squared
\begin{equation}
a^2 + b^2 = c^2
\end{equation}
Einstein says
\begin{equation}
E = mc^2 \label{clever}
\end{equation}
This is a reference to \eqref{clever}.
It’s wrong to say
\begin{equation}
1 + 1 = 3 \tag{dumb}
\end{equation}
or
\begin{equation}
1 + 1 = 4 \notag
\end{equation}
1.2.2形式二:不帶標號
方法一:
命令 \ [ 和 \ ] 用於生成不 帶編號的行間公式
格式:
其他正文
\[公式\]
其他正文
例子:
test effect
\[ a^2 + b^2 = c^2 \]
test effect
效果:
test effect
\[ a^2 + b^2 = c^2 \]
test effect
方法二:
方法一與之等效的是 displaymath 環境
格式:
其他正文
\begin{displaymath}
公式
\end{displaymath}
其他正文
例子:
test effect
\begin{displaymath}
a^2 + b^2 = c^2
\end{displaymath}
test effect
效果:
test effect
\begin{displaymath}
a^2 + b^2 = c^2
\end{displaymath}
test effect
方法三:
equation* 環境,體現 了帶星號和不帶星號的環境之間的區別。
格式:
其他正文
\begin{equation*}
公式
\end{equation*}
其他正文
例子:
test effect
\begin{equation*}
a^2 + b^2 = c^2
\end{equation*}
test effect
效果:
test effect
\begin{equation*}
a^2 + b^2 = c^2
\end{equation*}
test effect
數學模式和文本
當你使用 $ 開啟行內公式輸入,或是使用 \[ 命令、equation 環境時,你就進入了所謂的 數學模式。數學模式相比於文本模式有以下特點:
1. 數學模式中輸入的空格全部被忽略。數學符號的間隙默認完全由符號的性質(關系符號、運 算符等)決定。需要人為引入空隙時,使用 \quad 和 \qquad 等命令。詳見 4.6 節*。
2. 不允許有空行(分段),公式也無法自動換行或者用 \\ 換行。排版多行公式需要用到 4.4 節*介紹的各種環境。
3. 所有的字母被當作數學公式中的變量處理,字母間距與文本模式不一致,也無法生成單詞 之間的空格。如果想在數學公式中輸入正體的文本,簡單情況下可用 4.7.1 小節*中提供的 \mathrm 命令。或者用 amsmath 提供的 \text 命令2。
*關於文中的4.6節4.4節等指官網文件對應內容並不是指本文的章節,詳見文首。
2.符號
2.1一般符號(單字符)
2.1.1簡介
希臘字母符號的名稱就是其英文名稱,如 α (\alpha)、β (\beta) 等等。
大寫的希臘字母為 首字母大寫的命令,如 Γ (\Gamma)、∆ (\Delta) 等等。
更多符號命令可參考下表:原文表 4.5 和 4.14

2.1.2省略號
省略號
用命令來生成省略號,相對於直接輸入三個點的方式更為合理。
\dots 是 amsmath 命令用來試圖幫你在 \ldots 和 \cdots 中自動做決斷的 。
\cdots中心省略號 一般用在數學模式的中心線上的符號后面,例如加號 + 或者右箭頭 ->
\ldots低位置省略號 一般用在標點符號的后面,例如句號“ .” or逗號“ ,”
需要注意的是官網文件:\ldots 和 \dots 是完全等效的,它們既能用在公式中,也用來在文本里作為省略號
one, two, three, $\ldots$ one hundred.
one, two, three, $\ldots$ one hundred.
$a_1, a_2, \dots, a_n$ \\
$a_1 + a_2 + \cdots + a_n$
$a_1, a_2, \dots, a_n$ \\
$a_1 + a_2 + \cdots + a_n$
除此之外,在矩陣中可能會用到豎排的 (\vdots) 和斜排的 (\ddots)。
2.2函數表示符
2.2.1上下標(指數、導數)
用 ^ 和 _ 標明上下標
注意上下標的內容(子公式)一般需要用花括號包裹,否則上下標只對后面的一個符號起作用
導數符號’(′) 是一類特殊的上標,可以適當連用表示多階導數,也可以在其后連用上標
$p^3_{ij} \qquad m_\mathrm{Knuth}\qquad \sum_{k=1}^3 k $\\[5pt] $a^x+y \neq a^{x+y}\qquad e^{x^2} \neq {e^x}^2$ $f(x) = x^2 \quad f’(x) = 2x \quad f’’^{2}(x) = 4$
$p^3_{ij} \qquad
m_\mathrm{Knuth}\qquad
\sum_{k=1}^3 k $\\[5pt]
$a^x+y \neq a^{x+y}\qquad
e^{x^2} \neq {e^x}^2$
$f(x) = x^2 \quad
f’(x) = 2x \quad
f’’^{2}(x) = 4$
2.2.2分式
分式使用 \frac{分子}{分母} 來書寫。
分式的大小在行間公式中是正常大小,而在行內被 極度壓縮。
amsmath 提供了方便的命令 \dfrac 和 \tfrac,令用戶能夠在行內使用正常大小的 行間公式,或是反過來。
特殊的分式形式,如二項式結構,由 amsmath 宏包的 \binom 命令生成
In display style: \[ 3/8 \qquad \frac{3}{8} \qquad \tfrac{3}{8} \]
In display style:
\[ 3/8 \qquad \frac{3}{8} \qquad \tfrac{3}{8} \]
In text style: $1\frac{1}{2}$~hours \qquad $1\dfrac{1}{2}$~hours
In text style:
$1\frac{1}{2}$~hours \qquad $1\dfrac{1}{2}$~hours
Pascal’s rule is \[ \binom{n}{k} =\binom{n-1}{k} + \binom{n-1}{k-1} \]
Pascal’s rule is
\[ \binom{n}{k} =\binom{n-1}{k} + \binom{n-1}{k-1} \]
2.2.3根式
一般的根式使用 \sqrt{...};表示 n 次方根時寫成 \sqrt[n]{...}。
$\sqrt{x} \Leftrightarrow x^{1/2}
\quad \sqrt[3]{2}
\quad \sqrt{x^{2} + \sqrt{y}}$
$\sqrt{x} \Leftrightarrow x^{1/2}
\quad \sqrt[3]{2}
\quad \sqrt{x^{2} + \sqrt{y}}$
2.3關系符
2.3.1簡介
L ATEX 常見的關系符號除了可以直接輸入的 =,>,<,其它符號用命令輸入,
常用的有不等號 ̸= (\ne)、大於等於號 ≥ (\ge) 和小於等於號 ≤ (\le)3、約等號 ≈ (\approx)、等價 ≡ (\equiv)、正比 ∝ (\propto)、相似 ∼ (\sim) 等等。
更多符號命令可參考表 4.6 以及表 4.16。


2.3.2自定義
自定義二元關系符的命令 \stackrel,用於將一個符號疊加在原有的二元關系符之上
\[
f_n(x) \stackrel{*}{\approx} 1
\]
\[
f_n(x) \stackrel{*}{\approx} 1
\]
2.3算符
2.3.1普通算符
L ATEX 中的算符大多數是二元算符,
除了直接用鍵盤可以輸入的 +、−、∗、/,其它符號用 命令輸入,
常用的有乘號 × (\times)、除號 ÷ (\div)、點乘 · (\cdot)、加減號 ± (\pm) / ∓ (\mp) 等等。
更多符號命令可參考表 4.7 以及表 4.17。



\[
\lim_{x \rightarrow 0}
\frac{\sin x}{x}=1
\]
\[
\lim_{x \rightarrow 0}
\frac{\sin x}{x}=1
\]
對於求模表達式,L ATEX 提供了 \pmod 和 \bmod 命令,前者相當於一個二元運算符,后者作為同余表達式的后綴
$a\bmod b \\
x\equiv a \pmod{b}$
$a\bmod b \\
x\equiv a \pmod{b}$
如果表 4.1 中的算符不夠用的話,amsmath 允許用戶用 \DeclareMathOperator 定義自己 的算符,其中帶星號的命令定義帶上下限的算符:
\DeclareMathOperator{\argh}{argh}
\DeclareMathOperator*{\nut}{Nut}
\[\argh 3 = \nut_{x=1} 4x\]
\DeclareMathOperator{\argh}{argh}
\DeclareMathOperator*{\nut}{Nut}
\[\argh 3 = \nut_{x=1} 4x\]
![]()
2.3.2巨算符
積分號∫ (\int)、求和號∑(\sum) 等符號稱為巨算符。

巨算符在行內公式和行間公式的 大小和形狀有區別。
In text:
$\sum_{i=1}^n \quad
\int_0^{\frac{\pi}{2}} \quad
\oint_0^{\frac{\pi}{2}} \quad
\prod_\epsilon $ \\
In display:
\[\sum_{i=1}^n \quad
\int_0^{\frac{\pi}{2}} \quad
\oint_0^{\frac{\pi}{2}} \quad
\prod_\epsilon \]
In text:
$\sum_{i=1}^n \quad
\int_0^{\frac{\pi}{2}} \quad
\oint_0^{\frac{\pi}{2}} \quad
\prod_\epsilon $ \\
In display:
\[\sum_{i=1}^n \quad
\int_0^{\frac{\pi}{2}} \quad
\oint_0^{\frac{\pi}{2}} \quad
\prod_\epsilon \]
巨算符的上下標用作其上下限。
行間公式中,積分號默認將上下限放在右上角和右下角,求和號默認在上下方;
行內公式一律默認在右上角和右下角。
可以在巨算符后使用 \limits 手動令上下限顯示在上下方,\nolimits 則相反。
In text:
$\sum\limits_{i=1}^n \quad
\int\limits_0^{\frac{\pi}{2}} \quad
\prod\limits_\epsilon $
In display:
\[\sum\nolimits_{i=1}^n \quad
\int\limits_0^{\frac{\pi}{2}} \quad
\prod\nolimits_\epsilon \]
In text:
$\sum\limits_{i=1}^n \quad
\int\limits_0^{\frac{\pi}{2}} \quad
\prod\limits_\epsilon $
In display:
\[\sum\nolimits_{i=1}^n \quad
\int\limits_0^{\frac{\pi}{2}} \quad
\prod\nolimits_\epsilon \]
amsmath 宏包還提供了 \substack,能夠在下限位置書寫多行表達式;subarray 環境更進 一步,令多行表達式可選擇居中 (c) 或左對齊 (l)
\[
\sum_{\substack{0\le i\le n \\
j\in \mathbb{R}}}
P(i,j) = Q(n)
\]
\[
\sum_{\begin{subarray}{l}
0\le i\le n \\
j\in \mathbb{R}
\end{subarray}}
P(i,j) = Q(n)
\]
\[
\sum_{\substack{0\le i\le n \\
j\in \mathbb{R}}}
P(i,j) = Q(n)
\]
\[
\sum_{\begin{subarray}{l}
0\le i\le n \\
j\in \mathbb{R}
\end{subarray}}
P(i,j) = Q(n)
\]
2.4定界符
2.4.1簡介
L ATEX 提供了多種括號和定界符表示公式塊的邊界。除小括號 ( )、中括號 [ ] 之外,其 余都是 L ATEX 命令,包括大括號 \{ \}。表 4.12 和 4.13 給出了更多的括號/定界符命令。
${a,b,c} \neq \{a,b,c\}$
${a,b,c} \neq \{a,b,c\}$


2.4.2自動大小與單雙
1、使用 \left 和 \right 命令可令括號(定界符)的大小可變,在行間公式中常用。
L ATEX 會 自動根據括號內的公式大小決定定界符大小。
\left 和 \right 必須成對使用。
2、需要使用單個定界符時,另一個定界符寫成 \left. 或 \right. (相當於省略一個,用點代替)
\[1 + \left(\frac{1}{1-x^{2}}
\right)^3 \qquad
\left.\frac{\partial f}{\partial t}
\right|_{t=0}\]
\[1 + \left(\frac{1}{1-x^{2}}
\right)^3 \qquad
\left.\frac{\partial f}{\partial t}
\right|_{t=0}\]
2.4.3自定義大小
有時我們不滿意於 L ATEX 為我們自動調節的定界符大小。
還可以用 \big、\bigg 等命令生成固定大小的定界符。
更常用的形式是類似 \left 的 \bigl、\biggl 等,以及類似 \right 的 \bigr、\biggr 等
(\bigl 和 \bigr 不必成對出現)。
$\Bigl((x+1)(x-1)\Bigr)^{2}$\\
$\bigl( \Bigl( \biggl( \Biggl( \quad
\bigr\} \Bigr\} \biggr\} \Biggr\} \quad
\big\| \Big\| \bigg\| \Bigg\| \quad
\big\Downarrow \Big\Downarrow
\bigg\Downarrow \Bigg\Downarrow$
$\Bigl((x+1)(x-1)\Bigr)^{2}$\\
$\bigl( \Bigl( \biggl( \Biggl( \quad
\bigr\} \Bigr\} \biggr\} \Biggr\} \quad
\big\| \Big\| \bigg\| \Bigg\| \quad
\big\Downarrow \Big\Downarrow
\bigg\Downarrow \Bigg\Downarrow$
使用 \big 和 \bigg 等命令的另外一個好處是:
用 \left 和 \right 分界符包裹的公式塊是不允許斷行的
(下文提到的 array 或者 aligned 等環境視為一個公式塊),
所以也不允許在 多行公式里跨行使用,而 \big 和 \bigg 等命令不受限制。
3.場景符號
3.1數組
3.1.1簡介
為了排版二維數組,L ATEX 提供了 array 環境,用法與 tabular 環境極為類似,
也需要定 義列格式,並用 \\ 換行。
數組可作為一個公式塊,在外套用 \left、\right 等定界符
值得注意的是,上一節末尾介紹的 aligned 等環境也可以用定界符包裹。
\[ \mathbf{X} = \left(
\begin{array}{cccc}
x_{11} & x_{12} & \ldots & x_{1n}\\
x_{21} & x_{22} & \ldots & x_{2n}\\
\vdots & \vdots & \ddots & \vdots\\
x_{n1} & x_{n2} & \ldots & x_{nn}\\
\end{array} \right) \]
\[ \mathbf{X} = \left(
\begin{array}{cccc}
x_{11} & x_{12} & \ldots & x_{1n}\\
x_{21} & x_{22} & \ldots & x_{2n}\\
\vdots & \vdots & \ddots & \vdots\\
x_{n1} & x_{n2} & \ldots & x_{nn}\\
\end{array} \right) \]
3.1.2分段效果
方法一:
利用空的定界符排版
\[ |x| = \left\{ \begin{array}{rl} -x & \text{if } x < 0,\\ 0 & \text{if } x = 0,\\ x & \text{if } x > 0. \end{array} \right. \]
\[ |x| = \left\{
\begin{array}{rl}
-x & \text{if } x < 0,\\
0 & \text{if } x = 0,\\
x & \text{if } x > 0.
\end{array} \right. \]
方法二:
用 amsmath 提供的 cases 環境
\[ |x| = \begin{cases} -x & \text{if } x < 0,\\ 0 & \text{if } x = 0,\\ x & \text{if } x > 0. \end{cases} \]
\[ |x| =
\begin{cases}
-x & \text{if } x < 0,\\
0 & \text{if } x = 0,\\
x & \text{if } x > 0.
\end{cases} \]
3.2矩陣
3.2.1簡介
以用 array 環境排版各種矩陣。amsmath 宏包還直接提供了多種排版矩陣的 環境,包括不帶定界符的 matrix,以及帶各種定界符的矩陣 pmatrix(()、bmatrix([)、Bmatrix( {)、vmatrix( |)、Vmatrix(||)。使用這些環境時,無需給定列格式
\[
\begin{matrix}
1 & 2 \\ 3 & 4
\end{matrix} \qquad
\begin{bmatrix}
x_{11} & x_{12} & \ldots & x_{1n}\\
x_{21} & x_{22} & \ldots & x_{2n}\\
\vdots & \vdots & \ddots & \vdots\\
x_{n1} & x_{n2} & \ldots & x_{nn}\\
\end{bmatrix}
\]
\[
\begin{matrix}
1 & 2 \\ 3 & 4
\end{matrix} \qquad
\begin{bmatrix}
x_{11} & x_{12} & \ldots & x_{1n}\\
x_{21} & x_{22} & \ldots & x_{2n}\\
\vdots & \vdots & \ddots & \vdots\\
x_{n1} & x_{n2} & \ldots & x_{nn}\\
\end{bmatrix}
\]
3.2.2調節間距
在矩陣中的元素里排版分式時,一來要用到 \dfrac 等命令,二來行與行之間有可能緊貼着, 這時要用到 3.6.6 小節的方法來調節間距
\[
\mathbf{H}=
\begin{bmatrix}
\dfrac{\partial^2 f}{\partial x^2} &
\dfrac{\partial^2 f}
{\partial x \partial y} \\[8pt]
\dfrac{\partial^2 f}
{\partial x \partial y} &
\dfrac{\partial^2 f}{\partial y^2}
\end{bmatrix}
\]
\[
\mathbf{H}=
\begin{bmatrix}
\dfrac{\partial^2 f}{\partial x^2} &
\dfrac{\partial^2 f}
{\partial x \partial y} \\[8pt]
\dfrac{\partial^2 f}
{\partial x \partial y} &
\dfrac{\partial^2 f}{\partial y^2}
\end{bmatrix}
\]
3.3向量(重音)
3.3.1重音簡介
數學符號可以像文字一樣加重音,比如對時間求導的符號 ˙ r (\dot{r})、¨ r (\ddot{r}) 、表 示向量的箭頭 ⃗r (\vec{r}) 、表示歐式空間單位向量的 ˆ e (\hat{\mathbf{e}}) 等,詳見表 4.9。

3.3.2重音位置
單個符號
使用時要注意重音符號的作用區域,一般應當對某個符號而不是“符號加下標”使用重音
$\bar{x_0} \quad \bar{x}_0$\\[5pt]
$\vec{x_0} \quad \vec{x}_0$\\[5pt]
$\hat{\mathbf{e}_x} \quad
\hat{\mathbf{e}}_x$
$\bar{x_0} \quad \bar{x}_0$\\[5pt]
$\vec{x_0} \quad \vec{x}_0$\\[5pt]
$\hat{\mathbf{e}_x} \quad
\hat{\mathbf{e}}_x$
多個字符
也能為多個字符加重音,包括直接畫線的 \overline 和 \underline 命令(可疊加使 用)、寬重音符號 \widehat、表示向量的箭頭 \overrightarrow 等。


$0.\overline{3} =
\underline{\underline{1/3}}$ \\[5pt]
$\hat{XY} \qquad \widehat{XY}$\\[5pt]
$\vec{AB} \qquad
\overrightarrow{AB}$
$0.\overline{3} =
\underline{\underline{1/3}}$ \\[5pt]
$\hat{XY} \qquad \widehat{XY}$\\[5pt]
$\vec{AB} \qquad
\overrightarrow{AB}$
\overbrace 和 \underbrace 命令用來生成上/下括號,各自可帶一個上/下標公式
$\underbrace{\overbrace{a+b+c}^6
\cdot \overbrace{d+e+f}^7}
_\text{meaning of life} = 42$
$\underbrace{\overbrace{a+b+c}^6
\cdot \overbrace{d+e+f}^7}
_\text{meaning of life} = 42$
3.4證明
3.4.1箭頭
除了作為上下標之外,箭頭還用於表示過程。amsmath 的 \xleftarrow 和 \xrightarrow 命令可以為箭頭增加上下標
\[ a\xleftarrow{x+y+z} b \] \[ c\xrightarrow[x<y]{a*b*c}d \]
\[ a\xleftarrow{x+y+z} b \]
\[ c\xrightarrow[x<y]{a*b*c}d \]

4.樣式
4.1公式間距
4.1.1簡介
前文提到過,絕大部分時候,數學公式中各元素的間距是根據符號類型自動生成的,需要我們手動調整的情況極少。
前面兩個生成間距的命令 \quad 和 \qquad。
還可能用到的間距包括 \,、\:、\; 以及負間距 \!,
其中 \quad 、\qquad 和 \, 在文本和數學 環境中可用,
后三個命令只用於數學環境。
文本中的 \␣ 也能使用在數學公式中。

4.1.2場景
一個常見的用途是修正積分的被積函數 f(x) 和微元 dx 之間的距離。注意微元里的 d 用的 是直立體
\[
\int_a^b f(x)\mathrm{d}x
\qquad
\int_a^b f(x)\,\mathrm{d}x
\]
\[
\int_a^b f(x)\mathrm{d}x
\qquad
\int_a^b f(x)\,\mathrm{d}x
\]
另一個用途是生成多重積分號。如果我們直接連寫兩個 \int,之間的間距將會過寬,此時 可以使用負間距 \! 修正之。不過 amsmath 提供了更方便的多重積分號,如二重積分 \iint、三 重積分 \iiint 等
\newcommand\diff{\,\mathrm{d}}
\begin{gather*}
\int\int f(x)g(y)
\diff x \diff y \\
\int\!\!\!\int
f(x)g(y) \diff x \diff y \\
\iint f(x)g(y) \diff x \diff y \\
\iint\quad \iiint\quad \idotsint
\end{gather*}
\newcommand\diff{\,\mathrm{d}}
\begin{gather*}
\int\int f(x)g(y)
\diff x \diff y \\
\int\!\!\!\int
f(x)g(y) \diff x \diff y \\
\iint f(x)g(y) \diff x \diff y \\
\iint\quad \iiint\quad \idotsint
\end{gather*}
4.2多行公式
4.2.1長公式折行
1.通常來講應當避免寫出超過一行而需要折行的長公式
如果一定要折行的話,優先在等號之 前折行,其次在加號、減號之前,再次在乘號、除號之前。其它位置應當避免折行
2.amsmath 宏包的 multline 環境提供了書寫折行長公式的方便環境。
它允許用 \\ 折行,將 公式編號放在最后一行。多行公式的首行左對齊,末行右對齊,其余行居中。
3.與表格不同的是,公式的最后一行不寫 \\,如果寫了,反倒會產生一個多余的空行。
類似 equation*,multline* 環境排版不帶編號的折行長公式。
\begin{multline}
a + b + c + d + e + f + g + h + i \\
= j + k + l + m + n\\
= o + p + q + r + s\\
= t + u + v + x + z
\end{multline}
\begin{multline}
a + b + c + d + e + f + g + h + i \\
= j + k + l + m + n\\
= o + p + q + r + s\\
= t + u + v + x + z
\end{multline}
4.2.2多個公式羅列
需要羅列一系列公式,並令其按照等號對齊
目前最常用的是 align 環境,它將公式用 & 隔為兩部分並對齊。分隔符通常放在等號左邊
\begin{align}
a & = b + c \\
& = d + e
\end{align}
\begin{align}
a & = b + c \\
& = d + e
\end{align}
align 環境會給每行公式都編號。我們仍然可以用 \notag 去掉某行的編號。
在以下的例子, 為了對齊加號,我們將分隔符放在等號右邊,這時需要給等號后添加一對括號 {} 以產生正常的間距
\begin{align}
a ={} & b + c \\
={} & d + e + f + g + h + i + j + k + l \notag \\
& + m + n + o \\
={} & p + q + r + s
\end{align}
\begin{align}
a ={} & b + c \\
={} & d + e + f + g + h + i + j + k + l \notag \\
& + m + n + o \\
={} & p + q + r + s
\end{align}
align 還能夠對齊多組公式,除等號前的 & 之外,公式之間也用 & 分隔
\begin{align}
a &=1 & b &=2 & c &=3 \\
d &=-1 & e &=-2 & f &=-5
\end{align}
\begin{align}
a &=1 & b &=2 & c &=3 \\
d &=-1 & e &=-2 & f &=-5
\end{align}
如果我們不需要按等號對齊,只需羅列數個公式,gather 將是一個很好用的環境
align 和 gather 有對應的不帶編號的版本 align* 和 gather*。
\begin{gather}
a = b + c \\
d = e + f + g \\
h + i = j + k \notag \\
l + m = n
\end{gather}
\begin{gather}
a = b + c \\
d = e + f + g \\
h + i = j + k \notag \\
l + m = n
\end{gather}
4.2.3多行公式公用編號
1.另一個常見的需求是將多個公式組在一起公用一個編號,編號位於公式的居中位置。
2.為此, amsmath 宏包提供了諸如 aligned、gathered 等環境,與 equation 環境套用。
以 -ed 結尾的 環境用法與前一節不以 -ed 結尾的環境用法一一對應。
3.split 環境和 aligned 環境用法類似,也用於和 equation 環境套用,
區別是 split 只能 將每行的一個公式分兩欄,aligned 允許每行多個公式多欄
下面以 aligned 舉例:
\begin{equation}
\begin{aligned}
a &= b + c \\
d &= e + f + g \\
h + i &= j + k \\
l + m &= n
\end{aligned}
\end{equation}
\begin{equation}
\begin{aligned}
a &= b + c \\
d &= e + f + g \\
h + i &= j + k \\
l + m &= n
\end{aligned}
\end{equation}
