LaTeX數學公式


LaTeX 數學公式梳理

前言

本文是面向新人(其實是我自己)所寫的 LaTeX 的公式梳理,有以下特點:

  1. 不完整。這篇梳理僅僅是節選了參考書籍的第四章的部分內容。
  2. 不規范。書寫並不一定規范。
  3. 不一定完全正確。因為加入了不少個人的見解,主要是針對於知識的邏輯方面,有的重新安排了講解的順序。

下面解釋一下何為不完整。

我們都知道,TeX 就是由基本的編譯器和各種宏包構成的。很多功能都是由宏包所提供的。但是問題是這些宏包不一定是通用的。比如排版 LaTeX 的最為常用的宏包 amsmath,這是 LaTeX 的必備宏包,基本上所有地方都是支持它的;而 mathtools 宏包的普及程度就非常低。所以,我僅收集了 基於 amsmath 宏包的拓展,而其他的就不予以關注;而且,書中標注“危險”、“謹慎”、“易錯”之類字樣的部分,亦未收錄。

本文的作用不是用於查詢公式、符號的寫法,而是建立用 LaTeX 輸入公式的相關概念,其中公式和符號,僅用作舉數例以輔助理解耳。另外,本文受限於本人的知識水平,也僅收錄了部分常用的數學結構、符號等。

再來談一下本文的作用。同上文言,本文意在建立用 LaTeX 輸入公式的相關概念而非公式符號大全。須知此類命令環境宏包數不勝數也,豈我一文能涵蓋?豈我一人能總結?初學之時,把握框架,識其大體即可。故本文雖然長,但是也許真正有用的只有目錄的部分。(當然學習的過程,少不了基礎的講解和用例子來加深印象。)

另外,本文並沒有把公式的完整命令放上來,有人會說這樣是不是不方便學習?我要說的是,要學習的人大可以查看本文的 Markdown 源碼:https://github.com/xuanhao44/LaTeX-,復制到本地去研究。不學的人,看了源碼也是多余,反而覺得看着礙眼。

最后,本文僅由我一初學者所整理,如有紕漏謬誤,實屬正常。此文也會隨我學習之程度而更新。

數學模式和文本模式

行內公式 / 正文數學公式

使用單個美元符號 $...$ 來表示。

交換律是 $ a+b=b+a $,如 $ 1+2=2+1=3 $

行間公式 / 顯示數學公式 / 列表公式

使用 \[ ... \] 或者 $$...$$ 來表示。

交換律

\[ a+b=b+a, \]

\[ 1+2=2+1=3. \]

雖然書上說用 $$...$$ 不夠嚴謹,應當避免使用,但是大多數的編譯器只能識別 $$...$$ 而不能識別 \[ ... \],比如博客園和 VS Code 自己的 OpenPreview 都是無法識別的。考慮到本身使用的並不是多么嚴謹的 LaTeX,就還是使用 $$...$$ 了;另外最好把單獨占據一行的顯示公式放在單獨的行內

數學模式和文本模式混合

數學模式和文本模式不同。數學模式會改變字符字體和間距,還會忽略空格,漢字和西文文本也不能直接輸入

在數學公式中插入漢字:\text{漢字...} 命令

\[ \text{被減數} - \text{減數} = \text{差} \]

數學結構

上標和下標

上標和下標是常見的數學結構。上標可位於符號的右上方或者正上方;下標可位於符號的右下方或者正下方。

單字符和多字符

上標用特殊字符 ^ 表示,下標用特殊字符 _ 表示。

\[ a_0 = 3^2 \]

當上標和下標多於一個字符時,需要使用 {...} 分組確定上下標范圍。

\[ A_{ij} = 2^{i+j} \]

式子中的空格(包括單個換行)是沒有實際作用的,但是適當的空格可以將代碼分隔的好看些。

我建議都使用 {...} 的,畢竟這也很符合編程的規范。

上下標的同時使用和嵌套

同時使用

\[ A_{i}^{k} \]

嵌套

\[ 3^{3^{\cdot^{\cdot^{\cdot^3}}}} \]

