つれづれなる備忘録

日々の発見をあるがままに綴る

Texによる数式表現17~括弧機能(physics パッケージ)

1. MathJax3.0+physicsパッケージ

 前回MathJax3.0の利用方法について記した。今回からはMathJax3.0のphysicsパッケージの機能について紹介する。基本的には今までのTexコマンドで表現できるが、physicsパッケージを利用することでコマンドを簡略化できるというメリットがある。今回は括弧表示に関するコマンドについて紹介する。

physicsパッケージのマニュアルはhttp://ftp.jaist.ac.jp/pub/CTAN/macros/latex/contrib/physics/physics.pdf

MathJax3.0とphysicsパッケージのロードについては以下に示す。

+MathJax3.0をロードするscript

<script>
MathJax = {
  loader: {load: ['[tex]/physics']},
  tex: {
    inlineMath: [['$', '$'], ['\\(', '\\)']],
    packages: {'[+]': ['physics']}
  },
  chtml: {
    matchFontHeight: false
  }
};
</script>
<script id="MathJax-script" async
  src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-chtml.js">
</script>
<script src="https://polyfill.io/v3/polyfill.min.js?features=es6"></script> //IE用スクリプト

注:HOMEやTOPページで複数ページ表示された状態では、script同士が干渉してうまく認識できないコマンドがある模様。1記事のみ個別のページとしてロードすれば正しく表示される

(追記2020.09.21): CDNサイトへのプライバシーエラーによりChromeなどで数式表示できない。対策は下記参照

Texによる数式表現37~MathJax, KaTeX表示トラブルの要因・解決 - つれづれなる備忘録

Texによる数式表現38~MathJaxの表示トラブル解決法 - つれづれなる備忘録

2. qtyコマンド

括弧を表示するには\qtyコマンドと括りたい括弧を使用する。なおMathJaxをロードして、$ $内ではmarkdownとの干渉が起こらないようで\(\\[が不要となりでコマンドがすっきりする。

例としては

通常:$[a]$→$[a]$
physics:$\qty[a]$→ $\qty[a]$

他の括弧については$\qty(a)$→ $\qty(a)$,$\qty{a}$→ $\qty{a}$,$\qty|a|$→ $\qty|a|$
なお\pqty{}などのコマンドは認識できない。

qtyを用いるメリットとして、括弧サイズを括弧内の数式に応じて自動調整してくれる。例えば 通常:$\left[\dfrac{1}{2}\right]$→$\left[\dfrac{1}{2} \right]$
physics:$\qty[\dfrac{1}{2}]$→ $\qty[\dfrac{1}{2}]$

qty[]により\left[\right]が不要になる。また括弧の大きさを指定することもできる。サイズ順に

$\qty\big(a)$ :$\qty\big(a)$,
$\qty\Big(a)$:$\qty\Big(a)$,
$\qty\bigg(a)$:$\qty\bigg(a)$,
$\qty\Bigg(a)$:$\qty\Bigg(a)$

3. absコマンド,normコマンド

絶対値などをあらわす| |については\qty| |でもよいが、専用のabs{}コマンドがある。

通常: $|a|$→$|a|$
physics:$\abs{a}$→$\abs{a}$
qtyコマンドと同様に括弧内の数式によってサイズを自動調整する。自動調整をしない場合はアスタリスクを入れて\abs*{}とする。 またサイズを指定する場合は$\abs\Big{a}$:$\abs\Big{a}$などどする。

距離などをあらわすノルム記号は\norm{}を用いる。
通常: $||a||$→$||a||$
physics:$\norm{a}$→$\norm{a}$
括弧内の数式によってサイズを自動調整する。自動調整をしない場合はアスタリスクを入れて\norm*{}とする。 またサイズを指定する場合は$\norm\Big{a}$:$\norm\Big{a}$などどする。

4. evalコマンド, orderコマンド

 定積分などで積分後に数値を代入する際に使用する括弧。
$\eval{f(x)}_0^\infty$: $\eval{f(x)}_0^\infty$

$\eval[f(x)|_0^\infty$: $\eval[f(x)|_0^\infty$

展開式など次数を表現するにはorderコマンド\order{}を用いる。

通常:$\mathcal{O}(x^{2})$→$\mathcal{O}(x^{2})$
physics: $\order{x^{2}}$→ $\order{x^{2}}$

括弧を大きくする場合は$\order\Big{x^{2}}$:$\order\Big{x^{2}}$

5.括弧式:commコマンド, accomコマンド

交換関係などをあらわす交換子は $\comm{A}{B}$: $\comm{A}{B}$
括弧のサイズを大きくする場合は
$\comm\Big{A}{B}$:$\comm\Big{A}{B}$

ポアソン括弧式は
$ \acomm{A}{B}$ : $ \acomm{A}{B}$
あるいは $\pb{A}{B}$: $\pb{A}{B}$