4 つのパッケージのみを使用する場合、バージョン通常で使用される数学アルファベットが多すぎます

4 つのパッケージのみを使用する場合、バージョン通常で使用される数学アルファベットが多すぎます

これはとても奇妙です。苦労の末、4つのパッケージの組み合わせに絞り込みました。これら4つのパッケージのいずれかをコメントしてください、エラーは消えます。

ムウェ

\documentclass[12pt,notitlepage]{article}

\usepackage{newtxmath}
\usepackage{siunitx}
\usepackage{bm}
\usepackage{esvect}

\begin{document} %equation is below is auto-generated by Maple 18.02
\[
 \left\{ y \left( x \right) =\int \!{\frac {1}{\sqrt {{\it a4}\,{x}^{4
}+{\it a3}\,{x}^{3}+{\it a2}\,{x}^{2}+{\it a1}\,x+{\it a0}}}}\,{\rm d}
x+{\it \_C1} \right\} 
\]

\end{document}

そしていま

pdflatex
This is pdfTeX, Version 3.14159265-2.6-1.40.15 (TeX Live 2014) (preloaded 
format=pdflatex)
 restricted \write18 enabled.
entering extended mode
....
(/usr/local/texlive/2014/texmf-dist/tex/latex/newtx/untxsyc.fd)
(/usr/local/texlive/2014/texmf-dist/tex/latex/esvect/uesvect.fd)
(/usr/local/texlive/2014/texmf-dist/tex/latex/tex-gyre/t1qhv.fd)
(/usr/local/texlive/2014/texmf-dist/tex/latex/newtx/t1ntxtt.fd)

! LaTeX Error: Too many math alphabets used in version normal.

See the LaTeX manual or LaTeX Companion for explanation.
Type  H <return>  for immediate help.
 ...                                              

l.12 ...}+{\it a2}\,{x}^{2}+{\it a1}\,x+{\it a0}}}
                                                  }\,{\rm d}
? 

1 つのパッケージを含めるとエラーが発生するのは理解できます。しかし、一見まったく関係のない 4 つのパッケージを含めるとなぜエラーが発生するのでしょうか。パッケージはbmとどう関係があるのでしょうsiunitxか。また、newtxmathは とどう関係があるのでしょうかesvect。これはすべて、私にはランダムに思えます。

これは、Miktex を搭載した Windows でも発生します。

Mathematica グラフィックス

答え1

bmアルファベットをたくさん使っているというヒントを与えるだけで十分です:

\documentclass[12pt,notitlepage]{article}

\usepackage{newtxmath}
\usepackage{siunitx}
\newcommand\bmmax{2}
\usepackage{bm}

\usepackage{esvect}

\begin{document} %equation is below is auto-generated by Maple 18.02
\[
 \left\{ y \left( x \right) =\int \!{\frac {1}{\sqrt {{\it a4}\,{x}^{4
}+{\it a3}\,{x}^{3}+{\it a2}\,{x}^{2}+{\it a1}\,x+{\it a0}}}}\,{\rm d}
x+{\it \_C1} \right\} 
\]

\end{document}

答え2

TeX には 16 個の数学アルファベットしか格納できません。異なる数学アルファベットを定義するパッケージをロードすると、その影響は累積します。そのため、これらのパッケージのうち 3 つでは合計が 16 未満になるかもしれませんが、4 つすべてが 16 を超えると、TeX は定義しようとする 17 番目のアルファベットを処理できないためエラーを発します。

これらのパッケージの一部のアルファベットだけが必要な場合は、必要な部分だけパッケージからコードを取得して、使用したいものを放棄することなく、合計を 16 未満に戻すことができます。

この特定の方程式については、次の式が当てはまります。

\documentclass[12pt,notitlepage]{article}

\usepackage{newtxmath}
\usepackage{siunitx}
\usepackage{bm}
\usepackage{esvect}

\begin{document} %equation is below is auto-generated by Maple 18.02

\[
\left\{ y \left( x \right) =\int \!{\frac {1}{\sqrt {a4\,{x}^{4
      }+a3\,{x}^{3}+a2\,{x}^{2}+a1\,x+a0}}}\,{\mathrm{d}}
x+\_C1 \right\}
\]

\end{document}

しかし、もちろん、この場合、数字は斜体ではなくなります。

答え3

楽しみのために、Mapleコンバータが常に

{\it ...}

どうやらそうらしいが、問題を回避する方法がある。この方程式:

\documentclass[12pt,notitlepage]{article}

\usepackage{amsmath}
\usepackage{newtxmath}
\usepackage{siunitx}
\usepackage{bm}
\usepackage{esvect}

\let\it\relax
\DeclareRobustCommand\it{%
  \ifmmode
    \expandafter\mmit
  \else
    \normalfont\itshape
  \fi
}
\def\mmit{%
  \egroup % end the started group
  \iftrue\expandafter\text\expandafter{\expandafter\itshape\else}\fi
}

\begin{document} %equation is below is auto-generated by Maple 18.02
\[
 \left\{ y \left( x \right) =\int \!{\frac {1}{\sqrt {{\it a4}\,{x}^{4
}+{\it a3}\,{x}^{3}+{\it a2}\,{x}^{2}+{\it a1}\,x+{\it a0}}}}\,{\rm d}
x+{\it \_C1} \right\} 
\]

\end{document}

ここに画像の説明を入力してください

関連情報