Como fazer o “poder recíproco” aparecer usando siunitx?

Oct 13 2020

Usando o seguinte MWE, siunitx não exibirá o esperado ^{-1}no final da expressão.

\documentclass{article}
\usepackage[locale = FR]{siunitx}
\sisetup{per-mode=symbol,per-symbol=\text{.}}

\usepackage[french]{babel}

\begin{document}
\si{\kilogram\metre\per\second}
\end{document}

Acho que estou seguindo a documentação corretamente, mas devo estar faltando alguma coisa. Qualquer entrada muito bem-vinda.

Obrigado !

Respostas

6 Mico Oct 13 2020 at 16:25

Se o que você deseja obter está kg m s^{-1}fora \si{\kilogram\metre\per\second}, você não deve usar \sisetup{per-mode=symbol,per-symbol=\text{.}}. A configuração padrão por modo é, na verdade reciprocal,. Se a configuração padrão não estiver em vigor por algum motivo, basta emitir a diretiva

\sisetup{per-mode=reciprocal}

antes de correr, digamos, \si{\metre\per\second}(ou, se preferir, \si{\meter\per\second}).

\documentclass{article}
\usepackage[locale = FR]{siunitx}
\usepackage[french]{babel}

\begin{document}
\si{\metre\per\second}    % use default setting, which is 'reciprocal'
\quad
\sisetup{per-mode=symbol} % default per-mode symbol is "/"
\si{\metre\per\second}
\quad
\sisetup{per-mode=symbol,per-symbol=\text{.}} % use another character as per-mode symbol
\si{\metre\per\second}
\quad
\sisetup{per-mode=fraction}   % switch to fraction mode
\si{\metre\per\second}
\quad
\sisetup{per-mode=reciprocal} % back to the default
\si{\metre\per\second}
\end{document}

Adendo , motivado por um comentário posterior do OP: Se o interesse reside em renderizar a saída de \si{\metre\per\second}como m.s{-1}, a per-modeopção não é relevante. Em vez disso, você provavelmente quer

\sisetup{inter-unit-product=\text{.}}

\documentclass{article}
\usepackage[locale = FR]{siunitx}
\usepackage[french]{babel}
\begin{document}
\si{\meter\per\second} % default inter-unit separator is thin-space
\quad
\sisetup{inter-unit-product=\text{.}}
\si{\meter\per\second}
\quad
\sisetup{inter-unit-product={\,}} % back to default
\si{\meter\per\second}
\end{document}