Wie werden Kommentare einer Gleichung rechtsbündig ausgerichtet?

Wie werden Kommentare einer Gleichung rechtsbündig ausgerichtet?

Ich möchte die Kommentare jeder Zeile rechtsbündig ausrichten (etwa \raggedleft?). Ich verwende \ \ \ \, was nicht gut ist. Bitte schlagen Sie mir eine bessere Möglichkeit vor, dies zu schreiben. Soll ich eine Aufteilung oder etwas anderes verwenden?

\begin{align*}
        & \ \ \ Opt_\rho (i,j,M)\\
        &= \min_{\kappa \in Seg(i,j)} (Cost(\rho, \kappa, M))\\  
        &  \ \ \ \ \ \ \ \ \ \text{[Comment for the line]}\\
        &= \min_{1\leq l\leq i} (\min_{\kappa' \in Seg(l,j)} (Cost(\rho,\kappa',M)))\\ 
        & \ \ \ \ \ \ \ \ \ \text{[Comment for another line]} \\
        &= \min_{1\leq l\leq i} (\min_{\kappa''[l:i] \in Seg(l,j)} (\max_{\iota'' \in 
            \kappa''[l:i]} (||Cost(\rho, \iota'')-M||)))\\ 
        & \ \ \ \ \ \ \ \ \ \text{[More Comments]} \\
        &= \min_{1\leq l\leq i} (\min_{\kappa''[l:i] \in Seg(l,j)} (\max (\max_{\iota'' \in \kappa''} (||Cost(\rho, \iota'')-M||)), &\\
        & \ \ \ ||Cost(\rho,[l:i])-M||))\\ 
        & \ \ \ \ \ \ \ \ \ \text{[This is a long long long long comment]} \\
        &= \min_{1\leq l\leq i} (\max (\min_{\kappa'' \in Seg(l,j-1)} (\max_{\iota'' \in \kappa''} (||Cost(\rho, \iota'')-M||))), &\\
        & \ \ \ ||Cost(\rho,[l:i])-M||)\\ 
        & \ \ \ \ \ \ \ \ \ \text{[Finally this comment]} \\
\end{align*}

Antwort1

Mein erster Vorschlag, ohne mehr zu wissen, wäre, eine flalign*Umgebung zu verwenden, die die maximal verfügbare Breite nutzt, und die Kommentare als rechtsbündigen Teil der nächsten Ausrichtungsgruppe einzufügen, mehr oder weniger so:

\documentclass[12pt]{article}
\usepackage{amsmath}
\DeclareMathOperator{\Opt}{Opt}
\DeclareMathOperator{\Cost}{Cost}
\DeclareMathOperator{\Seg}{Seg}
\usepackage{mathtools}
\begin{document}


\begin{flalign*}
        &\phantom{=\ } \Opt_\rho (i,j,M)\\
        &= \min_{\kappa \in \Seg(i,j)} (\Cost(\rho, \kappa, M)) &   \text{[Comment for the line]}\\
        &= \min_{1\leq l\leq i} (\min_{\kappa' \in \Seg(l,j)} (\Cost(\rho,\kappa',M))) & \text{[Comment for another line]} \\
        &= \min_{1\leq l\leq i} (\min_{\kappa''[l:i] \in \Seg(l,j)} (\max_{\iota'' \in 
            \kappa''[l:i]} (||\Cost(\rho, \iota'')-M||))) & \text{[More Comments]} \\
        &= \min_{1\leq l\leq i} (\min_{\kappa''[l:i] \in \Seg(l,j)} (\max (\max_{\iota'' \in \kappa''} (||\Cost(\rho, \iota'')-M||)), &\\
        &\phantom{=\ } ||\Cost(\rho,[l:i])-M||)) & \mathllap{\text{[This is a long long long long comment]}} \\
        &= \min_{1\leq l\leq i} (\max (\min_{\kappa'' \in \Seg(l,j-1)} (\max_{\iota'' \in \kappa''} (||\Cost(\rho, \iota'')-M||))), &\\
        &\phantom{=\ } ||\Cost(\rho,[l:i])-M||) & \text{[Finally this comment]} \\
\end{flalign*}

\end{document}

ausgerichtete Gleichungen mit Kommentaren

Ein paar zusätzliche Dinge: Der wirklich lange Kommentar hätte die „Spalte“ für die Notizen zu breit gemacht, also habe ich \mathllapihn Teile der Gleichung horizontal überlappen lassen; zum Glück ist die Zeile, auf die er angewendet wird, nicht so lang. Wenn das der Fall wäre, müssten Sie diesen Kommentar wahrscheinlich in eine eigene Zeile setzen.

