SiunitX und eigene "Indizes"

Formelsatz für Mathematik, Naturwissenschaften und Technik


Münzi
Forum-Fortgeschrittener
Forum-Fortgeschrittener
Beiträge: 78
Registriert: Fr 24. Apr 2009, 09:53

Beitrag von Münzi »

Weil ich dieses ganze dfrac-getippe eigentlich weghaben wollte, sofern es Einheiten betrifft. Dazu müsste man noch bei jeder Einheit \textrm{...} ringsrum schreiben und 'ne Matheumgebung für die _2 machen. Warum das alles wenns soviel leichter geht/(gehn müsste)

Benutzeravatar
KarlMarx
Forum-Century
Forum-Century
Beiträge: 125
Registriert: Do 29. Okt 2009, 02:36
Wohnort: Berlin

Beitrag von KarlMarx »

Ich habe hier kein \textrm oder ähnliches gesetzt wie Du siehst.
Ansonsten gibt es auch die Möglichkeit per=frac als Option von siunitx zu laden und dann den Befehl \per für einen waagerechten Bruchstrich zu verwenden:
\usepackage{xfrac}
\usepackage[per=frac,
	loctolang={DE:german}
]{siunitx}
[1] goLaTeX-Knigge
[2] Minimalbeispiel

Acer TM5730, Core2Duo P8400, WinXP SP3, MiKTeX 2.8, TeXnicCenter 1.0 & 2.a3

--
Aut viam inveniam aut faciam.

Münzi
Forum-Fortgeschrittener
Forum-Fortgeschrittener
Beiträge: 78
Registriert: Fr 24. Apr 2009, 09:53

Beitrag von Münzi »

ja, aber du musstest extra in den Mathemodus gehn und hast dann \text{...} um O herum geschrieben. Das ist doch an sich das gleiche.
Den \per Befehl habe ich doch genutzt.

Benutzeravatar
KarlMarx
Forum-Century
Forum-Century
Beiträge: 125
Registriert: Do 29. Okt 2009, 02:36
Wohnort: Berlin

Beitrag von KarlMarx »

Moment: Das ist aber nicht bei siunitx sondern im Tabellenkopf.
Wenn man dort nicht den Mathemodus verwendet, meckert TeX logischer Weise über die Tiefstellung. Um diesen Index zu setzen braucht man im Text (nicht in siunitx) den Mathemodus und weil ich das O nicht kursiv setzen wollte, habe ich dann \text drum gesetzt.
[1] goLaTeX-Knigge
[2] Minimalbeispiel

Acer TM5730, Core2Duo P8400, WinXP SP3, MiKTeX 2.8, TeXnicCenter 1.0 & 2.a3

--
Aut viam inveniam aut faciam.

Münzi
Forum-Fortgeschrittener
Forum-Fortgeschrittener
Beiträge: 78
Registriert: Fr 24. Apr 2009, 09:53

Beitrag von Münzi »

Na genau das mein ich doch. Ich wollte gern die einheiten in den Tabellenkopf schreiben. Daher hätte ich bei der Lösung mit frac in den Mathemodus gehen müssen, den Bruch schreiben und alle Einheiten mit \Text oder \textrm umklammern.

Bei Siunitx speicher ich mir die Einheitenbeschreibung (wie heißt das eigentlich) O_2 einfach vor und nutze dann einen Befehl um sie wie alle anderen Einheiten aufzurufen. Ich finde so hat man weniger Stress.

Oder was meinst du?

Benutzeravatar
KarlMarx
Forum-Century
Forum-Century
Beiträge: 125
Registriert: Do 29. Okt 2009, 02:36
Wohnort: Berlin

Beitrag von KarlMarx »

Münzi hat geschrieben:... Daher hätte ich bei der Lösung mit frac in den Mathemodus gehen müssen, den Bruch schreiben und alle Einheiten mit \Text oder \textrm umklammern.
Nein, das brauchst Du nicht:
\begin{tabular}{cc}
   Lösung	& Konzentration in \SI{}{\frac{O_2}{l}}	\\ \hline \\
   A	& 0,05	\\
   B	& 0,01
\end{tabular}
Münzi hat geschrieben:Bei Siunitx speicher ich mir die Einheitenbeschreibung (wie heißt das eigentlich) ...
Neu- bzw. Redefinierung eines Befehls würde ich es nennen, wen man die Kommandos newcommand oder renewcommand verwendet.
Münzi hat geschrieben:... O_2 einfach vor und nutze dann einen Befehl um sie wie alle anderen Einheiten aufzurufen. Ich finde so hat man weniger Stress.
Sicher, das ist die eleganteste Möglichkeit, wenn Du die Konstrukte mehrfach verwenden willst. Das sähe dann so aus:
\newcommand{\OCon}{\frac{O_2}{l}}

