> For the complete documentation index, see [llms.txt](https://overleaf-pro.ayaka.space/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://overleaf-pro.ayaka.space/latex/ja/xiang-xi-ji-shi/33-mathtools-for-beautiful-math.md).

# Mathtools - 美しい数式のために

**著者: Robert Murrish（2012年6月）**

`mathtools` あなたが必要だと気づいていなかったかもしれないパッケージです。LaTeXは数式組版を簡単にし、 `mathtools` それらの数式を美しくします。

`mathtools` ～の拡張です `amsmath`。もし `mathtools`を含めれば、そのパッケージの任意の関数やマクロを使えます。 `amsmath` 数式を組版するための幅広いツール群で、広く使われています。 `mathtools` ～を拡張します `amsmath` 追加の書式オプションを提供し、数式組版でよくある問題のいくつかを解消するための関数群です。

### いくつかの例

#### 2行の分数

複雑な分数は横に広がりすぎて、段幅を超えてしまうことがあります。分子や/または分母を複数行に分けるのは、見栄えよくまとめておく方法です。

```latex
z=\frac{ab+cd+ef+gh+ij+kl+mn+op+qr}{y}
z=\frac{\splitfrac{ab+cd+ef+gh+ij}{+kl+mn+op+qr}}{y}
```

![Fract.png](/files/05cca327ec2fee4c3b59e59a1630ef9c0cb89969)

#### 長い総和の添字

～がなければ `mathtools` 関数 `\mathclap`、下の添字のために総和記号の左右に余分な空白ができます。簡単な `mathtools` コマンドで結果を詰められます。

```latex
P_e_i_\Delta = \sum_{j=1, j\not=k,i}E_iE_jB_i_j cos\delta_i_j\delta_i_j_\Delta + V_kE_iB_i_k cos\delta_i_k_o \delta_i_k_\Delta

P_e_i_\Delta = \sum_{\mathclap{j=1, j\not=k,i}}E_iE_jB_i_j cos\delta_i_j \delta_i_j_\Delta + V_kE_iB_i_k cos\delta_i_k_o \delta_i_k_\Delta
```

![Mathclap.png](/files/0f0c05440a2175d07eb2b55db94bf29b5e97178f)

#### 左付き添字

記号の左側（前）に上付き添字と下付き添字を付けられます。化学の例を示します:

```latex
\prescript{238}{92}{\mathbf{U}}
```

![U238.png](/files/4587a7027632623f5545c15b9f27e9b5a2b4a750)

これらの完全な例は、探索を始めるのに適した場所です `mathtools`が、このパッケージには他にも多くのツールがあります。以下は、このパッケージに含まれるすべてのマクロの完全な一覧です（この記事執筆時点）。最新の一覧と、それぞれの使い方の詳細については、 [のドキュメントを参照してください `mathtools` パッケージ](https://ctan.org/pkg/mathtools?lang=en).

|                                                                                                                               |                                                                                                                                                 |
| ----------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------- |
| **関数名**                                                                                                                       | **説明**                                                                                                                                          |
| mathclap                                                                                                                      | この関数は、横方向の空間を一切取らずに引数を組版し、左右対称に突き出します。上で示したように、この関数は、下付き文字や上付き文字などで生じることのある余分な空白を取り除くのに使えます。                                                    |
| <p>mathrlap<br>mathllap</p>                                                                                                   | mathclap と同様ですが、右側または左側にのみ突き出します。                                                                                                               |
| cramped                                                                                                                       | mathclap に似ていますが、特定の要素を詰めます。例えば、上付き文字を少し内側に寄せるので、特に上付き文字が何段もある場合に便利です。                                                                          |
| <p>crampedclap<br>crampedrlap<br>crampedllap</p>                                                                              | cramped と mathclap（または mathrlap など）の両方を適用します。個別に両方を適用した場合と同じ効果ですが、処理が高速化されます。                                                                   |
| smashoperator                                                                                                                 | 上記のすべての関数を組み合わせたように、要素を詰めます。多くの場合はこちらの方が使いやすいですが、制御性はやや失われ、結果に満足できないこともあります。その場合は、上記の関数を個別に使ってください。                                             |
| adjustlimits                                                                                                                  | 極限（\lim）に対して働き、より複雑な極限の配置を縦方向に揃えます。                                                                                                             |
| SwapAboveDisplaySkip                                                                                                          | 数式の上の空白をいくらか取り除きます。                                                                                                                             |
| <p>newtagform<br>renewtagform<br>usetagform</p>                                                                               | 「タグ」とは数式番号のことで、この関数群を使うとそれらを変更できます。たとえば、括弧やスタイルなどを変えられます。                                                                                       |
| refeq                                                                                                                         | フォントの不一致問題を起こさずに、文書本文中で関数を参照する別の方法です。                                                                                                           |
| showonlyrefs                                                                                                                  | これは関数ではなくフラグですが、かなり便利です。設定すると、本文中で参照された数式だけに番号が付きます。                                                                                            |
| showmanualtags                                                                                                                | showonlyrefs と同様ですが、手動タグが設定された数式に対して使います。                                                                                                       |
| noeqref                                                                                                                       | 上の2つのフラグに対する例外を作り、本文で参照されていなくても数式番号やタグを表示できます。                                                                                                  |
| <p>xleftrightarrow<br>xLeftarrow<br>xRightarrow<br>xhookleftarrow<br>xhookrightarrow<br>xmapsto</p>                           | 関連するテキストに合わせて必要に応じて伸びる、さまざまな矢印を描くための関数群です。                                                                                                      |
| <p>xrightharpoondown<br>xleftharpoondown<br>xrightharpoonup<br>xleftharpoonup<br>xrightleftharpoons<br>xleftrightharpoons</p> | 「ハープーン」または縦矢印の一群です。矢印と同様に、必要に応じて伸びます                                                                                                            |
| <p>overbrace<br>underbrace</p>                                                                                                | 数式の上または下に波括弧を付けます。LaTeXに組み込まれている関数と同様ですが、こちらの方がしばしば見栄えよく組版されます。元のLaTeX関数が必要なら、\LaTeXoverbrace と \LaTeXunderbrace を使えます。                         |
| <p>overbracket<br>underbracket</p>                                                                                            | 波括弧の代わりに四角括弧を使って、数式の上または下に配置します。                                                                                                                |
| begin{matrix} と仲間たち                                                                                                           | 行列を組版するためのいくつかの選択肢があります。主に要素を既定設定よりうまく中央揃えにするためのものですが、smallmatrix のような他の विकल्पもあります。行列を定義したら、どれが最適かを判断するために、公式の mathtools ドキュメントを見ることをおすすめします。 |
| multlined                                                                                                                     | 長い数式を複数の部分に分けます。上の最初の例の分数の分割に似ています。                                                                                                             |
| begin{cases} と仲間たち                                                                                                            | 場合分けされた数式を適切に組版するためのツールです。これにも多くの選択肢がありますので、すべてを取り上げる代わりに、場合分けの数式がどのような見た目になるか分かったら、公式の mathtools ドキュメントを参照してください。                              |
| MoveEqLeft                                                                                                                    | 必要に応じて数式にインデントを付けるための方法です。                                                                                                                      |
| Aboxed                                                                                                                        | 数式のまわりに枠を描きます。                                                                                                                                  |
| <p>ArrowBetweenLines<br>vdotswithin<br>shortvdotswithin<br>MTFlushSpaceAbove<br>MTFlushSpaceBelow</p>                         | これらの関数を使うと、数式、矢印、点などの間の空白部分に描画できます。                                                                                                             |
| shortintertext                                                                                                                | amsmath の \intertext 関数と同様に、数式列の整列を乱さずに少し文章を挿入できます。このバージョンは空白が少なめです。                                                                            |
| DeclarePairedDelimiter                                                                                                        | 新しい区切り記号を定義できます。ドキュメントの例では、分数にちょうどよい高さの絶対値記号を作成します。この関数にはいくつかの高度なオプションがあります。                                                                    |
| <p>lparen<br>rparen</p>                                                                                                       | \left(, \right) と同等です。互換性のために提供されています。                                                                                                          |
| vcentcolon                                                                                                                    | 縦方向の中央に配置されたコロンを描きます。                                                                                                                           |
| <p>nuparrow<br>ndownarrow<br>bigtimes</p>                                                                                     | 他では使えないことのある文字を提供します。                                                                                                                           |
| prescript                                                                                                                     | 上の例3に示したように、文字の前に上付き添字と下付き添字を付けられます。                                                                                                            |
| begin{spreadlines}                                                                                                            | spreadlines 環境を使うと、数式間の縦方向の間隔を明示的に指定できます。                                                                                                       |
| <p>splitfrac<br>splitdfrac</p>                                                                                                | 上の例1のように、分数の分子または分母を分割できます。                                                                                                                     |

以下は、利用可能な mathtools ドキュメントへの直接リンクです:

* [`mathtools` CTAN上のパッケージとドキュメント](https://ctan.org/pkg/mathtools?lang=en);
* [TUGboat の記事](http://www.tug.org/TUGboat/Articles/tb22-4/tb72perlS.pdf).


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://overleaf-pro.ayaka.space/latex/ja/xiang-xi-ji-shi/33-mathtools-for-beautiful-math.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
