This page is a list of all user parameters in PRISMS-PF. Here, we document them in tables organized by subsection with names, default values, acceptable values (patterns), descriptions, and aliases.
Subsections that end in 0 are number in the parameter file. You can as many of these as you would like. By default you have Numbers::default_subsections. To change have many subsections you have, you can write something like the following.
Additionally, all the parameters have aliases for a handful of common case styles (e.g., PascalCase, snake_case, Upper Case, and Pascal_Snake_Case).
- Note
- You can copy parameter names to clipboard by clicking on them!
| Parameter | Default | Pattern | Description | Aliases |
| end time | 0.0 | [Double 0...MAX_DOUBLE (inclusive)] | The value of simulated time where the simulation ends. Overrides final increment if greater than 0. | final time tf |
| final increment | 0 | [Integer range 0...2147483647 (inclusive)] | The final increment for the simulation. | end increment final iteration increments iterations last increment max iteration n steps num steps number of steps number steps steps |
| global refinement | 0 | [Integer range 0...2147483647 (inclusive)] | The number of initial refinements of the coarse mesh. | |
| max refinement | 0 | [Integer range 0...2147483647 (inclusive)] | The maximum level of refinement. | |
| mesh adaptivity | false | [Bool] | Whether to enable mesh adaptivity. | |
| mesh type | rectangular | [Selection rectangular|spherical|custom ] | The type of mesh to use. | |
| min refinement | 0 | [Integer range 0...2147483647 (inclusive)] | The minimum level of refinement. | |
| read initial conditions from file | false | [Bool] | Whether to read any initial conditions from file. | |
| remeshing period | 2147483647 | [Integer range 1...2147483647 (inclusive)] | The number of time steps between mesh refinement operations. | |
| start time | 0.0 | [Double 0...MAX_DOUBLE (inclusive)] | The value of simulated time where the simulation begins. | begin time t0 |
| time step | 0.0 | [Double 0...MAX_DOUBLE (inclusive)] | The time step size for the simulation. | dt timestep |
Rectangular mesh
| Parameter | Default | Pattern | Description | Aliases |
| x lower bound | 0.0 | [Double -MAX_DOUBLE...MAX_DOUBLE (inclusive)] | The lower bound of the domain in the x-direction. | lower bound x |
| x periodic | false | [Bool] | Whether to have periodicity in the x-direction.
- Warning
- If you set a certain direction to be period, make sure the corresponding boundary condition is
NATURAL.
| periodic x |
| x size | 0.0 | [Double -MAX_DOUBLE...MAX_DOUBLE (inclusive)] | The upper of the domain in the x-direction. When the lower bound is the origin, this corresponds to the size of the domain.
- Warning
- When setting lower bound, this parameter no longer corresponds to the size of the domain.
| size x upper bound x x upper bound |
| x subdivisions | 1 | [Integer range 1...2147483647 (inclusive)] | The number of mesh subdivisions in the x-direction.
- Warning
- Be careful when using many subdivisions as they affect the coarse mesh! This is important because the coarse mesh is stored on every processor. Don't use subdivisions in place of refinements! They are not the same.
| subdivisions x |
| y lower bound | 0.0 | [Double -MAX_DOUBLE...MAX_DOUBLE (inclusive)] | The lower bound of the domain in the y-direction. | lower bound y |
| y periodic | false | [Bool] | Whether to have periodicity in the y-direction.
- Warning
- If you set a certain direction to be period, make sure the corresponding boundary condition is
NATURAL.
| periodic y |
| y size | 0.0 | [Double -MAX_DOUBLE...MAX_DOUBLE (inclusive)] | The upper of the domain in the y-direction. When the lower bound is the origin, this corresponds to the size of the domain.
- Warning
- When setting lower bound, this parameter no longer corresponds to the size of the domain.
| size y upper bound y y upper bound |
| y subdivisions | 1 | [Integer range 1...2147483647 (inclusive)] | The number of mesh subdivisions in the y-direction.
- Warning
- Be careful when using many subdivisions as they affect the coarse mesh! This is important because the coarse mesh is stored on every processor. Don't use subdivisions in place of refinements! They are not the same.
| subdivisions y |
| z lower bound | 0.0 | [Double -MAX_DOUBLE...MAX_DOUBLE (inclusive)] | The lower bound of the domain in the z-direction. | lower bound z |
| z periodic | false | [Bool] | Whether to have periodicity in the z-direction.
- Warning
- If you set a certain direction to be period, make sure the corresponding boundary condition is
NATURAL.
| periodic z |
| z size | 0.0 | [Double -MAX_DOUBLE...MAX_DOUBLE (inclusive)] | The upper of the domain in the z-direction. When the lower bound is the origin, this corresponds to the size of the domain.
- Warning
- When setting lower bound, this parameter no longer corresponds to the size of the domain.
| size z upper bound z z upper bound |
| z subdivisions | 1 | [Integer range 1...2147483647 (inclusive)] | The number of mesh subdivisions in the z-direction.
- Warning
- Be careful when using many subdivisions as they affect the coarse mesh! This is important because the coarse mesh is stored on every processor. Don't use subdivisions in place of refinements! They are not the same.
| subdivisions z |
Spherical mesh
| Parameter | Default | Pattern | Description | Aliases |
| radius | 0 | [Double 0...MAX_DOUBLE (inclusive)] | The radius of the domain. | |
boundary conditions: 0
| Parameter | Default | Pattern | Description | Aliases |
| conditions | | [List of <[Anything]> of length 0...2147483647 (inclusive)] | List of conditions. | |
| time dependent | false | [Bool] | Whether these conditions vary in time. | |
| variables | | [List of <[Anything]> of length 0...2147483647 (inclusive)] | The names of the fields that will use these constraints. | |
checkpoint
| Parameter | Default | Pattern | Description | Aliases |
| condition | EQUAL_SPACING | [Selection EQUAL_SPACING|LOG_SPACING|N_PER_DECADE|LIST ] | The spacing type for outputting the solution fields. | |
| directory | solutions | [Anything] | The name of the output directory. | folder name |
| file name | solution | [Anything] | The prefix of the output files, before the time step and processor info are added. | |
| list | 0 | [List of <[Integer range 0...2147483647 (inclusive)]> of length 0...2147483647 (inclusive)] | The list of time steps to output. Used for the LIST type only and must be comma delimited. | |
| load from checkpoint | false | [Bool] | Whether to load from a checkpoint created during a previous simulation. | |
| number | 10 | [Integer range 0...2147483647 (inclusive)] | The number of outputs (or number of outputs per decade for the N_PER_DECADE type). | |
input file: 0
| Parameter | Default | Pattern | Description | Aliases |
| file name | | [Anything] | The file name to load from for each variable. | |
| file variables | | [List of <[Anything]> of length 0...2147483647 (inclusive)] | The names of the fields in the file. | |
| format | vtu | [Selection vtk|vtu|vti|pvtu|binary ] | The type of grid in the file. | |
| simulation variables | | [List of <[Anything]> of length 0...2147483647 (inclusive)] | The correspond names of the fields in the simulation. | |
| x data points | 0 | [Integer range 0...2147483647 (inclusive)] | The number of data points in the x-direction. | |
| y data points | 0 | [Integer range 0...2147483647 (inclusive)] | The number of data points in the y-direction. | |
| z data points | 0 | [Integer range 0...2147483647 (inclusive)] | The number of data points in the z-direction. | |
linear solver parameters: 0
| Parameter | Default | Pattern | Description | Aliases |
| max iterations | 100 | [Integer range 1...2147483647 (inclusive)] | The maximum number of linear solver iterations before the loop is stopped. | |
| mg depth | 1 | [Integer range 1...2147483647 (inclusive)] | The depth of the multigrid hierarchy. | |
| preconditioner type | None | [Selection None|Chebyshev|GMG|none|chebyshev|gmg|MG|mg|multigrid ] | The preconditioner type for the linear solver. | preconditioner |
| solver type | cg | [Selection richardson|cg|bicgstab|gmres|fgmres|minres ] | The type of iterative solver to use for linear solves. | linear solver linear solver type type |
| solver_ids | | [List of <[Anything]> of length 0...2147483647 (inclusive)] | The ids of the solvers that will use these settings. | solve block ids solve blocks solver ids |
| tolerance type | AbsoluteResidual | [Selection AbsoluteResidual|RMSEPerField|IntegratedPerField|RMSETotal|IntegratedTotal ] | The tolerance type for the linear solver. | |
| tolerance value | 1.0e-10 | [Double 0...MAX_DOUBLE (inclusive)] | The value of for the linear solver tolerance. | tolerance |
linear solver parameters: 0.BiCGStab
| Parameter | Default | Pattern | Description | Aliases |
| breakdown | 0.000000 | [Double -MAX_DOUBLE...MAX_DOUBLE (inclusive)] | Breakdown threshold. | |
| exact residual | true | [Bool] | Flag for exact computation of residual. | |
linear solver parameters: 0.Chebyshev
| Parameter | Default | Pattern | Description | Aliases |
| eigenvalue cg iterations | 10 | [Integer range 1...2147483647 (inclusive)] | The maximum number of CG iterations used to find the maximum eigenvalue. | |
| smoother degree | 5 | [Integer range 1...2147483647 (inclusive)] | The smoother polynomial degree. | |
| smoothing range | 15.0 | [Double 2.22507e-308...MAX_DOUBLE (inclusive)] | The smoothing range for eigenvalues. Try λ_max / λ_min. | |
linear solver parameters: 0.GMRES
| Parameter | Default | Pattern | Description | Aliases |
| batched mode | false | [Bool] | Whether to use batched mode in GMRES. | |
| force re-orthogonalization | false | [Bool] | Whether to force re-orthogonalization of the Krylov basis in GMRES. | |
| max basis size | 30 | [Integer range 1...2147483647 (inclusive)] | The maximum size of the Krylov basis used in GMRES before restarting. | |
| orthogonalization strategy | delayed_classical_gram_schmidt | [Selection classical_gram_schmidt|modified_gram_schmidt|delayed_classical_gram_schmidt ] | The orthogonalization strategy to use in GMRES. | |
| right preconditioning | false | [Bool] | Whether to use right preconditioning. | |
| use default residual | true | [Bool] | Whether to use the default residual computation in GMRES. | |
linear solver parameters: 0.Richardson
| Parameter | Default | Pattern | Description | Aliases |
| omega | 1.0 | [Double -MAX_DOUBLE...MAX_DOUBLE (inclusive)] | Damping factor. | |
| use preconditioned residual | false | [Bool] | Whether to use the preconditioned residual l2 norm in the stopping criterion. | |
miscellaneous
| Parameter | Default | Pattern | Description | Aliases |
| random seed | 2025 | [Integer range 0...2147483647 (inclusive)] | The random seed for the simulation. This is used to initialize the random number generator. | |
newton solver parameters: 0
| Parameter | Default | Pattern | Description | Aliases |
| max iterations | 100 | [Integer range 1...2147483647 (inclusive)] | The maximum number of nonlinear solver iterations before the loop is stopped. | |
| solver_ids | | [List of <[Anything]> of length 0...2147483647 (inclusive)] | The ids of the solvers that will use these settings. | solve block ids solve blocks solver ids |
| step size | 1.0 | [Double 0...MAX_DOUBLE (inclusive)] | The constant damping value to be used if the backtrace line-search approach isn't used. | |
| tolerance value | 1.0e-10 | [Double 0...MAX_DOUBLE (inclusive)] | The value of for the nonlinear solver tolerance. | tolerance |
nucleation
| Parameter | Default | Pattern | Description | Aliases |
| nucleation period | 2147483647 | [Integer range 1...2147483647 (inclusive)] | The number of increments between nucleation attempts. | |
| nucleus exclusion distance | 0.0 | [Double -MAX_DOUBLE...MAX_DOUBLE (inclusive)] | The minimum distance between nuclei. | exclusion distance exclusion radius nucleus exclusion radius |
| refinement radius | 0.0 | [Double 0...MAX_DOUBLE (inclusive)] | The radius around a nucleus in which AMR is applied. | |
| same field nucleus exclusion distance | 0.0 | [Double -MAX_DOUBLE...MAX_DOUBLE (inclusive)] | The minimum distance between nuclei. | same field exclusion distance same field exclusion radius same field nucleus exclusion radius |
| seeding increments | 1 | [Integer range 1...2147483647 (inclusive)] | The number of increments over which nuclei are considered "active" and refinement and exclusion zones are applied. Same as "seeding time" but in increments. | |
| seeding time | 0.0 | [Double 0...MAX_DOUBLE (inclusive)] | The time duration over which nuclei are considered "active" and refinement and exclusion zones are applied. Same as "seeding increments" but in time. | |
output
| Parameter | Default | Pattern | Description | Aliases |
| compression level | default | [Selection default|speed|size|none ] | The compression level for output. | |
| condition | EQUAL_SPACING | [Selection EQUAL_SPACING|LOG_SPACING|N_PER_DECADE ] | The spacing type for outputting the solution fields. | |
| directory | solutions | [Anything] | The name of the output directory. | folder name |
| file name | solution | [Anything] | The prefix of the output files, before the time step and processor info are added. | |
| file type | vtu | [Selection vtu|vtk|pvtu|xdmf ] | The output file type (either vtu, pvtu, vtk, or xdmf). | |
| list | 0 | [List of <[Integer range 0...2147483647 (inclusive)]> of length 0...2147483647 (inclusive)] | Comma-separated list of increments to output on. | |
| number | 10 | [Integer range 0...2147483647 (inclusive)] | The number of outputs for EQUAL_SPACING and for LOG_SPACING or number of outputs per decade for N_PER_DECADE. | |
| subdivisions | 0 | [Integer range 0...2147483647 (inclusive)] | The number of subdivisions to apply to the mesh when building output patches. If 0, the degree is used. | |
| variables | | [List of <[Anything]> of length 0...2147483647 (inclusive)] | The list of the fields to output. Must be comma delimited. Additionally, for the output of left-hand side and old fields, they must follow the same delimiters that are used in dependency sets. In other words, something like set variables = n1, old_1(n1), lhs(n1). | |
refinement criterion: 0
| Parameter | Default | Pattern | Description | Aliases |
| gradient magnitude lower bound | 2147483647 | [Double 0...MAX_DOUBLE (inclusive)] | The magnitude of the gradient above which the mesh should be refined. | gradient lower bound |
| type | none | [Selection none|value|gradient|value_and_gradient ] | The type of criterion used to determine if a cell should be refined. The options are none, value, gradient, value_and_gradient. | |
| value lower bound | 0.0 | [Double -MAX_DOUBLE...MAX_DOUBLE (inclusive)] | The lower bound for the window determining where the mesh should be refined. | |
| value upper bound | 0.0 | [Double -MAX_DOUBLE...MAX_DOUBLE (inclusive)] | The upper bound for the window determining where the mesh should be refined. | |
| variables | | [List of <[Anything]> of length 0...2147483647 (inclusive)] | The names of the fields that will use this refinement criterion. | |