# Should I \mathrm the d in my integrals?

When writing an integral, it seems like something should be done to separate the "d", as in \int f(x) dx, so as not to confuse it with a variable. I've seen it left as-is, bolded, and straightened. Even among those options there are several ways to accomplish each task; e.g., I could do a \mathrm or a \operatorname. What is the preferred method of dealing with the "d"?

-
See also What's the proper way to typeset a differential operator? and the comments at Top four LaTeX mistakes -- there appear to be some regional variances, and some attempts at standardization. – Mike Renfro Jun 20 '12 at 13:10
Using \mathrm or not depends on the traditions in your field. A thin space before the "d" in integrals is certainly required, Herbert's solution shows how to get it automatically (but using a macro for getting the "d"). – egreg Jun 20 '12 at 13:10
Related Question: new command for the dx of intergral. – Peter Grill Nov 17 '12 at 9:42

\documentclass{article}
\usepackage{amsmath}
\newcommand*\diff{\mathop{}\!\mathrm{d}}
\begin{document}

\begin{align*}
\biggl(\int_{-\infty}^\infty e^{-x^2}\diff x\biggr)^2
&= \int_{-\infty}^\infty\int_{-\infty}^\infty e^{-(x^2+y^2)}\diff x\diff y \\
&= \int_0^{2\pi}\int_0^\infty e^{-r^2}r\diff r\diff\theta                  \\
&= \int_0^{2\pi}\biggl(-{e^{-r^2}\over2}\bigg\vert_{r=0}^{r=\infty}\,\biggr)\diff\theta\\
&= \pi                                          \tag*{q.e.d.}
\end{align*}

\end{document}

• \mathop{} An "empty" large operator for the space
• \! a negative thinspace. decreased the space of \mathop

-
Herbert, are you recommending what's on the rhs? It looks odd to me, especially when I have an inline $dy/dx$. – Jim Hefferon Jun 20 '12 at 13:07
IMO it makes sense to add a small explanation of why this solution was chosen, rather than just providing uncommented source code. – Marco Jun 20 '12 at 13:09
if i'm not mistaken, the upright "d" is an iso standard. but it's not common practice in the u.s. (and perhaps elsewhere). certainly knuth uses -- intentionally -- an italic "d" as can be inferred from the italic correction "d" is given in the cmmi fonts, namely none. what i find peculiar in @Herbert's example is the italic "d" on the left side while upright is used on the right. in my opinion, whichever is chosen should be used consistently. – barbara beeton Jun 20 '12 at 13:19
@Barbara. It is, in ISO 80000-2. Note however this standard bears the title "Mathematical signs and symbols to be used in the natural sciences and technology". – Javier Bezos Jun 20 '12 at 17:29
@JimHefferon: in inline mode I use only \mathrm{d} – Herbert Jun 21 '12 at 6:39
show 1 more comment

I usually do this (which I've shamefully stolen from Niel de Beaudrap and modified):

\makeatletter \renewcommand\d[1]{\ensuremath{%
\;\mathrm{d}#1\@ifnextchar\d{\!}{}}}
\makeatother


It renders nicely, especially with multiple integrals:

-
I find this wrong under many respects. The \; space is too much. The definition proposed by Herbert is certainly better. – egreg Jun 20 '12 at 13:08
@egreg: I'm curious if there are other reasons aside from \; (perhaps you can replace it with \:, or with \mathop{}\! as in Herbet's solution) why you find the definition "wrong". As someone who is regularly doing all sorts of ad-hoc fooling around with spacing to try and better suggest logical groupings of symbols in my math typesetting, I'm interested in other people's notions of best practises. – Niel de Beaudrap Jun 20 '12 at 13:35
I like this definition of \d (taking care of subsequent differentials). Just IMO: (1) \ensuremath is completely wrong here, (2) the space is indeed to large and \mathop{}\! gives some nice-looking result. – tohecz Jun 20 '12 at 13:42
@NieldeBeaudrap The \ensuremath is completely useless (your code didn't have it); the \; spacing is too much (\, is correct) and testing whether another \d follows should be omitted once a thin space instead of the thick space is used. – egreg Jun 20 '12 at 13:43
@tohecz If \mathop{}\!d is used, then the spacing for subsequent differentials will be automatically added. – egreg Jun 20 '12 at 13:44
show 1 more comment

I found a TUGboat article some years ago which seems to deal with the spacing around the differential operator in the correct way (at least to me).

Example

\documentclass{article}

\makeatletter
\providecommand*{\dif}%
{\@ifnextchar^{\DIfF}{\DIfF^{}}}
\def\DIfF^#1{%
\mathop{\mathrm{\mathstrut d}}%
\nolimits^{#1}\gobblespace
}
\def\gobblespace{%
\futurelet\diffarg\opspace}
\def\opspace{%
\let\DiffSpace\!%
\ifx\diffarg(%
\let\DiffSpace\relax
\else
\ifx\diffarg$% \let\DiffSpace\relax \else \ifx\diffarg\{% \let\DiffSpace\relax \fi\fi\fi\DiffSpace} \makeatother \begin{document} \[ \int x \dif x$
\end{document}

-
Claudio Beccari later discovered that \newcommand\dif{\mathop{}\!\mathrm{d}} does the same with much less effort. – egreg Jan 28 at 16:37
Oh, I did not knew that. :) – Svend Tveskæg Jan 28 at 16:51
According to tug.org/pipermail/texhax/2009-August/013018.html, the following by Morten Høgholm is an improved version of the large code chunk I posted: \newcommand*\dif{ \mathop{}\nobreak \mskip-\thinmuskip\nobreak \mathrm{d} } what is best of Morten's code and the code posted by @egreg ? – Svend Tveskæg Jan 28 at 17:03
It's just the same, with two redundant \nobreak that do exactly nothing, because a line break is not possible in a math formula after a mathop atom or after \mskip glue. – egreg Jan 28 at 17:07
I see. Thank you for the explanation. – Svend Tveskæg Jan 28 at 17:09
show 1 more comment