version 4.1 update authored by Udo Ziegler's avatar Udo Ziegler
......@@ -9,6 +9,8 @@ CONTENTS:
## Functionality overview
#### Physics system
NIRVANA is a multi-physics, multi-species, multi-scale simulation code.
It implements the following physics system:
......@@ -116,6 +118,34 @@ assumed edge-centered analog to the electric field.
*Note: The TESTFIELDS infrastructure does not implement any numerical
method to solve induction equations for testfield fluctuations.*
#### The Boris correction
NIRVANA supports the so-called Boris correction for reducing the Alfven speed,
avoiding a too small timestep in MHD simulations with strong magnetic field
and/or extremely low gas density.
See the physics guide
([PDF](https://gitlab.aip.de/ziegler/NIRVANA/-/tree/master/doc/pdf/PhysicsGuide.pdf)).
for more information on the underlying idea and equations.
The use of the Boris correction is controlled
by setting corresponding macros in the user interface
[nirvanaUser.h](3.2-User-interfaces#user-controllable-macros)).
#### Magnetic field splitting
NIRVANA implements a magnetic field splitting strategy. In this strategy the
magnetic field is decomposed into an imposed background field and a residual field.
By solving for the (presumably weaker) residual field accuracy of the solution
can be increased since the background field is discarded
in the time evolution of the total energy density.
For details on the modified MHD equations which are solved consult the
physics guide
([PDF](https://gitlab.aip.de/ziegler/NIRVANA/-/tree/master/doc/pdf/PhysicsGuide.pdf)).
Use of the magnetic field splitting is controlled
by setting the corresponding macro in the user interface
[nirvanaUser.h](3.2-User-interfaces#user-controllable-macros)
and by the definition of the background magnetic field in the user interface
[sourceB0User.c](3.2-User-interfaces#user-defined-background-magnetic-field)).
## Dynamic arrays
The NIRVANA infrastructure implements its own proprietary routines for
......
......