特殊的兩種上標

撇號

要注意四點:

  1. 可用符號 \prime 表示
  2. 可以與下標混用
  3. 可以連續使用
  4. 不能與上標直接混用,要加上 {...}

一般撇號

\[ a = a' \]

與下標混用 & 連續使用

\[ b_0' = b_0'' \]

不能與上標直接混用

\[ {c'}^2 = (c')^2 \]

角度

沒有直接表示角度的符號,用符號 \circ 的上標表示。

\[ A = 90^\circ \]

其他

在顯示公式中,多數數學算子的上下標在正下方或者正上方;

\[ \max_n f(n) = \sum_{i=0}^n A_i \]

但對積分號等個別算子,顯示公式中的上下標也在右上右下角。

\[ \int_0^1 f(t) d\ t = \iint_D g(x,y) d\ x d\ y \]

在行內公式中,所有數學算子的上下標都在角標的位置,如將上面一個式子放入行內將得到 $ \max_n f(n) = \sum_{i=0}^n A_i $ 。

上下划線和花括號

上划線:\overline;下划線:\underline

\[ \overline{a+b} = \overline a + \overline b \]

\[ \underline a = (a_0, a_1, a_2, \dots) \]

而且這種結構可以任意嵌套或與其他數學結構組合。

\[ \overline{\underline{\underline a} + \overline{b}^2} - {\underline n} \]

在公式上下加箭頭的命令,使用方法與 \overline\underline 沒有區別。

上左箭頭:\overleftarrow

\[ \overleftarrow{a+b} \]

上右箭頭:\overrightarrow

\[ \overrightarrow{a+b} \]

下左箭頭:\underleftarrow

\[ \underleftarrow{a+b} \]

下右箭頭:\underrightarrow

\[ \underrightarrow{a+b} \]

使用 \overbrace\underbrace 帶上花括號。

\[ \overbrace{a+b+c} = \underbrace{1+2+3} \]

還可以使用上下標在花括號上作標注。

\[ ( \overbrace{a_0,a_1,\dots,a_n}^{\text{共 $n+1$ 項}}) = ( \underbrace{0,0,\dots,0}_{n},1) \]

花括號交錯暫時不考慮。

分式

分式也是很常見的結構呢。分式用 \frac 分子分母 得到。

\[ \frac 12 + \frac 1a = \frac{2+a}{2a} \]

在行內公式中,分式的分子分母都會用較小的字號排版,以免超出文本行高度。

通分計算 $ \frac 12 +\frac 1a $ 得 $ \frac{2+a}{2a} $

已經在分子或者分母內的公式,也會按行內公式大小排版。

\[ \frac {1}{\frac 12 {(a+b)}} = \frac {2}{a+b} \]

如果還是需要指定較大或者較小的樣式,則使用顯示樣式命令 \dfrac\tfrac

\[ \tfrac 12 f(x) = \frac {1}{\dfrac 1a + \dfrac 1b + c} \]

連分式使用 \cfrac還有三個參數 lcr表示左中右對齊,並且默認是居中。 並不是所有地方支持,謹慎使用。

注:博客園中可使用,但是 OpenPreview 中無法識別參數。

無參數

\[ \cfrac{1}{1+\cfrac{2}{1+\cfrac{3}{1+x}}} \]

有參數

\[ \cfrac[r]{1}{1+\cfrac{2}{1+\cfrac[l]{3}{1+x}}} \]

二項式系數

類似分數分成上下兩半的數學結構。使用 \binom 來輸入二項式系數,其用法和 \frac 相似。

\[ (a+b)^2 = \binom 20 a^2 +\binom 21 ab + \binom 22 b^2 \]

也有指定大小的形式 \tbinom\dbinom

\[ (a+b)^2 = \tbinom 20 a^2 \tbinom 21 ab + \tbinom 22 b^2 \]

其余類分式數學結構

略。

根式

使用單參數指令 \sqrt 得到,可帶一個參數,表示開方次數。

\[ \sqrt 4 =\sqrt[3]{8} =2 \]

嵌套使用根式是相當常見的。

\[ \sqrt[n]{\frac{x^2+\sqrt 2}{x+y}} \]

開方的次數表示若復雜則應使用等價的指數形式。

\[ (x^p+y^q)^{\frac{1}{1/p+1/q}} \]

矩陣和行列式

矩陣環境

矩陣的括號可以是方括號,也可以是圓括號,還可以是大括號,甚至沒有括號等等。括號的不同就是矩陣環境的不同。

matrix環境

\[ \begin{matrix} a & b \\ c & d \end{matrix} \]

bmatrix環境

\[ \begin{bmatrix} a & b \\ c & d \end{bmatrix} \]

vmatrix環境

\[ \begin{vmatrix} a & b \\ c & d \end{vmatrix} \]

pmatrix環境

\[ \begin{pmatrix} a & b \\ c & d \end{pmatrix} \]

Bmatrix環境

\[ \begin{Bmatrix} a & b \\ c & d \end{Bmatrix} \]

Vmatrix環境

\[ \begin{Vmatrix} a & b \\ c & d \end{Vmatrix} \]

常規表示

不同的列用符號 & 分隔,行用 \\ 分隔。

\[ A = \begin{pmatrix} a_{11} & a_{12} & a_{13} \\ 0 & a_{22} & a_{23} \\ 0 & 0 & a_{33} \end{pmatrix} \]

矩陣中常常使用各種省略號,即 \dots\vdots\ddots 等。

\[ A = \begin{bmatrix} a_{11} & \dots & a_{1n} \\ & \ddots & \vdots \\ 0 & & a_{nn} \end{bmatrix}_{n \times n} \]

分塊矩陣

分塊矩陣可以理解為矩陣的嵌套。

\[ \begin{pmatrix} \begin{matrix} 1 & 0\\ 0 & 1 \end{matrix} & \text{\Large 0}\\ \text{\Large 0} & \begin{matrix} 1 & 0\\ 0 & -1 \end{matrix} \end{pmatrix} \]

矩陣的其他用法

在行內公式中使用很小的矩陣,用的矩陣環境是 smallmatrix 環境。

矩陣在行內表示 \( \begin{smallmatrix} x & -y \\ y & x \end{smallmatrix} \),但是沒有括號。

\substack 命令排版列矩陣,用以處理多行內容的插入。

\[ \sum_{\substack{0<i<n \\0<j<i}} A_{ij} \]

或者是用 \subarray 指令,還必須指定對齊方式為 l(左對齊)c(居中)r(右對齊)

\[ \sum_{ \begin{subarray}{l} i<10 \\ j<100 \\ k<1000 \end{subarray} } X(i,j,k) \]

符號和類型

數學結構是數學公式的骨架,而數學符號是數學公式的骨肉。

數學符號的輸入:一小部分符號是可以直接從鍵盤上輸入的,如字母\(a\)\(b\)\(x\)\(+\)\(=\)\(()\);但是大多數符號需要使用 LaTeX 命令來輸入。

數學符號總共有 8個類別:普通符號、巨算符、二元運算符、關系符、開符號。閉符號、標點和變量族。

思想准備

雖然我一直在說要避免去涉及到 LaTeX 的粗斜體、字體、字號、間距和行距等細節的問題,但是在符號和類型這一節就不得不去考慮這些問題了。因為這些規定有數學或者物理含義。

字母和普通符號

數學符號的最基本內容就是字母表

拉丁字母

也就是拉丁字母 \(A\)\(B\)\(C\)\(D\)\(x\)\(y\)\(z\)。它們都可以直接從鍵盤輸入,默認使用意大利形狀(注意是形狀而不是字體/體)。

數學字母可以使用多種字體。使用命令就可以為字母確定字體。

數學環境的默認字體 \mathnormal

\[ ABCHIJXYZabchijxyz12345 \]

意大利體 \mathit

\[ \mathit{ ABCHIJXYZabchijxyz12345 } \]

羅馬體 \mathrm

\[ \mathrm{ ABCHIJXYZabchijxyz12345 } \]

粗體 \mathbf

\[ \mathbf{ ABCHIJXYZabchijxyz12345 } \]

無襯線體 \mathsf

\[ \mathsf{ ABCHIJXYZabchijxyz12345 } \]

打字機體 \mathtt

\[ \mathtt{ ABCHIJXYZabchijxyz12345 } \]

手寫體 \mathcal

\[ \mathcal{ ABCHIJXYZabchijxyz12345 } \]

花體 \mathscr

\[ \mathscr{ ABCHIJXYZabchijxyz12345 } \]

黑板粗體 \mathbb

\[ \mathbb{ ABCHIJXYZabchijxyz12345 } \]

哥特體 \mathfrak

\[ \mathfrak{ ABCHIJXYZabchijxyz12345 } \]

再就是要明白為什么要使用不同的字體,以及字體之間細微的差別。

比如只有變量使用默認的意大利體;數學常數通常使用直立的羅馬體,如數學常數 \(\mathrm{e}\) ,類似的還有虛數單位 \(\mathrm{i}\)。當然這里也只是舉了幾個很簡單的例子。

默認的數學字母字體 \mathnormal 不僅使用了和正文不同的數學字體,而且字母之間的間距比正文也要大。而其他數學字體字母的間距和正文幾乎沒有區別。所以使用 $xyz$ 通常表示三個字母的乘積(間距較大),而如果要表示一個多字母的長變量名 \(\mathit{xyz}\),則應該使用 $\mathit{xyz}$ 等形式。

希臘字母

希臘字母同樣有大寫/小寫,也有直立體/傾斜體的區別。不像拉丁字母有統一的字體命令,每個希臘字母都有自己單獨的命令。但是命令是有規律可循的,我們就以 \(\pi\) 為例來講。

首先是 \pi 命令:\(\pi\),這個是小寫的、斜體的,一般用作變量。可以發現命令就是這個希臘字母的讀法,是最基礎的命令。

再就是 \Pi 命令:\(\Pi\),這個是大寫的希臘字母。在基礎的命令上把首字母大寫就是大寫的命令了。

還有 \varpi 命令:\(\varpi\)。這個是小寫希臘字母的變體;還有 \varPi 命令:\(\varPi\),這個是大寫希臘字母的變體。加上 var 的前綴就是變體的命令。

\uppi 命令:\(\uppi\),這個是小寫的、直立的,一般用作常數,如圓周率。\uppi 命令需要數學字體宏包 upgreek。可能會有無法顯示的情況。

希伯來字母

\aleph 命令:\(\aleph\)

\beth 命令:\(\beth\)

\daleth 命令:\(\daleth\)

\gimel 命令:\(\gimel\)

普通符號

普通符號通常是一些字母的變形、一元運算符或者是單純的圖形符號。這里舉幾個常見的普通符號。

\infty 命令:\(\infty\)

\angle 命令:\(\angle\)

\bot 命令:\(\bot\)

\triangle 命令:\(\triangle\)

\hbar 命令:\(\hbar\)

\partial 命令:\(\partial\)

\nabla 命令:\(\nabla\)

\forall 命令:\(\forall\)

\exists 命令:\(\exists\)

\varnothing 命令:\(\varnothing\)

\neg 命令:\(\neg\)

數學重音

這里舉幾個常見的重音。

單字母

\hat a 命令:\(\hat a\)

\bar a 命令:\(\bar a\)

\vec a 命令:\(\vec a\)

\dot a 命令:\(\dot a\)

\hat a 命令:\(\hat a\)

多字母

\widehat{abc} 命令:\(\widehat{abc}\)

數學算子

數學算子分為三種(自定),第一類是巨算子,第二類是單字符算子,第三類是文字名稱算子。

巨算子

它們的大小是隨顯示公式和行內公式變化的,而且通常比一般的數學符號大一些。下面舉一些常見的例子。

\sum 命令:\(\sum\)

\int 命令:\(\int\)

\iint 命令:\(\iint\)

\oint 命令:\(\oint\)

\iiint 命令:\(\iiint\)

\prod 命令:\(\prod\)

\bigcup 命令:\(\bigcup\)

\bigcap 命令:\(\bigcap\)

\bigvee 命令:\(\bigvee\)

\bigwedge 命令:\(\bigwedge\)

\bigoplus 命令:\(\bigoplus\)

\bigotimes 命令:\(\bigotimes\)

注意不要把巨算子和形狀相似的其他類型符號混淆。典型的例子就是大寫希臘字母 \(\Sigma\)(\Sigma)與求和號 \(\sum\)(\sum)。它們在各個方面都有區別。

數學算子通常可以帶上下標。在顯示公式中,積分號的上下標默認在角標位置,而其他巨算子則在上下方(作為上下限),例如。

\[ \mathcal{F}(x) = \sum_{k=0}^\infty \oint_0^1 f_k(x,t) \,\mathrm{d}t \]

單字符算子

積分式的寫法。微分算子 \(\mathrm{d}\) 應該使用直立羅馬體,后面的變量則仍是使用默認的意大利體,並且用 \, 與前面的被積函數分開。

\[ \int f(x) \,\mathrm{d} x \]

但是一般不添加單字符算子和變元之間的間距。不過微分與被積函數、多個微分變元之間,仍然需要留有間距。

\[ \iiint\limits_{0<x,y,z<1} f(x,y,z) \,\mathrm{d} x \,\mathrm{d} y \,\mathrm{d} z \]

這類只有一個字符的數學算子,還有 Laplace 算子 \(\triangle\) (大寫希臘字母 \Delta,也可用 \triangle)、偏微分算子 \(\partial\)\partial)、梯度算子 \(\nabla\)\nabla)等一般都只作為一個普通數學符號排版,沒有提供額外的間距,需要自己添加。

