Non-dimensionalization is a really frustrating topic for me, and I imagine many others, because in school it was glossed over while being really important to implementing a simulation.
I'm writing a CUDA C/C++ project on a single GPU in order to solve the Ideal MHD equations, but have run into a barrier where I need to non-dimensionalize the system, but I'm not sure how to do this.
For expressions like $\frac{B^{2}}{2\mu_{0}}$, it's clear that $\tilde{B} = \frac{B}{\sqrt{\mu_{0}}}$ works, but for more complicated expressions like the energy $e = \frac{p}{\gamma - 1} + \frac{\rho v^{2}}{2} + \frac{B^{2}}{2\mu_{0}}$, I am lost. What do I do? What is the procedure?
For reference, here is the full Ideal MHD system, in conservative form, with a numerical diffusion, that I am solving:
$$\frac{\partial\vec{Q}}{\partial t} + \vec{\nabla}\cdot\overleftrightarrow{T} = D\nabla^{2}\vec{Q}$$
The Ideal MHD variables, $\vec{Q}$, are:
$$ \vec{Q} = \pmatrix{\rho \\ \rho u \\ \rho v \\ \rho w \\ B_{x} \\ B_{y} \\ B_{z} \\ e} $$
where $e$ was previously expressed. The fluxes, $\overleftrightarrow{T} = [\vec{F} \quad \vec{G} \quad \vec{H}]^{T} $, are broken down into the following components,
$$ \vec{F} = \pmatrix{ \rho u \\ \rho u^{2} - \frac{B_{x}^{2}}{\mu_{0}} + p + \frac{B^{2}}{2\mu_{0}} \\ \rho v u - \frac{B_{y}B_{x}}{\mu_{0}} \\ \rho w u - \frac{B_{z}B_{x}}{\mu_{0}} \\ 0 \\ vB_{x} - B_{y}u \\ wB_{x} - B_{z}u \\ e + p + \frac{B^{2}}{2\mu_{0}}u - \frac{\vec{B}\cdot\vec{v}}{\mu_{0}}B_{x}} $$
$$ \vec{G} = \pmatrix{ \rho v \\ \rho u v - \frac{B_{x}B_{y}}{\mu_{0}} \\ \rho v^{2} - \frac{B_{y}^{2}}{\mu_{0}} + p + \frac{B^{2}}{2\mu_{0}} \\ \rho w v - \frac{B_{z}B_{y}}{\mu_{0}} \\ u B_{y} - B_{x}v \\ 0 \\ wB_{y} - B_{z}v \\ e + p + \frac{B^{2}}{2\mu_{0}}v - \frac{\vec{B}\cdot\vec{v}}{\mu_{0}}B_{y}} $$
$$ \vec{H} = \pmatrix{ \rho w \\ \rho u w - \frac{B_{x}B_{z}}{\mu_{0}} \\ \rho v w - \frac{B_{y}B_{z}}{\mu_{0}} \\ \rho w^{2} - \frac{B_{z}^{2}}{\mu_{0}} + p + \frac{B^{2}}{2\mu_{0}} \\ uB_{z} - B_{x}w \\ vB_{z} - B_{y}w \\ 0 \\ e + p + \frac{B^{2}}{2\mu_{0}}w - \frac{\vec{B}\cdot\vec{v}}{\mu_{0}}B_{z}} $$
From Jardin (2010), the general form is,
$$ \frac{\partial \rho}{\partial t} + \vec{\nabla}\cdot{\rho\vec{u}} = 0 \\ \frac{\partial \vec{B}}{\partial t} = \vec{\nabla}\times(\vec{u}\times\vec{B}) \\ \rho(\frac{\partial \vec{u}}{\partial t} + \vec{u}\cdot\vec{\nabla}\vec{u}) + \vec{\nabla}p = \vec{J}\times\vec{B} \\ \frac{\partial p}{\partial t} + \vec{u}\cdot\vec{\nabla}p + \gamma p\vec{\nabla}\cdot\vec{u} = 0 $$