是否可以在“align”环境内的“split”环境中将第二行右对齐?

是否可以在“align”环境内的“split”环境中将第二行右对齐?

当将长方程拆分为两行时,允许multiline这样做而无需添加虚假的方程编号,也无需手动放置\notag标签。它还会右对齐第二行。

当需要在环境内部进行这样的换行时align,可以使用嵌套split环境。但是,当使用它在等式的右侧引入换行时,它将左对齐。

手动将方程与\phantom{}\hspace{}\qquad结构对齐是可行的,但会导致源代码的可读性和可维护性降低,所以我想至少在最终编辑之前避免这样做。

有没有办法让它右对齐?split这个用例的环境是否正确?

平均能量损失

在此处输入图片描述

\documentclass[12pt]{article}
\usepackage{amsmath}
\textwidth = 10cm
\begin{document}
\begin{align}
  The =& First Equation Is Short Enough For One Line
  \\
  \begin{split}
    The =& Second Equation Is So Long That Splitting It
    \\   & Over Two Lines Is Desirable
  \end{split}
\end{align}
\begin{multline}
  But = How Do I get The Second Line To Be
  \\    Right-Aligned Like For A Multiline?
\end{multline}
\end{document}

来自真实文档的示例

在此处输入图片描述

  \documentclass[12pt]{article}
  \usepackage{amsmath}
  \usepackage{fouriernc}
  \begin{document}

  \begin{subequations}
  \begin{align}
  \Delta_1B(t)
  &=
  \sum_{\alpha}
  F_\alpha e^{-i\omega_\alpha t}
  \sum_{ij}
  -\frac{
    f_{ij} B_{ij} A^\alpha_{ji}
  }{
    \hbar(\omega_{ij}+\overline\omega_\alpha)
  }
  \\
  \begin{split}
  \Delta_2 B(t)
  &=
  \sum_{\alpha\beta} 
  F_\alpha F_\beta e^{-i(\omega_\alpha+\omega_\beta)t}
  \sum_{ijk}
  \Bigg(
  \frac{
    f_{ik} B_{ij} A^\alpha_{jk} A^{\beta}_{ki}
  }{
    \hbar^2
    (\omega_{ki}-\overline\omega_\beta)
    (\omega_{ji}-\overline\omega_\alpha-\overline\omega_\beta)
  }
  \\&
  +
  \frac{
    f_{jk} B_{ij} A^\beta_{jk} A^{\alpha}_{ki}
  }{
    \hbar^2
    (\omega_{jk}-\overline\omega_{\beta})
    (\omega_{ji}-\overline\omega_\alpha-\overline\omega_\beta)
  }
  \Bigg)
  \end{split}
  \end{align}
  \end{subequations}

  \end{document}

答案1

我可以建议一个相当 hack 的方法来使用multlined这个mathtools包:

\documentclass[12pt]{article}
\usepackage{amsmath,mathtools}
\usepackage{fouriernc}
\begin{document}

\begin{subequations}
\begin{align}
\Delta_1B(t)
&=
\sum_{\alpha}
F_\alpha e^{-i\omega_\alpha t}
\sum_{ij}
-\frac{
  f_{ij} B_{ij} A^\alpha_{ji}
}{
  \hbar(\omega_{ij}+\overline\omega_\alpha)
}
\\
&\begin{multlined}
\mathllap{\Delta_2 B(t)}
=
\sum_{\alpha\beta} 
F_\alpha F_\beta e^{-i(\omega_\alpha+\omega_\beta)t}
\sum_{ijk}
\Bigg(
\frac{
  f_{ik} B_{ij} A^\alpha_{jk} A^{\beta}_{ki}
}{
  \hbar^2
  (\omega_{ki}-\overline\omega_\beta)
  (\omega_{ji}-\overline\omega_\alpha-\overline\omega_\beta)
}
\\
+
\frac{
  f_{jk} B_{ij} A^\beta_{jk} A^{\alpha}_{ki}
}{
  \hbar^2
  (\omega_{jk}-\overline\omega_{\beta})
  (\omega_{ji}-\overline\omega_\alpha-\overline\omega_\beta)
}
\Bigg)
\end{multlined}
\end{align}
\end{subequations}

\end{document}

请注意,您不能将 放在&multlined,因此为了在等号上对齐,您必须假装 的\Delta_2 B(t)宽度为零。因此\mathllap(再次,来自mathtools)。

我认为结果很好:

在此处输入图片描述

答案2

利用左边两个边具有相同宽度的事实,你可以将aligned第二个等式用于:

\documentclass[12pt]{article}
\usepackage{amsmath}
\usepackage{fouriernc}
\begin{document}

\begin{subequations}
\begin{align}
&\Delta_1B(t)
=
\sum_{\alpha}
F_\alpha e^{-i\omega_\alpha t}
\sum_{ij}
-\frac{
  f_{ij} B_{ij} A^\alpha_{ji}
}{
  \hbar(\omega_{ij}+\overline\omega_\alpha)
}
\\
&\begin{aligned}
\Delta_2 B(t)
=
\sum_{\alpha\beta} 
F_\alpha F_\beta e^{-i(\omega_\alpha+\omega_\beta)t}
\sum_{ijk}
\Biggl(
\frac{
  f_{ik} B_{ij} A^\alpha_{jk} A^{\beta}_{ki}
}{
  \hbar^2
  (\omega_{ki}-\overline\omega_\beta)
  (\omega_{ji}-\overline\omega_\alpha-\overline\omega_\beta)
}
\\
+
\frac{
  f_{jk} B_{ij} A^\beta_{jk} A^{\alpha}_{ki}
}{
  \hbar^2
  (\omega_{jk}-\overline\omega_{\beta})
  (\omega_{ji}-\overline\omega_\alpha-\overline\omega_\beta)
}
\Biggr)
\end{aligned}
\end{align}
\end{subequations}

\end{document}

请注意,这\Bigg不是正确的命令;您应该区分\Biggl\Biggr,以确保间距正确。

在此处输入图片描述

相关内容