Nummerierung von Gleichungen in Array-Umgebung

Formelsatz für Mathematik, Naturwissenschaften und Technik


Andre2786

Nummerierung von Gleichungen in Array-Umgebung

Beitrag von Andre2786 »

Hallo;
ich erbitte Hilfe!!
Bei der Entwicklung einer chem. Reaktionsgleichung möchte ich alles zentriert untereinander und die zweite und dritte Zeile soll eine Nummerierung bekommen. Leider habe ich mittels der Einbindung einer eqnarray-Umgebung nur eine mittige Nummerierung hinbekommen (ist im MB nicht aufgeführt).
Ich danke bereits im Vorab für eure Hilfe!!
VG Andre
\documentclass[%
]
{scrartcl}
\usepackage[ngerman]{babel}
\usepackage{chemfig}
\usepackage[version=3]{mhchem}
\begin{document}
\[
\begin{array}{ccccccc}
	\ce{CH_4}& +& \ce{2O_2}& \ce{->}& \ce{CO_2}& +& \ce{2 H_2O} \vspace{5mm}\\
	\ce{1 mol \cdot 16 \frac{g}{mol}}& +& \ce{4 mol \cdot 16 \frac{g}{mol}}&\ce{->}& \ce{1 mol \cdot 44 \frac{g}{mol}}& +& \ce{2 mol \cdot 18 \frac{g}{mol}} \vspace{5mm} \\ % Hier soll eine Nummerierung erscheinen
	16g& +& 64g& \ce{->}& 44g& +& 36g \vspace{5mm}\\ % Und hier sollauch eine Nummerierung hin
	& 80g & & \ce{->}& & 80g 
\end{array}
\]
\end{document}
[/d]

Rolli
Forum-Guru
Forum-Guru
Beiträge: 398
Registriert: Mi 15. Feb 2017, 08:50
Wohnort: Mittelfranken

Beitrag von Rolli »

Hallo Andre2786,

Versuche mal die Logik anders herum: Die \align- bzw. \flalign- Umgebung macht Zeilennummern, und wenn Du keine willst: \nonumber

So wie ich das sehe, wird \array innerhalb einer Mathematikumgebung wie eine Zeile behandelt, also weg damit.

Hilft Dir so etwas in der Art weiter:
\documentclass[%
]
{scrartcl}
\usepackage[ngerman]{babel}
\usepackage{chemfig}
\usepackage[version=3]{mhchem}
\begin{document}
\begin{flalign}
   \ce{CH_4}& +& \ce{2O_2}& \ce{->}& \ce{CO_2}& +& \ce{2 H_2O} \vspace{5mm} \nonumber \\
   \ce{1 mol \cdot 16 \frac{g}{mol}}& +& \ce{4 mol \cdot 16 \frac{g}{mol}}&\ce{->}& \ce{1 mol \cdot 44 \frac{g}{mol}}& +& \ce{2 mol \cdot 18 \frac{g}{mol}} \vspace{5mm} \\ % Hier soll eine Nummerierung erscheinen
   16g& +& 64g& \ce{->}& 44g& +& 36g \vspace{5mm}\\ % Und hier sollauch eine Nummerierung hin
   & 80g & & \ce{->}& & 80g \nonumber
\end{flalign}
\end{document}
Gruß Rolli

Andre2786

Beitrag von Andre2786 »

Hallo Rolli,

Danke für deine Antwort. Leider ist das nicht was ich suche. Alle Umgebungen (\align; \flalign) setzen nicht zentriert. Einmal wird links und dann rechtsbündig gesetzt. Bei der Array-Umgebung kann ich die Ausrichtung vorgeben; genau was ich suche, leider bekomme ich aber die Formel-Nummerierung nicht dahinter.

Gruß Andre

Rolli
Forum-Guru
Forum-Guru
Beiträge: 398
Registriert: Mi 15. Feb 2017, 08:50
Wohnort: Mittelfranken

