Align komplett über Seitenrand

Layout von Seiten, Rändern, Fusszeilen, usw, modifizieren


DEVV
Forum-Century
Forum-Century
Beiträge: 117
Registriert: Sa 31. Okt 2015, 17:06

Align komplett über Seitenrand

Beitrag von DEVV »

Hi Leute,

ich habe folgende Formel, die sich selbst komplett rechts aus der Seite schiebt.
Wie genau bekomme ich die vernünftig angezeigt? Ich habe bereits diverse Kombinationen mit & ausprobiert:

Minimalbeispiel:

Code: Alles auswählen

\documentclass[12pt]{article}
\usepackage{amsmath}
\usepackage{graphicx}
\usepackage{amsmath,amssymb}
\usepackage[latin1]{inputenc}

\title{Minimalbeispiel}


\begin{document}
\maketitle

\newpage
\begin{align*}
MsgBrk: (In \times In_{sub}) \rightarrow (Out \times Ack_{sender} \times Ack_{receiver} ) \\
MsgBrk \equiv  \ \exists mds, mdr \in \mathbb{N}, mstore \in \mathbb{N}\textbackslash \{ 0\}: \\
\forall x\in In^*, x' \in In_{sub}^\omega, t\in T, m \in M: \exists y \in Ack_{sender}^\omega, y'\in Ack_{receiver}, z\in Out^\omega: f(x,x') = (z,y,y') \ \land \\
\# y \leq \# x \leq mds + \# y  \ \land \\
\# y' \leq \# x' \leq mdr + \# y'  \ \land \\
z \sqsubseteq success(x, y)  \ \land\\
\# success(x, y) - \# z > 0 \Rightarrow lt(y') \neq subFail  \ \land \\
success(x, y) - \# z < mstore \Rightarrow lt(y) \neq error \ \land \\
\# (t,m) \text{\textcopyright} z > 0 \Rightarrow \# t \text{\textcopyright} x' > 0.
\end{align*}


\end{document}

Gast

Beitrag von Gast »

Du müsstest irgendwo in der zu langen Zeile einen Zeilenumbruch setzen.


DEVV
Forum-Century
Forum-Century
Beiträge: 117
Registriert: Sa 31. Okt 2015, 17:06

Re: Align komplett über Seitenrand

Beitrag von DEVV »

Ich würde das ja verstehen, wenn die lange Zeile den kompletten verfügbaren Platz ausreizen würde. Aber die Gleichung beginnt doch bereits sehr weit rechts und verlässt dann die Seite...


gast

Re: Align komplett über Seitenrand

Beitrag von gast »

Ich glaube, dir fehlt das Grundverständnis dafür, was align eigentlich ist.

align ist (in der einfachsten Form) eine zweispaltige Tabelle. Die linke Spalte ist rechtsbündig und die rechte Spalte ist linksbündig. Die ganze Tabelle wird zentriert. Da du keinen Spaltentrenner (&-Zeichen) verwendest, bleibt die rechts Spalte leer und alle Zeilen sind rechtsbündig. Dabei bestimmt die längste Formelzeile dann die Breite dieser Spalte.

Was du da machst, ist aber insgesamt nicht korrekt. So werden im Mathemodus Dinge wie "MsgBrk" beispielsweise als Produkt einzelner Variablen (also letztlich M * s * g * B * r * k) formatiert. Wenn du Wörter haben willst, musst du diese explizit als \text{MsgBrk} markieren. Mehrbuchstaben-Variablen sind ggf. als \mathrm{Hohoho} möglich, aber normalerweise wenig sinnvoll.

Hier stellt sich auch die Frage, ob das wirklich ein Gleichungssystem sein soll oder einzelne Gleichungen. Das kann ich aber nicht beurteilen, weil ich weiß, worum es hier geht. Deshalb kann ich dir auch nicht sagen, wo alternativ die & sinnvoll zu platzieren wären. Ich vermute, dass das Pseudo-Logik ist. Auch hat \textbackslash in Mathematik eher nichts verloren. Da wäre eher \backslash angebracht.

Die erste Zeile könnte beispielsweise

Code: Alles auswählen

\text{MsgBrk} &: (\text{In} \times \text{In}_{\text{sub}}) \rightarrow (\text{Out} \times \text{Ack}_{\text{sender}}
                \times \text{Ack}_{\text{receiver}} ) \\

lauten. Natürlich ändert sich dadurch noch nicht viel, insbesondere nicht die generelle Ausrichtung, solange man die restlichen Zeilen in derselben align*-Umgebung unverändert hat. Nimmt man den Rest raus, kann man den Unterschied deutlich sehen (und damit wird dann auch klar, welche Auswirkungen lange Zeilen auf das gesamte Gleichungssystem haben). Für den Rest und vor allem, wo die Zeilen korrekt in Spalten zu trennen oder auf mehrere Zeilen zu verteilen wären, fehlt mir das wissen, was das ganze soll.

Ich würde dringend empfehlen, eine ausführliche LaTeX-Einführung zu studieren. Das hilft beim Grundverständnis ungemein. Die Anleitungen zu den Pakten, insbesondere amsldoc kann zusätzlich helfen. Wenn komplizierte Mathematik zu setzen ist, ist aber sogar ein weiterführendes Buch zu empfehlen. So gibt es beispielsweise das Mathematiksatz-Buch von Herbert Voss.


DEVV
Forum-Century
Forum-Century
Beiträge: 117
Registriert: Sa 31. Okt 2015, 17:06

Re: Align komplett über Seitenrand

Beitrag von DEVV »

Danke für die ganzen Tipps. Ich werde jetzt die \text-Umgebung für alle Bezeichner in meinen Formeln verwenden. Wobei ich aktuell überlegen muss, ob ich dann \text oder \textit nehme, da Mengen und andere Mathemodule alle leicht kursiv gezeichnet sind und die Bezeichner dann nicht kursiv in den Formeln ständen.


gast

Re: Align komplett über Seitenrand

Beitrag von gast »

Eher \mathit als \textit, wenn es Variablen sein sollen.


DEVV
Forum-Century
Forum-Century
Beiträge: 117
Registriert: Sa 31. Okt 2015, 17:06

Re: Align komplett über Seitenrand

Beitrag von DEVV »

gast hat geschrieben:
Mo 30. Nov 2020, 17:43

Eher \mathit als \textit, wenn es Variablen sein sollen.

Gibt es da im Endprodukt einen Unterschied?


gast

Re: Align komplett über Seitenrand

Beitrag von gast »

Das hängt vom Font ab. Da aber LaTeX nun einmal zwischen Text- und Mathefonts unterscheidet, sollte man sich gar nicht erst auf Fontabhängigkeiten einlassen, sondern es gleich richtig lernen.


DEVV
Forum-Century
Forum-Century
Beiträge: 117
Registriert: Sa 31. Okt 2015, 17:06

Re: Align komplett über Seitenrand

Beitrag von DEVV »

Aber sollte dann \text{} in der Matheumgebung nicht auch die falsche Font verwenden?


gast

Re: Align komplett über Seitenrand

Beitrag von gast »

Wenn man damit Wörter=Text setzt, ist das genau richtig. Oben wurde doch explizit unterschieden.


Antworten