文字名稱算子

文字名稱算子用直立羅馬體排印,如 \(\log x\)\(\lim f(t)\) 中的 \(\log\)\(\lim\)

前者是不帶上下限的“純”算子,一般就是常用的數學函數。其上標是角標形式。

\log 命令:\(\log\)

\lg 命令:\(\lg\)

\ln 命令:\(\ln\)

\sin 命令:\(\sin\)

\cos 命令:\(\cos\)

\tan 命令:\(\tan\)

\csc 命令:\(\csc\)

\sec 命令:\(\sec\)

\cot 命令:\(\cot\)

\arcsin 命令:\(\arcsin\)

\arccos 命令:\(\arccos\)

\arctan 命令:\(\arctan\)

\sinh 命令:\(\sinh\)

\cosh 命令:\(\cosh\)

\tanh 命令:\(\tanh\)

\coth 命令:\(\coth\)

帶上下限的數學算子,使用起來和巨算子相似。

\lim 命令:\(\lim\)

\max 命令:\(\max\)

\min 命令:\(\min\)

\inf 命令:\(\inf\)

\gcd 命令:\(\gcd\)

\det 命令:\(\det\)

\[ \varlimsup_{k\to\infty} A_k = \lim_{J\to\infty} \lim_{K\to\infty} \bigcap_{j=1}^J \bigcup_{k=j}^K A_k \]

