使用 amsmath 的 alignat 環境,讓相應的項在連續的化簡步驟中共用對齊欄。本指南說明如何在 Mac 上的 LaTeX 文件中建立這種版面配置,包括某一項消失的步驟。
選擇推導所需的對齊方式
首先,決定你希望讀者沿著垂直方向追蹤什麼:等號、相應項的起始位置,還是個別運算子。這些是不同的版面配置選擇。以下範例的目標是在化簡表達式時,讓二次項、一次項和常數項保持在三個固定位置。
LaTeX Project 建議讀者參閱 amsmath 套件使用者指南,了解數學排版。該指南所記載的環境提供以下選擇。LaTeX 核心文件、amsmath 使用者指南,第 3.3–3.7 節。
| 版面配置需求 | 環境 | 使用位置 |
|---|---|---|
| 讓簡單的等式鏈在等號處對齊 | align 或 align* |
直接放在文件本文中 |
| 以明確間距對齊多組相應的項 | alignat 或 alignat* |
直接放在文件本文中 |
| 讓項目對齊的推導共用一個方程式編號 | alignedat,置於 equation 中 |
放在外層數學環境內 |
| 在單一對齊位置換行呈現一個方程式 | split,置於 equation 中 |
放在外層陳列式內 |
| 換行呈現長方程式,但不對齊相應的項 | multline |
直接放在文件本文中 |
在此任務中,先使用 alignat*。它的欄位對能讓你控制各組之間的間距。相較之下,align 會在不同的方程式組之間加入間距,因此逐項推導可能會顯得過於分散。星號會停用方程式編號。amsmath 使用者指南,第 3.6 節、Learn LaTeX:數學。
建立完整的逐項對齊化簡式
以下虛構範例先合併 x 的同次方項,再以簡寫表示它們的係數。所有字母都表示一般可交換的純量。定義 A=a+b、B=c+d 和 C=e+f;最後一列是在合併之後改用另一種記號。
將這份完整文件儲存為 term-alignment.tex。請在 \begin{document} 之前載入所需套件。
\documentclass{article}
\usepackage{amsmath}
\begin{document}
Let $A=a+b$, $B=c+d$, and $C=e+f$.
Then
\begin{alignat*}{3}
P(x)&=a x^2+b x^2 &&{}+c x+d x &&{}+e+f\\
&=(a+b)x^2 &&{}+(c+d)x &&{}+e+f\\
&=A x^2 &&{}+B x &&{}+C
\end{alignat*}
\end{document}
將版面配置視為三個垂直排列的組。第一組包含等號和二次項。第二組以一次項前的加號開頭。第三組以常數項前的加號開頭。合併係數會改變各組的寬度,但各列所選的對齊位置仍維持一致。
這是對已記載欄位機制的應用,而不是自動辨識相同代數項。你要將每個表達式指定到預定欄位;對齊環境則負責排列這些欄位。此範例使用左右對齊欄位交替排列的方式。amsmath 套件,第 17 節。
編輯前先了解 & 符號
在 alignat* 中,引數 {3} 會宣告三對欄位。因此,欄位完整的一列有六個欄位和五個 & 分隔符號。手冊的計算規則是:取一列中最多的 & 符號數量,加一後再除以二。amsmath 使用者指南,第 3.6 節。
第一列的欄位配置如下:
| 欄位 | 內容 | 在此範例中的用途 |
|---|---|---|
| 1 | P(x) |
右對齊的左側項 |
| 2 | =a x^2+b x^2 |
左對齊的等號與二次項組 |
| 3 | 空白 | 未使用的右對齊欄位 |
| 4 | {}+c x+d x |
左對齊的一次項組 |
| 5 | 空白 | 未使用的右對齊欄位 |
| 6 | {}+e+f |
左對齊的常數項組 |
&& 序列會讓第 3 欄和第 5 欄保持空白。後續列開頭的 & 會讓第 1 欄保持空白,讓推導可以從另一個等號繼續。\\ 命令會結束一列。
{}+ 中的空組可作為左運算元,讓二元加號在欄位邊界處留出間距;它不會輸出任何字元。改寫這些範例時,請保留這種形式。套件的對齊前置設定也會在左對齊欄位的開頭使用空組。amsmath 套件,對齊前置設定。
一般原始碼中的空格能讓程式碼更容易閱讀,但它們不會在數學模式中設定水平位置。對齊是由欄位結構決定的。Learn LaTeX:數學。
在 Mac 上編譯範例
編譯前,你需要先安裝可正常運作的 TeX 發行版。TeXShop 安裝文件說明了 MacTeX 和 BasicTeX 的安裝方式,並指出 /Library/TeX/texbin 是共用位置,應用程式會透過它找到目前發行版的程式。TeXShop:安裝 TeX Live。
如要直接編譯,請將檔案以純文字格式儲存到桌面,開啟 Terminal,並依序執行以下兩個命令:
cd "$HOME/Desktop"
/Library/TeX/texbin/pdflatex -interaction=nonstopmode -halt-on-error term-alignment.tex
開啟產生的 term-alignment.pdf,並檢查三組項目。這些指示假設你的桌面位於 $HOME/Desktop,且檔案名稱完全如上所示。如果編譯停止,請先排除回報的錯誤,再檢查 PDF;先前成功執行時產生的舊版 PDF 可能仍然存在。
項目消失時仍保留欄位
消去項目時,穩定的版面配置特別有用。假設一次項係數是 c-c。你可能希望最後的常數項仍位於先前常數項的正下方,而一次項的位置則留空。
以下完整文件在整個過程中都維持相同的六欄結構。中間列明確顯示零係數;最後一列則移除該項,而不將常數項移到它的位置。
\documentclass{article}
\usepackage{amsmath}
\begin{document}
Cancelling the linear coefficient gives
\begin{equation}
\begin{alignedat}{3}
Q(x)&=(a+b)x^2 &&{}+(c-c)x &&{}+d\\
&=(a+b)x^2 &&{}+0x &&{}+d\\
&=(a+b)x^2 && &&{}+d
\end{alignedat}
\end{equation}
\end{document}
在最後一列中,請保留二次項表達式後的兩組 &&。它們會保留中間的空欄位。若移除其中一組,常數項就會移到較前面的欄位,改變垂直排列所傳達的意思。
此範例也示範了讓整個推導共用一個編號的支援方式:將 alignedat 放在 equation 中。內部環境會採用其內容的自然寬度,而且必須放在外層數學環境中。amsmath 使用者指南,第 3.7 節。
在讀者追蹤消去過程時,保留空位很有幫助。若要在文件其他位置獨立呈現最後的公式,請使用精簡表達式 (a+b)x^2+d。請依目前陳列式的用途,決定要呈現各項之間的對應關係,還是呈現最後的結果。
排查間距與對齊問題
調整個別間距前,先檢查結構。以下步驟針對上方兩種版面配置範例設計。
- 確認已載入套件。 請將
\usepackage{amsmath}放在前置區。 - 檢查外層環境。 在文件本文中直接使用
alignat*。在equation中,或其他合適的數學環境中,使用alignedat。 - 計算分隔符號。 每個範例列都有五個
&字元,對應{3}。檢查新加入的列是否符合這個模式。 - 檢查欄位歸屬。 如果只有某一項左右移動,請將它的欄位位置與前一列比較。
- 檢查數學內容。 符號、係數或指數的變化都屬於代數變化,即使各欄對齊也一樣。
對齊分隔符號過多可能會產生套件錯誤 Extra & on this line。錯誤地在 equation 中巢狀放入 align 等陳列式,也會觸發方程式結構錯誤;此用途請改用 alignedat 等內部建構環境。amsmath 套件,第 17 節。
如果某欄似乎太寬,請檢查其中最長的表達式。在第一個範例中,a x^2+b x^2 會比 A x^2 佔據更大的寬度。額外寬度有助於達成預期的對應關係。嘗試壓縮前,先確認三組項目是否仍各自需要獨立的對齊位置。
也請確切指出看起來未對齊的部分。這些範例會對齊各項組的起始位置,包括前置加號。它們不會在各組內另外對齊每個係數、變數和指數。如果讀者只需要追蹤連續的等式,使用單一對齊基準的簡單版面可能更容易閱讀。
加入說明而不必重建推導
若某個變換需要文字說明,mathtools 提供 \shortintertext,可在保留對齊點的同時,於對齊列之間插入文字。它會載入 amsmath,因此請將前置區改為 \usepackage{mathtools}。mathtools 套件,第 2 節和第 3.5 節。
例如,在變更套件後,以下含標註的片段可取代第一份完整文件中的對齊區塊:
\begin{alignat*}{3}
P(x)&=a x^2+b x^2 &&{}+c x+d x &&{}+e+f\\
\shortintertext{Collect coefficients of matching powers of $x$.}
&=(a+b)x^2 &&{}+(c+d)x &&{}+e+f
\end{alignat*}
請用這句話說明希望讀者注意的運算。在此,公用欄位已顯示各組的位置;插入的文字則說明其形式改變的原因。
處理自己的推導時,先草擬預期的各組項目,為每組指定固定欄位,並在消去過程中保留這些欄位。每加入一個新的變換後就編譯一次。這套流程能讓各項之間的對應關係一目了然,也讓日後回頭編輯時更容易理解原始碼。
來源
- LaTeX 文件 — LaTeX Project。
- amsmath 套件使用者指南 — American Mathematical Society 與 LaTeX Project。
- amsmath 套件 — LaTeX Project。
- 數學 — Learn LaTeX。
- 安裝 TeX Live — TeXShop。
- mathtools 套件 — Morten Høgholm、Lars Madsen 與 LaTeX3 Project。