Alineación de fórmulas en una matriz de transición

Dec 29 2020

Utilicé el problema planteado en el enlace a continuación para construir 2 formas alternativas de generar una matriz de transición para una cadena de Markov. Sin embargo, como puede ver, en la primera versión, mi fórmula está perdiendo la alineación esperada. Y en la segunda, las etiquetas de fila y columna m pierden sus alineaciones.

El enlace: crear una matriz de probabilidad de transición

¿Podrías ayudarme a identificar qué está fallando? He intentado editar mucho de esto sin éxito.

Opción 1:

\usepackage{amsmath, blkarray}
\[
\mathbf{P} = 
\begin{blockarray}{c@{\hspace{1pt}}rrrrr@{\hspace{3pt}}}
    & 0   & 1   & 2   & 3   & 4 \\
    \begin{block}{r@{\hspace{1pt}}|@{\hspace{1pt}}|@{\hspace{1pt}}
            rrrrr@{\hspace{1pt}}|@{\hspace{1pt}}|}
        0 & 0 & $\frac{1}{3}(\frac{2}{3}$)^{1-1}$ & $\frac{1}{3}(\frac{2}{3}$)^{2-1}$  & $\frac{1}{3}(\frac{2}{3}$)^{3-1}$ & {$\frac{1}{3}(\frac{2}{3}$)^{4-1}$}\\
        1 & 1.0 & 0 & 0  & 0 & 0\\
        2 & 0   & 1.0   & 0 & 00 & 0   \\
        3 & 0   & 0   & 1.0 & 0 & 0   \\
        4 & 0   & 0   & 0 & 1.0 & 0   \\
    \end{block}
\end{blockarray}
\]

Opcion 2:

\usepackage{scalerel,tabstackengine,xpatch}
\setstacktabbedgap{1em}
\xpatchcmd\Centerstack{\strutlongstacks{T}}{}{}{}
\[
\def\stackalignment{c}
\mathbf{P} = 
\Centerstack{
    0  \\
    1  \\
    2  \\
    3  \\
    4  \\
}\!
\stackon{
    \stretchleftright{|\!|}{\tabbedCenterstack{
            0.0 & {$\frac{1}{3}(\frac{2}{3}$)^{1-1}$} & {$\frac{1}{3}(\frac{2}{3}$)^{2-1}$} & {$\frac{1}{3}(\frac{2}{3}$)^{3-1}$} & {$\frac{1}{3}(\frac{2}{3}$)^{4-1}$}\\
            1.0 & 0.0 & 0.0 & 0.0 & 0.0 \\
            0.0   & 1.0   & 0   & 0.0 & 0.0 \\
            0.0 & 0.0 & 1.0 & 0.0 & 0.0 \\
            0.0 & 0.0 & 0.0 & 1.0 & 0.0
    }}{|\!|}}{\tabbedCenterstack{
        \protect\phantom{0.5}0 & \protect\phantom{0.5}1 & \protect\phantom{0.5}2 & \protect\phantom{0.5}3 & \protect\phantom{0.5}4}
    \kern1pt}
\]

¡Muchas gracias por la ayuda!

Es muy apreciado.

Respuestas

1 egreg Dec 29 2020 at 06:49

Es mucho más fácil con nicematrix:

\documentclass{article}
\usepackage{amsmath, nicematrix}

\begin{document}

\[
\mathbf{P} =
\begin{VNiceMatrix}[first-col,first-row]
  & 0   & 1   & 2   & 3   & 4 \\
0 & 0   & \frac{1}{3}(\frac{2}{3})^{1-1}
        & \frac{1}{3}(\frac{2}{3})^{2-1}
        & \frac{1}{3}(\frac{2}{3})^{3-1}
        & \frac{1}{3}(\frac{2}{3})^{4-1} \\
1 & 1.0 & 0 & 0  & 0 & 0\\
2 & 0   & 1.0   & 0 & 00 & 0   \\
3 & 0   & 0   & 1.0 & 0 & 0   \\
4 & 0   & 0   & 0 & 1.0 & 0   \\
\end{VNiceMatrix}
\]

\end{document}

Las entradas de una matriz, ya sea XNiceMatrix, Xmatrix, arrayo blockarrayya están en el modo de matemáticas, por lo que no $debe ser usado. (El Xrepresenta cualquiera de los caracteres permitidos para obtener los distintos delimitadores de matriz).