取模和同余

略。

二元運算符和關系符

首先說一下什么是二元運算符和關系符。常見的,能從鍵盤上直接輸入的二元運算符有加號 \(+\),減號 \(-\),星號 \(*\);二元關系符有等號 \(=\),大於號 \(>\),小於號 \(<\) 和表示集合的關系的符號 \(:\)

它們和普通符號是有區別的,在公式使用中會產生間距。比如斜線形式的除號 \(/\) 並不是二元運算符,只是普通符號,即使表示除法也不額外增加間距;表示差集的符號 \setminus 與普通符號 \backslash 是同一個字符,但類型不同,因而會產生不同的間距,見下面的例子。

\[ H\backslash G \text{和} H\setminus G \]

二元運算符和關系符有不同和相同的地方。它們都用在公式中間,在符號的兩邊留有一定的間距。運算符的間距小一些,關系符的間距大一些,例如。

\[ 0-2=-2 \]

都是一樣的符號卻產生了不同的間距。原因是左邊的是減號,是運算符,而右邊的是負號,是關系符。當然在大多數情況下,我們不需要去關注這些 LaTeX 會自動處理的細節。

二元運算符

下面列舉常見的二元運算符。

\times 命令:\(\times\)

\div 命令:\(\div\)

\pm 命令:\(\pm\)

