This type contains the basic SI units used to convert lattice to physical unit and vice versa. keep reference mass density, mole density and molecular weight same for all levels.
Type  Visibility  Attributes  Name  Initial  

logical,  private  ::  active  =  .false.  needed to check if physics table is defined 

real(kind=rk),  private  ::  dx  =  1.0_rk  reference length  discretization size of the coarsest level SI unit  meter 

real(kind=rk),  private,  allocatable  ::  dxLvl(:)  
real(kind=rk),  private  ::  dt  =  1.0_rk  reference time  time discretization for discretization size of the coarsest level SI unit  seconds 

real(kind=rk),  private,  allocatable  ::  dtLvl(:)  
real(kind=rk),  private  ::  rho0  =  1.0_rk  reference physical mass density SI unit  kg/m^3 

real(kind=rk),  private  ::  moleDens0  =  1.0_rk  reference physical mole density SI unit  mol/m^3 

real(kind=rk),  private  ::  molWeight0  =  1.0_rk  reference molecular weight SI unit  kg/mol 

real(kind=rk),  private  ::  temp0  =  1.0_rk  reference temperature SI unit  Kelvin 

real(kind=rk),  private  ::  coulomb0  =  1.0_rk  reference fundamental electrical charge SI unit  Coulomb 

real(kind=rk),  private  ::  mole0  =  1.0_rk  mole is defined by inverse of Avogadro Constant Avogadro Constant = 6.02214129e23 [1/mol] 

real(kind=rk),  private  ::  mass0  =  1.0_rk  reference mass in kg derived from density or moleweight SI unit :: kg 

type(mus_convertFac_type),  private,  allocatable  ::  fac(:)  Levelwise conversion factor for derived variables size: minLevel:maxLevel allocated in mus_load_physics \todo KM: conversion factor should not be leveldependent. it should be same for all levels, the lattice dx and dt for each level must be considered to scale variables in multilevel. Implemented force, visc, etc using dtL according to formula Introduced lattice speed variable: dx/dt for each level it should be same for all level for acoustic scaling and different for diffusive scaling 

real(kind=rk),  private,  allocatable  ::  pFac(:,:)  Pressure (strain rate) over level scale factor. This factor is meant to convert pressure in LB unit on source level to the required pressure on target level. It is mainly used in interpolation routine. It is allocated as: allocate(pFac( minLevel:maxLevel, minLevel:maxLevel)) It is allocated and initialized in routine: mus_set_scaleFac How to use it in the code: pTargetLevel = pSourceLevel * pFac( sourceLevel, targetLevel ) 

real(kind=rk),  private,  allocatable  ::  vFac(:,:)  Velocity over level scale factor Its usage is the same as pressure scale factor 

real(kind=rk),  private,  allocatable  ::  sFac(:,:)  Strain rate over level scale factor Its usage is the same as pressure scale factor 