如何在等号处对齐两个分割环境?

如何在等号处对齐两个分割环境?
\documentclass{scrartcl}
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[english]{babel}
\usepackage{amsmath,  amsthm,  amssymb}
\usepackage{mathtools}

\begin{document}
    \begin{align}
        \begin{split}
            \label{eq:lines}
            Q_{1x} &= C_{1x} + \mu_1 \vec{h_{1x}} \\
            Q_{1y} &= C_{1y} + \mu_1 \vec{h_{1y}} \\
            \vdots \\
            Q_{3z} &= C_{3z} + \mu_3 \vec{h_{3z}}
        \end{split} \\
        \begin{split}
            \label{eq:distances}
            \overline{Q_1 Q_2}^2 &= (Q_{1x}-Q_{2x})^2 + (Q_{1y}-Q_{2y})^2 + (Q_{1z}-Q_{2z})^2\\
            \vdots
        \end{split}
    \end{align}
\end{document}

我想以相同的方式沿“=”符号对齐两个分割环境中的方程式。有什么想法吗?

答案1

您需要做的就是记住&在您的所有行上放置对齐符号splits(您的代码中没有对齐\vdots符号)。最小化您的示例可得出:

\documentclass{scrartcl}

\usepackage{amsmath}

\begin{document}

\begin{align}
   \label{eq:lines}
   \begin{split}       
      Q_{1x} &= C_{1x} + \mu_1 \vec{h_{1x}} \\
      Q_{1y} &= C_{1y} + \mu_1 \vec{h_{1y}} \\
      \vdots& \\
      Q_{3z} &= C_{3z} + \mu_3 \vec{h_{3z}}
   \end{split} \\
   \label{eq:distances}
   \begin{split}        
      \overline{Q_1 Q_2}^2 &= (Q_{1x}-Q_{2x})^2 + (Q_{1y}-Q_{2y})^2 
                                      + (Q_{1z}-Q_{2z})^2\\
      \vdots&
   \end{split}
  \end{align}
\end{document}

示例输出

现在您需要决定如何放置\vdots...

讨论

文档amsmath.pdf对这种结构不太清楚

分割结构应该构成封闭结构的整个主体,除了 \label 等不产生可见材料的命令之外。

在“使用对齐拆分方程”部分中,与下面的描述相反gather

集合中的任何方程都可以由 \begin{split} ... \end{split} 结构组成......

但是,随附文件包含内testmath.pdf多个 的两个明确示例。您不能做的是将这样的构造封闭在 (例如构造)内。 splitsalignsplit\left ... \right

请注意,该包包含breqn允许各个块之间进行复杂对齐的代码,但它会改变数学模式下的基本结构,因此存在许多兼容性问题。

答案2

好吧,我不得不承认,我不知道为什么这样做有效,只是想添加一个使用\vdotswithin{}from 的示例mathtools,然后突然=将 对齐。我还将 更改\vec为仅覆盖h

\documentclass{scrartcl}
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[english]{babel}
\usepackage{amsmath,  amsthm,  amssymb,mathtools}
\usepackage{mathtools}

\begin{document}
    \begin{align}
        \begin{split}
            \label{eq:lines}
            Q_{1x} &= C_{1x} + \mu_1 \vec{h}_{1x} \\
            Q_{1y} &= C_{1y} + \mu_1 \vec{h}_{1y} \\
            &\vdotswithin{=} \\
            Q_{3z} &= C_{3z} + \mu_3 \vec{h}_{3z}
        \end{split} \\
        \begin{split}
            \label{eq:distances}
            \overline{Q_1 Q_2}^2 
            &= (Q_{1x}-Q_{2x})^2 + (Q_{1y}-Q_{2y})^2 + (Q_{1z}-Q_{2z})^2\\
            &\vdotswithin{=}
          \end{split}
    \end{align}
\end{document}

图像

答案3

你需要的alignedsplit

\documentclass{scrartcl}
\usepackage{amsmath}

\newlength{\templen}

\begin{document}

\settowidth{\templen}{$\displaystyle\overline{Q_1 Q_2}^2$}
\begin{align}
\label{eq:lines}
&\begin{aligned}
\makebox[\templen][r]{$\displaystyle Q_{1x}$} &= C_{1x} + \mu_1 \vec{h_{1x}} \\
Q_{1y} &= C_{1y} + \mu_1 \vec{h_{1y}} \\
\vdots \\
Q_{3z} &= C_{3z} + \mu_3 \vec{h_{3z}}
\end{aligned} \\
\label{eq:distances}
&\begin{aligned}
\overline{Q_1 Q_2}^2 &= (Q_{1x}-Q_{2x})^2 + (Q_{1y}-Q_{2y})^2 + (Q_{1z}-Q_{2z})^2\\
\vdots
\end{aligned}
\end{align}
\end{document}

宽度\templen可以随意重复使用。必须在align环境之外设置。

相关内容