Beitrag von Rolli »

Hallo Andre,

na dann schreibe doch den aktuellen Wert des Formelzählers direkt an die Stelle hin, wo Du ihn haben willst:
\documentclass{scrartcl}
\begin{document}

\refstepcounter{equation}%erhöht den Formelzähler um 1

\[ a+b=c \quad \theequation \]%\theequation gibt den aktuellen Wert des Formelzählers aus

\refstepcounter{equation}

\[ x+y=42 \quad \theequation \]

\end{document}
Gruß Rolli[/quote]

Andre2786

Beitrag von Andre2786 »

Hallo Rolli,

der Weg ist genau richtig! Jetzt fehlt noch die gleichmäßige Darstellung. Habe mein MB erweitert. Einmal wird die Nummerierung in Klammern gesetzt und einmal nicht; auch die Abstände zum Blattrand sind unterschiedlich.
Vielen Dank schon mal im Vorab!!
\documentclass[%
]
{scrartcl}
\usepackage[ngerman]{babel}
\usepackage{chemfig}
\usepackage[version=3]{mhchem}
\usepackage{amstext}
\begin{document}
\begin{equation}
\text{eine Formel mit einer Nummer}
\end{equation}
\\
\[
\begin{array}{ccccccc}
	\ce{CH_4}& +& \ce{2O_2}& \ce{->}& \ce{CO_2}& +& \ce{2 H_2O} \vspace{5mm}\\
	\refstepcounter{equation}
	\ce{1 mol \cdot 16 \frac{g}{mol}}& +& \ce{4 mol \cdot 16 \frac{g}{mol}}&\ce{->}& \ce{1 mol \cdot 44 \frac{g}{mol}}& +& \ce{2 mol \cdot 18 \frac{g}{mol}} \quad \theequation \vspace{5mm} \\
	16g& +& 64g& \ce{->}& 44g& +& 36g \vspace{5mm}\\
	& 80g & & \ce{->}& & 80g 
\end{array}
\]
\end{document}

Andre2786

Beitrag von Andre2786 »

Da bin ich gleich nochmal.
Eine Referenzierung auf die neuen Gleichungsnummern mit \label{} und Bezug mittels \ref{} funktioniert auch noch nicht.

Rolli
Forum-Guru
Forum-Guru
Beiträge: 398
Registriert: Mi 15. Feb 2017, 08:50
Wohnort: Mittelfranken

Beitrag von Rolli »

Das mit den Klammern ist simpel: Einfach drum machen (\theequation) statt \theequation

Das mit den rechtsbündigen Formelnummern ist auch simpel: Eine neue rechtsbündige array-Spalte rechts dran hängen und da die Formelnummern rein schreiben. Wo keine Formelnummer sein soll: Einfach kein & bzw leer lassen.

Dass diese neue Spalte auch automatisch am rechten Zeilenrand hängt, ist für mich zu schwierig - bin auch nur ein Anfänger, sorry. Wenn Du das in Deinem Dokument nur 1 oder 2-mal brauchst: Mein Workaround siehe im Beispiel. Links noch eine neue Spalte davor, darein in einer beliebigen Zeile so viele Leerräume, bis Dir der linke Rand passt. Dann in einer der rechten Spalten mit Formelnummer vor der Nummer so viele Leerräume, bis die Formelnummer am rechten Seitenrand anstößt. Das Ganze möglicherweise 2 ... 3 mal iterieren, bis es passt.
Leerräume kriegst Du mit \ \, \; \quad \qquad und ein paar mehr dergleichen.
Ich weiß - es ist fürchterliches Gebastele, aber der Zweck heiligt die Mittel. Wenn Du es nur 1 oder 2-mal brauchst.

Und was die Labels angeht: Auch da bin ich überfragt. Die Referenz funktioniert zwar als reine Nummer, aber leider innerhalb der Mathematikumgebung offenbar nicht als Hyperref.
Warum nicht? Ich hoffe, es meldet sich ein Profi, erklärt uns das, und hilft weiter.

