我正在编写一个优化 MILP 模型,我希望对于每个约束,约束本身都居中,而约束的范围(例如)与\forall i \in I
不同行中的文本右侧对齐。我读了很多,但没有得到我想要的结果。我得到的最接近的答案是使用multline
环境。但您可能知道,等式的第一部分与左侧对齐,而不是我想要的居中。此外,我希望方程的数字位于两行的中间。期望的结果将是这样的:
\begin{multline}
Z_{jjtmo}\geq Y_{jtm(o-1)}+Y_{jtmo}\\
\quad+\sum_{i',i''=1}^{N_{I}}\sum_{(m',o')\not=(m,o)}\gamma_{i',i''tlm'o'mo}+\sum_{i=1}^{N_{I}}\alpha_{itlmo}-2\\ \quad\forall t,l,(m,o)\in\Lambda(l,0,0),j\in\theta_{m}
\end{multline}
非常感谢您的合作,上帝保佑您!
答案1
两种方式:要么你认为主表达式在第一行,方程编号将在第一行,使用环境flalign
。你可以有多个方程与对齐。
或者您希望方程编号位于第一行和第二行之间。您可以使用环境实现这一点gather/gathered
,但所有方程(域除外)都将居中。以下是两种解决方案的示例:
\documentclass{article}
\usepackage[showframe]{geometry} %
\usepackage{mathtools}
\newcommand\domain[1]{\ensuremath{\makebox[0.9 \displaywidth][r]{\displaystyle$#1$}}}
\begin{document}
\begin{flalign}
& & & \sum_{l,m,o} x_{itlmo} - I_{i(t-1)} + H_i <80000 \\[-1ex]
& & & & & \mathllap{\forall t \in T, I \in I}\notag
\end{flalign}
\bigskip
\begin{gather}
\begin{gathered}
\sum_{l,m,o} x_{itlmo} - I_{i(t-1)} + H_i <80000 \\[-1ex]
\makebox[0.9\displaywidth][r]{$ \forall t \in T, I \in I $}
\end{gathered}\\
\begin{gathered}a + b + c = u + v + w\\
\makebox[0.9 \displaywidth][r]{$ \forall a, b, c \in \mathbf R, u, v, w \in \mathbf C$}
\end{gathered}
\end{gather}
\end{document}