정렬 환경을 사용하여 방정식을 수직으로 정렬

정렬 환경을 사용하여 방정식을 수직으로 정렬

저는 지금 텐서에 관해 글을 쓰고 있는데 두 상태를 하나의 텐서로 병합하는 방법을 설명해야 합니다. 지금 당장 다음과 같은 것이 있습니다. 여기에 이미지 설명을 입력하세요 다음 코드를 사용하세요.

\begin{align}
    & r \begin{bmatrix} 1 \\ 0 \end{bmatrix} \otimes \begin{bmatrix} 1 \\ 0 \end{bmatrix} + & s \begin{bmatrix} 1 \\ 0 \end{bmatrix} \otimes \begin{bmatrix} 0 \\ 1 \end{bmatrix} + & t \begin{bmatrix} 0 \\ 1 \end{bmatrix} \otimes \begin{bmatrix} 1 \\ 0 \end{bmatrix} + & u \begin{bmatrix} 0 \\ 1 \end{bmatrix} \otimes \begin{bmatrix} 0 \\ 1 \end{bmatrix} \\
    \text{with the basis} & \biggr(\begin{bmatrix} 1 \\ 0 \end{bmatrix} \otimes \begin{bmatrix} 1 \\ 0 \end{bmatrix}, & \begin{bmatrix} 1 \\ 0 \end{bmatrix} \otimes \begin{bmatrix} 0 \\ 1 \end{bmatrix}, & \begin{bmatrix} 0 \\ 1 \end{bmatrix} \otimes \begin{bmatrix} 1 \\ 0 \end{bmatrix}, & \begin{bmatrix} 0 \\ 1 \end{bmatrix} \otimes \begin{bmatrix} 0 \\ 1 \end{bmatrix}\biggr) \\
    \text{can be written as} & \Biggr(\begin{bmatrix} 1 \\ 0 \\ 0 \\ 0 \end{bmatrix}, & \begin{bmatrix} 0 \\ 1 \\ 0 \\ 0 \end{bmatrix}, & \begin{bmatrix} 0 \\ 0 \\ 1 \\ 0 \end{bmatrix}, & \begin{bmatrix} 0 \\ 0 \\ 0 \\ 1 \end{bmatrix}\Biggr)
\end{align}

