Take the 2-minute tour ×
TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. It's 100% free, no registration required.

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"?

share|improve this question
7  
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
2  
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
2  
Related Question: new command for the dx of intergral. –  Peter Grill Nov 17 '12 at 9:42
    
The standard in mathematics is not to use mathrm on the d: just use \, dx. In engineering and physics, they do things differently. –  Benjamin McKay Nov 27 '13 at 9:15

4 Answers 4

up vote 31 down vote accepted
\documentclass{article}
\usepackage{amsmath}
\newcommand*\diff{\mathop{}\!\mathrm{d}}
\newcommand*\Diff[1]{\mathop{}\!\mathrm{d^#1}}
\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*}
%
\[ V(\mathbf{x}) = -\int_{\mathbf{R}^3} 
   \frac{G}{|\mathbf{x}-\mathbf{y}|}\,\rho(\mathbf{y})\,\Diff3\mathbf{y} \]

\end{document}

enter image description here

share|improve this answer
1  
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
19  
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
8  
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
1  
@JimHefferon: in inline mode I use only \mathrm{d} –  Herbert Jun 21 '12 at 6:39

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:

Integral showcasing the <code>\d</code> command

share|improve this answer
3  
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
1  
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
1  
@tohecz If \mathop{}\!d is used, then the spacing for subsequent differentials will be automatically added. –  egreg Jun 20 '12 at 13:44

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}
share|improve this answer
7  
Claudio Beccari later discovered that \newcommand\dif{\mathop{}\!\mathrm{d}} does the same with much less effort. –  egreg Jan 28 '13 at 16:37
    
Oh, I did not knew that. :) –  Svend Tveskæg Jan 28 '13 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 '13 at 17:03
3  
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 '13 at 17:07
1  
@SvendTveskæg \mathop{} provides the thin space at the left when preceded by an ordinary symbol or a closing delimiter; the “d” after it inserts another thin space that's removed with \!. –  egreg Sep 8 at 9:19

Presumable you are trying to both save on typing, and to exert some consistent notation throughout you article (good idea).

If you are making a macro for infinitesimals, you might as well make a marco for a derivative and an integral with limits. Avoid single letter macros e.g. \d because they are often already defined.

\documentclass{article}
 \usepackage{amsmath}
 \usepackage{amsfonts}

\newcommand \dd[1]  { \,\textrm d{#1}                       }   % infintesimal
\newcommand \de[2]  { \frac{\mathrm d{#1}}{\mathrm d{#2}}   }   % first order derivative
\newcommand \intl[4]{ \int\limits_{#1}^{#2}{#3}\dd{#4}      }   % integral with limits

\begin{document} 

$$  \dd x=-\dd u        $$
$$  y'=\de yx           $$
$$  \intl0\infty{f(t)}t $$

\begin{align*}
    \left(\intl{-\infty}\infty{e^{-x^2}}x\right)^2  
        &=\intl{-\infty}\infty{\intl{-\infty}\infty{e^{-(x^2+y^2)}}x}y                      \\
        &=\intl0{2\pi}{\left(\left.-\frac{e^{-r^2}}2\right|_{r=0}^{r=\infty}\right)}\theta  \\
        &=\pi
\end{align*}

$$  V(x)=-\intl{\mathbb R^3}{}{\frac G{|x-y|}\rho(y)}{^3}y  $$

\end{document}

m2

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.