Das siunitx Paket ist insbesondere innerhalb der Naturwissenschaften eines der Paket die man auf jeden Fall braucht beziehungsweise das auf jeden Fall verwendet werden muss. Das Paket erlaubt es Zahlen und Einheiten innerhalb des Dokumentes mit Hilfe von neuen Befehlen zu setzen. Auf den ersten Blick erscheint es mehr Arbeit zu verursachen als die Zahlen und Einheiten einfach »zu tippen« . Aber der Vorteil von dem Paket beziehungsweise der Verwendung der Befehle zeigt sich spätestens dann, wenn die Darstellungsweisen der Zahlen und Einheiten, aufgrund abweichender Anforderungen, geändert werden müssen. Durch die Nutzung von siunitx lässt sich der Anpassungsaufwand auf ein Minimum reduzieren. Diese kurze Einführung kann die Origaldokumentation in keiner Weise ersetzen.
Das Paket wird mit \usepackage{siunitx} eingebunden. Die Anpassung der Darstellung erfolgt über den \sisetup{Option, Option, ...} Befehl. Die Optionen können dabei global wie auch bei den einzelnen Befehlen, falls vorhanden, gesetzt werden. Um ein einheitliches Erscheinungsbild zu gewährleisten sollte aber darauf verzichtet werden bei den einzelnen Befehlen per Option die Darstellung zu verändern. Und stattdessen eher der \sisetup{Option, Option, ...} Befehl verwendet werden, um eine einheitliche Darstellung im Dokument zu erreichen.
Im Fall, dass das Dokument in deutsch verfasst wird, sind ein paar Anpassungen notwendig. Das Paket selbst verwendet nur zwei Wörter (and und to), aber um sicher zu stellen, dass diese auf deutsch geschrieben werden, sollte die Sprachoption ngerman von babel als Dokumentenklassenoption geschrieben werden.
Mit der Option locale = DE wird das Paket auf die deutsche Konvention umgestellt, dann wird zum Beispiel das Komma als Trenner bei einer Dezimalzahl erkannt.
Das Paket stellt 9 zusätzliche Befehle für die Darstellung von Zahlen, Einheiten und Winkel bereit. Darüber hinaus gibt es zusätzlich die Möglichkeit Optionen zu setzen. Worauf im Allgemeinen aber verzichtet werden sollte.
Zahlen werden mit dem \num{Zahl} Befehl gesetzt. Bei Dezimalzahlen können sowohl Komma als auch der Punkt zum trennen verwendet werden. Die Ausgabe hängt von den Gepflogenheiten der verwendeten Sprache ab. Wenn Deutsch als Sprache verwendet wird, wird die Dezimalzahl als Kommazahl ausgegeben, und im Fall das Englisch genutzt wird erfolgt die Ausgabe als Punkt getrennte Zahl. Dies funktioniert im Text- und Mathemodus, auch mit oder ohne einer führenden Null. Und positiven wie auch negativen Exponenten, mit Fehlerterm und als Produktschreibweise.
123,45 oder 123,45
0,123 0,123 0,123 0,123
123 ⋅ 1045 543 ⋅ 10-12
123 ± 45 123 ± 45
1 × 2 1/2
Wertelisten
Mit Befehl \numlist{Zahl 1;Zahl 2;Zahl 3} lassen sich Wertelisten darstellen, die einzelnen
Elemente müssen dabei mit Semikola voneinander getrennt werden.
\numlist{12; 34; 5,6; 7.8} 12, 34, 5,6 und 7,8
Wertebereiche Der Befehl \numrage{Zahl Anfang}{Zahl Ende} erstellt einen Wertebereich. \numrange{1}{10} 1 bis 10
Einheiten werden mit Hilfe des \si{Einheit} Befehl gesetzt. Die Angabe der Einheit sollte dabei als Makro erfolgen, dadurch ist gewährleistet, dass die Optionen auch alle funktionieren. In Tabelle 1 befinden sich die SI Basisgrößen und Tabelle 6 die abgeleiteten Größen; eine Auswahl von gebräuchlichen Nicht SI Einheiten findet sich in den Tabellen 8 und 9. Die SI konformen Präfixe finden sich in Tabelle 7.
Bezeichnung | Einheit | Makro | Ausgabe |
Länge | Meter | \metre | m |
Masse | Kilogramm | \kilogram | kg |
Zeit | Sekunde | \second | s |
Stromstärke | Ampere | \ampere | A |
Temperatur | Kelvin | \kelvin | K |
Stoffmenge | Mol | \mole | mol |
Lichtstärke | Candela | \candela | cd |
Auch für die aus den SI Basisgrößen abgeleiteten Größen gibt es die entsprechenden Makros. Im Anhang Tabelle 10 lassen sich die Befehle für das Ausdrücken in SI Basisgrößen finden.
Auch gibt es von den wichtigen Einheit eine Kurzschreibweise. Eine Auswahl davon findet sich in der Tabelle 2. Anhand der Beispiel für Kilometer und Kiloohm zeigen auch wie sich die Einheitenvorsätze Präfixe setzen lassen. Die Einheiten lassen sich auch Potenzieren, mit \square wird hoch 2 und mit \cubic hoch 3 gesetzt. Daneben existieren auch die Befehle \squared und \cubed die zum gleichen Ergebnis führen. Der Unterschied zwischen beiden Varianten ist, das \square und \cubic vor der Einheit und \squared beziehungsweise \cubed nach der Einheit geschrieben werden. Für andere Potenzen kann der Befehl \tothe{Potenz} genutzt werden. Mehrere Einheiten können mit dem \per Befehl kombiniert werden.
Einheit | Makro | Ausgabe | Kurzmakro | Ausgabe |
Gramm | \si{\gram} | g | \si{\g} | g |
Kilogramm | \si{\kilogram} | kg | \si{\kg} | kg |
Meter | \si{\metre} | m | \si{\m} | m |
Kilometer | \si{\kilo\metre} | km | \si{\km} | km |
Sekunde | \si{\second} | s | \si{\s} | s |
Mol | \si{\mole} | mol | \si{\mol} | mol |
Ampere | \si{\ampere} | A | \si{\A} | A |
Liter | \si{\litre} | l | \si{\l} | l |
Liter | \si{\liter} | L | \si{\l} | L |
Hertz | \si{\hertz} | Hz | \si{\Hz} | Hz |
Newton | \si{\newton} | N | \si{\N} | N |
Pascal | \si{\pascal} | Pa | \si{\Pa} | Pa |
Kiloohm | \si{\kilo\ohm} | kΩ | \si{\kohm} | kΩ |
Volt | \si{\volt} | V | \si{\V} | V |
Watt | \si{\watt} | W | \si{\W} | W |
Joule | \si{\joule} | J | \si{\J} | J |
Elektronenvolt | \si{\electronvolt} | eV | \si{\eV} | eV |
Farad | \si{\farad} | F | \si{\F} | F |
Kelvin | \si{\kelvin} | K | \si{\K} | K |
Dezibel | \si{\decibel} | dB | \si{\dB} | dB |
Beispiel
N = kg m s−2
Weitere Einheiten
Das Paket besitzt die Möglichkeit zusätzliche Einheiten verfügabr zu machen. Dabei handelt
es sich um sehr fachspezifische Einheiten wie Parsec und andere. Damit diese Einheiten
genutzt werden können müssen die entsprechenden Befehle vor \begin{document} eingefügt
werden.
Eine Übersicht über die bereits verfügbaren Einheiten findest sich auf S.36 [Wright].
Neben der bereits gezeigten Variante die Befehle für die neuen Einheiten in der Präambel zu definieren gibt es auch die Möglichkeit diese in einer Konfigurationsdatei mit dem Namen siunitx.cfg zu definieren. Diese Datei wird, wenn sie sich mit gleichen Ordner wie das tex Dokument liegt, beim kompilieren ausgewertet und die neuen Befehle stehen dann in diesem Dokument zu Verfügung. Die Datei siunitx.cfg wird automatisch ausgewertet, das bedeutet, dass sie nicht extra in das tex Dokument eingebunden werden muss. Neben neuen Einheitenbefehlen kann die siunitx.cfg auch Optionen die mit dem \sisetup{Option 1, Option...} Befehl gesetzt wurden beinhalten. Der Aufbau der Datei ist dabei wie folgt.
Als dritte Variante gibt es die Möglichkeit die neuen Einheiten in einer separaten tex Datei zu speichern und diese mit Hilfe des \input{Dateinname} Befehls in die Präambel einzubinden. Der Name der Datei kann dabei frei gewählt werden. Beim einbinden ist nur darauf zu achten, dass die Datei erst nach dem siunitx Paket eingebunden wird, da es andernfalls eine Fehlermeldung der Art ! Undefined control sequence. l.1 \DeclareSIUnit gibt.
Die drei Methoden sind auch dafür geeignet neue eigene selbstdefinierte Einheit zu verwenden.
per
Der per Befehl hat 6 Optionen. Der default Wert ist reciprocal. Daneben existieren noch fraction für
die Bruchschreibweise, reciprocal-positive-first bei der zuerst alle Einheiten mit positiven
Exponenten geschrieben werden und dann erst die Einheiten die negative Exponenten haben, symbol
gibt einen Schrägstrich / aus, mit repeated-symbol wird der Schrägstrich mehrmals ausgegeben auch
wenn es mathematisch keinen Sinn ergibt beziehungsweise falsch ist, und mit symbol-or-fraction wird
bei inline Mathematik ($ …$) ein Schrägstrich / und in displaystyle Mathematik wird die
Bruchschreibweise verwendet. Eine Übersicht der Unterschiedlichen Ausgabevarianten findet sich in
Tabelle 3.
Option | Code | Ausgabe | ||
- | \si{\ampere\per\mole\second} | A mol−1 s | ||
fraction | \si{\ampere\per\mole\second} |
|
||
reciprocal-positive-first | \si{\ampere\per\mole\second} | A smol−1 | ||
symbol | \si{\ampere\per\mole\second} | A s/mol | ||
repeated-symbol | \si{\ampere\per\mole\second} | A/mol s | ||
symbol-or-fraction | \si{\ampere\per\mole\second} | A s/mol | ||
symbol-or-fraction | \si{\ampere\per\mole\second} |
|
Zahlen mit Einheiten zusammen lassen sich mit dem \SI{Zahl}[per-Einheit]{Einheit} Befehl darstellen. Es handelt sich quasi um eine Kombination der Befehle \num{} und \si{}. Zwischen der Zahl und der Einheit kann auch noch der optionale per Befehl stehen. Je nach gewählter Option verändert sich die Darstellung des Ausdrucks entsprechend.
Beispiel
1 N = 1 kg m s−2
Werteliste mit Einheit Mit dem Befehl \SIlist{Zahl1;Zahl2;...}{Einheit} lässt sich eine Werteliste mit Einheit generieren. Standardmäßig wird dabei hinter jede Zahl die Einheit geschrieben. Der Befehl verfügt noch über die list-units Option, die die drei verschiedene Werte brackets, repeat und single haben kann. Beim Wert brackets werden die Zahlen der Werteliste geklammert und nur hinter die Klammer die Einheit geschrieben. Beim Wert repeat wird hinter jede Zahl die Einheit geschrieben. Bei single wird nur hinter die letzte Zahl eine Einheit geschrieben. Die letzten zwei Varianten sind beide ohne Klammerung der Werteliste. Eine Übersicht dazu bietet Tabelle 4.
Option | Code | Ausgabe |
- | \SIlist{1;3;5;7}{\newton} | 1 N, 3 N, 5 N und 7 N |
brackets | \SIlist{1;3;5;7}{\newton} | (1, 3, 5 und 7) N |
repeat | \SIlist{1;3;5;7}{\newton} | 1 N, 3 N, 5 N und 7 N |
single | \SIlist{1;3;5;7}{\newton} | 1, 3, 5 und 7 N |
Wertebereich mit Einheit Mit dem Befehl \SIrange{Zahl Anfang}{Zahl Ende}{Einheit} lässt sich ein Wertebereich mit einer Einheit kombinieren. Der Befehl verfügt über die range-units Option, die ebenfalls die Werte brackets, repeat und single haben kann. Beim Wert brackets wird der Wertebereich geklammert und dahinter die Einheit geschrieben. Bei repeat wird hinter beide Zahlen die Einheit geschrieben und bei single nur hinter die zweite Zahl. Eine entsprechende Übersicht findet sich in Tabelle 5.
Option | Code | Ausgabe |
- | \SIrange{1}{7}{\newton} | 1 N bis 7 N |
brackets | \SIrange{1}{7}{\newton} | (1 bis 7) N |
repeat | \SIrange{1}{7}{\newton} | 1 N bis 7 N |
single | \SIrange{1}{7}{\newton} | 1 bis 7 N |
Das Paket stellt zwei zusätzliche Spaltentypen S und s zur Verfügung. Wobei S für die Zahlen und s für die Einheit verwendet werden. Die Zahlen werden zentriert am Dezimalkomma beziehungsweise Punkt ausgerichtet. Die Spalte für die Einheiten (s) wird per default zentriert ausgerichtet. Sollen die Spalten für Zahlen (S) beschriftet werden, muss der Text geklammert {Text} werden.
Zahlen | Einheiten |
1.234 | km |
23e5 | m2 |
e1 | m |
-1234 | V |
Um die Ausrichtung der Spalten zu verändern stehen die folgenden Optionen center, left und right zur Verfügung.
Für den Fall, dass zu wenig Platz für die Darstellung der Exponenten zur Verfügung steht erfolgt folgende Warnung:
Eine mögliche Lösung scheint die Anpassung der Option table-figures-exponent zu sein.
Für die Tabellen gibt es noch den Befehl \tablenum{Zahl} der in der S Spalte im Fall das die Befehle multicolumn beziehungsweise multirow verwendet werden, genutzt werden kann um ansprechendere Ergebnisse zu erzielen.
Eine ausführliche Übersicht über die Tabellenoptionen und die Möglichkeiten die es für die Gestaltung der Tabellen (inklusive der passenden Beispiele) findet sich in Abschnitt 5.14 Tabular material [Wright, S.42-56].
Mit dem Befehl \ang{Winkel} kann ein Winkel als Dezimalzahl angegeben werden und mit \ang{Grad;Minuten;Sekunden} kann ein Winkel in der Form Grad, Bogenminute und Bogensekunde angegeben werden. Bei der letzten Variante müssen immer zwei Semikola enthalten sein.
\ang{47;59;43}47∘59′43′′ \ang{47,99} 47,99∘
Mit der Option separate-uncertainty wird zwischen der Zahl und dem Fehlerterm ein Plusminuszeichen gesetzt. Unabhängig davon welche Schreibweise für den Fehlerterm verwendet wurde.
9,99 ± 0,09
9,99 ± 0,09
9,99 ± 0,09
Ein sehr kurzes Beispiel für eine sisetup. Das Paket beinhaltet mehrere dutzend verschiedene Optionen.
[Wright] siunitx — A comprehensive (SI) units package Joseph Wright Released 2017/02/19
Abgerufen am 23.02.2017 tug.ctan.org/macros/latex/exptl/siunitx/siunitx.pdf
Bezeichnung | Einheit | Makro | Ausgabe | in SI Basisgrößen |
ebener Winkel | Radiant | \radian | rad | 1 |
Raumwinkel | Steradiant | \steradian | sr | 1 |
Frequenz | Hertz | \hertz | Hz | s−1 |
Kraft | Newton | \newton | N | m kg s−2 |
Druck | Pascal | \pascal | Pa | m−1 kg s−2 |
Energie | Joule | \joule | J | m2 kg s−2 |
Leistung | Watt | \watt | W | m2 kg s−3 |
elektrische Ladung | Coulomb | \coulomb | C | s A |
elektrische Spannung | Volt | \volt | V | m2 kg s−3 A−1 |
elektrische Kapazität | Farad | \farad | F | m−2 kg−1 s4 A2 |
elektrischer Widerstand | Ohm | \ohm | Ω | m2 kg s−3 A−2 |
elektrischer Leitwert | Siemens | \siemens | S | m−2 kg−1 s3 A2 |
magnetischer Fluss | Weber | \weber | Wb | m2 kg s−2 A−1 |
Induktion | Tesla | \tesla | T | kg s−2 A−1 |
Induktivität | Henry | \henry | H | m2 kg s−2 A−2 |
Celsius-Temperatur | Grad Celsius | \degreeCelsius | ∘C | K |
Lichtstrom | Lumen | \lumen | lm | cd |
Beleuchtungsstärke | Lux | \lux | lx | cd−2 |
Radioaktivität | Becquerel | \becquerel | Bq | s−1 |
Energiedosis | Gray | \gray | Gy | m2 s−2 |
Äquivalentdosis | Sievert | \sievert | Sv | m2 s−2 |
katalytische Aktivität | Katal | \katal | kat | s−1 mol |
Präfix | Makro | Symbol | - |
Yotta | \yotta | Y | 1024 |
Zetta | \zetta | Z | 1021 |
Exa | \exa | E | 1018 |
Peta | \peta | P | 1015 |
Tera | \tera | T | 1012 |
Giga | \giga | G | 109 |
Mega | \mega | M | 106 |
Kilo | \kilo | k | 103 |
Hekto | \hecto | h | 102 |
Deka | \deca | da | 101 |
Dezi | \deci | d | 10−1 |
Zenti | \centi | c | 10−2 |
Milli | \milli | m | 10−3 |
Mikro | \micro | μ | 10−6 |
Nano | \nano | n | 10−9 |
Piko | \pico | p | 10−12 |
Femto | \femto | f | 10−15 |
Atto | \atto | a | 10−18 |
Zepto | \zepto | z | 10−21 |
Yokto | \yocto | y | 10−24 |
Bezeichnung | Einheit | Makro | Ausgabe |
Fläche | Hektar | \hectare | ha |
Volumen | Liter | \litre | l |
Liter | \liter | L | |
Masse | Tonne | \tonne | t |
Zeit | Tag | \day | d |
Stunde | \hour | h | |
Minute | \minute | min | |
Winkel | Grad | \degree | ∘ |
Winkelminute | \arcminute | ′ | |
Winkelsekunde | \arcsecond | ′′ | |
Bezeichnung | Einheit | Makro | Ausgabe |
Atomare Masseneinheit | u | \atomicmassunit | u |
Druck | Bar | \bar | bar |
Millimeter Quecksilbersäule | \mmHg | mmHg | |
Energie | Elektronenvolt | \electronvolt | eV |
Schalldruckpegel | Bel | \bel | B |
Neper | \neper | Np | |
Länge | Ångström | \angstrom | Å |
Seemeile | \nauticalmile | M | |
Astronomische Einheit | \astronomicalunit | ua | |
Bezeichnung | Einheit | in SI Basis Makros | Ausgabe |
\radian | rad | \si{1} | 1 |
\steradian | sr | \si{1} | 1 |
\hertz | Hz | \si{\per\second} | s−1 |
\newton | N | \si{\metre\kilo\gram\per\square\second} | m kg s−2 |
\pascal | Pa | \si{\per\metre\kilo\gram\per\square\second} | m−1 kg s−2 |
\joule | J | \si{\square\metre\kilo\gram\per\square\second} | m2 kg s−2 |
\watt | W | \si{\square\metre\kilo\gram\per\cubic\second} | m2 kg s−3 |
\coulomb | C | \si{\second\ampere} | s A |
\volt | V | \si{\square\metre\kilo\gram\per\cubic\second\per\ampere} | m2 kg s−3 A−1 |
\farad | F | \si{\per\square\metre\per\kilo\gram\second\tothe{4}\square\ampere} | m−2 kg−1 s4 A2 |
\ohm | Ω | \si{\square\metre\kilo\gram\per\cubic\second\per\square\ampere} | m2 kg s−3 A−2 |
\siemens | S | \si{\per\square\metre\per\kilo\gram\cubic\second\square\ampere} | m−2 kg−1 s3 A2 |
\weber | Wb | \si{\square\metre\kilo\gram\per\square\second\per\ampere} | m2 kg s−2 A−1 |
\tesla | T | \si{\kilo\gram\per\square\second\per\ampere} | kg s−2 A−1 |
\henry | H | \si{\square\metre\kilo\gram\per\square\second\per\square\ampere} | m2 kg s−2 A−2 |
\degreeCelsius | ∘C | \si{\kelvin} | K |
\lumen | lm | \si{\candela} | cd |
\lux | lx | \si{\per\square\metre\candela} | m−2 cd |
\becquerel | Bq | \si{\per\second} | s−1 |
\gray | Gy | \si{\square\metre\per\square\second} | m2 s−2 |
\sievert | Sv | \si{\square\metre\per\square\second} | m2 s−2 |
\katal | kat | \si{\per\second\mole} | s−1 mol |