段落在以下代码的 \align 完成之前结束

段落在以下代码的 \align 完成之前结束
\begin{align}\label{flicker4}
\[{\rm{rank}}\left[ {\begin{array}{*{20}{c}}
E&0&{{B_d}}\\
C&{{D_d}}&0\\
0&0&{{D_d}}
\end{array}} \right] = n + {\rm{rank}}{D_d} + {\rm{rank}}\left[ {\begin{array}{*{20}{c}}
{{B_d}}\\
{{D_d}}
\end{array}} \right],\]

\end{align}

答案1

您的代码存在一些问题。首先:

  • 显示数学环境中不允许有空行
  • align已经是一个数学环境,所以你不应该\[ .. \]在其中使用。

下面的代码有一些额外的建议,包括使用bmatrix而不是array,使用equation而不是align因为只有一行并且不需要对齐,删除很多不必要的括号,并定义一个新的运算符而不是使用\rm(已经被弃用了二十多年)。

\documentclass{article}
\usepackage{amsmath}
\DeclareMathOperator{\rank}{rank}
\begin{document}
\begin{equation}\label{flicker4}
\rank
\begin{bmatrix}
E & 0   & B_d \\
C & D_d & 0   \\
0 & 0   & D_d
\end{bmatrix} = n + \rank D_d +
\rank \begin{bmatrix}
B_d\\
D_d
\end{bmatrix},
\end{equation}
\end{document}

相关内容