몇 가지 문제가 있습니다.

  • 중괄호가 행렬에 맞지 않습니다. ( \left(그리고 을 시도했지만 \right)작동하지 않습니다 ...
  • 가장 나쁜 점은 열을 수직으로 정렬할 수 없다는 것입니다(가운데 정렬).

어쩌면 다음과 같은 것일 수도 있습니다. 여기에 이미지 설명을 입력하세요

이미 생각할 수 있는 모든 것을 시도했지만 거기에 도달할 수 없습니다... 누구든지 제안 사항이 있으면 댓글을 달아주세요!

답변1

다음을 사용할 수 있습니다 array.

\documentclass{article}
\usepackage{amsmath}

\begin{document}

\[
\setlength{\arraycolsep}{0pt}
\begin{array}{ r c c c c c c c l }
    r &
    \begin{bmatrix} 1 \\ 0 \end{bmatrix} \otimes \begin{bmatrix} 1 \\ 0 \end{bmatrix} & 
    {} + s &
    \begin{bmatrix} 1 \\ 0 \end{bmatrix} \otimes \begin{bmatrix} 0 \\ 1 \end{bmatrix} & 
    {} + t &
    \begin{bmatrix} 0 \\ 1 \end{bmatrix} \otimes \begin{bmatrix} 1 \\ 0 \end{bmatrix} &
    {} + u &
    \begin{bmatrix} 0 \\ 1 \end{bmatrix} \otimes \begin{bmatrix} 0 \\ 1 \end{bmatrix} &
    \\[10pt]
    \text{with the basis}\:\biggr( &
    \begin{bmatrix} 1 \\ 0 \end{bmatrix} \otimes \begin{bmatrix} 1 \\ 0 \end{bmatrix} &
    , & 
    \begin{bmatrix} 1 \\ 0 \end{bmatrix} \otimes \begin{bmatrix} 0 \\ 1 \end{bmatrix} &
    , & 
    \begin{bmatrix} 0 \\ 1 \end{bmatrix} \otimes \begin{bmatrix} 1 \\ 0 \end{bmatrix} & 
    , & 
    \begin{bmatrix} 0 \\ 1 \end{bmatrix} \otimes \begin{bmatrix} 0 \\ 1 \end{bmatrix} &
    \biggr) \\[10pt]
    \text{can be written as}\:\Biggr( &
    \begin{bmatrix} 1 \\ 0 \\ 0 \\ 0 \end{bmatrix} &
    , & 
    \begin{bmatrix} 0 \\ 1 \\ 0 \\ 0 \end{bmatrix} &
    , & 
    \begin{bmatrix} 0 \\ 0 \\ 1 \\ 0 \end{bmatrix} & 
    , & 
    \begin{bmatrix} 0 \\ 0 \\ 0 \\ 1 \end{bmatrix} &
    \Biggr)
\end{array}
\]

\end{document}

여기에 이미지 설명을 입력하세요

답변2

나는 그들이 속하지 않는 방정식에서 텍스트를 가져오는 것을 제안합니다.

다음을 기반으로 한 몇 가지 트릭을 사용하여 정렬을 얻을 수 있습니다.IEEEeqnarray.

\documentclass{article}
\usepackage{mathtools}
\usepackage{IEEEtrantools}

\newcommand{\colv}[1]{\begin{bmatrix}#1\end{bmatrix}}

\begin{document}

The tensor
\begin{IEEEeqnarray}{rcCrcCrcCrcl}
r & \colv{1 \\ 0} \otimes \colv{1 \\ 0} & + &
s & \colv{1 \\ 0} \otimes \colv{0 \\ 1} & + &
t & \colv{0 \\ 1} \otimes \colv{1 \\ 0} & + &
u & \colv{0 \\ 1} \otimes \colv{0 \\ 1}
\\
\noalign{\vspace{2\jot}}
\noalign{\noindent with the basis}
\noalign{\vspace{4\jot}}
\biggr( &
  \colv{1 \\ 0} \otimes \colv{1 \\ 0}\mathrlap{,} &&&
  \colv{1 \\ 0} \otimes \colv{0 \\ 1}\mathrlap{,} &&&
  \colv{0 \\ 1} \otimes \colv{1 \\ 0}\mathrlap{,} &&&
  \colv{0 \\ 1} \otimes \colv{0 \\ 1} &
\biggr)
\\
\noalign{\vspace{2\jot}}
\noalign{\noindent can be written as}
\noalign{\vspace{4\jot}}
\left(\vphantom{\colv{0\\0\\0\\0}}\right.\kern-\nulldelimiterspace &
  \mathllap{r}
  \colv{1 \\ 0 \\ 0 \\ 0}\mathrlap{,} &&&
  \mathllap{s}
  \colv{0 \\ 1 \\ 0 \\ 0}\mathrlap{,} &&&
  \mathllap{t}
  \colv{0 \\ 0 \\ 1 \\ 0}\mathrlap{,} &&&
  \mathllap{u}
  \colv{0 \\ 0 \\ 0 \\ 1} &
\left)\vphantom{\colv{0\\0\\0\\0}}\right.\kern-\nulldelimiterspace
\end{IEEEeqnarray}

\end{document}

여기에 이미지 설명을 입력하세요

마지막 행에 스칼라를 추가했습니다. 더 나은 생각이 있으면 제거하십시오.

열 유형은 다음과 같습니다.

  • r오른쪽 정렬 열의 경우
  • c중앙 열의 경우
  • l왼쪽 정렬 열의 경우
  • C이항 연산자 또는 관계가 있는 중앙 열의 경우

\mathrlap(내용이 오른쪽으로 튀어나온 너비가 0인 상자 만들기) 및 (왼쪽과 유사) 대신 \mathllap에 를 사용할 수도 있었지만 \IEEEeqnarraymulticol너무 어렵습니다.

관련 정보