bmatrix를 사용하여 6x6 행렬 만들기

bmatrix를 사용하여 6x6 행렬 만들기

다음 텍스트를 사용하여 6x6 행렬을 만들려고 합니다.

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

그리고 다음과 같은 오류가 발생합니다.

추가 정렬 탭이 \cr로 변경되었습니다. \endtempplace \end{gather}.

이상한 점은 5x5에 대해 동일한 코드를 확인할 때 작동했다는 것입니다.

감사합니다.

답변1

문제는 -like 구성에서는 기본적으로 최대 10개의 열만 지원되지만 다음 matrix을 사용하여 그 수를 늘릴 수 있다는 것입니다.

\setcounter{MaxMatrixCols}{20}

(20개의 열이면 충분합니다.)

단, 열 사이의 간격을 넓게 하고 싶다면 더미 열을 추가하는 것이 아니라 적절하게 설정하는 것이 좋습니다.

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

나는 후자를 더 선호한다.

여기에 이미지 설명을 입력하세요

답변2

여기의 입력은 실제로 6x6 행렬이 아니라 6x11 행렬(숫자 및 &+1)입니다. 기본적으로 &&.

기본적으로 bmatrix유사한 환경에는 최대 10개의 열이 있습니다(counter에 의해 제어됨 MaxMatrixCols). 따라서 행렬 env가 정의된 것보다 더 많은 열이 있으므로 오류가 발생합니다.

쉬운 솔루션은 &&으로 교체하십시오 &.

여기에 작성한 방식의 5x5 행렬은 10x5와 동일하므로 10열 제한 내에 있습니다.

David가 의견에서 언급했듯이 equation(*)한 라이너에 사용하면 다른 환경에는 없는 공간 절약 기능이 내장되어 있습니다.

관련 정보