在二次量化中排版双线性算子

在二次量化中排版双线性算子

在对量子多体理论中的某些运算符进行排版时,我经常发现它们在美学上看起来有点问题。在符号上加一把匕首似乎会把索引往下推。我发现最直接的解决方法是使用“张量”包,如下所示。然而,这里的索引看起来也没有完全对齐。我真的很想有一个更简单的解决方案。

例子:

\begin{equation*}
    \text{(a)} \quad a^{\dagger}_{i} a_i \qquad \text{(b)} \quad a^{\dagger}_{i} \tensor{a}{_i}
\end{equation*}

在此处输入图片描述

答案1

\mathstrut-- 定义为\vphantom{(}-- 是您的好朋友。使用它来为 的第二个实例创建一个“空”上标项a_i。或者,您可以编写a^{\vphantom{\dagger}}_i强制将下标项 ( i) 放置在所需的深度。

在此处输入图片描述

\documentclass{article}
\usepackage{amsmath,tensor}
\begin{document}
\begin{equation*}
a^{\dagger}_{i} a_i \quad 
a^{\dagger}_{i} \tensor{a}{_i} \quad
a^{\dagger}_{i} a^{\mathstrut}_i \quad
a^{\dagger}_{i} a^{\vphantom{\dagger}}_{i}
\end{equation*}
\end{document}

答案2

请注意,如果您使用 Unicode 数学拉丁现代字体,则问题不明显。索引的垂直位置几乎相等。我尝试使用 OpTeX 进行 Unicode 数学运算(但这是字体功能,与使用什么宏无关):

\fontfam[lm]
$$
a^\dagger_i a_i \quad 
a^\dagger_i a^{\mathstrut}_i \quad
$$
\bye

人工智能

答案3

当某些字母也有上标时,对齐下标总是需要一些手动干预。在大多数情况下,添加一个空的上标^{}就足够了。

对于 的情况\dagger,其垂直延伸相当大,这并不是真正的解决方案(下标的高度差别很小)。

您可以减小尺寸\dagger并让 TeX 认为它没有深度。

\documentclass{article}
\usepackage{amsmath}
\usepackage{graphicx}

\NewCommandCopy{\daggersymbol}{\dagger}
\makeatletter
\DeclareRobustCommand{\dagger}{{\mathpalette\dagger@\relax}}
\newcommand{\dagger@}[2]{%
  \raisebox{\depth}{\scalebox{0.9}{$\m@th#1\daggersymbol$}}%
}
\makeatother

\begin{document}

$a_i^{\daggersymbol}a_i^{}$ (original)

$a_i^{\dagger}a_i^{}$ (scaled)

\end{document}

在此处输入图片描述

相关内容