PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Komma statt Punkt in \SI-Umgebung



Mr.Beaker
18-11-2008, 10:15
Hallo Latexer,

denke es ist nur ein kleines Problem, habe dennoch nix darüber gefunden. Benutze zur Formatierung meiner Formeln und Gleichungen \SI{Zahl}{Einhait} um den richtigen Abstand von Zahlenwert und Einheit zu erreichen. Jetzt setzt mir Latex aber statt einem Komma einen Punkt:

\SI{87,5}{mm}

ergibt also: 87.5 mm

Habe mal das Paket "icomma" versucht, aber ohne Erfolg.
Gibts da einen Trick damit Latex weiterhin ein "Komma" setzt?


Gruß
Georg

localghost
18-11-2008, 10:40
Lies dir aufmerksam die Anleitung zu siunitx (http://ctan.org/pkg/siunitx) durch (Abschnitt 10 - Package options, S. 22ff).


MfG
Thorsten¹

Mr.Beaker
18-11-2008, 12:28
Danke für den Tipp, Thorsten. Leider bekomm ich es einfach nicht hin, diese Option einzufügen. Dazu muss ich sagen, dass ich auch nicht wirklich fit im Einbinden irgendwelcher Optionen bin. Ich komm weder mit sisetup..., noch mit local..., noch mit loctolang... zurecht. Hab schon zich Varianten ausprobiert. Und muss ich dann, wenns funktioniert, die Dezimalzahlen mit "." schreiben um ein "," zu erhalten?
Bitte um weitere Hilfe.

Außerdem versteh ich den Unterschied zwischen \SI{10}{m} und \SI{10}{\metre} nicht wirklich. Gibts da bei der zweiten Variante einen Vorteil? Is ja unbestritten ein erheblicher Mehraufwand.

Gruß
Georg

Curryhunter
18-11-2008, 12:55
Hallo,
die Optionen werden einfach beim Aufruf des Pakets mitgeladen:


\usepackage[%per=slash,
% decimalsymbol=comma,
loctolang={DE:ngerman,UK:english},
]{siunitx}

Und soweit ich weiss, ist es unerheblich, ob in der Eingabe Kommata oder Punkte stehen. Die Optionen oben ändern es je nach eingestellter Sprache automatisch in Komma (ngerman) bzw. Punkt (english) um.

Grüße
Stefan

Mr.Beaker
18-11-2008, 13:35
Hallo Stefan,

hab das mit Hilfe von copy/paste mal so eingefügt. Es kommt die Fehlermeldung: "Latex error: File 'siunitx.sty' not found". Das heißt dann wohl, dass ich das Paket noch nicht installiert habe. Ich dachte, bei der aktuellen vollständigen MikTex Installation sind alle Pakete dabei?
Statt "siunitx" hab ich auch das Paket "sistyle" mit den genannten optionen probiert, aber da kommt ebenfalls eine Fehlermeldung a là "unknown option loctolang={........usw......} for package sistyle" (war auch nur ein Versuch).

Weiß einer was der Vorteil der Schreibweise \SI{10}{\metre} gegenüber \SI{10}{m} ist?

Gruß
Georg

mechanicus
18-11-2008, 13:51
Hallo Stefan,

hab das mit Hilfe von copy/paste mal so eingefügt. Es kommt die Fehlermeldung: "Latex error: File 'siunitx.sty' not found". Das heißt dann wohl, dass ich das Paket noch nicht installiert habe. Ich dachte, bei der aktuellen vollständigen MikTex Installation sind alle Pakete dabei?

Dann würde ich es erstmal installieren. Mit Hilfe des Miketex Update Managers dürfte es ja klappen. Zu deiner anderen Frage, es gibt keinen Unterschied. Es sind nur verschiedene Darstellungsformen, über den Link von Thorsten (Beitrag 2) hast du die Documentation und dort im Abschnitt
7.1 litteral options ist alles angegeben.

Gruß
Marco

localghost
18-11-2008, 16:56
[...] hab das mit Hilfe von copy/paste mal so eingefügt. Es kommt die Fehlermeldung: "Latex error: File 'siunitx.sty' not found". [...]
An dieser Stelle solltest Du dann mal erklären, woher dein ursprünglicher Befehl \SI stammt. Denn von Standard LaTeX ist er nicht. Ich bin davon ausgegangen, dass Du dieses Paket schon benutzt.

[...] Das heißt dann wohl, dass ich das Paket noch nicht installiert habe. Ich dachte, bei der aktuellen vollständigen MikTex Installation sind alle Pakete dabei?
Offensichtlich ist deine Installation dann nicht vollständig. Überprüfen kannst Du das ja sehr leicht im Paket-Manager. Dort gibt es eine Spalte "Installed on". Wenn die für ein Paket leer ist, ist es halt nicht installiert.

RungeZipperer
19-11-2008, 08:52
An dieser Stelle solltest Du dann mal erklären, woher dein ursprünglicher Befehl \SI stammt. Denn von Standard LaTeX ist er nicht. Ich bin davon ausgegangen, dass Du dieses Paket schon benutzt.

Vermutlich hat er das ältere Paket \usepackage{sistyle} eingebunden ;).

