Brauche Hilfe mit siunitx (Fehlerangaben u.a.)

Formelsatz für Mathematik, Naturwissenschaften und Technik


Hagbard Celine
Forum-Century
Forum-Century
Beiträge: 152
Registriert: Mi 23. Feb 2011, 22:13
Wohnort: Halle (Saale)

Brauche Hilfe mit siunitx (Fehlerangaben u.a.)

Beitrag von Hagbard Celine »

Hallo zusammen,
ich nutze das Paket siunitx, um Zahlen und Einheiten schön darzustellen. Allerdings bin ich dort bei der Suche nach Einstellungsmöglichkeiten auf ein paar Fehler gestoßen:
Die Option repeatunits=false funktioniert nicht, weder wenn ich sie als Option beim Paketaufruf wähle noch wenn ich sie mit \sisetup wähle.
Außerdem klappt die Darstellung von Fehlerangaben nicht.
Wenn ich z.B. einen Wert von 5m mit einem Fehler von 1m habe, möchte ich dass das folgendermaßen aussieht:

(5 \pm 1) m (statt \pm das entsprechende Symbol)

Ich kriege aber nur 5pm1m (pm ausgeschrieben). Wie bekomme ich die Klammern hin und das \pm als Symbol?
Ich habe das mit folgender Einstellung probiert:

\sisetup{uncertainty-separator={\ensuremath{\,\pm\,}}

Aber das hat nicht funktioniert.

Ich hoffe, dass mir jemand helfen kann.

Gruß,
Jonas

Benutzeravatar
iTob
Forum-Meister
Forum-Meister
Beiträge: 1221
Registriert: Mo 19. Apr 2010, 22:19
Kontaktdaten:

Beitrag von iTob »

Da du kein Minimalbeispiel lieferst auch von mir nur ein Hinweis … In der Doku ist eigentlich ziemlich genau beschrieben, was man machen muss, um einen Fehler zu erhalten. Die Eingabe (!) erfolgt immer als \num{5(1)} wie das ausgeben wird, kannst du dann in der Anleitung lesen. Wenn es nicht klappt, bitte ich dich um eine Minimalbeispiel ;)

LG
Tobi

Hagbard Celine
Forum-Century
Forum-Century
Beiträge: 152
Registriert: Mi 23. Feb 2011, 22:13
Wohnort: Halle (Saale)

Beitrag von Hagbard Celine »

Entschuldigung. Ich hatte schon so viele Möglichkeiten durchprobiert, dass ich nicht genau wusste, welche davon ich ins Minimalbeispiel einbringen sollte.
Hier ist nun das Minimalbeispiel, so, wie ich es eigentlich gerne hätte.
\documentclass{scrartcl}
\usepackage[utf8x]{inputenc}
\usepackage[separate-uncertainty=true,decimalsymbol=comma,repeatunits=false]{siunitx}

\begin{document}

\SIrange{3}{8}{kg}\\
\SI{100,0(5)}{nm}\\
\num{100,0(5)}


\end{document}
Die drei Zeilen sehen in der Ausgabe folgendermaßen aus (bei mir):

3 kg to 8 kg
100,0pm0,5nm
100,0 \pm 0,5

Also wird das kg wiederholt (trotz repeatunits=false), das pm in der zweiten Zeile steht dort tatsächlich als Buchstaben, nicht das Zeichen. Nur die dritte Zeile ist so, wie ich sie mir vorstelle (\pm als Zeichen).
Bei der zweiten hätte ich gerne Klammern um die Werte.

Wenn ich als Option nur separate-uncertainty=true angebe, wird das \pm in der zweiten Zeile richtig dargestellt, die Klammern sind so, wie ich sie gerne hätte, also:
(100.0 \pm 0.5) nm
Allerdings bekomme ich dann ja kein Komma als Dezimaltrennzeichen.

Ich hoffe, dass das Minimalbeispiel so in Ordnung ist, ihr meine Beschreibungen versteht und mir jemand helfen kann.

EinFan

Beitrag von EinFan »

Ein Komma als Dezimalzeichen erhälts Du mit
output-decimal-marker={,}
.

Im Übrigen finde ich die Dokumentation des Paketes hervorragend. ;)

Hagbard Celine
Forum-Century
Forum-Century
Beiträge: 152
Registriert: Mi 23. Feb 2011, 22:13
Wohnort: Halle (Saale)

Beitrag von Hagbard Celine »

