在使用 classicthesis documentclass 准备的文档中,用于排版裸达朗贝尔算子和顶部带有波浪号或帽子或横线的达朗贝尔算子的正确乳胶输入是什么?我了解 classicthesis 中使用了 eulervm 包。
答案1
首先让我们看看我们拥有的可能性。MWE 需要 LuaLaTeX 来执行命令\mdlgwhtsquare
,但我稍后会提出针对 pdfLaTeX 和 LuaLaTeX 的解决方案。
% arara: lualatex
\documentclass{book}
\usepackage{classicthesis}
\usepackage{mathtools, amssymb} % !!! Carefull, incompatibility found here, please see below
\usepackage{unicode-math} % !!! Carefull, incompatibility found here, please see below
\newcommand{\test}[1]{#1 \tilde{#1} \widehat{#1} \hat{#1} \bar{#1} \overbar{#1} \overline{#1}\nabla \Delta}
\begin{document}
Latin Modern Math:
\begin{itemize}
\item $\test{\Box}$ \verb+\Box+ % !!! Carefull, incompatibility found here, please see below
\item $\test{\square}$ \verb+\square+ % !!! Carefull, incompatibility found here, please see below
\item $\test{\mdlgwhtsquare}$ \verb+\mdlgwhtsquare+
\end{itemize}
%%%%%%
\setmathfont{Asana-math.otf}
Asana Math:
\begin{itemize}
\item $\test{\Box}$ \verb+\Box+
\item $\test{\square}$ \verb+\square+
\item $\test{\mdlgwhtsquare}$ \verb+\mdlgwhtsquare+
\end{itemize}
%%%%%%
\setmathfont{Xits-math.otf}
XITS Math
\begin{itemize}
\item $\test{\Box}$ \verb+\Box+
\item $\test{\square}$ \verb+\square+
\item $\test{\mdlgwhtsquare}$ \verb+\mdlgwhtsquare+
\end{itemize}
\end{document}
最后一个版本,取自于unicode-math
所有解决方案的良好字距调整。因此,使用 LuaLaTeX,您可以这样做:
% arara: lualatex
\documentclass{book}
\usepackage{classicthesis}
\usepackage{unicode-math}
\usepackage{xifthen}
\newcommand{\dalembert}[1][]{\ifthenelse{\isempty{#1}}{\mdlgwhtsquare}{#1\mdlgwhtsquare}}
\begin{document}
$\dalembert \dalembert[\tilde] \dalembert[\hat] \dalembert[\bar]$
\end{document}
得到拉丁现代数学的下列图像:
对于 pdfLaTeX 来说,只需这样就可以实现(我刚刚发现,上面的字距调整问题不是 pdfLaTeX 的问题。您可以在这里阅读并且unicode-math
不amssymb
兼容):
% arara: pdflatex
\documentclass{book}
\usepackage{classicthesis}
\usepackage{amssymb}
\usepackage{xifthen}
\newcommand{\dalembert}[1][]{\ifthenelse{\isempty{#1}}{\Box}{#1\Box}}
\begin{document}
$\dalembert \dalembert[\tilde] \dalembert[\hat] \dalembert[\bar]$
\end{document}
得出的结果是:
答案2
最常见的符号似乎是正方形。所以我建议将其声明为数学运算符,以确保公式中的间距正确。我不知道是否有eulervm
命令。您可以在、、、、、等Box
中找到它。latexsym
amsfonts
amssymb
mathabx
wasysymb
\documentclass[12pt,a5paper]{article}
\usepackage[utf8]{inputenc}
\usepackage{amssymb}
\usepackage{esdiff}
\usepackage{mathtools}
\DeclareMathOperator{\dalembert}{\Box}
\begin{document}
\begin{align*}
\dalembert (f) & = \frac{1}{c² } \diffp[2]{f}{t} - \diffp[2]{f}{x} - \diffp[2]{f}{y} - \diffp[2]{f}{z} \\
\widehat\dalembert²(f) & = \dots
\end{align*}
\end{document}
答案3
自达朗贝尔算子是只是一个盒子,我认为eulervm
包根本不应该修改它。没有 MWE,我无法在上下文中测试它,但我很确定这些
$\Box = \partial^{\mu}\partial_{\mu}$
$\hat{\Box}$
$\tilde{\Box}$
按预期工作。