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