PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : "too many columns" bei text in eqnarray



nano_
17-11-2011, 16:15
Hallo!

Ich möchte gerne ein eqnarray benutzen wo am Ende der Zeile Text stehen soll. Im Prinzip funktioniert das, aber ich bekomme es nicht vernünftig formatiert. Minimalbeispiel, das den Fehler "too many columns" produziert:



\documentclass[12pt,a4paper]{article}
\usepackage{amsmath,amsfonts,amssymb,amstext}
%\usepackage{mypack}

\begin{document}
\begin{eqnarray*}
w_3 &=& w_1 + w_2 &\text{(Energieerhaltung)}\\
\vec k_3 &=& \vec k_1 + \vec k_1 &\text{(Impulserhaltung)}
\end{eqnarray*}
\end{document}


Wenn ich die zweiten "&"s weglasse, sieht es besser aus, aber dann sind die formeln nicht so schön synchron.

Weiß jemand was ich da machen kann?

Viele Grüße
nano

localghost
17-11-2011, 16:36
Die Umgebung eqnarray sollte man gar nicht mehr benutzen [1].

\documentclass[12pt,a4paper]{article}
\usepackage{mathtools} % lädt »amsmath«

\begin{document}
\begin{align*}
w_3 &= w_1 + w_2 &\text{(Energieerhaltung)}\\
\vec k_3 &= \vec k_1 + \vec k_1 &\text{(Impulserhaltung)}
\end{align*}
\end{document}

[1] The PracTeX Journal, TeX Users Group – Lars Madsen: Avoid eqnarray! (http://tug.org/pracjourn/2006-4/madsen)


Thorsten

nano_
17-11-2011, 16:54
Ah, danke! Ich dachte irgendwie, dass eqnarray neuer wäre als align. Ok, dann habe ich eine neue Frage zu align. ;-)

Und zwar ist hier der Abstand zwischen Formel und Text sehr groß. Kann man den irgendwie verkleinern? Danke!



\documentclass[12pt,a4paper]{article}
\usepackage{amsmath,amsfonts,amssymb,amstext}

\begin{document}
\begin{align}
\omega_3 &= \omega_1 \pm \omega_2 &\text{(Energieerhaltung)}\\
\vec k_3 &= \vec k_1 \pm \vec k_1 &\text{(Impulserhaltung)}
\end{align}
\end{document}

localghost
17-11-2011, 17:10
Da nimmst Du dann am besten die Umgebung alignat*.

\documentclass[12pt,a4paper]{article}
\usepackage{mathtools} % lädt »amsmath«

\begin{document}
\begin{alignat*}{2}
w_3 &= w_1 + w_2 &\qquad&\text{(Energieerhaltung)}\\
\vec k_3 &= \vec k_1 + \vec k_1 &&\text{(Impulserhaltung)}
\end{alignat*}
\end{document}

nano_
17-11-2011, 17:23
Danke! Jetzt sieht's aus wie ich es mir vorgestellt hatte.