... | ... | @@ -1303,15 +1303,15 @@ viscous stress tensor *τ* given by |
|
|
|
|
|
*τ* = *ν*\[∇**v**+(∇**v**)<sup>⊤</sup>−2/3(∇⋅**v**)*I*\]
|
|
|
|
|
|
where *ν* \[`k``g` ⋅ `m`<sup> − 1</sup> ⋅ `s`<sup> − 1</sup>\] is the
|
|
|
where *ν* \[kg⋅m<sup>−1</sup>⋅s<sup>−1</sup>\] is the
|
|
|
*dynamic* viscosity coefficient, **v** the fluid velocity and *I* the
|
|
|
identity operator.
|
|
|
|
|
|
*Note: The *dynamic* viscosity coefficient *ν* to be defined here should
|
|
|
not be confused with the kinetic coefficient,*
|
|
|
*ν*<sub>*k**i**n**e**t**i**c*</sub>
|
|
|
\[`m`<sup>2</sup> ⋅ `s`<sup> − 1</sup>\], *related to the dynamic
|
|
|
coefficient by* *ν* = 𝜚*ν*<sub>*k**i**n**e**t**i**c*</sub>.
|
|
|
*ν*<sub>*kinetic*</sub>
|
|
|
\[m<sup>2</sup>⋅s<sup>−1</sup>\], *related to the dynamic
|
|
|
coefficient by* *ν* = 𝜚*ν*<sub>*kinetic*</sub>.
|
|
|
|
|
|
In the call of `viscosityCoeffUser()` the function arguments are the
|
|
|
superblock pointer `g` and the array pointer `vis` of type `double***`
|
... | ... | @@ -1354,7 +1354,7 @@ coefficient parallel and perpendicular to the magnetic field, |
|
|
respectively, and **B̂** = **B**/\|**B**\| is the unit vector in the
|
|
|
direction of the magnetic field. *κ*<sub>∥</sub> and *κ*<sub>⊥</sub> are
|
|
|
measured in units
|
|
|
`J` ⋅ `K`<sup> − 1</sup> ⋅ `m`<sup> − 1</sup> ⋅ `s`<sup> − 1</sup>.
|
|
|
J⋅K<sup>−1</sup>⋅m<sup>−1</sup>⋅s<sup>−1</sup>.
|
|
|
|
|
|
In the call of `conductionCoeffUser()` the function arguments are the
|
|
|
superblock pointer `g` and the array pointers `cond`, `cond_perp` of
|
... | ... | @@ -1382,7 +1382,7 @@ evaluated at cell-centroid coordinates |
|
|
with forced isotropy (when `COND_FORCE_ISO`=`YES` in `nirvanaUser.h`)
|
|
|
only the `cond`-array has to be assigned with `cond` representing the
|
|
|
conduction coefficient *κ* in the isotropic heat flux
|
|
|
**F**<sub>*C*</sub> = − *κ*∇*T*.
|
|
|
**F**<sub>*C*</sub> = −*κ*∇*T*.
|
|
|
|
|
|
User-defined thermal conduction is enabled by appropriate choice in the
|
|
|
parameter interface `nirvana.par` under the category
|
... | ... | @@ -1395,7 +1395,7 @@ field contribution given by |
|
|
|
|
|
**E**<sub>*D*</sub> = − *η*<sub>*D*</sub>∇ × **B**
|
|
|
|
|
|
where *η*<sub>*D*</sub> \[`m`<sup>2</sup> ⋅ `s`<sup> − 1</sup>\] is the
|
|
|
where *η*<sub>*D*</sub> \[m<sup>2</sup>⋅s<sup>−1</sup>\] is the
|
|
|
diffusion coefficient.
|
|
|
|
|
|
In the call of `diffusionCoeffUser()` function arguments are the
|
... | ... | @@ -1433,11 +1433,11 @@ by |
|
|
**E**<sub>*AD*</sub> = *η*<sub>*AD*</sub>/*μ*\[(∇×**B**)×**B**\] × **B**
|
|
|
|
|
|
where *η*<sub>*AD*</sub>
|
|
|
\[`V` ⋅ `m` ⋅ `A`<sup> − 1</sup> ⋅ `T`<sup> − 2</sup>\] denotes the
|
|
|
\[V⋅m⋅A<sup>−1</sup>⋅T<sup>−2</sup>\] denotes the
|
|
|
ambipolar diffusion coefficient.
|
|
|
|
|
|
*Note: The prefactor* *η*<sub>*AD*</sub>/*μ* *has units*
|
|
|
`m`<sup>2</sup> ⋅ `s`<sup> − 1</sup> ⋅ `T`<sup> − 2</sup>.
|
|
|
m<sup>2</sup>⋅s<sup>−1</sup>⋅T<sup>−2</sup>.
|
|
|
|
|
|
In the call of `APdiffusionCoeffUser()` function arguments are the
|
|
|
superblock pointer `g` and the array pointer `APdiff` of type
|
... | ... | @@ -1517,7 +1517,7 @@ sum |
|
|
*L*<sub>*cool*</sub>(*T*, 𝜚) + *L*<sub>*heat*</sub>(*T*, 𝜚)
|
|
|
of both functions, enters as a source term in the energy equation.
|
|
|
*L*<sub>*cool*</sub> and *L*<sub>*heat*</sub> are measured
|
|
|
in units *J* ⋅ *s*<sup> − 1</sup> ⋅ *m*<sup> − 3</sup>.
|
|
|
in units J⋅s<sup>−1</sup>⋅m<sup>−3</sup>.
|
|
|
|
|
|
In the call of `sourceCoolingUser()` (`sourceHeatingUser()`) the
|
|
|
function arguments are the temperature value `T`, density value `rho`,
|
... | ... | @@ -1529,8 +1529,8 @@ the pointer `deriv` to the derivatives flag and the 2-element vector |
|
|
f=sourceHeatingUser(T,rho,deriv,dfh);
|
|
|
|
|
|
The user must define the return value
|
|
|
`f` = *L*<sub>*cool*</sub>(`T``,` `rho`)
|
|
|
(*L*<sub>*heat*</sub>(`T``,` `rho`)) in `sourceCoolingUser.c`
|
|
|
`f` = *L*<sub>*cool*</sub>(`T`,`rho`)
|
|
|
(*L*<sub>*heat*</sub>(`T`,`rho`)) in `sourceCoolingUser.c`
|
|
|
(`sourceHeatingUser.c`). The `deriv`-flag is thought to indicate the
|
|
|
calling function whether a user provides the derivatives of
|
|
|
*L*<sub>*cool*</sub>(*T*, 𝜚) and
|
... | ... | |