数式の挿入

Doxygen では、出力に {\LaTeX} 数式を挿入できます (これは HTML、{\LaTeX}、および RTF 出力でのみ機能します)。HTML および RTF ドキュメントに (画像として) 数式を含めるには、以下のツールもインストールする必要があります。

  • latex: {\LaTeX} コンパイラー。数式を解析するために必要です。テストには teTeX 1.0 ディストリビューションを使用しました。
  • dvips: DVI ファイルを PostScript ファイルに変換するツール。テストには Radical Eye software のバージョン 5.92b を使用しました。
  • gs: PostScript ファイルをビットマップに変換するための GhostScript インタープリター。テストには Aladdin GhostScript 8.0 を使用しました。

HTML 出力には、上記のツールを必要としない MathJax を使用する代替ソリューションもあります。構成で USE_MATHJAX を有効にすると、LaTeX 数式は HTML に「そのまま」コピーされ、クライアント側の JavaScript がそれらを解析して (インタラクティブな) 画像に変換します。

ドキュメントに数式を挿入するには、4 つの方法があります。

  1. 本文中に表示されるインライン数式を使用します。これらの数式は、\f$ コマンドのペアで囲む必要があります。例:

      The distance between \f$(x_1,y_1)\f$ and \f$(x_2,y_2)\f$ is 
      \f$\sqrt{(x_2-x_1)^2+(y_2-y_1)^2}\f$.
    

    結果:

    $(x_1,y_1)$$(x_2,y_2)$ の間の距離は $\sqrt{(x_2-x_1)^2+(y_2-y_1)^2}$ です。

  2. 本文中に表示されるインライン数式を使用します。\f$ とは異なり、{\LaTeX} で明示的に数式モードを開きません。これらの数式は、\f(\f) コマンドで囲む必要があります。例:

      The LaTeX and Tex logos are: \f(\LaTeX \f) and \f(\TeX \f).
    

    結果:

    LaTeX および Tex のロゴは、{\LaTeX} および {\TeX} です。

  3. 番号なしのディスプレイ数式。別の行の中央に配置されます。これらの数式は、\f[\f] コマンドで囲む必要があります。例:
      \f[
        |I_2|=\left| \int_{0}^T \psi(t) 
                 \left\{ 
                    u(a,t)-
                    \int_{\gamma(t)}^a 
                    \frac{d\theta}{k(\theta,t)}
                    \int_{a}^\theta c(\xi)u_t(\xi,t)\,d\xi
                 \right\} dt
              \right|
      \f]
    
    結果:

    \[    |I_2|=\left| \int_{0}^T \psi(t) 
             \left\{ 
                u(a,t)-
                \int_{\gamma(t)}^a 
                \frac{d\theta}{k(\theta,t)}
                \int_{a}^\theta c(\xi)u_t(\xi,t)\,d\xi
             \right\} dt
          \right|
\]

  4. 数式環境にない数式またはその他の LaTeX 要素は、\f{environment} を使用して指定できます。ここで、environment{\LaTeX} 環境の名前であり、対応する終了コマンドは \f} です。方程式配列の例を次に示します。
       \f{eqnarray*}{
            g &=& \frac{Gm_2}{r^2} \\ 
              &=& \frac{(6.673 \times 10^{-11}\,\mbox{m}^3\,\mbox{kg}^{-1}\,
                  \mbox{s}^{-2})(5.9736 \times 10^{24}\,\mbox{kg})}{(6371.01\,\mbox{km})^2} \\ 
              &=& 9.82066032\,\mbox{m/s}^2
       \f}
    
    結果:

    \begin{eqnarray*}        g &=& \frac{Gm_2}{r^2} \\ 
          &=& \frac{(6.673 \times 10^{-11}\,\mbox{m}^3\,\mbox{kg}^{-1}\,
              \mbox{s}^{-2})(5.9736 \times 10^{24}\,\mbox{kg})}{(6371.01\,\mbox{km})^2} \\ 
          &=& 9.82066032\,\mbox{m/s}^2
\end{eqnarray*}

1 番目と 3 番目のコマンドでは、数式に {\LaTeX} の数式モードで有効なコマンドが含まれていることを確認する必要があります。2 番目のコマンドは、USE_MATHJAX を使用する場合でも数式モードで動作する有効なテキストモード コマンドである必要があります。4 番目のコマンドでは、セクションに特定の環境に有効なコマンドが含まれている必要があります。

警告
現在、Doxygen は数式のタイプミスからの回復において、あまりフォールトトレラントではありません。誤った数式と form_* ファイルを削除するには、html、rtf などのディレクトリに書き込まれた formula.repository ファイルを削除する必要がある場合があります。

独自の {\LaTeX} コマンド (例えば、数式ビルディング ブロックや特定の単語の一貫した記述など) を定義できるようにするために、構成オプション FORMULA_MACROFILE を使用できます。{\LaTeX} コマンドを含むファイルを指定します。このファイルには、{\LaTeX}\newcommand および \renewcommand コマンドを含めることができ、これらは数式 (画像バージョンと MathJax バージョン) および生成された {\LaTeX} 出力 (PDF 生成用) に含まれます。
`\newcommand` (および `\renewcommand`) は、オプション パラメーターなしのバージョンに制限されているため、次のタイプのみがサポートされています。

\newcommand{\cmd}{replacement}
\newcommand{\cmd}[nr]{replacement}

例:

\newcommand{\E}{\mathrm{E}}
\newcommand{\ccSum}[3]{\sum_{#1}^{#2}{#3}}

次のセクションに進むか、インデックスに戻ります。