![使用子方程式時方程式編號與公式重疊](https://rvso.com/image/305899/%E4%BD%BF%E7%94%A8%E5%AD%90%E6%96%B9%E7%A8%8B%E5%BC%8F%E6%99%82%E6%96%B9%E7%A8%8B%E5%BC%8F%E7%B7%A8%E8%99%9F%E8%88%87%E5%85%AC%E5%BC%8F%E9%87%8D%E7%96%8A.png)
我正在嘗試使用 amsmath 在 LaTeX 中創建一個漂亮的優化問題。這是一個 MWE:
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\begin{subequations}
\begin{alignat}{2}
\text{maximize} \quad & \rlap{some looooooooooooooong objective function of $x,u$ } \\
\text{with} \quad & \text{constraint 1} \quad & k=0,\ldots N{-}1 \\
& \text{constraint 2} & k=0,\ldots N{-}1
\end{alignat}
\end{subequations}
\end{document}
我需要\rlap
'k=0...' 需要垂直對齊,並且我不想在目標函數中引入對齊字元。
正如您所看到的,方程式編號 1a 與第一行中的公式重疊。有沒有一種乾淨的方法來防止這種情況?
答案1
我相信這是一個獨立於兩個約束是否具有相同大小的解決方案:
\begin{subequations}
\begin{alignat}{3}
\text{maximize} \quad & \text{some looooooo}&&\text{oooooooong objective function of $x,u$} \\
\text{with} \quad & \text{constraint 1} && k=0,\ldots N{-}1 \\
& \text{constraint 2} && k=0,\ldots N{-}1
\end{alignat}
\end{subequations}
輸出:
答案2
這是另一個不使用 的選項\rlap
,只要長度為約束1是相同於約束2。
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\begin{subequations}
\begin{alignat}{2}
\text{maximize} \quad & \text{some looooooooooooooong objective function of $x,u$} \\
\text{with} \quad & \text{constraint 1} \quad k=0,\ldots N{-}1 \\
& \text{constraint 2} \quad k=0,\ldots N{-}1
\end{alignat}
\end{subequations}
\end{document}
輸出如下圖所示: