行列内の括弧 / 行列内の行列

行列内の括弧 / 行列内の行列

次のようなものを作りたいと思います。

ここに画像の説明を入力してください

マトリックス内の括弧を正しい位置に揃える方法がわかりません。括弧を赤くする必要はありません。強調したい部分を強調するために追加しただけです。

これを作成するために使用したのは次のとおりです (赤い括弧なし):

\begin{bmatrix}
I_p \\
& \ddots \\
&& I_p \\
& I_p \\
&& \ddots \\
&&& I_p \\
&&& \vdots & \ddots \\
&&& \ddots & \vdots \\
&&&& I_p \\
&&&&& \ddots \\
&&&&&& I_p
\end{bmatrix}

編集: 参照これ私が選択した解決策についてのフォローアップの質問。

答え1

使用blkarray

\documentclass{article}
\usepackage{blkarray}
\begin{document}
\[
  \left[
  \begin{blockarray}{ccccccc}
    \begin{block}{[ccc]cccc}
      I_p \\
      & \ddots \\
      & & I_p \\
    \end{block}
    \begin{block}{c[ccc]ccc}
      & I_p \\
      & & \ddots \\
      & & & I_p \\
    \end{block}
    & & & \vdots & \ddots \\
    & & & \ddots & \vdots \\
    \begin{block}{cccc[ccc]}
      & & & & I_p \\
      & & & & & \ddots \\
      & & & & & & I_p \\
    \end{block}
  \end{blockarray}
  \right]
\]
\end{document}

ここに画像の説明を入力してください

答え2

のと。{NiceArray}nicematrix

\documentclass{article}
\usepackage{nicematrix}

\begin{document}
\[
  \begin{NiceArray}{ccccccc}[margin]
      I_p \\
      & \ddots \\
      & & I_p \\
      & I_p \\
      & & \ddots \\
      & & & I_p \\
      & & & \vdots & \ddots \\
      & & & \ddots & \vdots \\
      & & & & I_p \\
      & & & & & \ddots \\
      & & & & & & I_p \\
  \CodeAfter
     \SubMatrix[{1-1}{3-3}]
     \SubMatrix[{4-2}{6-4}]
     \SubMatrix[{9-5}{11-7}]
     \SubMatrix[{1-1}{11-7}][extra-height=1mm,xshift=1mm]
  \end{NiceArray}
\]
\end{document}

上記コードの出力

関連情報