Как выровнять две разделенные среды по знакам равенства?

Как выровнять две разделенные среды по знакам равенства?
\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содержит два явных примера множественности splitsвнутри align. Чего вы не можете сделать, так это заключить такую split​​конструкцию внутрь, например, \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

Вам нужно alignedвместо split:

\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среды.

Связанный контент