我的代码中未定义的控制序列

我的代码中未定义的控制序列

我从该代码中得到了未定义的控制序列。

$\begin{align}\nonumber 
        \ul{F}^k(X,1) := \left\{ \mathlarger{\sum}_i (\sigma_i, \|\ \|_L, Z_i) : \begin{align} codim_X Z_i = k -1,\\ (L_i/Z_i, \|\ \|_L) \ numeric ,\\
    \sigma \in Rat^*(L_i), \\
    \mathlarger{\sum} \ div(\sigma_i) = 0
     \end{align} \ \ \ \right\}
    \end{align}$

我希望代码编译后看起来像这样。我已经尝试查找错误几个小时了。 在此处输入图片描述

答案1

您的示例不完整,因此不清楚哪个控制序列未定义。不过,这是一个完整的工作示例,其中

  • 外部align环境连同\nonumber被替换为未编号的align*env,内部align环境也被替换为alignedenv。
  • $ ... $周围的外部环境align已被移除。
  • Rat和文本( )等操作符numeric均使用适当的标记命令以直立字体形状标记。您可能还对amsmath命令感兴趣\DeclareMathOperator
  • soul的文本模式命令\ul被数学模式命令取代\underline
\documentclass{article}
\usepackage{amsmath}
\usepackage{relsize}

\begin{document}
\begin{align*}
  \underline{F}^k(X,1) := 
  \left\{
    \mathlarger{\sum}_i (\sigma_i, \|\ \|_L, Z_i) : 
    \begin{aligned}
      \operatorname{codim}_X Z_i = k -1,\\
      (L_i/Z_i, \|\ \|_L) \text{ numeric}, \\
      \sigma \in \operatorname{Rat}^*(L_i), \\
      \mathlarger{\sum} \operatorname{div}(\sigma_i) = 0
    \end{aligned} \ \ \ 
  \right\}
\end{align*}
\end{document}

在此处输入图片描述

答案2

您不能嵌套align,并且绝对不能拥有align内联数学模式(即内部$...$)。

我收到的错误信息是

! Package amsmath Error: \begin{align} allowed only in paragraph mode.

更正确的输入:

\documentclass{article}
\usepackage{amsmath}

\DeclareMathOperator{\codim}{codim}
\DeclareMathOperator{\Rat}{Rat}
\DeclareMathOperator{\Div}{div} % divergence, \div is already used

\begin{document}

\[
\underline{F}^k(X,1) :=
\left\{
  \sum_i (\sigma_i, \|\ \|_L, Z_i) :
  \renewcommand{\arraystretch}{1.2}% local setting
  \begin{array}{@{}l@{}}
  \codim_X Z_i = k -1,\\
  (L_i/Z_i, \|\ \|_L) \text{ numeric},\\
  \sigma \in \Rat^*(L_i), \\
  \displaystyle\sum_i \Div(\sigma_i) = 0
  \end{array}
\right\}
\]

\end{document}

在此处输入图片描述

相关内容