\mp 命令:\(\mp\)

\circ 命令:\(\circ\)

\wedge\land 命令:\(\wedge\)

\vee\lor 命令:\(\vee\)

\cup 命令:\(\cup\)

\otimes 命令:\(\otimes\)

\oplus 命令:\(\oplus\)

二元關系符

二元關系符是 LaTeX 中數量最為龐大的一類數學符號:除了有普通的二元關系符及它們的否定形式外,關系符中各種箭頭通常也單獨列為一類。

一般地,二元關系符的否定可以在關系符前加 \not 得到,如使用 $s\not\in T$ 就得到:

\[ s\not\in T \]

此外,LaTeX 也為很多二元關系符的否定形式單獨定義了命令,單獨定義的命令有時會使用單獨的字體符號,比直接使用 \not 得到的效果更好,如使用 $s \notin T$ 就得到:

\[ s \notin T \]

斜線的位置更加合理一些。因此在使用否定的二元關系符的時候,應該盡量使用單獨的符號命令,在沒有單獨的符號的時候,才使用 \not 組合符號。

下面列舉常見的二元關系符。

\because 命令:\(\because\)

\therefor 命令:\(\therefore\)

\subseteq 命令:\(\subseteq\)

\neq\ne 命令:\(\neq\)

\leq\le 命令:\(\leq\)

