LaTeX メモ - 数式の区切り記号の高さ

このエントリは,「LaTeX メモ - 数式における「|」 (縦線, vertical bar)の扱い(その2)」の内容に続くものである.


LaTeX では,\left, \right と区切り記号を組み合わせることにより,(それによって囲まれる)式の高さに合わせてその区切り記号の高さを調節することができる.この機能は非常に便利なのであるが,たとえば長い式を2行に渡って折り返さなければならない場合など,予期するようには \left, \right が機能しないことがある.こうした場合,明示的に区切り記号の高さを \bigl / \bigr, \Bigl / \Bigr, \biggl / \biggr, \Biggl / \Biggr によって調整したほうがよいことがしばしばある.今回のエントリでは,このような,区切り記号の高さを明示的に調整したほうがよい場合について書いてみたい.なお,例によって,以下では amsmath パッケージを使用しているとする.



\left とその直前のシンボルの間にスペースが入る場合


LaTeX における数式では,各記号のタイプに応じて,記号の間に自動的にスペースが挿入されることがある.この具体的なメカニズムについては TeXbook の18章や LaTeX Companion の 8.9.1 節などをご覧頂きたいのであるが,このようにして挿入されるスペースが余計な場合がある.たとえば,ある関数 H について,H(1/2) という数式を LaTeX で書くとする.


図1


このとき,図1 の上の式のように,\left を使うと,H と \left の間に \thinmuskip  (\,) の分だけスペースが挿入されてしまい,数式の出力が間延びしたものになってしまう.このような場合は,図1 の下の数式のように \biggl / \biggr 等を使い,明示的に区切り記号の高さを指定した方がきれいな出力が得られる.



\left, \right が必要以上に区切り記号を高くする場合


\left, \right は,それによって囲まれる数式の最も高いものにあわせて区切り記号を高くするため,それが必要以上に高くなってしまう場合がある.この例として,図2のコードをコンパイルしたものを図3に示す.


\left(\sum_i\left\|\sum_j a_jb_{ij} \right\|^2 \right)^{1/2}
\quad\text{vs.}\quad
\biggl(\sum_i\Bigl\|\sum_j a_jb_{ij} \Bigr\|^2 \biggr)^{1/2}

図2



図3


図3から分かるように,明示的に \Bigl / \Bigr, \biggl / \biggr などを使って区切り記号の高さを調節したほうが見栄えがよい場合がある.



意図的に区切り記号の高さを高くしたい場合


たとえば,以下の図4のコードをご覧頂きたい.


\left((a_1 b_1) - (a_2 b_2)\right)
\left((a_2 b_1) + (a_1 b_2)\right)
\quad\text{vs.}\quad
\bigl((a_1 b_1) - (a_2 b_2)\bigr)
\bigl((a_2 b_1) + (a_1 b_2)\bigr)

図4


これをコンパイルすると,図5のようになる.


図5


この場合では,普通の括弧の高さで十分なため,\left, \right は機能しない.そこで,数式の内容が分かりやすいよう,括弧の高さを調節したい場合には,図5のように \bigl / \bigr 等を使用することが考えられる.




上記のいずれの状況に於いても,LaTeX におけるデフォルトの \big 等は,いくつかの数式フォントのサイズには対応していないことがある.amsmath パッケージで定義される \big 等にはそのような問題はないので,やはりここでも amsmath パッケージを使用することが推奨される.



コメント

このブログの人気の投稿

LaTeX メモ - 数式における「|」 (縦線, vertical bar)の扱い(その2)

人間はどんなところでも,どんな時でも何歳からでも学ぶことができる

ブログを始めるにあたって - 継続は力

へんろう宿 (井伏鱒二)

イエスは地面に何を書いていたか