\begin{align*}
\DIV \BP =&~\Bzero~,\label{PDE1}\\
\rho_0 c \dot{\theta}=&-\DIV \BQ + \theta\p{\theta}\BP:\dot{\BF}~.\label{PDE2}
\end{align*}
我曾经使用过诸如amsmath
、、 ...之类的包amsfonts
,amssymb
但是它显示以下错误:
Undefined control sequence. \end{align*}
我需要添加其他包吗?
答案1
“未定义的控制序列。\end{align*}”
“未定义的控制序列。\end{align}”
或类似的意思是在 \begin{align*} ... \end{align*} 之间的某个地方有一个未定义的宏。
复制该“\begin{align*} ... \end{align*}”部分并将其编辑为“\begin{equation*} ... \end{equation*}”。
然后再次编译:现在您将收到一条有关缺少宏的错误消息。
例如,如果您得到:“未定义的控制序列。...3a^b+\sin\theta\exp(-i2\pi m\Bzero”,
则该字符串中的最后一个宏(在本例中为“\Bzero”)是未定义的宏。修复该问题并重试,直到没有错误为止。
(如何定义宏?也许宏是使用某些包定义的;例如,\usepackage{amsmath} 定义了一些宏。或者也许您想通过“\newcommand{\Bzero}...”自己定义宏,但忘记了。或者也许您从某处复制了一些代码,但忘记复制定义宏 \Bzero 的部分。)
当你没有错误时,你可以删除额外的 \begin{equation*} ... \end{equation*}
答案2
好吧,假设您在文档的某处定义了一些命令,我擅自定义它们以便能够编译您的文档。
问题是:
所有用户未定义的命令。我创建了它们,但您稍后必须更改为正确的命令。
环境
align*
产生一个未编号的等式,因此您不能在其中放置标签(除非您\tag
在同一行上有一个,正如芭芭拉·比顿所说)。
经过一些修改后,这是您的代码,仅包含amsmath
包和您神秘的用户定义命令。
我还添加了另一个版本,您可以在其中为方程式添加标签。
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\newcommand{\DIV}{\div}
\newcommand{\BP}{\left<BP\right>}
\newcommand{\Bzero}{\left<Bzero\right>}
\newcommand{\BQ}{\left<BQ\right>}
\newcommand{\p}{\left<p\right>}
\newcommand{\BF}{\left<BF\right>}
\begin{align*}
\DIV \BP & = \Bzero~,\\
\rho_0 c \dot{\theta} & = -\DIV \BQ + \theta\p{\theta}\BP:\dot{\BF}~.
\end{align*}
\begin{subequations}
\begin{align}
\DIV \BP & = \Bzero~,\label{PDE1}\\
\rho_0 c \dot{\theta} & = -\DIV \BQ + \theta\p{\theta}\BP:\dot{\BF}~.\label{PDE2}
\end{align}
\end{subequations}
See Eqs. \ref{PDE1} and \ref{PDE2}
\end{document}
答案3
我遇到了同样的错误。我没有后端知识来解释为什么会发生这种情况。但解决方法是移动
\usepackage{amsmath}
在任何用户定义的命令之前,
\def\logoname{LOGO-generic-web}
正在被定义。
所以,
`\def\logoname{LOGO-generic-web}`
`\usepackage{amsmath}`
给出错误。
如果你曾经编译过
`\usepackage{amsmath}`
`\def\logoname{LOGO-generic-web}`
它不再给出错误\end{align}
。
答案4
我遇到了同样的错误,并发现原因实际上是在对齐中我有一个 latex 无法看到的命令。所以一般的解决方案是需要添加一些包或删除一些命令。