Differences between SIunits and siunitx packages

To add to Seamus's answer, siunitx combines the functionality of SIstyle and SIunits, hence having a new name. As a result, both SIstyle and SIunits now have 'bug-fix only' status.

siunitx can operate in two ways. The recommended way is to require that units are used within the arguments to macros \SI and \si:

\SI{10}{\metre}
\si{\kilogram\metre\per\second} % Note no `\usk' here

It is possible to load the package such that 'free-standing' units are defined (\usepackage[free-standing-units]{siunitx}), but this can lead to some macro-naming awkwardness and also makes some functions less reliable.

The package defines a number of units 'out of the box', but these are all SI units. For the next release (v2.3), I will be adding abbreviated units to the set that are defined automatically (currently these are a load-time option):

\SI{13.4}{\kg\per\V}

Binary units are available as a load-time option. (I may make these automatic for v2.3: I have not yet decided.) New units can be defined in the preamble

\DeclareSIUnit\lb{lb}
...
\SI{100}{\lb}

or you can include units without any definition

\SI{60}{mph}
\SI{100}{\SIUnitSymbolDegree F}
\si{psi}

Settings in siunitx are controlled by the \sisetup macro. For the spacing you load with SIunits, the options needed are

\sisetup{number-unit-product = \:, inter-unit-product = \:}

siunitx is written by Joseph Wright who did, for a time, maintain SIunits. siunitx replaces SIunits and another package called SIstyle. It is a complete reimplementation of the basic idea.

It can handle non-SI units with ease. The documentation has the details of how to define new units.

Tags:

Siunitx