2014年4月3日木曜日

LaTeXで3本線のノルムを表示

数学のノートを作っていて,縦3本線のノルム記号を表示したくなったので調べてみました.nath.styというパッケージを導入すると使えるようになるそうなのですが,プリアンプルに記述すると他のパッケージと競合してしまったので,別の方法を探していました.

TeX StackExchangeの"Spacing between triple vertical lines"でよさげな解決法を見つけたので転記しておきます.

プリアンプルに以下を記述します.
\makeatletter
\newcommand{\opnorm}{\@ifstar\@opnorms\@opnorm}
\newcommand{\@opnorms}[1]{%
  \left|\mkern-1.5mu\left|\mkern-1.5mu\left|
   #1
  \right|\mkern-1.5mu\right|\mkern-1.5mu\right|
}
\newcommand{\@opnorm}[2][]{%
  \mathopen{#1|\mkern-1.5mu#1|\mkern-1.5mu#1|}
  #2
  \mathclose{#1|\mkern-1.5mu#1|\mkern-1.5mu#1|}
}
\makeatother
\opnormという命令で,mathtoolsパッケージで定義されているのと同様の記述の仕方で,3本線のノルムを使用することが出来ます.
\opnorm{a}        % normal size
\opnorm[\big]{a}  % slightly larger
\opnorm[\Bigg]{a} % largest
\opnorm*{a}       % \left and \right
出力結果は次の通りです.