wiki:SolverDataExplained

Version 10 (modified by trac, 12 years ago) ( diff )

solver.data Explained

The solver.data file controls the options used by AstroBEAR's hyperbolic equation integrators. Some of the options in this file are a bit esoteric, so wherever possible the default options will be clearly labeled.

SolverData

This short namelist governs the numerical solvers used by AstroBEAR, as well as the integration scheme used to implement those solvers.

  • iScheme: Selects the numerical scheme to run. Currently, we only have option 1 (the sweep method) implemented in AstroBEAR 2.0.
  • iSolver:: Selects the solver option to use for this problem. AstroBEAR currently has one exact Riemann solver and five HLL-based approximate solvers.
    • 0 -- Default: With this option, AstroBEAR selects the appropriate solver option based on the equation of state and whether or not the problem is MHD. If you aren't certain which solver to use, then select this option.
    • 1 -- iExactRS: An exact Riemann solver. Such solvers produce the most accurate solutions to the Riemann problem, but are also the most computationally expensive.
    • 2 -- HLLC: A three-wave version of the HLL solver. A good choice for hydrodynamic problems.
    • 3 -- HLL: The standard HLL solver from Chapter 10 of Toro. HLL uses a two-wave approximation of the intermediate region of the Riemann problem, sacrificing accuracy for speed.
    • 4 -- HLLC_ISO: A variant of the HLLC solver option to be used in isothermal conditions (i.e., when iEOS = 4).
    • 6 -- HLLD: A three-wave HLL-derived solver that can resolve discontinuities in MHD. Consequently, it is a good solver to use when magnetic fields are present (lMHD = true).
    • 8 -- HLLD_ISO: An isothermal variant of HLLD to use then iEOS = 4.

When in doubt, the HLLC and HLLD solvers are the best choices, as they are faster than the exact solver and more robust than the standard HLL solver. The appropriate HLLx solver choice is determined by two factors: whether or not the problem is MHD, and whether or not the problem is isothermal. To select the appropriate solver based on the physics of your problem, consult the table below:

lMHD iEOS solver
F 0 HLLC (2)
T 0 HLLD (6)
F 4 HLLC_ISO (4)
T 4 HLLD_ISO (8)


SweepData

This namelist controls the options associated with the sweep integration scheme. It will only be used if the iScheme option in SolverData is set to 1.

NOTE: There are several deprecated options in the SweepData namelist right now. If you see a particular option in an older data file that isn't discussed here, it is probably deprecated and therefore of no consequence.

  • lChar_Limiters: Controls whether characteristic variablers are used instead of primitive variables in certain parts of the sweep scheme. By default, this is set to .true.
  • lCTU: A boolean flag controlling the corner transport upwind method. This should always be set to .true.
  • lCautious: When set to true, AstroBEAR protects hyperbolic quantities when solving. In general, this should be set to .true.
  • lLimiter: Controls the use of slope limiters, as well as additional multidimensional limiting when strong shocks are present. This flag should always be set to .true.
  • InterpOrder: Sets the interpolation order to be used during variable reconstruction. AstroBEAR has three options for this:
    • 1 -- Constant Interpolation
    • 2 -- Linear Interpolation: WARNING: this option is not well-tested.
    • 3 -- Parabolic Interpolation: This is the default option.
  • ViscCD Controls AstroBEAR's numerical viscosity options. Viscosity was originally included in AstroBEAR to get rid of carbuncles, but now the local oscillation filter (see lApplyLOF below) provides a more efficient means of doing so. Nevertheless, ViscCD is still available and currently has two options:
    • 0 -- NO_VISCOSITY: The default option, this value turns viscosity off.
    • 2 -- H_VISCOSITY: Turns viscosity on, (hopefully) preventing carbuncles.
  • lApplyLOF When this flag is set to true, AstroBEAR applies a local oscillation filter to prevent the formation of carbuncles.
  • LOF_ALPHA Sets the strength of the local oscillation filter. Higher values mean a stronger filter, while a value of 0 is equivalent to having no oscillation filter. The default value for LOF_ALPHA is 0.75.
  • iTracer: Controls the type of tracer fields used by the solver. Note that this does not actually activate the tracer fields, it merely controls their behavior. To turn on tracers, set the NrTracerVars parameter in physics.data to something greater than 0.
    • 0 -- Conservative: Tracer values in a given cell are constrained from 0 to density. If you do not intend to use tracers, then select this option.
    • 1 -- Limited Lagrangian: Tracer values are constrained between 0 and 1

Note that these settings apply to all tracer fields—AstroBEAR does not allow users to mix conservative and Lagrangian tracers in one problem.

Note: See TracWiki for help on using the wiki.