Номер уравнения для каждой строки матричного уравнения

Номер уравнения для каждой строки матричного уравнения

Можно ли присвоить номер уравнения каждой строке матричного уравнения?

введите описание изображения здесь

Как я могу иметь метки уравнений в духе номеров подуравнений, по одному для каждой строки матричного уравнения? Здесь я хотел бы иметь номера уравнений, такие как, например, (3.1a), (3.1b), (3.1c) (я не имею в виду метки строк/столбцов, как в рамочной матрице).

Спасибо!

решение1

Хм! Синтаксис LaTeX на самом деле не поддерживается, но

выход

\documentclass{article}

\usepackage{amsmath}

\newsavebox\labelbox

\begin{document}

\savebox\labelbox{$\begin{matrix}
\refstepcounter{equation}(\theequation)\label{aa}\\
\refstepcounter{equation}(\theequation)\label{bb}\\
\refstepcounter{equation}(\theequation)\label{cc}
\end{matrix}$}

\[
  \begin{bmatrix}
    H            & J^T       & -Z^{\frac12} \\
    J            & -\delta I &              \\
    -Z^{\frac12} &           & -X
  \end{bmatrix}
  \begin{bmatrix}
    r \\ s \\ t
  \end{bmatrix}
  =
  \lambda
  \begin{bmatrix}
    H &   &  \\
      & U &  \\
      &   & W
  \end{bmatrix}
  \begin{bmatrix}
    r \\ s \\ t
  \end{bmatrix}
\eqno
\usebox{\labelbox}
\]

[\ref{aa}]
[\ref{bb}]
[\ref{cc}]
\end{document}

решение2

Случайно я обнаружил простой и прямой способ. Если в реальной матрице есть какой-то большой столбец, то следует задать соответствующий фантом в матрице нумерации. Можно также добавить a \displaystyleв матрицу чисел уравнения, если это действительно необходимо.

\documentclass{article}
\usepackage{amsmath}
\makeatletter
\newcommand{\ltxlabel}{\ltx@label}
\makeatother
\begin{document}
\begin{align}\refstepcounter{equation}
  \begin{bmatrix}
    H            & J^T       & -Z^{\frac12} \\
    J            & -\delta I &              \\
    -Z^{\frac12} &           & -X
  \end{bmatrix}
  \begin{bmatrix}
    r \\ s \\ t
  \end{bmatrix}
  =
  \lambda
  \begin{bmatrix}
    H &   &  \\
    & U &  \\
    &   & W
  \end{bmatrix}
  \begin{bmatrix}
    r \\ s \\ t
  \end{bmatrix}
  \tag*{$\begin{matrix}
      \text{(\theequation a)}\\
      \text{(\theequation b)}\\
      \text{(\theequation c)}
    \end{matrix}$}
  \ltxlabel{eq:matrix}
\end{align}
The first row (\ref{eq:matrix}a) is the most important row of the matrix.
\end{document}

введите описание изображения здесь

решение3

Вот способ вручную избежать необходимости манипулировать счетчиком. Я создаю два \vboxes. Первый — массив пустых подуравнений, а второй — желаемая матрица в простой \[...\]конструкции. Затем я накладываю два \vboxes друг на друга. Вуаля!

Я даже настроил его таким образом, что регулировка вертикального пропуска базовой линии матрицы (поскольку я использовал TABstacks) автоматически отражается в вертикальном разделении нумерации уравнений (с помощью макроса \aligngap).

При желании можно заменить мои TABstacks на {bmatrix}es, и это все равно будет работать, хотя в этом случае определение \aligngapпотребует некоторой настройки.

\documentclass{article}
\usepackage{amsmath,tabstackengine,lipsum}
\newsavebox\boxA
\def\aligngap{\dimexpr\Lstackgap-15pt\relax}
\begin{document}
\lipsum[1]

{\setstackgap{L}{14pt}% SELECTABLE MATRIX ROW BASELINESKIP
\setbox0=\vbox{\begin{subequations}%
  \begin{align}\label{eq:A}\\[\aligngap]\label{eq:B} \\[\aligngap]\label{eq:C}\end{align}%
  \end{subequations}}
\savebox\boxA{\vbox{\[
  \setstacktabbedgap{5pt}
  \bracketMatrixstack{
    H            & J^T       & -Z^{\frac12} \\
    J            & -\delta I &              \\
    -Z^{\frac12} &           & -X}
  \bracketVectorstack{r \\ s \\ t}
  =
  \lambda
  \bracketMatrixstack{
    H &   &  \\
      & U &  \\
      &   & W}
  \bracketVectorstack{r \\ s \\ t}
\]}}
\noindent\stackengine{3.5pt}{\box0}{\usebox{\boxA}}{O}{c}{F}{F}{L}}

In equations \ref{eq:A}, \ref{eq:B}, and \ref{eq:C},
\lipsum[2]
\end{document}

введите описание изображения здесь

решение4

Ниже приведена возможная быстрая и грязная альтернатива, если кому-то нужны AMS- \tags. Недостаток в том, что требуется ручная регулировка высоты в первом matrix. Это решение не существовало бы без решения Дэвида. Спасибо, Дэвид! Мне это тоже было нужно.

\documentclass{article}
\usepackage{amsmath}
\begin{document}
\par\noindent\begin{minipage}[c][][c]{0.9\textwidth}
  \begin{align*}
  \begin{matrix}
    1\cdot x_1&+&2\cdot x_2&+&3\cdot x_3&=&4\\[3pt]
    5\cdot x_1&+&6\cdot x_2&+&7\cdot x_3&=&8\\[3pt]
    9\cdot x_1&+&10\cdot x_2&+&11\cdot x_4&=&12
  \end{matrix}
  \end{align*}
\end{minipage}\begin{minipage}[c][][c]{0.1\textwidth}
  \begin{align}\refstepcounter{equation}
    \tag{\theequation a}\label{eq:1a}\\[0pt]
    \tag{\theequation b}\label{eq:1b}\\[0pt]
    \tag{\theequation c}\label{eq:1c}    
  \end{align}
\end{minipage}
\end{document}

введите описание изображения здесь

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