siunitx 包无法正确执行不确定性

siunitx 包无法正确执行不确定性

首先我必须说我读过手册。但我可能把它读得很糟糕。

我有三个问题:

  1. 我希望不确定值括号中的值以正/负形式表示。相反,它们只以括号形式出现。

  2. 我希望范围单位不重复。尽管在序言中指定了这一点,但我无法做到这一点。

  3. 我想在不确定的部分添加小数,但是它给出了错误。

(附加要求)我们可以将文档中的所有零转换为带有反斜杠或中心带有点的符号吗?

最小代码是:

\documentclass[a4paper]{article}
\usepackage[alsoload=synchem,%
            range-phrase=--,%
            repeatunits=false%
            ]{siunitx}  

\begin{document}
The temperature measured was \SI{14(1)}{\kelvin} and was observed between time points \SIrange{34}{90}{\second}.

\SI{1.45(2)e-4}{\Molar}
%\SI{1.45(0.2)e-4}(\Molar} throws an error: "Invalid certainty in numerical input".
\end{document}

这是我的输出:

这是我的输出

我的操作系统是 Linux Mint。我的前端是 TeXMaker 5.0.3,我使用 pdflatex 3.14159265-2.6-1.40.20。

答案1

首先,请注意您提供的加载选项来自版本 1.x,该版本已于 2010 年被版本 2 取代。因此,我认为您可能正在使用版本 2,但使用较旧的选项加载它。

这些请求是分开的,因此我将一次处理一个请求。

  1. 您可以使用(在 v1 中)siunitx分别打印不确定性\sisetup{separate-uncertainty}\sisetup{seperr}

  2. \sisetup{range-units = single}您可以使用(v1 )来抑制范围单元的重复sisetup{repeatunits = false}。查看代码,似乎 v1 仿真在这里有一个错误,因为它没有涵盖范围:我会进行调整。

  3. “短”格式给出的不确定性是根据主号码的最后几位数字来表示的。因此您需要\SI{1.450(2)e4}{\Molar}多加一位。您可以使用格式\SI{1.45 \pm 0.002e4}{\Molar},这样可以正确添加位数。

相关内容