Danke, damit habe ich das erste Problem behoben. Die Fehlerdarstellung ist jetzt auch in Ordnung, allerdings nur, solange ich repeatunits=false nicht angebe. Sobald ich das mit angebe (siehe Minimalbeispiel oben), werden um die Zahlenangaben beim Fehler keine Klammern gemacht und das \pm-Symbol wird nur als Buchstaben pm dargestellt.
Zudem reagiert der \SIrange-Befehl gar nicht auf das repeatunits=false, die Einheit wird trotzdem wiederholt.

AufdieSchnelle

Beitrag von AufdieSchnelle »

Hier ein Minimalbeispiel:
\documentclass{scrartcl}
\usepackage[utf8x]{inputenc}
\usepackage[
	separate-uncertainty  = true,
	mode = text,
	output-decimal-marker={,},
	repeatunits           = false,
	range-phrase          = {\,bis\,},
]{siunitx}

\begin{document}

\SIrange{3}{8}{kg}\\
\SI{100,0(5)}{nm}\\
\num{100,0(5)}

\SI[parse-numbers = false]{\sqrt{3}}{\metre}

\end{document}
M.E. ist die Darstellung von \SI{100,0(5)}{nm} ein Bug. Ich würde das Problem einmal dem Author Joseph Wright mitteilen.

AufdieSchnelle

Beitrag von AufdieSchnelle »

Es ist offensichtlichkein Bug:
\documentclass{scrartcl}
\usepackage[utf8x]{inputenc}
\usepackage[
	separate-uncertainty  = true,
	uncertainty-separator =  {\,},
	mode = text,
	output-decimal-marker ={,},
	multi-part-units      =  single,
	range-phrase          = {--},
]{siunitx}

\begin{document}

\SIrange{3}{8}{kg}\\
\SI{100,0(5)}{nm}\\
\num{100,0(5)}

\SI[parse-numbers = false]{\sqrt{3}}{\metre}

\end{document}
M.E. vermischt Du Optionen der 1er Version mit der 2er Version.

AufdieSchnelle

Beitrag von AufdieSchnelle »

Sorry, zu schnell auf den Senden-Knopf-gedrückt. :)

Hiermit dürften nun alle Probleme behoben sein:
\documentclass{scrartcl}
\usepackage[utf8x]{inputenc}
\usepackage[
	separate-uncertainty  = true,
	uncertainty-separator =  {\,},
	mode = text,
	output-decimal-marker ={,},
	multi-part-units      = single,
	range-units           = single,
	range-phrase          = {--},
]{siunitx}

\begin{document}

\SIrange{3}{8}{kg}\\
\SI{100,0(5)}{nm}\\
\num{100,0(5)}

\SI[parse-numbers = false]{\sqrt{3}}{\metre}

\end{document}

Hagbard Celine
Forum-Century
Forum-Century
Beiträge: 152
Registriert: Mi 23. Feb 2011, 22:13
Wohnort: Halle (Saale)

Beitrag von Hagbard Celine »

Die Unterscheidung der Versionen habe ich tatsächlich nicht beachtet (hatte nur punktuell in der Dokumentation gestöbert).
Dein Vorschlag löst fast alle meine Probleme, vielen Dank.
Als einzige Sache bleibt noch, dass ich beim Fehler mit Einheit gerne Klammern um die Werte hätte, da sich die Einheit ja sonst nur auf den Fehler, aber nicht auf den Messwert bezöge.

Benutzeravatar
iTob
Forum-Meister
Forum-Meister
Beiträge: 1221
Registriert: Mo 19. Apr 2010, 22:19
Kontaktdaten:

Beitrag von iTob »

Guten Morgen,

die Klammern wurden ja auch abgeschaltet (multiple units). So gehts
\documentclass{scrartcl} 
\usepackage[utf8x]{inputenc} 
\usepackage[ 
   separate-uncertainty  = true, 
   uncertainty-separator =  {\,}, 
%   mode = text, 
   output-decimal-marker ={,}, 
   multi-part-units      = brackets, 
   range-units           = brackets, 
   range-phrase          = {\,--\,},
]{siunitx} 

\begin{document} 

\SIrange{3}{8}{kg}\\ 
\SI{100,0(5)}{nm}\\ 
\num{100,0(5)} 

\SI[parse-numbers = false]{\sqrt{3}}{\metre} 

\end{document}
Tobi

Antworten