\geq\ge 命令:\(\geq\)

\ll 命令:\(\ll\)

\gg 命令:\(\gg\)

\in 命令:\(\in\)

\notin 命令:\(\notin\)

\ni\owns 命令:\(\ni\)

\equiv 命令:\(\equiv\)

\sim 命令:\(\sim\)

\approx 命令:\(\approx\)

\simeq 命令:\(\simeq\)

\cong 命令:\(\cong\)

\subset 命令:\(\subset\)

\supset 命令:\(\supset\)

\subseteq 命令:\(\subseteq\)

\supseteq 命令:\(\supseteq\)

\perp 命令:\(\perp\)

\parallel 命令:\(\parallel\)

下面列舉常見的箭頭符號。基本上都是 \arrow 的變體。

單、雙向箭頭

\leftarrow\gets 命令:\(\leftarrow\)

\rightarrow\to 命令:\(\rightarrow\)

\leftrightarrow 命令:\(\leftrightarrow\)

首字母大寫

\Leftarrow 命令:\(\Leftarrow\)

\Rightarrow 命令:\(\Rightarrow\)

\Leftrightarrow 命令:\(\Leftrightarrow\)

上面箭頭的加長形式:加 long(舉出一例)(雙杠仍然是首字母 L 大寫)

\Longrightarrow 命令:\(\Longrightarrow\)

上面箭頭的否定形式:加 n(僅舉一例)

\nRightarrow 命令:\(\nRightarrow\)

可逆箭頭

\rightleftharpoons 命令:\(\rightleftharpoons\)

上下箭頭

\uparrow 命令:\(\uparrow\)

\downarrow 命令:\(\downarrow\)

\updownarrow 命令:\(\updownarrow\)

首字母大寫

\Uparrow 命令:\(\Uparrow\)

\Downarrow 命令:\(\Downarrow\)

\Updownarrow 命令:\(\Updownarrow\)

斜向箭頭

\nearrow 命令:\(\nearrow\)

\searrow 命令:\(\searrow\)

\swarrow 命令:\(\swarrow\)

\nwarrow 命令:\(\nwarrow\)

這組命令很有規律。

  • 東南 -> south-east -> se
  • 東北 -> north-east -> ne
  • 西北 -> north-west -> nw
  • 西南 -> south-west -> sw

