有什么办法可以制作这样的矩阵吗?:
是的,这看起来很奇怪,但我向你保证我确实需要这个。
“列”和“行”数字实际上是某种物理索引,非零条目是物理允许的转换;一个边界条件禁止用括号 [] 表示的子矩阵之外的所有转换;另一个边界条件禁止用 () 表示的子矩阵之外的所有内容。
我试图说明所有允许的条目都可以写在更小的矩阵中,这是两者之间的重叠。
现在我只使用像这样的 png 图像,我在 Gimp 中将其组合在一起,但感觉应该可以使用各种矩阵环境在 latex 中完成此操作。我可以像这样制作允许转换的主矩阵:
\begin{equation}
\begin{matrix}
&\begin{matrix} 0 & 1 & 2 & 3\end{matrix}\\%The indices on top, with an empty entry in front, the same width as the indices on the side
\begin{matrix}0\\1\\2\end{matrix}%The indices on the side as a submatrix
& \begin{vmatrix}%The main submatrix of allowed transitions
a & 0 & 0 & 0\\
0 & b & 0 & 0\\
0 & 0 & c & 0\\
\end{vmatrix}
\end{matrix}
\end{equation}
我可以通过执行以下操作插入一个或另一个子矩阵:
\begin{equation}
\begin{matrix}
&\begin{matrix} 0 & 1 & 2 & 3\end{matrix}\\%The indices on top, with an empty entry in front, the same width as the indices on the side
\begin{matrix}0\\1\\2\end{matrix}%The indices on the side as a submatrix
& \begin{vmatrix}
\begin{bmatrix}
a & 0\\
0 & b\\
0 & 0
\end{bmatrix}%
\begin{matrix}
0 & 0\\
0 & 0\\
c & 0
\end{matrix}
\end{vmatrix}
\end{matrix}
\end{equation}
这让我
或这个:
\begin{equation}
\begin{matrix}
&\begin{matrix} 0 & 1 & 2 & 3\end{matrix}\\%The indices on top, with an empty entry in front, the same width as the indices on the side
\begin{matrix}0\\1\\2\end{matrix}%The indices on the side as a submatrix
& \begin{vmatrix}
a &\begin{matrix}
0 & 0 & 0
\end{matrix}\\%
\begin{matrix}
0\\
0
\end{matrix}&%
\begin{pmatrix}
b & 0 & 0\\
0 & c & 0
\end{pmatrix}
\end{vmatrix}
\end{matrix}
\end{equation}
这让我
这太糟糕了(数字的排列完全不对),而且我仍然无法将两者结合起来。
所以我的问题是,如何制作一个包含多个重叠子矩阵的矩阵,最好用不同的轮廓 () 与 [] 表示,最好同时保持数字之间的水平间距一致?最好只使用标准包,但我愿意使用其他一些包来执行此操作。
答案1
与。{vNiceMatrix}
nicematrix
\documentclass{article}
\usepackage{nicematrix}
\begin{document}
$\begin{vNiceMatrix}[first-row,first-col,margin]
& 0 & 1 & 2 & 3 \\
0 & a & 0 & 0 & 0 \\
1 & 0 & b & 0 & 0 \\
2 & 0 & 0 & c & 0 \\
\CodeAfter
\SubMatrix[{1-1}{3-2}]
\SubMatrix({2-2}{3-4})
\end{vNiceMatrix}$
\end{document}