对齐环境中的多个标签

对齐环境中的多个标签

我想通过以下方式格式化优化问题

\documentclass{article}
\usepackage{amsmath}

\begin{document}

We want to label each line separately. The inserted text and formulas
have to be aligned like in this example:
\begin{equation}
\begin{aligned}
\label{eq:3}
& \underset{X}{\text{minimize}} & &  \mathrm{trace}(X) \\
& \text{subject to} &&  X_{ij} = M_{ij}, \; (i,j) \in \Omega, \\
& &&  X \succeq 0. 
\end{aligned}
\end{equation}

\end{document}

在此处输入图片描述

(已在如何用(P)这样的标签来标记优化问题?)。

环境实现了插入的文本和公式的理想对齐aligned。但是,我想分别标记每一行。通过\label{...}在每一行放置

\begin{equation}
\begin{aligned}
& \underset{X}{\text{minimize}} & &  \mathrm{trace}(X) \label{eq:6}\\
& \text{subject to} &&  X_{ij} = M_{ij}, \; (i,j) \in \Omega, \label{eq:7} \\
& &&  X \succeq 0. \label{eq:9} 
\end{aligned}
\end{equation}

我收到错误消息:“包 amsmath 错误:多个 \label:标签‘eq:4’将丢失。”

我怎样才能单独标记每一行?

答案1

环境中只能有一个标签equation。但是,align环境中可以有多个标签。在您的案例中,与许多其他案例一样,使用 比在 内align使用 更可取。此外,环境非常适合解决您的问题。alignedequationsubequations

附加说明:在数学模式下,最好在\,标点符号(例如句号和逗号)前加一个细空格(),以便读者不会将它们混淆为它们前面的数学量的一部分。

在此处输入图片描述

\documentclass{article}
\usepackage{amsmath}

\begin{document}

We want to label each line separately. The inserted text and formulas
have to be aligned like in this example:
\begin{subequations}
\label{eq:optim}
\begin{align}
    \underset{X}{\text{minimize}}
        & \quad \mathrm{trace}(X)   \label{eq:cost}\\
    \text{subject to} 
        & \quad X_{ij} = M_{ij}\,, \; (i,j) \in \Omega\,, \label{eq:const1}\\
        & \quad X \succeq 0 \,. \label{eq:const2}
\end{align}
\end{subequations}

Equation \ref{eq:cost} is the cost and Equations \ref{eq:const1} and \ref{eq:const2}
are the constraints of optimisation problem \ref{eq:optim}.

\end{document}

相关内容