\begin{tabular}{cc}
  Lösung	& Konzentration in \SI{}{\OCon}	\\ \hline \\
  A			& 0,05	\\
  B			& 0,01
\end{tabular}
Nun frage ich mich aber, warum Du überhaupt siunitx verwendest, wenn Du eh nur die Einheit ohne Zahlenwert setzen willst. Wäre es nicht so noch einfacher?
\newcommand{\OCon}{\frac{O_2}{l}}

\begin{tabular}{cc}
	Lösung	& Konzentration in \OCon	\\ \hline \\
	A			& 0,05	\\
	B			& 0,01
\end{tabular}
[1] goLaTeX-Knigge
[2] Minimalbeispiel

Acer TM5730, Core2Duo P8400, WinXP SP3, MiKTeX 2.8, TeXnicCenter 1.0 & 2.a3

--
Aut viam inveniam aut faciam.

Münzi
Forum-Fortgeschrittener
Forum-Fortgeschrittener
Beiträge: 78
Registriert: Fr 24. Apr 2009, 09:53

Beitrag von Münzi »

Ach jetzt versteh ich was du meinst. Wusste nicht, dass man in SI-Umgebung auch mit Math-Elementen arbeiten kann.

Nebenbei, du brauchst nicht so umständlich umdefinieren. Siunitx bietet dafür direkt eine Option die in die Präambel unter die Packages geschrieben wird.
Für solche Dinge wie ich sie jetzt brauchte (also die Einheit näher beschreiben):
\DeclareSIQualifier\befehlsname{Anzeige} 
Wenn du das machst, schreibt dir Siunitx die Anzeige als Indizes an deine Einheit. Das finde ich etwas unüblich, daher muss noch die Option
\sisetup{qualifier-mode = space}  
gesetzt werden. Dann setzt er es nicht als Indizes sonder setzt es in gleicher Schriftgröße dahinter.

Benutzeravatar
KarlMarx
Forum-Century
Forum-Century
Beiträge: 125
Registriert: Do 29. Okt 2009, 02:36
Wohnort: Berlin

Beitrag von KarlMarx »

Münzi hat geschrieben:... in SI-Umgebung auch mit Math-Elementen arbeiten kann.
Genau das meinte ich. :o)
Münzi hat geschrieben:... Siunitx bietet dafür direkt eine Option die in die Präambel unter die Packages geschrieben wird.
Ja, das habe ich ganz zu Anfang des Threads bei Euch ja gelesen. Kannte ich noch nicht, werde ich bei Zeiten auch mal ausprobieren. Die newcommand-Variante finde ich allerdings erstmal nicht umständlicher.
Münzi hat geschrieben:... schreibt dir Siunitx die Anzeige als Indizes an deine Einheit. Das finde ich etwas unüblich ...
Ich nicht. Ich würde molekularen Sauerstoff immer mit tiefgestellter 2 schreiben, bin aber auch kein Chemiker sondern Fahrzeugtechniker und bei uns wird das so geschrieben.
Zuletzt geändert von KarlMarx am Do 15. Jul 2010, 17:34, insgesamt 2-mal geändert.
[1] goLaTeX-Knigge
[2] Minimalbeispiel

Acer TM5730, Core2Duo P8400, WinXP SP3, MiKTeX 2.8, TeXnicCenter 1.0 & 2.a3

--
Aut viam inveniam aut faciam.

Münzi
Forum-Fortgeschrittener
Forum-Fortgeschrittener
Beiträge: 78
Registriert: Fr 24. Apr 2009, 09:53

Beitrag von Münzi »

Es ging nicht um die 2. Der Befehl verursacht, dass ohne die Einstellung, das O_2 als Indizes an die mmol geschrieben werden.

Benutzeravatar
KarlMarx
Forum-Century
Forum-Century
Beiträge: 125
Registriert: Do 29. Okt 2009, 02:36
Wohnort: Berlin

Beitrag von KarlMarx »

Ahso, o.k.

Na dann sind ja erstmal alle Klarheiten beseitigt?

Gruß, Marx.
[1] goLaTeX-Knigge
[2] Minimalbeispiel

Acer TM5730, Core2Duo P8400, WinXP SP3, MiKTeX 2.8, TeXnicCenter 1.0 & 2.a3

--
Aut viam inveniam aut faciam.

Antworten