PR

【LaTeX】ベクトル(太字・矢印)のかき方とテクニック

LaTeX
記事内に広告が含まれています。

\LaTeX における,太字のベクトルや矢印のベクトルについて,その基本的な書き方と,矢印の高さをそろえる等のテクニックを紹介します。

なお,amsmath パッケージの使用は仮定しています。

太字のベクトルとそのテクニック

まずは,太字のベクトルについて紹介します。

太字を出力するには,\boldsymbol コマンドを使うか,\bm コマンドを使うかのどちらかになります。どちらもほぼ同じですが,後者は bm パッケージが必要です。bm パッケージが使えるならそちらを使う方が良いとされています。一応両方を確認しましょう。

boldsymbolコマンドを用いた太字

\boldsymbol{x} = \boldsymbol{a}+\boldsymbol{b} とかくことで, \boldsymbol{x}=\boldsymbol{a}+\boldsymbol{b} と出力されるコマンドです。

各アルファベットの出力例を記載しておきます。

\begin{gather}
  \boldsymbol{ABCDEFGHIJKLMNOPQRSTUVWXYZ}\\
  \boldsymbol{abcdefghijklmnopqrstuvwxyz}
\end{gather}
boldsymbol を用いた各アルファベットの出力例

bmコマンドを用いた太字

\bm{x} = \bm{a}+\bm{b} とかくことで, \boldsymbol{x}=\boldsymbol{a}+\boldsymbol{b} と出力されるコマンドです。こちらに関しては,あらかじめプリアンブルに \usepackage{bm} と書かねばなりません。フォントを変更している場合は,その命令より後にかきます。出力はさっきと同じです。(フォントによって変わるかもしれません)

\begin{gather}
  \bm{ABCDEFGHIJKLMNOPQRSTUVWXYZ}\\
  \bm{abcdefghijklmnopqrstuvwxyz}
\end{gather}
bm を用いた各アルファベットの出力例

bm パッケージには,太字を定義するコマンド\DeclareBoldMathCommand{\cmd}{<math>} があります。これは,本文中で \cmd とかくことで,<math> の太字を出力するコマンドを定義できます。たとえば,プリアンブルで以下のように使います。

\DeclareBoldMathCommand{\balpha}{\alpha}
\DeclareBoldMathCommand{\bbeta}{\beta}

こうすると,たとえば数式中で \balpha+\bbeta と入力することで, \boldsymbol{\alpha}+\boldsymbol{\beta} と出力することが可能です。

よく使う場合は,あらかじめこのように定義しておくとよいでしょう。

太字のベクトルのその他のかき方

\boldmath$a$\boldmath\(a\)

のように,数式の外に \boldmath とかき,その後に数式を書いて太字にするやり方もあります。使う場面は少ないかもしれません。出力は同じであるため,省略します。

また,イタリックにしたくない場合は,\mathbf を用いるとよいでしょう。たとえば,\mathbf{x}=\mathbf{a}+\mathbf{b} と入力すると, \mathbf{x}=\mathbf{a}+\mathbf{b} と出力できます。

physicsパッケージを用いた太字

\usepackage{physics} とした場合,より簡潔なかき方をすることができます。

コマンド出力解説
\vb{a} \mathbf{a}イタリックにしない。ギリシャ文字は不可。
\vb*{a}\boldsymbol{a}イタリックにする。ギリシャ文字も可。

矢印のベクトルとそのテクニック

次に,矢印のベクトルについて紹介しましょう。

矢印のベクトルの基本的なかき方

矢印のベクトルを書くには,\vec{}\overrightarrow{} を用います。以下の表を見てください。

出力コマンド
\vec{a}+\vec{b}\vec{a}+\vec{b}
\vec{AB}+\vec{AC}\vec{AB}+\vec{AC}
\vec{\mathrm{AB}}+\vec{\mathrm{AC}}\vec{\mathrm{AB}}+\vec{\mathrm{AC}}
\overrightarrow{a}+\overrightarrow{b}\overrightarrow{a}+\overrightarrow{b}
\overrightarrow{AB}+\overrightarrow{AC}\overrightarrow{AB}+\overrightarrow{AC}
\overrightarrow{\mathrm{AB}}+\overrightarrow{\mathrm{AC}}\overrightarrow{\mathrm{AB}}+\overrightarrow{\mathrm{AC}}

\vec は小さな矢印で,\overrightarrow は伸縮可能な矢印です。好きな方を用いればよいと思います。

矢印の高さの調整

矢印の高さを統一したいと思うこともあるでしょう。以下にその例を記載します。

出力コマンド解説
\vec{a}+\vec{b}\vec{a}+\vec{b}
\vec{\mathstrut a}+\vec{\mathstrut b}\vec{\mathstrut a}+\vec{\mathstrut b}a,bの高さを上げる
\vec{\vphantom{b}a}+\vec{b}\vec{\vphantom{b}a}+\vec{b}aの高さをbに揃える
\overrightarrow{a}+\overrightarrow{b}\overrightarrow{a}+\overrightarrow{b}
\overrightarrow{\mathstrut a}+\overrightarrow{\mathstrut b}\overrightarrow{\mathstrut a}
+\overrightarrow{\mathstrut b}
a,bの高さを上げる
\overrightarrow{\vphantom{b}a}+\overrightarrow{b}\overrightarrow{\vphantom{b}a}
+\overrightarrow{b}
aの高さをbに揃える

