如何对齐多行方程和其后的另一个方程的等号?

如何对齐多行方程和其后的另一个方程的等号?
\documentclass[11pt,a4paper]{article}
\usepackage{blindtext}
\usepackage{amsmath}

\begin{document}
\begin{multline*}
\epsilon(r_1,...,r_n)\\= 
 sgn\prod_{\substack{1 \leq i<j \leq k}}(r_j-r_i)\times
 sgn\prod_{\substack{k+1 \leq i<j \leq n}}(r_i-r_j)\times
 sgn\prod_{\substack{1 \leq i \leq k\\
        k+1\leq j \leq n}}(r_i-r_j).
\end{multline*}

\begin{flalign*}
=&\epsilon(r_1,...,r_k)\times
\epsilon(r_k+1,...,r_n)\times
(-1)^{v_1+...+v_k}
&\end{flalign*}
\end{document}

答案1

您可以使用单一align*环境来排版整个表达式。

对您的 LaTeX 代码的一些补充评论。(i)\substack前两个\prod指令后的说明不执行任何操作,应将其省略。(ii)您可能希望将三个\prod指令的下标项括起来,\mathclap以使第一行的材料看起来美观紧凑。(iii)不要输入...;而是输入\dots并让 LaTeX 排版适合印刷的省略号。(iv)由于“sgn”似乎是一个数学运算符,因此它可能应该以罗马(直立)字体形状排版;我建议使用宏声明数学运算符\DeclareMathOperator

在此处输入图片描述

\documentclass[11pt,a4paper]{article}
\usepackage{mathtools}
\DeclareMathOperator{\sgn}{sgn}
\begin{document}
\begin{align*}
\epsilon(r_1,\dots,r_n)
&=
 \sgn\prod_{\mathclap{1 \leq i<j \leq k}} (r_j-r_i)\times
 \sgn\prod_{\mathclap{k+1 \leq i<j \leq n}} (r_i-r_j)\times
 \sgn\prod_{\mathclap{\substack{1 \leq i \leq k\\ k+1\leq j \leq n}}} (r_i-r_j)\\
&=
 \epsilon(r_1,\dots,r_k)\times \epsilon(r_k+1,\dots,r_n)\times (-1)^{v_1+\dots+v_k}
\end{align*}
\end{document}

答案2

您可以添加所需宽度的空白,以便在不同的环境中对齐两个方程式。在这种情况下,a\quad会产生一个埃姆空格(宽度为您正在使用的字体大小和粗细的大写字母 em 的空格);这对于您的情况似乎足够了。

来自您自己的MWE:

\documentclass[11pt,a4paper]{article}
\usepackage{blindtext}
\usepackage{amsmath}

\begin{document}
\begin{multline*}
\epsilon(r_1,...,r_n)\\= 
 sgn\prod_{\substack{1 \leq i<j \leq k}}(r_j-r_i)\times
 sgn\prod_{\substack{k+1 \leq i<j \leq n}}(r_i-r_j)\times
 sgn\prod_{\substack{1 \leq i \leq k\\
        k+1\leq j \leq n}}(r_i-r_j).
\end{multline*}

\begin{flalign*}
\quad =&\epsilon(r_1,...,r_k)\times
\epsilon(r_k+1,...,r_n)\times
(-1)^{v_1+...+v_k} &
\end{flalign*}
\end{document}

结果

相关内容