不久前,我发现了这个siunitx
包可以回答这个问题这有点让我震惊。例如,如果我使用来fp
计算数值结果(例如,在家庭作业解决方案中),那么我可以执行以下操作:
\usepackage{siunitx}
\sisetup{exponent-product = \times,round-mode = figures,%
round-precision = 3, scientific-notation = engineering}
\def\mass{1700}
\def\velocity{29}
\FPmul\Ek{0.5}\mass
\FPmul\Ek\Ek\velocity
\FPmul\Ek\Ek\velocity
\SI{\Ek}{\joule}
要获得“715 x 10^3 J”,请正确排版。
这太棒了,表格内容特别强大。
但这并不是我真正想要的工程符号——应该是“715 kJ”。我知道siunitx
公制前缀,但我在文档中找不到任何可以让它自动使用它们的东西(即没有我在声明\kilo
中说出来\SI
)。
是我遗漏了关键选项,还是这个包没有这个功能?有人能建议解决方法吗?
答案1
siunitx 2.4 版现已提交给 CTAN。使用此版本,您可以使用选项exponent-to-prefix
来实现此目的
\documentclass{article}
\usepackage{fp,siunitx}
\sisetup
{
exponent-to-prefix = true ,
round-mode = figures ,
round-precision = 3 ,
scientific-notation = engineering
}
\begin{document}
\newcommand*{\mass}{1700}
\newcommand*{\velocity}{29}
\FPmul{\Ek}{0.5}{\mass}
\FPmul{\Ek}{\Ek}{\velocity}
\FPmul{\Ek}{\Ek}{\velocity}
\SI{\Ek}{\joule}
\end{document}
该选项将前缀添加到给定的第一个单位,并且仅当指数“可转换”(三的倍数且在 SI 前缀范围内)时才会起作用。