
Я сейчас пишу о тензорах и должен описать слияние двух состояний в один тензор. Сейчас у меня есть что-то вроде этого:
с помощью следующего кода:
\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
(сделать блок нулевой ширины с содержимым, выступающим вправо) и \mathllap
(аналогично для левой стороны) я мог бы использовать \IEEEeqnarraymulticol
, но это слишком длинное слово.