添加說明的可延長箭頭

使用 \xleftarrow\xrightarrow 命令,可以在上下方添加說明,參數是上方說明,可選參數是下方說明。

\[ A \xleftarrow{0<x<1>} B \xrightarrow[x \leq 1]{x \geq 1} C \]

邏輯符號命令

使用 \iff\implies\impliedby\And 命令用於邏輯表達式。符號和一般的箭頭相同,但是間距比一般的運算符和關系符大一些,意義也更明顯。

\iff 命令:\(\iff\)

\implies 命令:\(\implies\)

\impliesby 命令:\(\impliedby\)

\And 命令:\(\And\)

一個例子。

\[ x=y \implies x+a=y+a \\ x=y \impliedby x+a=y+a \\ x=y \iff x \le y \And x \ge y \]

括號和定界符

括號

數學公式離不開括號的使用。括號種類大致有圓括號 \((\,)\)、方括號 \([\,]\)、花括號 \(\{\,\}\)、尖括號 \(\langle\,\rangle\) 等等。在 LaTeX 中,括號被分為開括號和閉括號,顯然,開括號是左邊的括號,閉括號是右邊的括號。

能從鍵盤上直接輸入的符號有圓括號 \((\,)\)、方括號 \([\,]\)、花括號 \(\{\,\}\),其余均有用命令輸入。

尖括號:\langle\rangle 命令:\(\langle\, \And \,\rangle\)

向下取整:\lfloor\rfloor 命令:\(\lfloor\, \And \,\rfloor\)

向上取整:\lceil\rceil 命令:\(\lceil\, \And \,\rceil\)

定界符

定界符的概念更為廣泛。定界符通常就是公式兩側的括號,但也有時表示其他的符號。定界符有一個特別有用的性質,就是它可以按需要改變大小。

使用 \left\right 命令得到的。它們分別把作為其參數的定界符轉換為開符號和閉符號,同使得定界符可以按中間的內容的高度自動調節大小。

\[ \partial_x \partial_y \left[ \frac 12 \left( x^2+y^2 \right)^2 + xy \right] \]

\left\right 命令用來配對的定界符可以不是同一種符號,甚至可以用一個句號 \(.\) 表示空的定界符。例如:

\[ \left. \int_0^x f(t,\lambda) \,\mathrm{d}t \right|_{x=1}, \qquad \lambda \in \left[\frac 12,\infty\right). \]

還有一個 \middle 命令,它可以在 \left\right 的中間再加一個定界符,如:

\[ \Pr \left( X>\frac 12 \middle \vert Y=0 \right) =\left. \int_0^1 p(t) \,\mathrm{d}t \middle/ (N^2+1) \right. \]

手動調整定界符略。

標點

數學標點

數學標點只有 5個。逗號、分號、嘆號、問號和冒號,前面四個都可以從鍵盤上輸入,冒號的命令是:\colon,注意它和直接從鍵盤上輸入的二元關系符 \(:\) 的區別(略,因為用的不多)。

鍵盤上的圓點 \(.\) 在數學公式中是普通符號,通常表示為小數點。不過在顯示公式的末尾也常常用它表示句號,在行末無須為后面的間距問題困擾。

數學省略號

省略號並不屬於 TeX 的數學標點類型,但確是公式中常用的標點符號。

在數學公式中,水平的省略號有兩種:

  1. 圓點在基線位置的 \ldots (\(\ldots\))
  2. 圓點在中間位置的 \cdots (\(\cdots\))

位置較低的 \ldots 主要用在逗號之間,如:

\[ (1,\cdots,n) \]

位置在中間的 \cdots 則用在二元運算符、關系符之間,如:

\[ 1+\cdots+n \]

或者表示沒有乘號的連乘積,如:

\[ a_1 \cdots a_n \]

或者連接多個積分號,如:

\[ \int_0^1 \cdots \int_0^1 \]

下面給出其他省略號的命令。

首先是不同方向的省略號,多用於排版矩陣。

\vdots 命令:\(\vdots\)

\ddots 命令:\(\ddots\)

