在 LaTeX 中使用微分算子的正确姿势

在 LaTeX 中使用微分算子的正确姿势

此篇讨论很小的「一点」——关于如何正确排版微分算子。

所谓微分算子,其英文名字叫做 differential operator,也就是 $\mathrm{d} x$ 中的 $\mathrm{d}$。由于微分算子,形式上就是拉丁字母 d;并且中国人读起来也就是简单粗暴的「滴埃克斯」。所以,在书写 LaTeX 手稿时,很多人简单粗暴地将微分算子写作 dx,例如不定积分 \int f(x)dx。

我们说,数学算式是精美而珍贵的。在排版数学算式时,你不能马虎,应该小心谨慎。这也是为什么 Knuth 在设计 TeX 时,将数学式子都包含在美元符号 $ 之间的原因。对待微分算子,我们也应该有这样的心态。

粗话说:「如果没有标准,那所有的争执都是瞎扯淡」。正如单位制有所谓的 ISO 国际单位制一样,数学符号也有对应的 ISO 标准。数学符号的标准,首先是定义在 ISO 31-11 当中;而后这个标准被 ISO 80000-2:2009 取代。因此,此篇讨论的内容,都是基于 ISO 80000-2:2009 的。

在 ISO 80000-2:2009 中,微分算子被描述为

直立的拉丁字母 d;

一个右边没有间距的操作符。

对于直立的拉丁字母 d,我们可以使用 \mathrm{d} 达成效果。而若要微分算子的左边有间距,而右边没有,这个问题就值得思考了。

最简单的办法,是将微分算子做如下实现

1\newcommand*{\dif}{\,\mathrm{d}}

看起来,这样是没有问题的。但是,在某些情况下,就会出现尴尬的问题。比如

1关于 $x$ 的微分 $\dif x$ 是值得思考的问题。

因为在 \dif 的定义中,\mathrm{d} 之前有不可省略的铅空 \,。于是,这份代码中 \dif x 与前后正文之间的距离就不一致了。为了解决这个问题,更有经验的人可能会选择这样定义

1\newcommand*{\dif}{\mathop{\mathrm{d}}\!}

这份代码,试图利用 \mathop,只在必要的时候于左边插入空白,修复了上面的问题。不过,这样一来也带来了一些副作用——在 \mathop 的作用下,\mathrm{d} 的基线发生了改变,不再与正常的数学变量保持在同一个基线上。这也是不好的。

最终解决问题,应该对微分算子有这样的定义

1\newcommand*{\dif}{\mathop{}\!\mathrm{d}}

在这个定义中,拉丁字母 d 本身的特点得到了保留(比如基线是正常的)。此外,在 \mathrm{d} 的左边,插入了一个空白的 \mathop{};其左边的空白保留,而右边与 \mathrm{d} 之间的距离,则由 \! 抑制。这样就达成了我们的目标。

参考:http://www.tug.org/TUGboat/Articles/tb18-1/tb54becc.pdf#page=8

相关推荐

4GB内存全面屏 金立大金刚2双·11仅1599
365bet手机开户

4GB内存全面屏 金立大金刚2双·11仅1599

📅 07-18 👁️ 4992
实况足球手游
365bet苹果版

实况足球手游

📅 09-20 👁️ 7059
宇智波斑为什么要离开木叶?
365bet手机开户

宇智波斑为什么要离开木叶?

📅 12-19 👁️ 223
Foxmail邮箱使用全攻略:从设置到高效管理
365bet苹果版

Foxmail邮箱使用全攻略:从设置到高效管理

📅 08-09 👁️ 6937
常见的鞘翅目昆虫有哪些 鞘翅目的危害特征
beat365最新版体育

常见的鞘翅目昆虫有哪些 鞘翅目的危害特征

📅 10-22 👁️ 6507
问国庆日记怎么写
beat365最新版体育

问国庆日记怎么写

📅 10-30 👁️ 6657