Außerdem schlage ich vor, es \DeclareMathOperatorfür Dinge wie „Kosten“ und „Opt“ zu verwenden, da vollständige „Wörter“ im Mathematikmodus nicht richtig aussehen, wenn sie nicht anders behandelt werden.

Wie Zarko in den Kommentaren erwähnt hat, funktioniert die Lösung bei unterschiedlich großen Seiten unterschiedlich gut. Daher kann es sein, dass dies in Ihrem tatsächlichen Anwendungsfall nicht ohne Anpassungen funktioniert.

Antwort2

Ich schlage eine Lösung basierend auf vor \intertext, wobei der Inhalt linksbündig ausgerichtet ist:

    \documentclass{article}
    \usepackage{amsmath}
    \DeclareMathOperator{\Cost}{Cost}
    \DeclareMathOperator{\Opt}{Opt}
    \DeclareMathOperator{\Seg}{Seg}

    \begin{document}

    \begin{align*}
            & \Opt_\rho (i,j,M)\\
             & = \min_{\kappa \in \Seg(i,j)} (\Cost(\rho, \kappa, M)) \\[-3ex]
              \intertext{\raggedleft [From Eq. \ref{eq:opt}]}
            & = \min_{1\leq l\leq i} (\min_{\kappa' \in \Seg(l,j)} (\Cost(\rho,\kappa',M))) \\[-3ex]
            \intertext{[\raggedleft From Proposition \ref{prop:minmin}]}
            &= \min_{1\leq l\leq i} (\min_{\kappa''[l:i] \in \Seg(l,j)} (\max_{\iota'' \in
                \kappa''[l:i]} (\|\Cost(\rho, \iota'')-M\|))) \\[-2.5ex]
            \intertext{\raggedleft [Definition of $\Cost(\rho, \kappa''[l:i],M)$]}
            & = \min_{1\leq l\leq i} (\min_{\kappa''[l:i] \in \Seg(l,j)} (\max (\max_{\iota'' \in \kappa''} (\|\Cost(\rho, \iota'')-M\|)), \|\Cost(\rho,[l:i])-M\|)) \\[-2.5ex]
            \intertext{\raggedleft [Separating the last segment $[l:i]$]}
            & = \min_{1\leq l\leq i} (\max (\min_{\kappa'' \in \Seg(l,j-1)} (\max_{\iota'' \in \kappa''} (\|\Cost(\rho,
            \iota'')-M\|))), \|\Cost(\rho,[l:i])-M \|) \\[-2.5ex]
            \intertext{\raggedleft [From Proposition \ref{prop:minmax}]} \\
    \end{align*}

    \end{document} 

Bildbeschreibung hier eingeben

Antwort3

Mit Verwendung von mathtoolsund linegoalPaketen. Da Ihre Gleichung ziemlich umfangreich ist, füge ich geometryein Paket zur Größenerhöhung hinzu \textwidth.

Für Gleichungen werden Umgebungen verwendet align*. splitLange Kommentare werden in folgendem Format geschrieben \parbox:

\documentclass{article}
\usepackage{geometry}
\usepackage{mathtools}
\DeclareMathOperator{\cost}{Cost}
\DeclareMathOperator{\opt}{Opt}
\DeclareMathOperator{\seg}{Seg}
\DeclarePairedDelimiterX{\norm}[1]\lVert\rVert{#1}
\usepackage{linegoal}

\begin{document}
\begin{align*}
    \MoveEqLeft
\opt_\rho (i,j,M)
    & = \min_{\kappa \in\seg(i,j)} (\cost(\rho, \kappa, M)) 
                        &&  \text{[From Eq. \ref{eq:opt}]}                          \\
    & = \min_{1\leq l\leq i} (\min_{\kappa' \in \seg(l,j)} (\cost(\rho,\kappa',M)))
                        &&  \text{[From Proposition \ref{prop:minmin}]}             \\
    & = \min_{1\leq l\leq i} (\min_{\kappa''[l:i] \in Seg(l,j)} 
            (\max_{\iota'' \in \kappa''[l:i]} (\norm{\cost(\rho, \iota'')-M} )))
                        &&  \text{[Definition of $\cost(\rho, \kappa''[l:i],M)$]}    \\
    \begin{split}
     & = \min_{1\leq l\leq i} (\max (\min_{\kappa'' \in Seg(l,j-1)}  
            (\max_{\iota'' \in \kappa''}\\
     &\qquad    (\norm{\cost(\rho, \iota'')-M} ))), \norm{\cost(\rho,[l:i])-M})
        \end{split}  &&  \parbox{\linegoal}{\raggedright
                                            [This is a very, very, very long comment in two lines]}
\end{align*}
\end{document}

Bildbeschreibung hier eingeben

verwandte Informationen