将嵌套在子方程环境中的 alignat 环境中的一些线居中

将嵌套在子方程环境中的 alignat 环境中的一些线居中

为了排版数学程序,我使用 subequations 环境来对方程进行编号。使用 alignat 环境来对齐限制(参见 MWE1)。

我想要实现的是,目标方程应该以在方程环境中的中心位置为中心,但不影响限制方程的对齐(所需对齐参见 MWE2)。

MWE2 的问题在于目标方程和直线之间的垂直间距错误s.t.,以及目标方程的编号错误,而后者应该与 MWE1 中的相同。

无意义的数学程序作为 MWE1:

\documentclass{article}

\usepackage{mathtools}


\begin{document}
\begin{subequations}
\begin{alignat}{3}
    \shortintertext{Objective Function:}
                                                    \min x                                              \\
    \shortintertext{s.t.:}
                                                    &   \sum_{p \in P} (x_p + x_p) x_{a, m, l}                                      && \leq M       & \qquad &  , \forall p \in P           \\                                  
                                                    &   \sum_{q \in Q} x_q x_{a, m, l}                                      && \leq M       & \qquad &  , \forall q \in Q
\end{alignat}
\end{subequations}

\end{document}

无意义的数学程序作为 MWE2:

\documentclass{article}

\usepackage{mathtools}


\begin{document}
\noindent Objective Function:
\begin{equation}
\min x      
\end{equation}
\begin{subequations}
\begin{alignat}{3}
    \shortintertext{s.t.:}
                                                    &   \sum_{p \in P} (x_p + x_p) x_{a, m, l}                                      && \leq M       & \qquad &  , \forall p \in P           \\                                  
                                                    &   \sum_{q \in Q} x_q x_{a, m, l}                                      && \leq M       & \qquad &  , \forall q \in Q
\end{alignat}
\end{subequations}

\end{document}

答案1

最简单的方法是使用gatheralignat,删除垂直空格。minipage是为了避免分页;gather而不是equation确保\abovedisplayskip无论如何都会使用 (并且永远不会\abovedisplayshortskip)。

\documentclass{article}

\usepackage{mathtools}

\begin{document}
\begin{subequations}
\noindent\begin{minipage}{\textwidth}
Objective Function:
\begin{gather}
\min x
\end{gather}
\vspace{-\belowdisplayskip}
\vspace{-\abovedisplayskip}
\begin{alignat}{3}
\shortintertext{s.t.:}
   & \sum_{p \in P} (x_p + x_p) x_{a, m, l} && \leq M & \qquad & , \forall p \in P \\
   & \sum_{q \in Q} x_q x_{a, m, l}         && \leq M & \qquad & , \forall q \in Q
\end{alignat}
\end{minipage}
\end{subequations}

\end{document}

在此处输入图片描述

相关内容