Personal tools

Sections
You are here: Home / Users / Udo Ziegler / NIRVANA code
Print this  

NIRVANA code

 

 

PI: Udo Ziegler, AIP

COntributions: Oliver Gressel, NBI, Kobenhagen, Denmark

 

NIRVANA is a grid-based C code which numerically integrates the time-dependent equations of a multi-physics system consisting of non-relativistic compressible magnetohydrodynamics, various dissipation processes, self-gravity and a heatloss source term. The code works in 2D/3D Cartesian/cylindrical/spherical geometry and makes use of state-of-the-art numerical methods. NIRVANA allows for adaptive mesh refinement in order to handle multi-scale flows and is MPI parallelized.

 

USERS GUIDE / APPENDIX

 

CODE VERSION: 3.8

 

PHYSICS

  • Newtonian hydrodynamics/magnetohydrodynamics
  • viscosity, magnetic diffusion, thermal conduction
  • anisotropic (magnetic-field-dependent) Spitzer conductivity model including saturation effects
  • ambipolar diffusion (strong coupling limit)
  • different gas equation of states (isothermal, adiabatic, polytropic, user-defined)
  • heatloss term (e.g. ISM cooling/heating function)
  • passive tracer
  • external forces
  • rotating frame of reference
  • self-gravity

 

NUMERICS

  • Divide-et-Impera / Strang-type operator splitting
  • 2nd-order FV approach
  • central-upwind or HLLD-based flux computation
  • constrained-transport scheme for induction equation
  • 2nd/3rd-order Runge-Kutta time integrator for MHD
  • 2nd-order FD scheme for dissipative fluxes
  • 2nd-order (stabilized) Runge-Kutta-Legendre integrator (Super-Timestepping) for stiff dissipation terms
  • exact integrator for Coriolis force term
  • MLAT-type multigrid Poisson solver
  • dual energy formalism
  • look-up table scheme based on cubic interpolation techniques
  • 3rd-order exponential Rosenbrock method for heatloss term

 

GRID GEOMETRIES

  • Cartesian
  • cylindrical
  • spherical

 

ADAPTIVE MESH REFINEMENT

  • block-structured approach
  • conservative & divergence-free infrastructure
  • triggered by derivatives, Jeans-length, Field-length

 

PARALLEL COMPUTING

  • based on MPI library
  • coarse-grained communication model
  • load balancing/mesh partitioning via standard domain decomposition (unigrid) or space-filling curve techniques (AMR)

 

CODE AVAILABILITY

Please write an e-mail to uziegler@aip.de in case you are interested in the code. Please note that distribution of the NIRVANA code comes in  accord with the following

TERMS OF USE:

DISTRIBUTION. The NIRVANA code is distributed by Udo Ziegler only for non-commercial, scientific purposes.

MODIFICATIONS. Please keep the copyright notice in the  code modules intact.

CO-AUTHORSHIP. Udo Ziegler requests to be a co-author in a user's first publication using NIRVANA.

ACKNOWLEDGEMENTS. Please acknowledge the use of the NIRVANA code in publications by adding a statement like "This work used the NIRVANA code developed by Udo Ziegler at the Leibniz-Institut für Astrophysik Potsdam".

DISCLAIMER. The NIRVANA code comes without any warranty. The distributor does not accept responsibility for consequences of its usage.