Parameter reference#
Every key the library reads from the parameter file, with its default. Keys are addressed by their path, both in
C++ (json.get_double("/timestepping/output_dt")) and on the command line (-sd /timestepping/output_dt=0.05).
The /physical section belongs to the model and is not listed here.
A missing key falls back to its default. For keys marked (warns) the default is a poor guess for most flows, and
the run warns once when it uses it. ./app --generate-parameter-file writes a parameter.toml containing the
commonly used keys at their defaults (--gen-json for JSON).
Command line#
flag |
effect |
|---|---|
|
Parameter file. |
|
Override a double, integer, boolean or string parameter. An existing key keeps its type; a missing one is created with a warning. |
|
Write a default parameter file named like the parameter file and exit. An existing file is never replaced. |
|
Continue from a snapshot, taking the configuration from it; see Snapshots. Cannot be combined with |
|
Set the snapshot schedule from the command line. |
|
Print the usage. |
/discretization#
key |
type |
default |
meaning |
|---|---|---|---|
|
uint |
3 (warns); 0 for FV |
Polynomial degree of the finite elements. |
|
uint |
0 |
Extra quadrature points per direction in the assembly. |
|
uint |
1 |
Sub-cells per cell in the VTK output. |
|
uint |
0 |
CPU threads for assembly and CPU integrators; 0 = automatic. See CPU threads for what overrides it. |
|
double |
1e-12 |
Tolerance of the search for the equation of motion (EoM), the minimum of the potential. |
|
uint |
100 |
Iteration limit of the EoM search within a cell. |
|
double |
-1 |
Smoothing of the reconstructed potential used by the EoM search: -1 automatic (twice the smallest initial cell width), 0 off, > 0 a length in field units. |
|
double |
1e-12 |
When a point counts as lying on a cell boundary in the EoM search. |
|
double |
1e-4 |
Sufficient-decrease coefficient of the EoM line search, in (0, 1). |
|
uint |
20 |
Step halvings allowed in the EoM line search. |
|
uint |
2 |
Polynomial order (2 or 3) of the potential reconstructed for output and extractors. |
/discretization/grid#
key |
type |
default |
meaning |
|---|---|---|---|
|
string |
(warns) |
Cells along axis 0: comma-separated blocks |
|
string |
(warns) |
The same for axes 1 and 2; only read in 2D / 3D. |
|
uint |
0 |
Global refinements of the initial mesh. |
/discretization/adaptivity#
Only used if main passes an HAdaptivity to the timestepper (see Tutorial 7).
key |
type |
default |
meaning |
|---|---|---|---|
|
double |
0 |
RG time of the first adaptation. |
|
double |
0.2 |
RG time between adaptations. |
|
uint |
0 |
Maximum refinement level of a cell, counted from the coarse grid (so with |
|
string |
|
|
|
bool |
true |
Add each cell’s indicator growth since the previous adaptation, so that forming structures are refined one adaptation earlier. |
|
string |
|
|
|
double |
3e-4 |
|
|
double |
|
|
|
double |
0.1 |
|
|
double |
0.05 |
|
|
uint |
2 |
Layers of cells around a refined cell that are not coarsened. |
|
uint |
10 |
Cells created by the last that many mesh changes are not coarsened. |
/discretization/batched#
key |
type |
default |
meaning |
|---|---|---|---|
|
uint |
≈ 256 MB of AD data (FEM), 16 MB (KT) |
Points per stacked evaluation when computing Jacobians with |
/timestepping#
key |
type |
default |
meaning |
|---|---|---|---|
|
double |
0.1 |
RG-time interval between output frames. |
|
double |
— |
Not read by the library; by convention the end time applications pass to |
|
uint |
0 |
Wall-time limit in minutes, counted from |
/timestepping/implicit#
Read by IDA, implicit Euler, TR-BDF2 and the FE part of the IDA hybrids.
key |
type |
default |
meaning |
|---|---|---|---|
|
double |
1e-13 (warns) |
Absolute local error tolerance. |
|
double |
1e-7 (warns) |
Relative local error tolerance. |
|
double |
1e-4 |
Initial step. |
|
double |
1e-14 |
Smallest step; a stepper stuck below it aborts the run. |
|
double |
1 |
Largest step. |
|
uint |
3 |
Newton iterations per IDA step attempt. |
|
bool |
true |
Refine every |
|
double |
4 |
For models with per-dof tolerances: IDA adopts new tolerances when one would be tighter or looser than the current one by more than this factor. |
|
bool |
false |
Write |
Debugging aids for IDA, all off by default: ida_callback_trace (print every failed callback at verbosity ≥ 5,
with ida_callback_trace_min_t, ida_callback_trace_max_lines, ida_callback_trace_successes) and
ida_error_dof_diagnostics (report the ida_error_dof_diagnostics_top_n dofs with the largest error on rejected
steps).
/timestepping/explicit#
Read by the explicit steppers and the variable part of the IDA hybrids.
key |
type |
default |
meaning |
|---|---|---|---|
|
double |
0.01 (warns) |
Fixed-step steppers: the step. BoostRK: the initial step. ABM: the largest step. |
|
double |
1e-16 |
Smallest step of the ABM error control. |
|
double |
1e16 |
Largest explicit step. |
|
double |
1e-3 (warns) |
Absolute local error tolerance. |
|
double |
1e-3 (warns) |
Relative local error tolerance. |
|
bool |
true |
ABM: adapt the step to the tolerances; |
|
bool |
true |
BoostRK: abort when the step size collapses. |
|
int |
1 |
IDA + ABM hybrid: how IDA sees the variables, 0 lag, 1 stagger, 2 predict. |
TimeStepperSUNDIALS_IDA_BoostABM throws unless minimal_dt <= dt <= maximal_dt in this section.
/timestepping/snapshots#
key |
type |
default |
meaning |
|---|---|---|---|
|
list of doubles |
none |
RG scales at which to write snapshots; needs |
|
list of doubles |
none |
RG times at which to write snapshots. |
|
bool |
true |
Move snapshots onto the nearest output time. |
|
bool |
false |
End the run after the last snapshot. |
/integration#
Read by the momentum integrators when they are constructed.
key |
type |
default |
meaning |
|---|---|---|---|
|
uint |
32 (warns) |
Quadrature order of the radial loop-momentum integral. |
|
uint |
8 (warns) |
Quadrature orders of the angular integrals, for integrators that have them. |
|
double |
1e-5 (warns) |
Relative tolerance for choosing the upper end of the radial integral, beyond which the regulator insertion is negligible. |
|
double |
0.8 |
Factor on all orders for the AD (Jacobian) evaluations. |
|
uint |
64 |
Size of the frequency quadrature in vacuum integrals. |
|
double |
1 |
Accuracy factor for numerical Matsubara sums. |
|
uint |
8, 128 |
Bounds on the number of Matsubara terms summed explicitly. |
|
bool |
kernel’s choice |
Allow ( |
|
double |
1 |
Factor on the frequency cutoff of the exact sum. |
|
double, bool |
0, false |
Distribution of |
Lattice integrators additionally read /integration/lattice/{N_t, N_s, a_t, a_s, q0_symmetric}.
/output#
See Output.
key |
type |
default |
meaning |
|---|---|---|---|
|
string |
|
Directory of all output. |
|
string |
|
Prefix of all output files. |
|
string |
value of |
Subdirectory of |
|
bool |
true |
Write VTK output. |
|
bool |
true |
Write HDF5 output. |
|
bool |
false |
Also write |
|
int |
0 |
Console progress, 0–5, see Output. |
|
int |
2 |
Lowest severity written to |
|
uint |
2 |
VTK frames that may be queued for writing. |
|
uint |
8192 |
Capacity of the asynchronous log queue. |
Environment variables#
variable |
meaning |
|---|---|
|
CPU thread count; overrides everything else, see CPU threads. |
|
Distribution of |
Ignored keys#
/discretization/mesh_workers, /discretization/batch_size and /discretization/kokkos_threads are no longer
used; the run warns if it finds them. A /restart section in a parameter file is an error: use --restart.