LyX 中的正常排序宏

LyX 中的正常排序宏

我想定义一个宏,用于按正常顺序排列运算符在这个问题中

LyX 为该宏生成的 LaTeX 代码是:

\global\long\def\norder#1{\vcentcolon#1\vcentcolon}

但是,当我调用它时:

$\norder{\hat{a}\hat{a}^{\dagger}}$

它给出了一个错误:

...ven by $\norder{\hat{a}\hat{a}^{\dagger}} $ 错误消息顶行末尾的控制序列从未被 \def'ed。

我不明白为什么会出现错误。我的文档中还有更多宏,它们运行良好。amsmathamssimb通过 LyX 的“数学选项”加载(我已经检查过我可以使用诸如\mathbb内部宏之类的命令)。看起来问题出在\vcentcolon命令上,但我不知道为什么或如何修复它。谢谢!

begin{document}PS. 这是我之前在 LyX 生成的 LaTeX 源中所看到的。

\documentclass[english]{article}
\usepackage{mathpazo}
\renewcommand{\familydefault}{\rmdefault}
\usepackage[T1]{fontenc}
\usepackage[latin9]{inputenc}
\usepackage{geometry}
\geometry{verbose,tmargin=3cm,lmargin=3cm,rmargin=2cm}
\usepackage{float}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{esint}
\makeatletter
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% User specified LaTeX commands.
\usepackage{braket}
\makeatother
\usepackage{babel}

答案1

该命令\ventcolon尚未定义。加载包mathtools;您可以加载它而不是amsmath。此外,将冒号之间的内容包装成\mathrel命令以改善间距。

\usepackage{mathtools}
\newcommand\norder[1]{\vcentcolon\mathrel{#1}\vcentcolon}

在此处输入图片描述

\documentclass{article}
\usepackage{mathtools}
\newcommand\norder[1]{\vcentcolon\mathrel{#1}\vcentcolon}
\begin{document}
$A \norder{\hat{a}\hat{a}^{\dagger}} B$
\end{document}

相关内容