| 234 | = =================================== = |
| 235 | = Viscosity in AstroBEAR = |
| 236 | = =================================== = |
| 237 | |
| 238 | The viscosity term in the Navier-Stokes Equation can be separated as:[[BR]][[BR]] |
| 239 | [[latex($dv/dt = \nabla \cdot T$)]][[BR]] |
| 240 | For the applications we are considering, the fluid is isotropic. Under this assumption, the tensor can be expressed as the following combination of two scalar dynamic viscosities [[latex($\mu$)]] and [[latex($\mu'$)]]:[[BR]][[BR]] |
| 241 | [[latex($T = 2 \mu \nabla v + \mu' \nabla \cdot v I$)]][[BR]][[BR]] |
| 242 | where I is the unit tensor.[[BR]] |
| 243 | It can be proven that the stress tensor should have zero trace, which leads to the following relation between [[latex($\mu$)]] and [[latex($\mu'$)]]:[[BR]][[BR]] |
| 244 | [[latex($\mu' = -2/3\mu$)]][[BR]][[BR]] |
| 245 | Combining these relations, we can write down the final form of the separated viscous equation:[[BR]][[BR]] |
| 246 | [[latex($dv/dt=\nabla \cdot (2 \mu \nabla v) - 2/3 \nabla (\mu \nabla \cdot v)$)]][[BR]][[BR]] |
| 247 | Notice that this equation already counts the effect of all the elements in a viscosity tensor, assuming the fluid itself is isotropic.[[BR]] |
| 248 | [[BR]][[BR]] |
| 249 | |
| 250 | = =================================== = |
| 251 | = Viscosity Implementation = |
| 252 | = =================================== = |
| 253 | The viscous source term is calculated rigorously by first finding the tensor elements at the surrounding face centers of a cell center considered: |
| 254 | The [[latex($\mu$)]] sources [[latex($2\mu \nabla v$)]] are naturally located at the cell centers, the [[latex($\mu'$)]] sources however needs an averaging to obtain the cell centered velocity divergence.[[BR]] |
| 255 | Therefore the scheme requires a 20 point stencil in 3-D configuration, which makes the implicit scheme a bit complicated. The following graph shows such a stencil in 2-D setting:[[BR]][[BR]] |
| 256 | [[Image(http://www.pas.rochester.edu/~shuleli/vis_stencil.png, 35%)]][[BR]][[BR]] |
| 257 | Using this stencil setting, one can get face centered velocity divergence for the cell considered, and then calculate the gradient components located at the cell center.[[BR]] |
| 258 | In the viscous plasma context, the physical viscosity can be calculated rigorously. The plasma viscosity is proportional to the product of ion mean free path and the ion thermal energy:[[BR]][[BR]] |
| 259 | [[latex($\mu \sim \lambda_{ifp}v_{thermal}$)]][[BR]][[BR]] |
| 260 | In our code, we offer the option to calculate the realistic viscosity using the following equation:[[BR]][[BR]] |
| 261 | [[latex($\mu = \frac{m_{i}}{3 \sqrt{2} \pi d_{i}^2} (\frac{8kT}{\pi m_{i}})^{\frac{1}{2}}$)]][[BR]][[BR]] |
| 262 | The ion mass and local temperature should be readily available, but a good estimate of ion diameter [[latex($d_{i}$)]] usually requires look up a ionic radius table. [[BR]] |
| 263 | As an estimate, one can use that of hydrogen, about 0.1~0.2 nm.[[BR]] |
| 264 | One can see that the viscosity itself is anisotropic and depends on the local temperature. [[BR]] |
| 265 | That is why we have both the [[latex($\mu$)]] and [[latex($\mu'$)]] terms in our viscosity equation, and have to calculate face centered source terms before applying the final divergence.[[BR]][[BR]] |
| 266 | The viscosity interface is as follows:[[BR]] |
| 267 | The viscosity source term can be turned on in astrobear by putting the viscosity flag to true:[[BR]] |
| 268 | '''lViscous = .true.'''[[BR]] |
| 269 | The second parameter '''VisType''' determines which type of viscosity one requires: 1 for constant viscosity; 2 for real physical viscosity.[[BR]] |
| 270 | The third parameter '''viscosity''' is the user defined constant viscosity.[[BR]] |
| 271 | The viscosity module is tested to be working compatibly with implicit thermal conduction module and uniform gravity module.[[BR]][[BR]] |
| 272 | |