在一行内对齐方程

在一行内对齐方程

我想使用 \begin{align} 将文档中一行内的多个方程式(其中一个相当长)对齐。但是使用“&”作为间距会导致空格过长,并且某些部分的右对齐方式很奇怪。这导致文档中的方程式枚举被放置在下一个空行中。我正在使用带有 fleqn 选项的 amsmath。

我希望我的问题通过我的代码变得更加清晰:提前谢谢大家。

\documentclass[]{scrbook}
\usepackage[fleqn]{amsmath}
\usepackage{amssymb}

\begin{document}
{\setlength{\mathindent}{0cm}

\begin{subequations}\label{eq:MINLP}

   \begin{align}
     \mathrm{min} \quad &\sum_{j=1}^{NE}(y_{j}-V_{1,j})^{2} 
     \tag{\ref{eq:MINLP}}\\

     \mathrm{s.t.} \quad & f_{j,k}(V_{n,j},V_{2n,j},V_{2n+1,j}) \le
     M_{n,j,k}^{up}(1-\delta_{n,k}) && n \,  \epsilon \, \mathcal{N}_{b},\,
     k \,  \epsilon \,  \mathcal{F},\, j \,  \epsilon  \, \mathcal{E} \\

     & f_{j,k}(V_{n,j},V_{2n,j},V_{2n+1,j}) \ge M_{n,j,k}^{lo}
    (1-\delta_{n,k}) && n=a+b \\

   \end{align}
\end{subequations}}
\end{document}

我想将以“n ...”开头的部分进一步向左推但仍保持对齐,以便方程式枚举 3.1a 位于同一行。

将右侧公式进一步向左对齐,例如 3.1a 在同一行

答案1

发布的代码没有显示的间距,但由于空行而产生错误,此版本运行时没有错误

在此处输入图片描述

\documentclass[]{scrbook}
\usepackage[fleqn]{amsmath}
\usepackage{amssymb}

\begin{document}
%\setlength{\mathindent}{0cm}

\begin{subequations}\label{eq:MINLP}

   \begin{align}
     \min &\sum_{j=1}^{NE}(y_{j}-V_{1,j})^{2} 
     \tag{\ref{eq:MINLP}}\\
     \mathrm{s.t.} \quad & f_{j,k}(V_{n,j},V_{2n,j},V_{2n+1,j}) \le
     M_{n,j,k}^{\mathrm{up}}(1-\delta_{n,k}) && n \in \mathcal{N}_{b},\,
     k \in  \mathcal{F},\, j \in \mathcal{E} \\
     & f_{j,k}(V_{n,j},V_{2n,j},V_{2n+1,j}) \ge M_{n,j,k}^{\mathrm{lo}}
    (1-\delta_{n,k}) && n=a+b 
   \end{align}
\end{subequations}
\end{document}

相关内容