Einheitliche Spaltenbreite in mehrzeilig Formel?

Antwort erstellen


Diese Frage dient dazu, das automatisierte Versenden von Formularen durch Spam-Bots zu verhindern.
Smilies
:D :) :( :o :shock: :? 8) :lol: :-x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen:

BBCode ist eingeschaltet
[img] ist eingeschaltet
[flash] ist ausgeschaltet
[url] ist eingeschaltet
Smilies sind eingeschaltet

Die letzten Beiträge des Themas

Ich habe die Datenschutzerklärung gelesen und bin damit einverstanden.

   

Wenn du eine Datei oder mehrere Dateien anhängen möchtest, gib die Details unten ein.

Ansicht erweitern Die letzten Beiträge des Themas: Einheitliche Spaltenbreite in mehrzeilig Formel?

von esdd » Fr 17. Mai 2013, 11:35

Hallo,

hier ist mal noch ein Vorschlag mit Hilfe einer Tabelle:
\documentclass{scrreprt} 
\usepackage{lmodern}
\usepackage[fleqn]{amsmath}

\usepackage{icomma}
\usepackage{array}
\usepackage{calc}

\newcolumntype{A}{>{$\displaystyle}l<{$}}
\newcolumntype{T}[1]{>{$\displaystyle\vphantom{0}}p{#1}<{$}}

\newenvironment{myeq}[2]{%
  \begin{equation}
  \begin{tabular}{@{}A@{}*{#1}{T{\widthof{$\,\displaystyle#2$}}@{}}}
  }{%
  \end{tabular}%
  \end{equation}}
% die erste Spalte wird linksbündig gesetzt,
% das erste Argument gibt die Anzahl der weiteren gleich breiten Spalten an,
% das zweite Argument muss den längsten Term enthalten

\begin{document} 

\begin{myeq}{4}{-3,5681\cdot f_{1}\cdot f_{12}}
    y=147,27&+243,42\cdot f_{1}&-28,687\cdot f_{3}& -3,8907\cdot f_{10}& +8,1278\cdot f_{12}\\ 
    &+18,544\cdot f_{13}& -11,168\cdot f_{14}& -11,223\cdot f_{15}& +0,46716\cdot f_{16}\\ 
    &-3,5681\cdot f_{1}\cdot f_{12}& -5,5673\cdot f_{2}\cdot f_{7}& -2,5901\cdot f_{5}\cdot f_{6} 
\end{myeq}
%
\begin{myeq}{4}{-3,5681\cdot f_{1}\cdot f_{12}}
    y=147,27&+243,42\cdot f_{1}&-28,687\cdot f_{3}& -3,8907\cdot f_{10}& +8,1278\cdot f_{12}\\ 
    &+18,544\cdot f_{13}& -11,168\cdot f_{14}& -11,223\cdot f_{15}& +0,46716\cdot f_{16}\\ 
    &-3,5681\cdot f_{1}\cdot f_{12}
\end{myeq}

\end{document}
Gruß
Elke

von CollmDante » Fr 17. Mai 2013, 08:51

Auf die schnelle wüßte ich nur zwei Hilflösungen, beide fingieren einen Text in einer Spalte:
\documentclass[a4paper,oneside,onecolumn,11pt,listof=totoc,bibliography=totoc]{scrreprt}
\usepackage{scrpage2}
\usepackage{lmodern}
\usepackage{xcolor}
\usepackage[fleqn]{amsmath}
\begin{document}
\begin{equation}
   \begin{alignedat}{5}
      \phantom{aa}
      y=147,27&+243,42\cdot f_{1}&& -28,687\cdot f_{3}&& -3,8907\cdot f_{10}&& +8,1278\cdot f_{12}\\
                  &+18,544\cdot f_{13}&& -11,168\cdot f_{14}&& -11,223\cdot f_{15}&& +0,46716\cdot f_{16}\\
                  &-3,5681\cdot f_{1}\cdot f_{12}&& -5,5673\cdot f_{2}\cdot f_{7}&& -2,5901\cdot f_{5}\cdot f_{6}
      \end{alignedat}
\end{equation}


\begin{equation}
   \begin{alignedat}{5}
      y=147,27&+243,42\cdot f_{1}&& -28,687\cdot f_{3}&& -3,8907\cdot f_{10}&& +8,1278\cdot f_{12}\\
                  &+18,544\cdot f_{13}&& -11,168\cdot f_{14}&& -11,223\cdot f_{15}&& +0,46716\cdot f_{16}\\
                  &-3,5681\cdot f_{1}\cdot f_{12}&&\color{white} -5,5673\cdot f_{2}\cdot f_{7}&&\color{white} -2,5901\cdot f_{5}\cdot f_{6}
      \end{alignedat}
\end{equation}

\begin{equation}
   \begin{alignedat}{5}
      y=147,27&+243,42\cdot f_{1}&& -28,687\cdot f_{3}&& -3,8907\cdot f_{10}&& +8,1278\cdot f_{12}\\
                  &+18,544\cdot f_{13}&& -11,168\cdot f_{14}&& -11,223\cdot f_{15}&& +0,46716\cdot f_{16}\\
                  &-3,5681\cdot f_{1}\cdot f_{12}&& \phantom{-5,5673\cdot f_{2}\cdot f_{7}}&&\phantom{-2,5901\cdot f_{5}\cdot f_{6}}
      \end{alignedat}
\end{equation}

\end{document}
Das erscheint mir aber sehr stümperhaft und eine bessere Lösung, würde mich auch interessieren.
Deine zweite Wunschvorstellung konnte ich mir allerdings nicht vorstellen.

Einheitliche Spaltenbreite in mehrzeilig Formel?

von matzmatz » Do 16. Mai 2013, 21:16

Hallo,
nachdem mir gestern hier sehr schnell geholfen wurde, bin ich bei dem nächsten Problem angelangt, welches ich nicht alleine mit Google lösen kann.
Unten stehender Code erzeugt zwei Formeln. Da diese sehr viele Terme beinhalten werden diese über mehrere Zeilen aufgeteilt. Die einzelnen Terme sind unterschiedlich lang. Aus Gründen der Übersichtlichkeit möchte ich, dass die Formel tabellenartig mit gleicher Spaltenbreite aufgebaut ist (siehe erste Formel). Das geschieht in meinem Code automatisch, falls jede (außer dei letzte) Spalte mindestens einen "langen" Term beinhaltet. Ist dies nicht der Fall, resultiert etwas mit ungleichmäßigen Abständen (siehe zweite Formel). Also prinzipiell sollte die Spaltenbreite (außer die Spaltenbreite der ersten Spalte mit der konstanten Zahl) aller Spalten gleich groß sein und sich am besten nach dem größten Term richten. Ist sowas möglich?

Noch lieber wäre mir eine noch ausgefallenere Lösung: Zunächst sind zeilenweise (nach der Spalte mit der Konstanten, die immer nur in der ersten Zeile besetzt ist) immer vier Spalten enthalten. In diese Spalten könnte man die "kurzen" Terme. In den darauffolgenden Zeilen sind drei Spalten pro Zeile für die "langen" Terme vorgesehen.

Vielen Dank!
\documentclass[a4paper,oneside,onecolumn,11pt,listof=totoc,bibliography=totoc]{scrreprt}
\usepackage{scrpage2}
\usepackage{lmodern}
\usepackage{amsmath}
\begin{document}
\begin{equation}
	\begin{alignedat}{4}
		y=147,27&+243,42\cdot f_{1}&& -28,687\cdot f_{3}&& -3,8907\cdot f_{10}&& +8,1278\cdot f_{12}\\
						&+18,544\cdot f_{13}&& -11,168\cdot f_{14}&& -11,223\cdot f_{15}&& +0,46716\cdot f_{16}\\
						&-3,5681\cdot f_{1}\cdot f_{12}&& -5,5673\cdot f_{2}\cdot f_{7}&& -2,5901\cdot f_{5}\cdot f_{6}
		\end{alignedat}
\end{equation}


\begin{equation}
	\begin{alignedat}{4}
		y=147,27&+243,42\cdot f_{1}&& -28,687\cdot f_{3}&& -3,8907\cdot f_{10}&& +8,1278\cdot f_{12}\\
						&+18,544\cdot f_{13}&& -11,168\cdot f_{14}&& -11,223\cdot f_{15}&& +0,46716\cdot f_{16}\\
						&-3,5681\cdot f_{1}\cdot f_{12}
		\end{alignedat}
\end{equation}
\end{document}

Nach oben