Mr.Beaker
19-12-2008, 09:58
So, habe das Paket jetzt manuell eingebunden (Beschreibung von bobmalaria war sehr hilfreich!) und bis auf kleine Kinderkrankheiten funktioniert alles :)


\usepackage[%per=slash,
decimalsymbol=comma,
loctolang={DE:ngerman,UK:english},
]{siunitx}

Jetzt wollte ich folgendes schreiben:

$d'_{a2} = 3,4 \sqrt[3]{\tfrac{\SI{150e3}{Nmm}}{\SI{140}{\newton\per\mill i\metre\squared}}}=\uuline{\SI{34,8}{mm}}$

Bei dieser Einheit gibt mir Latex im Nenner "N mal mm(^-2)" aus. Der Haken ist, das dieses "Malzeichen" (Punkt) nicht erscheinen sollte.


Wie stell ich das denn ab?
Sprich: Nmm^(-2)

Gruß Georg

Curryhunter
19-12-2008, 10:32
Mit ein paar kleinen Änderungen:

\documentclass[english]{scrartcl}
\usepackage{babel}
\usepackage[%per=slash,
decimalsymbol=comma,
loctolang={DE:ngerman,UK:english},
]{siunitx}
\usepackage{amsmath}
\begin{document}

$d'_{a2} = 3,4 \sqrt[3]{\tfrac{\SI{150e3}{Nmm}}{\SI{140}{\newton\per\mill i\metre\squared}}}=\SI{34,8}{mm}$
\end{document}

ergibt sich bei mir angehängtes Ergebnis. Ich kann also Dein Problem nicht nachvollziehen.
Mach mal ein Minimalbeispiel, welches den "Fehler" zeigt. Vllt. hast du ein paar andere Pakete bzw. Einstellungen geladen, die das Verhalten verursachen.

Grüße
Stefan

René Geppert
19-12-2008, 10:34
bekomme auch ein korrekts ergebnis, sprich kann dein problem auch nicht nachvollziehen xD


\usepackage{amsmath,amssymb}
\usepackage[normalem]{ulem}
\usepackage[%per=slash,
decimalsymbol=comma,
loctolang={DE:ngerman,UK:english},
emulate=units]{siunitx}


http://img1.myimg.de/tempafd48.jpg

Mr.Beaker
23-12-2008, 08:31
Naja, beide Ergebnisse sind korrekt in eingschränkter Weise. Stefan hat im Zähler das Kreuzprodukt zwischen Zahlenwert und Zehnerpotenz. Rene hat im Nenner den Bruchstrich zwischen den Einheiten.

Da ich Renès Ergebnis in einer Formel zuvor habe und diese Lösung des Doppelbruchs auch nicht so schlecht aussieht werde ich wohl diese Variante nehmen.

Sollte dennoch einer die Lösung für mein Ursprüngliches Problem haben wäre ich nach wie vor Neugierig auf die Lösung.

Gruß
Georg

René Geppert
23-12-2008, 10:27
naja
hättest du im zähler, analog zum nenner Nmm als \newton\milli\metre gesetzt, hättest du da auch den punkt gehabt, aber du hast ja ledilich Nmm geschrieben
wenn du das im nenner genauso handhabst, hast du dieses problem natürlich dort auch nicht


$d'_{a2} = 3,4 \sqrt[3]{\tfrac{\SI{150e3}{Nmm}}{\SI{140}{Nmm^{-2}}}}=\uuline{\SI{34,8}{mm}}$

aber dann erübrigt sich ja auch schon fast die benutzung von siunitx oder?

bin zwar kein physiker, aber die variante N*mm kommt mir geläufiger vor als Nmm

gruß

Mr.Beaker
23-12-2008, 11:24
Manchmal sieht man den Wald vor lauter Bäumen nicht :rolleyes:

So einfach hätts wohl gleich von Anfang an funktioniert: :D


$d'_{a1} = 3,4 \sqrt[3]{\tfrac{\SI{71e3}{Nmm}}{\SI{140}{Nmm^{-2}}}}=\uuline{\SI{27,1}{mm}}$

Die Benutzung von siunitx erübrigt sich ned, da das ein ganz feines Paket is, das ich sehr oft und gut in meiner Arbeit gebrauchen kann.

Gruß
Georg

Paulus_
23-12-2008, 12:21
Wo ist eigentlich das Problem, hier mein Vorschlag :


\usepackage{amsfonts}
\usepackage{amsmath}
\usepackage{amssymb}

\[ d_{a2}^\prime = \sqrt[3]{{\frac{{150\cdot10^3 Nmm}} {{140N \cdot mm^{ - 2}
}}}} = \underline{\underline {34,8mm}} \]








---------------------------------------------------------------------------
Windows XP Prof. SP3
Linux SUSE 10.2 (als Gastsystem auf VMWare Workstation)
MiKTeX 2.7, WinEdt 5.3, MathType 6.0c, Scientific-Workplace 5.5
CPU Intel Core 2 Quad Q6600 4x 2,40 GHz, DDR2-4GB, S-ATA-HDD 1TB

Phylin
24-12-2008, 14:51
Ich benutze einfach immer sowas: $2\rm\,N\,mm$