siunitx 錯誤計算單位轉換

siunitx 錯誤計算單位轉換

我正在使用 siunitx 顯示計算中的值。

\documentclass{report}
\usepackage[exponent-to-prefix]{siunitx}
\begin{document}
\begin{equation}
 \SI{2.5e-7}{\meter\cubed\per\second} 
\end{equation}
\end{document}

然而,當我編譯它時,我最終得到

在此輸入影像描述

根據我的理解,這是不正確的,因為它應該是 0.25 cm3/s。是我使用 siunitx 錯誤還是它的單位轉換邏輯有錯誤?引起轉換的特徵是exponent-to-prefixsiunitx的標誌。

這是運行 Latex 的輸出:

This is pdfTeX, Version 3.14159265-2.6-1.40.20 (TeX Live 2019/Arch Linux) (preloaded format=pdflatex)
 restricted \write18 enabled.
entering extended mode
(./thesis.tex
LaTeX2e <2019-10-01> patch level 1
(/usr/share/texmf-dist/tex/latex/base/report.cls
Document Class: report 2019/08/27 v1.4j Standard LaTeX document class
(/usr/share/texmf-dist/tex/latex/base/size10.clo))
(/usr/share/texmf-dist/tex/latex/siunitx/siunitx.sty
(/usr/share/texmf-dist/tex/latex/l3kernel/expl3.sty
(/usr/share/texmf-dist/tex/latex/l3kernel/expl3-code.tex
(/usr/share/texmf-dist/tex/latex/l3kernel/l3deprecation.def))
(/usr/share/texmf-dist/tex/latex/l3backend/l3backend-pdfmode.def))
(/usr/share/texmf-dist/tex/latex/l3packages/xparse/xparse.sty)
(/usr/share/texmf-dist/tex/latex/amsmath/amstext.sty
(/usr/share/texmf-dist/tex/latex/amsmath/amsgen.sty))
(/usr/share/texmf-dist/tex/latex/tools/array.sty)
(/usr/share/texmf-dist/tex/latex/l3packages/l3keys2e/l3keys2e.sty)
(/usr/share/texmf-dist/tex/latex/translator/translator.sty
(/usr/share/texmf-dist/tex/latex/graphics/keyval.sty))) (./thesis.aux)
(/usr/share/texmf-dist/tex/latex/base/ts1enc.dfu)
(/usr/share/texmf-dist/tex/latex/translator/translator-basic-dictionary-English
.dict) (/usr/share/texmf-dist/tex/latex/siunitx/siunitx-abbreviations.cfg)
[1{/var/lib/texmf/fonts/map/pdftex/updmap/pdftex.map}] (./thesis.aux) )</usr/sh
are/texmf-dist/fonts/type1/public/amsfonts/cm/cmmi10.pfb></usr/share/texmf-dist
/fonts/type1/public/amsfonts/cm/cmr10.pfb></usr/share/texmf-dist/fonts/type1/pu
blic/amsfonts/cm/cmr7.pfb></usr/share/texmf-dist/fonts/type1/public/amsfonts/cm
/cmsy7.pfb>
Output written on thesis.pdf (1 page, 33373 bytes).
Transcript written on thesis.log

答案1

正如你所說,在版本 2 中這是有問題的。版本 3 可以更好地處理這些情況,但這裡您仍然需要手動幹預。如果你嘗試使用 v3 的範例,你會得到


! Package siunitx Error: Exponent '-2.333333333333333' cannot be converted
(siunitx)                into a symbolic prefix.

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

因為這裡的轉換不會嘗試在“範圍內”移動數字 - 這是一個單獨的概念。

相關內容