siunitx:全局设置的 per-mode=fraction 没有效果

siunitx:全局设置的 per-mode=fraction 没有效果

因此,我尝试将单位设置为合适的分数。我想per-mode=fraction通过 进行全局设置\sisetup{}。但是它什么也没做。

以下是片段(包含我的完整序言,以防发生任何导致这种情况的冲突):

\documentclass[11pt,
paper=a4,                   
footinclude,
oneside
]{scrbook}
\usepackage{mathtools}
\usepackage[ngerman]{babel}
\usepackage{graphicx}
\usepackage{caption}
\usepackage[european]{circuitikz}
\usepackage{float}
\usepackage{pgfplots}
\usepackage{amssymb}
\usepackage{siunitx}

\sisetup{exponent-product = \cdot, output-decimal-marker = {,}, per-mode = fraction}

\XeTeXinputencoding latin-1

\begin{document}

... much stuff

\begin{equation}
  U_T = \frac{k_B T}{e} \;  \xrightarrow{T=300K} \;  \frac{\SI{1,38e-25}{Vs \per K} \cdot \SI{300}{K}}{\SI{1,609e-19}{C}} = \SI{26}{mV}\;.
\end{equation}

Dabei ist $k_B$ die Boltzmann-Konstante und $e$ der Betrag der Elektronenladung. Für typische Werte gilt:

\begin{equation}
  U_D = \SI{26}{mV} \cdot ln \left( \frac{\SI{e16}{1 \per cm^3} \cdot \SI{2e16}{1 \per cm^3}}{\left( \SI{e10}{1 \per m^3} \right)^2} \right) = \SI{0,715}{V}
\end{equation}

...even more stuff

\end{document}

使用 xelatex。

答案1

我猜这个功能需要使用定义的单位,而不仅仅是文本输入。比较以下两个表达式:

\documentclass[11pt,
paper=a4,                   
footinclude,
oneside
]{scrbook}
\usepackage{mathtools}
\usepackage[ngerman]{babel}
\usepackage{graphicx}
\usepackage{caption}
\usepackage[european]{circuitikz}
\usepackage{float}
\usepackage{pgfplots}
\usepackage{amssymb}
\usepackage{siunitx}
\sisetup{exponent-product = \cdot, output-decimal-marker = {,}, per-mode = fraction}

\begin{document}


    $\SI{1}{\per cm^3}$
    $\SI{1}{\per\centi\meter\cubed}$

\end{document}

在此处输入图片描述


编辑:

正如 Steven B. Segletes 所提到的他的评论将其与选项结合起来fraction-function=\dfrac以实现这些显示风格可能是一个好主意。

相关内容