ISO 80000-2 in LaTeX

When typesetting physics, there are a couple things that LaTeX does not according to the ISO 80000-2 norm, see TUGboat-18. Here is what I have gathered to implement these conventions.

Upright "d"

To get upright (roman) "d"s for differentials, you can use a simple \mathrm d. With the commath package, it is a little easier to write derivatives:


% ...

    \od[2] f t

This will render as:

$$\frac{\mathrm d^2 f}{\mathrm d t^2}$$

The same applies to the base of the natural logarithms $\mathrm e$ and the imaginary constant $\mathrm i$. The easiest way is to declare some commands like so:

\newcommand{\dup}{\mathrm d}
\newcommand{\eup}{\mathrm e}
\newcommand{\iup}{\mathrm i}

Bold Vectors

To get bold vectors, I used the \boldsymbol command from the amsmath package:


So instead of $\vec a$, it shows $\boldsymbol a$.

Bold And Sans-Serif Tensors

You can obtain bold and sans-serif tensors with the following snippet by egreg2012:


Today I use the isomath packages which provides the following:

\newcommand{\four}[1]{\underline{\vec {#1}}}

Italic Uppercase Greek

By default, uppercase Greek letters are upright (roman). I find it more consistent to make them italic as all Latin and lowercase Greek letters. The mathdesign family of fonts has an option to do so. With "Bitstream Charter", I use this:

\usepackage[charter, greekuppercase=italicized]{mathdesign}

Laplace Operator

The Laplace operator does not have a canonical command, at least I could not find any. Usually people use $\Delta$ (\Delta). The problem is that you cannot tell it apart from the regular Delta, since it is the same symbol. I use the $\bigtriangleup$ that goes well with the d'Alambert Operator $\Box$: