|
Proteus
General description
Proteus is a finite-volume, Eulerian method solving the magnetohydrodynamical
equations on a fixed grid. It uses a higher-order gas-kinetic flux splitting
method (see below), which allows the inclusion of dissipative terms (viscosity,
heat conduction, resistivity) at (close to) no extra computational cost and
penalty in accuracy. Proteus is fully parallelized under MPI, and it scales
linearly with processor number. It has been tested up to 256 processors.
These are the physical processes Proteus can model:
- compressible, full 3D magnetohydrodynamics including
viscosity, heat conduction and Ohmic resistivity
- Self-gravity (periodic and non-periodic)
- heating and cooling (in tabulated form)
- ionizing point sources including evolution of 2-species-gas (not quite there yet...)
- ambipolar diffusion in 2-fluid description
- simple radiation fields (only forward scattering)
Its main advantage over otherwise equivalently performing Riemann solvers is that
the dissipative terms are included at the same level in the flux computation, and
do not have to be added as external source terms. It is "positive definite" for
densities, and for pressures under physical initial conditions.
Solver details
The solver is a gas-kinetic flux-splitting method based on the
BGK-scheme (Bhatnagar, Gross, Krook 1954). The collision term in the
underlying Boltzmann equation is interpreted as the difference between
the initial distribution function and the equilibrium (Maxwellian) distribution,
divided by the collision time. Taking the usual moments of the Boltzmann equation,
this gives rise to two types of fluxes: an equilibrium flux for timescales much
larger than the collision time, and a free-transport flux for timescales much
shorter than the collision time. The fluxes are combined depending on the
order of the scheme. In the first-order BGK scheme, the ratio of the fluxes
is fixed to a constant value, while the second-order scheme weighs the flux
contribution via the local ratio of the collision time over the timestep
(and integrates
the distributions function's evolution over the timestep, instead of just using the
initial and final state).
The MHD-version is currently only implemented in the first-order scheme
Proteus evolves the total energy equation and conserves energy and mass at
machine accuracy level.
For the reconstruction step, a choice of limiters is available. Depending on
the physical problem, the reconstruction can be staged in terms of accuracy
and fall-back solutions. Detailed diagnostics allow the run-time assessment
of the solution's quality.
Currently, the MHD scheme requires a divergence-cleaning operation. This is
done via an (exact) Hodge projection using Fourier transforms.
Time Stepping
The 1st order BGK scheme uses a TVD Runge-Kutta time stepping (Shu & Osher 1988)
to achieve higher order time accuracy (2nd and 3rd order are currently implemented).
The 2nd order BGK scheme is a 1-step integrator at 2nd order in time and space.
Gravity
Gravity is implemented via an FFT-Poisson solver, using the fftw-libraries.
Partially and fully non-periodic domains can be treated, as well as
fully periodic ones.
Internal Energy Evolution
The scheme evolves the total energy assuming an ideal gas law. An isothermal
version is available in the 1st order scheme. The evolution of the energy
equation allows for changes due to (external) heating and cooling processes.
These can be provided in form of a table. This external source term is
applied iteratively, taking into account the ratio of the thermal time
scales over the dynamical time scale.
Ambipolar Diffusion
Ion-neutral drift is implemented in the 2-fluid description. Ions and neutrals
are coupled via collision terms, following the semi-implicit treatment of
Mac Low et al. (1997).
Literature
- Bhatnagar, Gross, Krook 1954
- Prendergast & Xu 1993
- Slyz & Prendergast 1999
- Heitsch, Zweibel, Slyz, Devriendt 2004
- Slyz, Devriendt, Bryan, Silk 2005
- Heitsch, Slyz, Devriendt, Hartmann, Burkert 2006
- Slyz, Devriendt, Bryan, Heitsch, Silk 2007
- Heitsch, Slyz, Devriendt, Hartmann, Burkert 2007
|
|
|