(einfach?) Matrix mit breiten Blöcken

(einfach?) Matrix mit breiten Blöcken

Ich möchte eine Matrix wie diese erstellen:

\documentclass{article}
\usepackage{amsmath}
\begin{document}
$$ \begin{bmatrix}
    a & b' \\
    b & D
\end{bmatrix} $$
\end{document}

aber ich möchte die Größe des Vektors angeben bund ihn auf zwei Feldern platzieren, horizontal oder vertikal. Dasselbe gilt für die Matrix, Ddie ich als 2×2-Matrix mit einem Namen in der Mitte platzieren möchte.

Ziel

Antwort1

Ich gehe davon aus, dass das zweite Element in der ersten Zeile so breit ist wie zwei normale Spalten. Entsprechend ist das zweite Element in der zweiten Zeile so hoch wie zwei normale Zeilen.

\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}

Bildbeschreibung hier eingeben

Hinzugefügt Dezember 2022

Es ist ein viel besseres Tool erschienen, nämlich 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}

Bildbeschreibung hier eingeben

Antwort2

Eine Alternative mit 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}

Bildbeschreibung hier eingeben

Ich habe aboveposund belowposauf gesetzt -1, um die vertikale Linie zu verkürzen, da ich es nicht mag, wenn sie höher als die Klammer ist. Wenn es dir gefällt, kannst du diese Einstellung natürlich entfernen.

verwandte Informationen