PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Gleichungskette in der array-Umgebung inkl. Beschriftung



Extraktor
14-11-2007, 10:55
Hallo Leute,

ich habe eine spezielle Frage zu Beschriftungen von Formeln.
Im Forum habe ich dazu noch nichts gefunden und auch in der mathmode.pdf werde ich nicht fündig.

Ich würde gerne eine Formel mit der array-Umgebung schreiben, in der Form
\begin{array}{lcl}
C_{A,d}(R,\theta,0) & = & 0\\
C_{A,d}(R,\theta,0) & = & 0\\
C_{A,d}(R,\theta,0) & = & 0\\
\end{array}
Die Umgebungen eqnarray und align führen nicht zu den gewünschten Dartstellungen, da ich wie gesagt, die Variablen linksbündig haben möchte.

Ist es möglich in der array-Umgebung jede Formel einzeln zu beschriften??
Bisher sehe ich nur folgende Möglichkeit, die jedoch für den gesamten Block eine Gleichungsbeschriftung einfügt:
\begin{equation}
\begin{array}{lcllcl}
C_{A,d}(R,\theta,0) & = & 0\\
C_{A,d}(R,\theta,0) & = & 0\\
C_{A,d}(R,\theta,0) & = & 0\\
\end{array}
\end{equation}
Natürlich wäre mir auch jede andere Umgebung recht, die sowohl die Ausrichtung der Formelteile als auch die Beschriftung ermöglicht.

Bin für jede Hilfe dankbar!

Timm
14-11-2007, 12:21
Ich verstehe nicht ganz, was Du meinst. Soll Beschriftung die Formelnummer sein?
Schau mal in der amsmath Dokumentation.

Extraktor
14-11-2007, 13:24
Genau, mit der Beschriftung meine ich die Formelnummer!
Sorry, ich habe mich nicht ganz optimal ausgedrückt...

Wie schon erwähnt steht zu diesem Thema nichts in der amsmath doku.

localghost
14-11-2007, 15:17
[…] Die Umgebungen eqnarray und align führen nicht zu den gewünschten Dartstellungen, da ich wie gesagt, die Variablen linksbündig haben möchte. […]
Was ist aus deiner Sicht der Vorteil an dieser Art der Darstellung? Und was spricht gegen die gewohnte Ausrichtung der Elemente?

Timm
14-11-2007, 15:19
Ich habe das Problem für mich immer so gelöst, dass ich eine array Umgebung genommen habe, um die Formeln nach Belieben auszurichten. Die Formeln haben dann zwar nur zusammen eine Nummer, aber ich habe dann im Text geschrieben: "Die zweite Formeln in (2.16)..." usw. Ich denke, dass das in Ordnung ist, wenn es nicht zu viele Formeln sind, also bis drei oder vier.

Extraktor
14-11-2007, 16:15
@Timm: Bis jetzt nehme ich diese Variante auch, jedoch möchte mein Assi eine Numerierung aller Formeln...

@localghost: 'Eqnarray' hat den Nachteil, dass man nur eine einzige Gleichung pro Zeile einfügen kann. Bei 'Align' werden beide Seiten der Gleichung direkt an das Gleichheitszeichen gesetzt, was dazu führt, dass bei einer Untereinanderreihung mehrerer Gleichungen keine Bündigkeit der einzelnen Teilstücke ensteht. Fazit, ich finde beide Varianten hässlich...
;-)

Dieses Problem kann ich bisher nur über die array-Umgebung lösen, habe dann jedoch wie gesagt nur eine Numerierung...

Dieses Problem muss doch bestimmt bei einem von Euch vorher schonmal aufgetreten sein... ???

susu
14-11-2007, 17:15
Moin,
kannst ja ein bisschen mit "alignat" rumspielen. Mathmode.pdf (S.53), Zitat:"With the alignat environment one can easily align equations vertically
at more than one marker:"
Gruß


