[Tex/LaTex] Siunitx numbers within units preventing cdot use

siunitxunits

I'm using siunitx to handle my units for some notes I'm writing but am having a bit of trouble with defining units for glomerular filtration rate (a measure of kidney function). This is measured in ml/min/1.73m^2 for historical reasons, which I want to render as ml·min·1.73m^-2. I have attempted to define this in the MWE below.

\documentclass[10pt,a4paper]{book}

\usepackage[inter-unit-product=\ensuremath{{}\cdot{}}]{siunitx}

\newcommand{\mlkh}[1]{\SI{#1}{\milli\litre\per\kilo\gram\per\hour}} % for e.g. urine output
\newcommand{\gfr}[1]{\SI{#1}{\milli\litre\per\minute\per\text{1.73}\metre\squared}} % for eGFR

\begin{document}

The patient had a urine output of \mlkh{1.0}.

His GFR was estimated at \gfr{90}.

\end{document}

Output:

enter image description here

Here the first command (\mlkh) works as I expect and gives output with reciprocal units and centre dots but the second command (\gfr) uses slashes to separate the units and is not reciprocal.

Can anyone point out what I'm doing wrong? Is it the presence of the \text{1.73} which is problematic or am I doing something more basic wrong?

Many thanks.

Best Answer

I have no problem if using \sisetup:

\documentclass[10pt,a4paper]{book}

\usepackage{siunitx}
\sisetup{inter-unit-product=\ensuremath{{}\cdot{}}}

\DeclareSIUnit{\strange}{\num{1.73}\,m}

\newcommand{\mlkh}[1]{\SI{#1}{\milli\litre\per\kilo\gram\per\hour}} % for e.g. urine output
\newcommand{\gfr}[1]{\SI{#1}{\milli\litre\per\minute\per\strange\squared}} % for eGFR

\begin{document}

The patient had a urine output of \mlkh{1.0}.

His GFR was estimated at \gfr{90}.

\end{document}

enter image description here

Give \strange a better name. ;-)