ISO 80000-2 in LaTeX

When typesetting physics, there are a couple things that LaTeX does not according to the ISO 80000-2 norm [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:

\usepackage{commath}

% ...

\[
    \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:

\renewcommand{\vec}[1]{\boldsymbol{#1}}

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 by [egreg2012]:

\usepackage{bm}
\DeclareMathAlphabet{\mathsfit}{\encodingdefault}{\sfdefault}{m}{sl}
\SetMathAlphabet{\mathsfit}{bold}{\encodingdefault}{\sfdefault}{bx}{sl}
\newcommand{\tens}[1]{\bm{\mathsfit{#1}}}

Today I use the isomath packages which provides the following:

\renewcommand{\vec}{\vectorsym}
\newcommand{\tens}{\tensorsym}
\newcommand{\mat}{\matrixsym}
\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:

\DeclareMathOperator{\dalambert}{\Box}
\DeclareMathOperator{\laplace}{\bigtriangleup}

[egreg2012]http://tex.stackexchange.com/a/82747/8945
[TUGboat-18]http://www.tug.org/TUGboat/tb18-1/tb54becc.pdf