%20Matriz%20con%20bloques%20anchos.png)
Me gustaría crear una matriz como esta:
\documentclass{article}
\usepackage{amsmath}
\begin{document}
$$ \begin{bmatrix}
a & b' \\
b & D
\end{bmatrix} $$
\end{document}
pero me gustaría indicar el tamaño del vector b
y ponerlo en dos campos, horizontal o verticalmente. Lo mismo con la matriz D
que me gustaría poner como una matriz de 2×2 con un nombre en el centro.
Respuesta1
Pretendo que el segundo elemento de la primera fila sea tan ancho como dos columnas normales. De manera similar, el segundo elemento de la segunda fila tiene la altura de dos filas normales.
\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}
Agregado en diciembre de 2022
Ha aparecido una herramienta mucho mejor, a saber 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}
Respuesta2
Una alternativa con 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}
Configuré abovepos
y belowpos
para -1
acortar la línea vertical, porque no me gusta cuando está más alta que el paréntesis. Si te gusta, puedes eliminar esa configuración, por supuesto.