Gruß Rolli
\documentclass[%
]
{scrartcl}
\usepackage[ngerman]{babel}
\usepackage{chemfig}
\usepackage[version=3]{mhchem}
\usepackage{amstext}
\usepackage{hyperref}
\begin{document}
\begin{equation}
\text{eine Formel mit einer Nummer} \label{eqn:Formel-1}
\end{equation}
\\
\[
\begin{array}{lcccccccr}
 \;  & \ce{CH_4}& +& \ce{2O_2}& \ce{->}& \ce{CO_2}& +& \ce{2 H_2O} & \qquad\qquad \vspace{5mm}\\
   \refstepcounter{equation}
   & \ce{1 mol \cdot 16 \frac{g}{mol}}& +& \ce{4 mol \cdot 16 \frac{g}{mol}}&\ce{->}& \ce{1 mol \cdot 44 \frac{g}{mol}}&     +& \ce{2 mol \cdot 18 \frac{g}{mol}} & (\theequation) \label{eqn:Formel-2}  \vspace{5mm} \\
   \refstepcounter{equation}
   & 16g& +& 64g& \ce{->}& 44g& +& 36g & (\theequation) \vspace{5mm}\\
   && 80g & & \ce{->}& & 80g 
\end{array}
\] 

\noindent
Gleichung 1: Siehe \ref{eqn:Formel-1} \\
Gleichung 2: Siehe \ref{eqn:Formel-2} \\
\end{document}

Rolli
Forum-Guru
Forum-Guru
Beiträge: 398
Registriert: Mi 15. Feb 2017, 08:50
Wohnort: Mittelfranken

Beitrag von Rolli »

... noch ein Nachtrag:
Nach diversen Normen (u.a. ISO 80000, DIN 1313 und DIN 1338) gehört zwischen Zahlenwert und Einheit ein geschütztes Leerzeichen.
Falsch ist, was Du schreibst: 1 mol, weil die Mathematikumgebung in LaTeX die "Leertaste" ignoriert.
Richtig nach Norm ist 1~mol: Die Tilde ~ macht das geschützte Leerzeichen.
Warum manche gelernte Typographen normwidrig ein halbes geschütztes Leerzeichen \, propagieren, ist mir allerdings schleierhaft.

LG Rolli

Andre2786

Beitrag von Andre2786 »

Hallo Rolli,

vielen Dank für heute!!
Wenn du ein Anfänger bist, weiß ich nicht, wie ich mich nennen soll :lol:
Die Richtung ist schon mal klar.
Schaun wir mal, was der morgige Tag bringt.

Gruß Andre

markusv
Forum-Meister
Forum-Meister
Beiträge: 947
Registriert: Do 3. Sep 2015, 17:20
Wohnort: Leipzig

Beitrag von markusv »

Rolli hat geschrieben:Und was die Labels angeht: Auch da bin ich überfragt. Die Referenz funktioniert zwar als reine Nummer, aber leider innerhalb der Mathematikumgebung offenbar nicht als Hyperref.
Warum nicht? Ich hoffe, es meldet sich ein Profi, erklärt uns das, und hilft weiter.
Ich bin zwar kein Profi, aber die fehlende (hyper)ref-Verlinkung rührt wahrscheinlich daher, dass \[...\] lediglich eine Umgebung für abgesetzte Formeln ist, nicht für nummerierte abgesetzte Formeln, wie equation.

Ansonsten ist die Lösung an quick and dirty kaum zu übertreffen. Ich hoffe, man kann hier noch eine alternative Lösung anbieten, ich kann es leider nicht.
Wäre Microsoft Word für das Schreiben von Büchern entwickelt worden,
würde es Microsoft Book heißen.

Unkomplizierte und schnelle LaTeX-Hilfe, bspw. Erstellung von Vorlagen und Bewerbungen.

Antworten