我遇到了一个奇怪的问题。似乎我无法使用任何矩阵环境(matrix
、bmatrix
等pmatrix
)。以下代码无法在我的计算机上呈现
\documentclass[12pt]{article}
\usepackage{amsmath}
%%% BEGIN DOCUMENT
\begin{document}
\begin{bmatrix}
U_{11} & U_{12}& U_{13}& \cdots& U_{1k}\\
U_{21} & U_{22}& U_{23}& \cdots& U_{2k}\\
\vdots & &\vdots & &\vdots \\
U_{N1} & U_{N2}& U_{N3}& \cdots& U_{Nk} \\
\end{bmatrix}
\end{document}
但是,如果我将bmatrix
环境代码放入 LaTeXiT,一切都会正常。我甚至尝试过使用多个matrix
环境的最简单的矩阵示例,但似乎都没有起作用。我的amsmath
包是否以某种方式被阻止了?
我正在运行 OSX 10.7.4 并使用通过 MacTeX 安装的 TexShop。错误如下:
! Missing $ inserted.
! Missing $ inserted.
<inserted text>
$
l.12 \end{bmatrix}
?
任何帮助将不胜感激。
答案1
你应该把它们放在数学模式中。它在 latexit 中有效,因为内容会自动包装在数学模式中。
\documentclass[12pt]{article}
\usepackage{amsmath}
%%% BEGIN DOCUMENT
\begin{document}
\[
\begin{bmatrix}
U_{11} & U_{12}& U_{13}& \cdots& U_{1k}\\
U_{21} & U_{22}& U_{23}& \cdots& U_{2k}\\
\vdots & &\vdots & &\vdots \\
U_{N1} & U_{N2}& U_{N3}& \cdots& U_{Nk} \\
\end{bmatrix}
\]
\end{document}
答案2
我找到了一个有趣的解释来解释你的问题。我引用了一本名为《amsmath 包技术说明》,美国数学学会,Michael Downes,1999/10/29》的教科书
如果您在文档中使用了 \matrix、\pmatrix 或 \cases 的 plain.tex 版本,然后将文档转换为使用 amsmath 包(或 AMS 文档类之一,它会自动在内部调用 amsmath 包),这些命令的实例将产生错误消息。问题是,当 LATEX 最初创建时,它直接从 plain.tex 中采用了大部分数学功能。但对于 \matrix、\pmatrix、\cases 来说,这是一个错误|它们的 plain.tex 语法在风格上明显是非 LATEX 的,例如,它们使用 \cr 而不是 \ 来标记换行符,并且它们不使用 \begin 和 \end。在基本 LATEX 中,这个错误将至少持续到 LATEX3 出现,以避免破坏现有文档。但是,使用 amsmath 包编写的现有文档都没有这种语法问题,因为 amsmath 提供了 \matrix 和其他的正确 LATEX 语法版本。可选地允许 plain.tex 变体使文档转换更容易的可能性似乎是不明智的,因为这些变体在 LATEX 上下文中是如此明显的错误。应该使用数组环境。