再是依照具體情形設定的省略號類型,分別是:

逗號(comma):\dotsc 命令:\(\dotsc\)

二元運算或關系符(binary):\dotsb 命令:\(\dotsb\)

乘法運算(multiplication):\dotsm 命令:\(\dotsm\)

積分(integral):\dotsc 命令:\(\dotsi\)

其他情形(other):\dotso 命令:\(\dotso\)

雖然 \dots 有一定的自動識別功能,但是在 \dots 無法正常識別的時候就可以使用上面的命令,如連乘和積分:

\[ \prod_{i=1}^n a_i = a_1 \dotsm a_n \qquad \int_0^1 \dotsi \int_0^1 \]

多行公式

我們經常會遇到線性方程組、分段函數、以及非常長的公式。下面來探究如何用顯示公式來表示它們。

多個公式

輸入多行數學公式最基本的方法是:使用 gathergather* (不編號)環境,使用 \\ 換行,如:

gather 環境:

\[ \begin{gather} a+b = b+a \\ a \times b = b \times a \end{gather} \]

gather* 環境:

\[ \begin{gather*} 3+5 = 5+3 = 8 \\ 3 \times 5 = 5 \times 3 \end{gather*} \]

gather 環境得到的公式是每行居中的,alignalign* 環境則允許公式按等號或者其他關系符對齊,在關系符前加 & 表示對齊。例如:

\[ \begin{align} x &= t + \cos t + 1 \\ y &= 2 \sin t \end{align} \]

alignalign* 環境還允許排列多列對齊的公式,列與列之間仍使用 & 分隔:

\[ \begin{align*} x &= t & x &= \cos t & x &= t \\ y &= 2t & y &= \sin(t+1) & y &= \sin t \end{align*} \]

需要注意的是,align 環境中的列分隔符 & 一般應該放在二元關系符的前面,但有時候也可以放在后面。如果個別需要在關系符后面或其他地方對齊的,則應該注意使用的符號類型。下面舉一個連等公式的例子。

實話說這個例子記住就好了。關系符后對齊,需要使用空的分組代替關系符右側符號,保證間距。

\[ \begin{align*} & (a+b)(a^2-ab+b^2) \\ ={} & a^3 - a^2b + ab^2 + a^2b - ab^2 +b^2 \\ ={} & a^3 + b^3 \end{align*} \]

拆分單個公式

首先是 \multline 環境和 \multline* 環境,可使用 \\ 換行。各行對齊的方式是:第一行左對齊,最后一行右對齊,中間的部分居中。不過左右兩邊和版心邊界都留有一小段間距。這種環境特別適合排版非常長的連續運算,如:

\[ \begin{multline} a+b+c \\ +d+e+f \\ +j+k+l \end{multline} \]

給多行公式只產生一個編號要使用 \split 環境。\split 環境並不開始一個數學公式,它是使用在 equationgather 等數學環境里的;\split 環境不產生編號,編號仍然由外面的數學環境產生。因此多行公式只產生了一個編號。

\[ \begin{equation} \begin{split} \cos 2x &= \cos^2 x - \sin^2 x \\ &= 2\cos^2 x - 1 \end{split} \end{equation} \]

將公式組合成塊

最為常見的是 \cases 環境,它在幾行公式前面用花括號括起來,用來表示幾種不同的情況。每行公式使用 & 分隔為兩部分,通常表示值和后面的條件,例如:

\[ \begin{equation} D(x) = \begin{cases} 1, & \text{if } x \in \mathbb{Q}; \\ 0, & \text{if } x \in \mathbb{R} \setminus \mathbb{Q}. \end{cases} \end{equation} \]

還有幾個常見的組合公式塊的環境,它們的環境名通常是在原來的環境名的動詞后面加 ed,包括 gathered 環境、aligned 環境和 alignedat 環境等。

gathered 環境把幾行公式居中排列,組合為一個整體,如:

\[ \left. \begin{gathered} S \subseteq T \\ S \supseteq T \end{gathered} \right\} \implies S = T \]


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM