如何将 siunitx 单位放在括号或等式中?

如何将 siunitx 单位放在括号或等式中?

我想在方程式中加上单位。有人发表了一篇论文,论文中单位就是这样写的。我需要模仿它。一个简单的例子是:

\begin{equation}
   a = \si{\ell}{(\cm)}
\end{equation}

或者

\begin{equation}
   a = \si{\ell}{\cm}
\end{equation}

但两者都给出了未定义的控制序列。我认为问题在于我不知道如何在方程中使用包 siunitx。

答案1

\si命令仅接受一个参数,即要打印的单位。如果您还想打印数字,请使用\SI{<number>}{<unit>}

但是,siunitx尝试解析<number>,当您提供它时\ell它会告诉您:

! Package siunitx Error: Invalid token '\ell ' in numerical input.

For immediate help type H <return>.
 ...                                              

l.5   a = \SI{\ell}{\cm}

? h

Numbers can only contain tokens defined using the 'input-...' options:
the token '\ell ' is not set up as a valid part of a number.

siunitx打印非数字输入,您可以使用以下命令禁用解析机制parse-numbers=false

\begin{equation}
  a = \SI[parse-numbers=false]{\ell}{\cm}
\end{equation}

或者,如果你要在同一个等式中多次使用它:

\begin{equation}
  \sisetup{parse-numbers=false}
  a = \SI{\ell}{\cm}
\end{equation}

相关内容