%20%D0%9C%D0%B0%D1%82%D1%80%D0%B8%D1%86%D0%B0%20%D1%81%20%D1%88%D0%B8%D1%80%D0%BE%D0%BA%D0%B8%D0%BC%D0%B8%20%D0%B1%D0%BB%D0%BE%D0%BA%D0%B0%D0%BC%D0%B8.png)
Я хотел бы создать такую матрицу:
\documentclass{article}
\usepackage{amsmath}
\begin{document}
$$ \begin{bmatrix}
a & b' \\
b & D
\end{bmatrix} $$
\end{document}
но я хотел бы указать размер вектора b
и разместить его как на двух полях, горизонтально или вертикально. То же самое с матрицей D
, которую я хотел бы разместить как матрицу 2×2 с именем в центре.
решение1
Я представляю, что второй элемент в первой строке имеет ширину двух обычных столбцов. Аналогично, второй элемент во второй строке имеет высоту двух обычных строк.
\documentclass{article}
\usepackage{amsmath,mathtools}
\begin{document}
\[
\sbox0{$\begin{matrix} D & D\end{matrix}$}
\left[\begin{array}{c|c}
a & \mathmakebox[\wd0]{b'} \\
\hline
b & \vphantom{\begin{matrix} D \\ D \end{matrix}} D
\end{array}\right]
\]
\end{document}
Добавлено в декабре 2022 г.
Появился гораздо лучший инструмент, а именно nicematrix
.
\documentclass{article}
\usepackage{amsmath}
\usepackage{nicematrix}
\begin{document}
\[
\begin{bNiceArray}{c|w{c}{3em}}[margin]
a & b' \\
\hline
\Block{2-1}{b} & \Block{2-1}{D} \\
&
\end{bNiceArray}
\]
\end{document}
решение2
Альтернатива с tabularray
:
\documentclass{article}
\usepackage{tabularray}
\UseTblrLibrary{amsmath}
\begin{document}
\[
\begin{+bmatrix}[
vline{2} = {1}{abovepos = -1},
vline{2} = {2}{belowpos = -1},
colspec={cm{3em}},
rowspec={Q[m]|m{3em}},
]
a & b' \\
b & D
\end{+bmatrix}
\]
\end{document}
Я установил abovepos
и belowpos
для -1
сокращения вертикальной линии, потому что мне не нравится, когда она выше скобок. Если вам нравится, вы можете убрать эту настройку, конечно.