Oxidationszahlen etc. in CHEMMACROS's reaction(s) Umgebung?

Formelsatz für Mathematik, Naturwissenschaften und Technik


scaer93
Forum-Fortgeschrittener
Forum-Fortgeschrittener
Beiträge: 66
Registriert: Mi 30. Apr 2014, 20:12

Oxidationszahlen etc. in CHEMMACROS's reaction(s) Umgebung?

Beitrag von scaer93 »

Hallo Liebe LaTeX-Experten,

ich habe ein Problem mit Oxidationszahlen und dem CHEMMACROS-Paket. Laut Manual ist es möglich eine Reaction-Umgebung (ähnlich equation bzw. align) mit eigenem Zähler zu verwenden.

Leider funktioniert der Befehl \ox{+2,Na} nicht in dieser Umgebung. Warum nicht? Wie bekomme ich Oxidationszahlen in die reaction-Umgebung?

Eigentlich möchte ich z.B. solche Gleichungen haben:
\ce{\ox{0,Cu}_{(s)}  ->T[{~ Oxidation ~}] \ox{+2,Cu}^{2+}_{(aq)} + 2 e^{-}}
\ce{\ox{0,Cu}_{(s)} <-T[{~ Reduktion ~}] \ox{+2,Cu}^{2+}_{(aq)} + 2 e^{-}}
Minimalbeispiel:
\documentclass[
    a4paper,                                               
    oneside,                                               
    12pt,                                                  
    pagesize=auto,                                     
    headsepline,                                          
    %draft=true                                           
]{scrartcl}


% ##############
% # Pakete einbinden #
% ##############


\usepackage[utf8x]{inputenc}                                                  
\usepackage[T1]{fontenc}                                                      
\usepackage[ngerman,english]{babel}                                           
\usepackage{amsmath}                                                          
\usepackage{units}                                                                                                             

% Chemie-Pakete
\usepackage[version=3,arrows=pgf-filled]{mhchem} 
\usepackage{chemfig}

% chemmacros und chemformula ohne ghsystem
\usepackage[ghsystem=false]{chemmacros}
\usepackage{chemformula}

\chemsetup[option]{circled=formal}
% \leavevmode\mch\ \pch\ \fmch\ \fpch\ \el\ \prt \par
\chemsetup[option]{language=english}

\usepackage{mathtools}


% #########################
% # Beginn des Dokumentes #
% #########################

\begin{document}
\selectlanguage{ngerman}                                   
\onehalfspacing                                            % 1 1/2 facher Zeilenabstand
\addtokomafont{sectioning}{\rmfamily}                      % Schriftsatz
\numberwithin{equation}{section}                           


% #################
% # Den Inhalt der Arbeit #
% #################

Chemiesche Formel:

\renewtagform{reaction}[R ]{[}{]}
\begin{reactions}
	Na -> Na\lqd{} \el \\
	\ce{H2SO4} 
\end{reactions}

Mathematische Formel

\begin{align}
	v \,= \, v_{\text{therm}} \, + \, v_d \label{gl:geschwindigkeit-e}
\end{align}

\end{document}
Grüße
S.

Benutzeravatar
Johannes_B
Moderator
Moderator
Beiträge: 5080
Registriert: Do 1. Nov 2012, 14:55
Kontaktdaten:

Beitrag von Johannes_B »

Ich gebe es zu, das ist nicht ganz intuitiv und auch in der Doku etwas versteckt.

Die Oxidationsteile müssen vor chemmacros geschützt werden.
\documentclass{scrartcl}



\usepackage[utf8]{inputenc}% x entfernt
\usepackage[T1]{fontenc}                                                      
\usepackage[ngerman,english]{babel}                                          
\usepackage{amsmath}                                                          
%\usepackage{units}%veraltet!

%\usepackage[version=3,arrows=pgf-filled]{mhchem}
%\usepackage{chemfig}

\usepackage[ghsystem=false]{chemmacros}
\usepackage{chemformula}

\chemsetup[option]{circled=formal}
\chemsetup[option]{language=english}

\usepackage{mathtools}



\begin{document}
Chemische Formel:

\renewtagform{reaction}[R ]{[}{]}
\begin{reactions}
	Na &-> Na\lqd{} \el \\
	"\ox{0,Cu}" {}_{(s)} &->[{~ Oxidation ~}] "\ox{+2,Cu}" {}^{2+}_{(aq)} + 2 e^{-}\\
	"\ox{0,Cu}" {}_{(s)} &<-[{~ Reduktion ~}] "\ox{+2,Cu}" {}^{2+}_{(aq)} + 2 e^{-}
\end{reactions}

Mathematische Formel

\begin{align}
	v \,= \, v_{\text{therm}} \,
	+ \, v_d
	\label{gl:geschwindigkeit-e}
\end{align}

\end{document}
TeXwelt - Fragen und Antworten Schaut vorbei und stellt Fragen.
LaTeX-Vorlagen?

Der Weg zum Ziel: Ruhe bewahren und durchatmen, Beiträge und unterstützende Links aufmerksam lesen, Lösungsansätze verstehen und ggf. nachfragen.

scaer93
Forum-Fortgeschrittener
Forum-Fortgeschrittener
Beiträge: 66
Registriert: Mi 30. Apr 2014, 20:12

Beitrag von scaer93 »

Vielen Dank für die Antwort. Da wäre ich wirklich nie darauf gekommen. Jetzt klappt es wirklich.

Und das steht wirklich in dem Manual? Ich muss es 2 Mal überlesen haben :oops:

Grüße
S.

Benutzeravatar
cgnieder
Forum-Meister
Forum-Meister
Beiträge: 712
Registriert: Fr 22. Okt 2010, 18:37
Wohnort: Herrenberg
Kontaktdaten:

Beitrag von cgnieder »

scaer93 hat geschrieben:Und das steht wirklich in dem Manual? Ich muss es 2 Mal überlesen haben :oops:
Indirekt schon: Dort steht zumindest, dass Leerzeichen den Input in verschiedene Teile auftrennen, die unterschiedlich behandelt werden. Dort steht auch, dass alle Inputteile, die nicht eindeutig einem Typ (Pfeil, stöchiometrischer Faktor, ...) zugeordnet werden können, als chemische Formel behandelt werden. In denen werden Ziffern als Tiefstellungen behandelt, was genau das ist, was Dich hier beißt.

Das mit den Inputteilen ist hier ganz gut beschrieben: Marking state change alongside reaction in chemmacros

Grüße,
Clemens
Clemens

Antworten