Criando matriz 6x6 usando bmatrix

Criando matriz 6x6 usando bmatrix

Estou tentando fazer uma matriz 6x6 com o seguinte texto:

\begin{gather}
\dfrac{d}{dt}
\begin{bmatrix}
    y \\ \dot{y} \\ a_{M} \\ \lambda_{T} \\ \lambda_{D} \\ a_{T}
\end{bmatrix}
=
\begin{bmatrix}
    0 && 1 && 0 && 0 && 0 && 0 \\
    0 && 1 && 0 && 0 && 0 && 0 \\
    0 && 1 && 0 && 0 && 0 && 0 \\
    0 && 1 && 0 && 0 && 0 && 0 \\
    0 && 1 && 0 && 0 && 0 && 0 \\
    0 && 1 && 0 && 0 && 0 && 0 \\
\end{bmatrix}
\end{gather}

E recebo o seguinte erro:

A aba de alinhamento extra foi alterada para \cr. \endtempplace \end{reunir}.

O que é estranho é que quando verifico o mesmo código para 5x5 funcionou.

Obrigado.

Responder1

O problema é que apenas até dez colunas são suportadas por padrão em matrixconstruções semelhantes a -, mas o número pode ser aumentado com

\setcounter{MaxMatrixCols}{20}

(vinte colunas devem ser suficientes).

No entanto, se você quiser uma separação mais ampla entre as colunas, defina-a corretamente, e não adicionando colunas fictícias.

\documentclass{article}
\usepackage{amsmath}

\begin{document}

\begin{equation}
\frac{d}{dt}
\begin{bmatrix}
    y \\ \dot{y} \\ a_{M} \\ \lambda_{T} \\ \lambda_{D} \\ a_{T}
\end{bmatrix}
=
\setlength{\arraycolsep}{2\arraycolsep}% this change is local
\begin{bmatrix}
    0 & 1 & 0 & 0 & 0 & 0 \\
    0 & 1 & 0 & 0 & 0 & 0 \\
    0 & 1 & 0 & 0 & 0 & 0 \\
    0 & 1 & 0 & 0 & 0 & 0 \\
    0 & 1 & 0 & 0 & 0 & 0 \\
    0 & 1 & 0 & 0 & 0 & 0 \\
\end{bmatrix}
\end{equation}

\begin{equation}
\frac{d}{dt}
\begin{bmatrix}
    y \\ \dot{y} \\ a_{M} \\ \lambda_{T} \\ \lambda_{D} \\ a_{T}
\end{bmatrix}
=
\begin{bmatrix}
    0 & 1 & 0 & 0 & 0 & 0 \\
    0 & 1 & 0 & 0 & 0 & 0 \\
    0 & 1 & 0 & 0 & 0 & 0 \\
    0 & 1 & 0 & 0 & 0 & 0 \\
    0 & 1 & 0 & 0 & 0 & 0 \\
    0 & 1 & 0 & 0 & 0 & 0 \\
\end{bmatrix}
\end{equation}

\end{document}

Eu preferiria muito mais o último.

insira a descrição da imagem aqui

Responder2

A entrada aqui não é na verdade uma matriz 6x6, mas sim uma matriz 6x11 (número e &+1. Basicamente, você tem muitas colunas em branco por causa do &&.

Por padrão bmatrix, ambientes semelhantes têm no máximo 10 colunas (controladas pelo contador MaxMatrixCols). Então você recebe o erro porque há mais colunas do que o env da matriz está definido.

Solução fácil substituir &&por &.

A matriz 5x5, da maneira que você escreveu aqui, é igual a 10x5, portanto está dentro do limite de 10 colunas.

Como David menciona em um comentário, use equation(*)para um liner, ele possui um recurso de economia de espaço integrado que os outros ambientes não possuem.

informação relacionada