Takatani Note

【LaTeX】数式環境【数式番号、複数行の数式の出力】

この記事では、equation環境やalign環境のような数式環境によって、数式番号をつけたり、複数行の数式を出力させたりする方法について解説します。

数式に番号を付ける

equation環境

数式番号の付いた別行立ての数式を出力するにはequation環境を使います。 equation環境内に記述された数式には、自動的に連番が割り振られ、数式の右側に出力されます。 なお,equation環境内は自動的にディスプレイ数式モードになるため、数式を \[ \]$$ $$で囲む必要はありません。

構文:
\begin{equation}
  数式...
\end{equation}
例:
\begin{equation}
 E=mc^2
\end{equation}

$$ E=mc^2 \tag{1} $$

数式番号が不要な場合はequation*環境が使えます。
また、\[...\]$$...$$も使えます。

\begin{equation*}
 E=mc^2
\end{equation*}

$$ E=mc^2 $$

標準的でない数式番号は\tagで付けます。 たとえば $(*)$ という番号を付けるには\tag{$*$}とします。

\begin{equation}
 E=mc^2 \tag{$*$}
\end{equation}

$$ E=mc^2 \tag{$*$} $$

\tag{...}の中身は本文用フォントで組まれます。 数式番号に括弧を付けない場合は\tag*{...}とします。

複数行の数式を出力する

複数行の数式を出力するコマンドをいくつか紹介します。

複数行の数式 gather

複数の数式を並べるにはgather環境を使います。数式の区切り(改行)は\\です。最後の行には\\を付けません。

\begin{gather}
 (a+b)^2 = a^2 + 2ab + b^2           \\
 (a-b)^2 = a^2 - 2ab + b^2   \notag  \\
 (a+b)^3 = a^3 + 3a^2b + 3ab^2 + b^3 
\end{gather}

$$ \begin{gather} (a+b)^2 = a^2 + 2ab + b^2 \tag{6.7} \\ (a-b)^2 = a^2 - 2ab + b^2 \notag \\ (a+b)^3 = a^3 + 3a^2b + 3ab^2 + b^3 \tag{6.8} \end{gather} $$

各行に数式番号が付きますが、番号を付けたくない行は、最後(\\の直前)に\notagと書いておきます(ほかの数式環境でも同様です)。

gatherの代わりにgather*とすると、全部の行に数式番号が付きません。 環境名に $*$ を付けると番号が付かないのは、他の数式環境も同様です。

改行の幅の調整:

改行の命令\\をたとえば\\[-3pt]に変えると、改行の幅が通常より3ポイント小さくなります。

align環境

align環境は&で位置を揃えることができます。 各行に番号が付きます。 番号の不要な行には\notagを使います。

\begin{align}
 (a+b)^2 & = a^2 + ab + ba +b^2  \\
         & = a^2 + 2ab + b^2
\end{align}

$$ \begin{align} (a+b)^2 & = a^2 + ab + ba +b^2 \\ & = a^2 + 2ab + b^2 \tag{6.9} \end{align} $$

どの行にも番号が不要ならalign*環境を使います。

align環境の類は各行に複数の&があってもかまいません。

\begin{align*}
 \sin A & = y/r & \cos A & = x/r \\
 \tan A & = y/x & \cot A & = x/y 
\end{align*}

$ \begin{align*} \sin A & = y/r & \cos A & = x/r \\ \tan A & = y/x & \cot A & = x/y \end{align*} $

split環境、aligned環境

位置を揃えた複数行の数式全体の中央に番号を振るには、split環境またはaligned環境で一を揃え、全体をほかの数式環境の中にいれて番号を振ります。

\begin{equation}
 \begin{split}
 (a+b)^2 & = a^2 + ab + ba +b^2  \\
         & = a^2 + 2ab + b^2
 \end{split}
\end{equation}

$$ \begin{equation} \eqalign{ (a+b)^2 & = a^2 + ab + ba +b^2 \\ & = a^2 + 2ab + b^2 \tag{6.10} } \end{equation} $$

上の例で数式番号を出力したのはequation環境のほうです。 split自身は数式番号を出力しません(split*はありません)。

aligned環境を枠\fboxに入れることができます。

\fbox{$
\begin{aligned}
 (a+b)^2 & = a^2 + ab + ba +b^2  \\
         & = a^2 + 2ab + b^2
\end{aligned} $}

$ \fbox{$ \begin{aligned} (a+b)^2 & = a^2 + ab + ba +b^2 \\ & = a^2 + 2ab + b^2 \end{aligned} $} $