\mathstrut は数式用の支柱で,高さ・深さを上げるための命令です。
\vphantom{<formula>} は<formula>と同じ高さ・深さを設定する命令です。類似のものに,\hphantom{<formula>} (<formula>と同じ幅の空白を出力する),\phantom{<formula>} (<formula>と同じ高さ・深さ・幅の空白を出力する)があります。

physicsパッケージを用いた場合

\usepackage{physics} とした場合は,以下のようなかき方もあります。

コマンド出力解説
\va{a}\vec{\mathbf{a}}イタリックにしない。ギリシャ文字は不可。
\va*{a}\boldsymbol{\vec{a}}イタリックにする。ギリシャ文字も可。

【発展】esvectパッケージでベクトルの矢印の種類を変える

\usepackage[d]{esvect} のようにaからhまでのオプションをつけて esvect パッケージを読み込むことで,矢印の形状を変えることができます(デフォルトはd)。aからhまでのオプションと,矢印の対応は以下のようになっています。

公式ドキュメントより

こうすることで,\vv{文字}\vv*{文字}{添え字} の形で,ベクトルを出力することができます。たとえば,\vv{\mathrm{AB}}, \vv*{e}{r} とすると,以下のようになります。

\vv{\mathrm{AB}}, \vv*{e}{r} の出力例

ベクトルに関連するLaTeXコマンド

その他,ベクトルに関連したコマンドを列挙しておきましょう。

単位ベクトル

単位ベクトルは,それが単位ベクトルと分かるように,ハットを付けることがあります。

出力コマンド
\boldsymbol{\hat{a}}+\boldsymbol{\hat{b}}\bm{\hat{a}}+\bm{\hat{b}}
bmパッケージを用いた場合
\mathbf{\hat{a}}+\mathbf{\hat{b}}\mathbf{\hat{a}}+\mathbf{\hat{b}}
\boldsymbol{\hat{a}}+\boldsymbol{\hat{b}}\vu*{a}+\vu*{b}
physicsパッケージを用いた場合
\mathbf{\hat{a}}+\mathbf{\hat{b}}\vu{a}+\vu{b}
physicsパッケージを用いた場合

ベクトルの成分表示

出力コマンド意味
(a_1,a_2,\dots,a_n)(a_1,a_2,\dots,a_n)行ベクトル
\begin{pmatrix}a_1 \\ a_2 \\ \vdots \\ a_n \end{pmatrix}\begin{pmatrix}a_1 \\ a_2 \\ \vdots \\ a_n \end{pmatrix}列ベクトル

列ベクトルは,行列とみて,行列のコマンド\begin{pmatrix}, \end{pmatrix} を用いて出力します。

ベクトルの大きさ・ノルム・内積

以下では,太字は\bm (bmパッケージが必要),矢印は \vec を用いますが,もちろん \boldsymbol\overrightarrow を用いても構いません。

出力コマンド意味
|\boldsymbol{a}||\bm{a}|大きさ
\lvert\boldsymbol{a}\rvert\lvert\bm{a}\rvert大きさ
\|\boldsymbol{a}\|\|\bm{a}\|ノルム
\lVert\boldsymbol{a}\rVert\lVert\bm{a}\rVertノルム
\boldsymbol{a}\cdot\boldsymbol{b}\bm{a}\cdot\bm{b}内積
(\boldsymbol{a},\boldsymbol{b})(\bm{a},\bm{b})内積
\langle\boldsymbol{a},\boldsymbol{b}\rangle\langle\bm{a},\bm{b}\rangle内積
\boldsymbol{a}^\top \boldsymbol{b}\bm{a}^\top \bm{b}内積(列ベクトル)
\boldsymbol{a}\times\boldsymbol{b}\bm{a}\times\bm{b}外積
|\vec{a}||\vec{a}|大きさ
\lvert\vec{a}\rvert\lvert\vec{a}\rvert大きさ
\|\vec{a}\|\|\vec{a}\| ノルム
\lVert\vec{a}\rVert\lVert\vec{a}\rVertノルム
\vec{a}\cdot\vec{b}\vec{a}\cdot\vec{b}内積
(\vec{a},\vec{b})(\vec{a},\vec{b})内積
\langle\vec{a},\vec{b}\rangle\langle\vec{a},\vec{b}\rangle内積
\vec{a}\times\vec{b}\vec{a}\times\vec{b}外積
\nabla\nablaナブラ

この辺の括弧類の書き方に関しては,以下の記事も参照してください。

physicsパッケージを用いた場合

出力コマンド意味
\boldsymbol{a\cdot b}\vb*{a}\vdot\vb*{b}内積
\boldsymbol{a\times b}\vb*{a}\cross\vb*{b}
\vb*{a}\cp\vb*{b}
外積
\boldsymbol{\nabla}\gradgradient(勾配)
\boldsymbol{\nabla\cdot}\divdivergence(発散)
\boldsymbol{\nabla\times}\curlrotation(回転)
\nabla^2\laplacianラプラシアン
\braket{\phi\vert\psi}\braket{\phi}{\psi}
\ip{\phi}{\psi}
ディラックのブラケット

\grad, \dif, \curl, \laplacian に関して,これらは後ろに自動または手動で大きさが変わる括弧 (), [], {} などをつけることが可能です。つけ方は,physicsパッケージ特有の,括弧のコマンド \qty と同様です。\qty の使い方に関しては,以下の中で解説しています。

また,ディラックのブラケット記法は以下で詳しく掘り下げています。

関連する記事

参考

  1. bm – Access bold symbols in maths mode
  2. esvect – Vector arrows
  3. physics – Macros supporting the Mathematics of Physics