\documentclass[a4paper, 12pt,fleqn]{scrartcl}
\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}
\usepackage{amsmath}
\begin{document}
Die Umgebungen eqnarray und align führen nicht zu den gewünschten Dartstellungen, da ich wie gesagt, die Variablen linksbündig haben möchte.
Ist es möglich in der array-Umgebung jede Formel einzeln zu beschriften??
Bisher sehe ich nur folgende Möglichkeit, die jedoch für den gesamten Block eine Gleichungsbeschriftung einfügt:\\
alignat
\begin{alignat}{3}
&C_{A,d}(R,\theta,0) && =0\\
&C_{A,d}(R,\theta,0) && =0\\
&C_{A,d}(R,\theta,0) && =0\\
&C_{A,d}(R,\theta,0)+xx && =0+xx
\end{alignat}
und align
\begin{align}
C_{A,d}(R,\theta,0) &=0\\
C_{A,d}(R,\theta,0) &=0\\
C_{A,d}(R,\theta,0) &=0\\
C_{A,d}(R,\theta,0)+xx &=0+xx
\end{align}
\end{document}

localghost
14-11-2007, 17:18
[…]

@localghost: 'Eqnarray' hat den Nachteil, dass man nur eine einzige Gleichung pro Zeile einfügen kann. Bei 'Align' werden beide Seiten der Gleichung direkt an das Gleichheitszeichen gesetzt, was dazu führt, dass bei einer Untereinanderreihung mehrerer Gleichungen keine Bündigkeit der einzelnen Teilstücke ensteht. Fazit, ich finde beide Varianten hässlich...
;-)

[…]
Die eqnarray-Umgebung erlaubt sehr wohl mehrere Gleichungen. Diese werden jedoch wieder bündig zum Gleichheitszeichen ausgerichtet. Was Du wohl meinst, ist die equation-Umgebung. Gleiches gilt für die align-Umgebung. Bündigkeit ist also schon gegeben, aber eben nicht nach deinem Geschmack. Dein "Problem" ist also hausgemacht. Aber selbst dafür gibt es eine Lösung mit der alignat-Umgebung.

\begin{alignat}{3}
&C_{A,d}(R,\theta,\phi,0)&&=0 \\
&C_{A,d}(R,\theta,0)&&=0 \\
&C_{A,d}(R,0)&&=0
\end{alignat}

Näheres zur alignat-Umgebung ist in der Anleitung zu amsmath (http://dante.ctan.org/CTAN/help/Catalogue/entries/amsmath.html) nachzulesen.

Edit: Da war jemand etwas schneller.

Extraktor
15-11-2007, 08:11
Vielen Dank es klappt!!!:)
(auch bei mehreren Gleichheitszeichen in einer Zeile...)

Da ich anscheinend so sehr auf hausgemachte Probleme stehe, möchte ich nun noch den vertikalen Gleichungsabstand nach belieben einstellen können...

In amsmath konnte ich dazu nichts entdecken und im mathmode wird folgende Lösung vorgeschlagen:

\newdimen\jot \jot=10pt

Mit diesem Befehl lässt sich jedoch nur der "Vertical Whitespace" zwischen den Gleichungen einstellen. Wenn ich also eine Gleichungszeile mit Brüchen vorliegen habe, dann braucht diese immer noch mehr Platz als eine Gleichungszeile ohne Brüche...

Bsp.:

\newdimen\jot \jot=20pt

\begin{alignat}{5}
&C_{A,c}(\infty,\theta,\tau_{c}) &&=Z_{c}(\infty,\theta,\tau_{c}) &&=1\\
&\phi_\lambda \displaystyle\frac{\partial Z_{d}}{\partial R}(1,\theta,\tau_{d}) &&=\displaystyle\frac{\partial Z_{c}}{\partial R}(1,\theta,\tau_{c}) \ Z_{d} &&=Z_{c}\\
&\phi_D \displaystyle\frac{\partial C_{A,d}}{\partial R}(1,\theta,\tau_{d}) &&=\displaystyle\frac{\partial C_{A,c}}{\partial R}(1,\theta,\tau_{c}) \ C_{A,d} &&=C_{A,c}
\end{alignat}

(Ich weiss, dass es nicht unbedingt stark ins Auge fällt...)

Gibt es also eine Möglichkeit, den Gleichungsabstand in der align-Umgebung nach belieben einstellen zu können (bzw. zu erzwingen)?