Generated 19-02-2018 10:05:18 UTC

referenced by:

Root

Description

Root record of JSON input for Flow123d.

Keys
    • String (generic)

    flow123d_version

    obligatory

    Version of Flow123d for which the input file was created.Flow123d only warn about version incompatibility. However, external tools may use this information to provide conversion of the input file to the structure required by another version of Flow123d.

  • problem

    obligatory

    Simulation problem to be solved.

    • Bool (generic)

    pause_after_run

    value at declaration = False

    If true, the program will wait for key press before it terminates.

used in: referenced by:

Coupling_Base

Description

The root record of description of particular the problem to solve.

Implementations

Coupling_Sequential

Implements abstract type:
Description

Record with data for a general sequential coupling.\n

Keys
    • String (generic)

    description

    optional

    Short description of the solved problem.\nIs displayed in the main log, and possibly in other text output files.

  • mesh

    obligatory

    Computational mesh common to all equations.

  • time

    optional

    Simulation time frame and time step.

  • flow_equation

    obligatory

    Flow equation, provides the velocity field as a result.

  • Transport of soluted substances, depends on the velocity field from a Flow equation.

  • Heat transfer, depends on the velocity field from a Flow equation.

Mesh

Constructible from key: mesh_file
Description

Record with mesh related data.

Keys
    • file nameinput

    mesh_file

    obligatory

    Input file with mesh description.

  • regions

    optional

    List of additional region and region set definitions not contained in the mesh. There are three region sets implicitly defined:\n\n- ALL (all regions of the mesh)\n- .BOUNDARY (all boundary regions)\n- BULK (all bulk regions)

  • partitioning

    value at declaration = any_neighboring

    Parameters of mesh partitioning algorithms.\n

    • Bool (generic)

    print_regions

    value at declaration = True

    If true, print table of all used regions.

  • intersection_search

    value at declaration = BIHsearch

    Search algorithm for element intersections.

    • Double [0, +inf)

    global_observe_search_radius

    value at declaration = 0.001

    Maximal distance of observe point from Mesh relative to its size (bounding box). Value is global and it can be rewrite at arbitrary ObservePoint by setting the key search_radius.

Region

Description

Abstract record for Region.

Implementations
  • Elementary region declared by ID.Allows to create new region with given id and labelor specify existing region by id which will be renamed.
  • Gives a new name to an elementary regionwith original name (in the mesh file) given by ```mesh_label.```
  • Elementary region declared by a list of elements. The new region is assigned to the list of elements spefied by the key```element_list```.
  • Defines region (set) as a union of given two or more regions. Regions can be given by names or IDs or both ways together.
  • Defines region (set) as a difference of given pair of regions.
  • Defines region (set) as an intersection of given two or more regions.
used in:

From_Id

Implements abstract type:
Description

Elementary region declared by ID.Allows to create new region with given id and labelor specify existing region by id which will be renamed.

Keys
    • String (generic)

    name

    obligatory

    Label (name) of the region. Has to be unique in one mesh.\n

    • Integer [0, INT]

    id

    obligatory

    The ID of the region to which you assign label.

    • Integer [0, INT]

    dim

    optional

    The dim of the region to which you assign label. Value is taken into account only if new region is created.

used in:

From_Label

Implements abstract type:
Description

Gives a new name to an elementary regionwith original name (in the mesh file) given by mesh_label.

Keys
    • String (generic)

    name

    obligatory

    New label (name) of the region. Has to be unique in one mesh.

    • String (generic)

    mesh_label

    obligatory

    The mesh_label is e.g. physical volume name in GMSH format.

used in:

From_Elements

Implements abstract type:
Description

Elementary region declared by a list of elements. The new region is assigned to the list of elements spefied by the keyelement_list.

Keys
    • String (generic)

    name

    obligatory

    Label (name) of the region. Has to be unique in one mesh.\n

    • Integer [0, INT]

    id

    optional

    The ID of the region. If unset a unique ID will be generated automatically.

    • Array [1, UINT]
    • of INTEGER

    element_list

    obligatory

    List of IDs of elements.

used in:

Union

Implements abstract type:
Description

Defines region (set) as a union of given two or more regions. Regions can be given by names or IDs or both ways together.

Keys
    • String (generic)

    name

    obligatory

    Label (name) of the region. Has to be unique in one mesh.\n

    • Array [0, UINT]
    • of INTEGER

    region_ids

    optional

    List of region ID numbers that has to be added to the region set.

    • Array [0, UINT]
    • of STRING

    regions

    optional

    Defines region as a union of given pair of regions.

used in:

Difference

Implements abstract type:
Description

Defines region (set) as a difference of given pair of regions.

Keys
    • String (generic)

    name

    obligatory

    Label (name) of the region. Has to be unique in one mesh.

    • Array [2, 2]
    • of STRING

    regions

    obligatory

    List of exactly two regions given by their names.

used in:

Intersection

Implements abstract type:
Description

Defines region (set) as an intersection of given two or more regions.

Keys
    • String (generic)

    name

    obligatory

    Label (name) of the region. Has to be unique in one mesh.\n

    • Array [2, UINT]
    • of STRING

    regions

    obligatory

    List of two or more regions given by their names.

used in: referenced by:

Partition

Constructible from key: graph_type
Description

Setting for various types of mesh partitioning.

Keys
  • tool

    value at declaration = METIS

    Software package used for partitioning. See corresponding selection.

  • graph_type

    value at declaration = any_neighboring

    Algorithm for generating graph and its weights from a multidimensional mesh.

used in:

PartTool

Description

Select the partitioning tool to use.

Values
  • Use PETSc interface to various partitioning tools.

  • Use direct interface to Metis.

used in:

GraphType

Description

Different algorithms to make the sparse graph with weighted edges\nfrom the multidimensional mesh. Main difference is dealing with \nneighborings of elements of different dimension.

Values
used in:

Types of search algorithm for finding intersection candidates.

Description
no description provided
Values
  • Use BIH for finding initial candidates, then continue by prolongation.

  • Use BIH for finding all candidates.

  • Use bounding boxes for finding initial candidates, then continue by prolongation.

TimeGovernor

Constructible from key: max_dt
Description

Setting of the simulation time. (can be specific to one equation)

Keys
    • Double (-inf, +inf)

    start_time

    value at declaration = 0.0

    Start time of the simulation.

    • Double (-inf, +inf)

    end_time

    value at declaration = 5e+17

    End time of the simulation. Default value is more then age of universe in seconds.

    • Double [0, +inf)

    init_dt

    value at declaration = 0.0

    Initial guess for the time step.\nOnly useful for equations that use adaptive time stepping.If set to 0.0, the time step is determined in fully autonomous way if the equation supports it.

    • Double [0, +inf)

    min_dt

    value at read time = Machine precision.

    Soft lower limit for the time step. Equation using adaptive time stepping can notsuggest smaller time step, but actual time step could be smaller in order to match prescribed input or output times.

    • Double [0, +inf)

    max_dt

    value at read time = Whole time of the simulation if specified, infinity else.

    Hard upper limit for the time step. Actual length of the time step is also limitedby input and output times.

DarcyFlow

Description

Darcy flow model. Abstraction of various porous media flow models.

Implementations

Flow_Darcy_MH

Implements abstract type:
Description

Mixed-Hybrid solver for STEADY saturated Darcy flow.

Keys

Flow_Darcy_MH_Data

Description

Record to set fields of the equation.\nThe fields are set only on the domain specified by one of the keys: 'region', 'rid'\nand after the time given by the key 'time'. The field setting can be overridden by\n any Flow_Darcy_MH_Data record that comes later in the boundary data array.

Keys
    • Array [1, UINT]
    • of STRING

    region

    optional

    Labels of the regions where to set fields.

    • Integer [0, INT]

    rid

    optional

    ID of the region where to set fields.

    • Double [0, +inf)

    time

    value at declaration = 0.0

    Apply field setting in this record after this time.\nThese times have to form an increasing sequence.

  • anisotropy

    optional

    Anisotropy of the conductivity tensor. {$[-]$}

    • instance of ABSTRACT
    • generic typeField_R3_to_R
    • parameter element_input_type = DOUBLE

    Complement dimension parameter (cross section for 1D, thickness for 2D). {$[m^{3-d}]$}

    • instance of ABSTRACT
    • generic typeField_R3_to_R
    • parameter element_input_type = DOUBLE

    conductivity

    optional

    Isotropic conductivity scalar. {$[ms^{-1}]$}

    • instance of ABSTRACT
    • generic typeField_R3_to_R
    • parameter element_input_type = DOUBLE

    sigma

    optional

    Transition coefficient between dimensions. {$[-]$}

    • instance of ABSTRACT
    • generic typeField_R3_to_R
    • parameter element_input_type = DOUBLE

    Water source density. {$[s^{-1}]$}

  • bc_type

    optional

    Boundary condition type, possible values: {$[-]$}

    • instance of ABSTRACT
    • generic typeField_R3_to_R
    • parameter element_input_type = DOUBLE

    bc_pressure

    optional

    Prescribed pressure value on the boundary. Used for all values of 'bc_type' except for 'none' and 'seepage'. See documentation of 'bc_type' for exact meaning of 'bc_pressure' in individual boundary condition types. {$[m]$}

    • instance of ABSTRACT
    • generic typeField_R3_to_R
    • parameter element_input_type = DOUBLE

    bc_flux

    optional

    Incoming water boundary flux. Used for bc_types : 'total_flux', 'seepage', 'river'. {$[m^{4-d}s^{-1}]$}

    • instance of ABSTRACT
    • generic typeField_R3_to_R
    • parameter element_input_type = DOUBLE

    Conductivity coefficient in the 'total_flux' or the 'river' boundary condition type. {$[m^{3-d}s^{-1}]$}

    • instance of ABSTRACT
    • generic typeField_R3_to_R
    • parameter element_input_type = DOUBLE

    Critical switch pressure for 'seepage' and 'river' boundary conditions. {$[m]$}

    • instance of ABSTRACT
    • generic typeField_R3_to_R
    • parameter element_input_type = DOUBLE

    Initial condition for pressure {$[m]$}

    • instance of ABSTRACT
    • generic typeField_R3_to_R
    • parameter element_input_type = DOUBLE

    storativity

    optional

    Storativity. {$[m^{-1}]$}

    • instance of ABSTRACT
    • generic typeField_R3_to_R
    • parameter element_input_type = DOUBLE

    Boundary piezometric head for BC types: dirichlet, robin, and river.

    • instance of ABSTRACT
    • generic typeField_R3_to_R
    • parameter element_input_type = DOUBLE

    Boundary switch piezometric head for BC types: seepage, river.

    • instance of ABSTRACT
    • generic typeField_R3_to_R
    • parameter element_input_type = DOUBLE

    Initial condition for the pressure given as the piezometric head.

Field_R3_to_R[3,3]

This abstract is root of the generic tree
Default descendant: FieldConstant
Description

Abstract for all time-space functions.

Implementations
  • R3_to_R[3,3] Field given by a Python script.
  • R3_to_R[3,3] Field constant in space.
  • R3_to_R[3,3] Field given by runtime interpreted formula.
  • R3_to_R[3,3] Field piecewise constant on mesh elements.
  • R3_to_R[3,3] Field interpolated from external mesh data and piecewise constant on mesh elements.
  • R3_to_R[3,3] Field time-dependent function in space.
  • R3_to_R[3,3] Field given by finite element approximation.
Generic parameters
  • element_input_type

used in: referenced by:

FieldPython

Implements abstract type:
Description

R3_to_R[3,3] Field given by a Python script.

Keys
  • unit

    optional

    Unit of the field values provided in the main input file, in the external file, or by a function (FieldPython).

    • String (generic)

    script_string

    value at read time = Obligatory if 'script_file' is not given.

    Python script given as in place string

    • file nameinput

    script_file

    value at read time = Obligatory if 'script_striong' is not given.

    Python script given as external file

    • String (generic)

    function

    obligatory

    Function in the given script that returns tuple containing components of the return type.\nFor NxM tensor values: tensor(row,col) = tuple( M*row + col ).

Unit

Constructible from key: unit_formula
Description

Specify unit of an input value. Evaluation of the unit formula results into a coeficient and a unit in terms of powers of base SI units. The unit must match expected SI unit of the value, while the value provided on the input is multiplied by the coefficient before further processing. The unit formula have a form:\n\n<UnitExpr>;<Variable>=<Number>*<UnitExpr>;...,\n\nwhere <Variable> is a variable name and <UnitExpr> is a units expression which consists of products and divisions of terms.\n\nA term has a form: <Base>^<N>, where <N> is an integer exponent and <Base> is either a base SI unit, a derived unit, or a variable defined in the same unit formula. Example, unit for the pressure head:\n\nMPa/rho/g_; rho = 990*kg*m^-3; g_ = 9.8*m*s^-2

Keys
    • String (generic)

    unit_formula

    obligatory

    Definition of unit.

used in: referenced by:

FieldConstant

Constructible from key: value
Implements abstract type:
Description

R3_to_R[3,3] Field constant in space.

Keys
  • unit

    optional

    Unit of the field values provided in the main input file, in the external file, or by a function (FieldPython).

    • Array [1, UINT]
    • of ARRAY

    value

    obligatory

    Value of the constant field. For vector values, you can use scalar value to enter constant vector. For square {$N\\times N$}-matrix values, you can use: - vector of size {$N$} to enter diagonal matrix\n\n - vector of size {$\\frac12N(N+1)$} to enter symmetric matrix (upper triangle, row by row)\n - scalar to enter multiple of the unit matrix.

Generic parameters
  • element_input_type

used in: referenced by:

FieldFormula

Constructible from key: value
Implements abstract type:
Description

R3_to_R[3,3] Field given by runtime interpreted formula.

Keys
  • unit

    optional

    Unit of the field values provided in the main input file, in the external file, or by a function (FieldPython).

    • Array [1, UINT]
    • of ARRAY

    value

    obligatory

    String, array of strings, or matrix of strings with formulas for individual entries of scalar, vector, or tensor value respectively.\nFor vector values, you can use just one string to enter homogeneous vector.\nFor square {$N\\times N$}-matrix values, you can use:\n\n - array of strings of size {$N$} to enter diagonal matrix\n - array of strings of size {$\\frac12N(N+1)$} to enter symmetric matrix (upper triangle, row by row)\n - just one string to enter (spatially variable) multiple of the unit matrix.\nFormula can contain variables x,y,z,t and usual operators and functions.

used in: referenced by:

FieldElementwise

Implements abstract type:
Description

R3_to_R[3,3] Field piecewise constant on mesh elements.

Keys
  • unit

    optional

    Unit of the field values provided in the main input file, in the external file, or by a function (FieldPython).

    • file nameinput

    mesh_data_file

    obligatory

    Input file with ASCII GMSH file format.

    • String (generic)

    field_name

    obligatory

    The values of the Field are read from the $ElementData section with field name given by this key.

used in: referenced by:

FieldInterpolatedP0

Implements abstract type:
Description

R3_to_R[3,3] Field interpolated from external mesh data and piecewise constant on mesh elements.

Keys
  • unit

    optional

    Unit of the field values provided in the main input file, in the external file, or by a function (FieldPython).

    • file nameinput

    mesh_data_file

    obligatory

    Input file with ASCII GMSH file format.

    • String (generic)

    field_name

    obligatory

    The values of the Field are read from the $ElementData section with field name given by this key.

used in: referenced by:

FieldTimeFunction

Constructible from key: time_function
Implements abstract type:
Description

R3_to_R[3,3] Field time-dependent function in space.

Keys
  • unit

    optional

    Unit of the field values provided in the main input file, in the external file, or by a function (FieldPython).

  • time_function

    obligatory

    Values of time series initialization of Field.

Generic parameters
  • element_input_type

used in: referenced by:

TableFunction

Constructible from key: values
Description

Allow set variable series initialization of Fields.

KeysGeneric parameters
  • element_input_type

used in:

IndependentValue

Description

Value of Field for independent variable.

Keys
    • Double [0, +inf)

    t

    obligatory

    Independent variable of stamp.

    • Array [1, UINT]
    • of ARRAY

    value

    obligatory

    Value of the field in given stamp.

Generic parameters
  • element_input_type

FieldFE

Implements abstract type:
Description

R3_to_R[3,3] Field given by finite element approximation.

Keys
  • unit

    optional

    Unit of the field values provided in the main input file, in the external file, or by a function (FieldPython).

    • file nameinput

    mesh_data_file

    obligatory

    GMSH mesh with data. Can be different from actual computational mesh.

  • Section where to find the field, some sections are specific to file format \npoint_data/node_data, cell_data/element_data, -/element_node_data, native/-.\nIf not given by user we try to find the field in all sections, but report error \nif it is found in more the one section.

    • String (generic)

    field_name

    obligatory

    The values of the Field are read from the $ElementData section with field name given by this key.

used in:

FE_discretization

Description

Specify the section in mesh input file where field data is listed.\nSome sections are specific to file format.

Values

Field_R3_to_R

This abstract is root of the generic tree
Default descendant: FieldConstant
Description

Abstract for all time-space functions.

ImplementationsGeneric parameters
  • element_input_type

used in: referenced by:

FieldPython

Implements abstract type:
Description

R3_to_R Field given by a Python script.

Keys
  • unit

    optional

    Unit of the field values provided in the main input file, in the external file, or by a function (FieldPython).

    • String (generic)

    script_string

    value at read time = Obligatory if 'script_file' is not given.

    Python script given as in place string

    • file nameinput

    script_file

    value at read time = Obligatory if 'script_striong' is not given.

    Python script given as external file

    • String (generic)

    function

    obligatory

    Function in the given script that returns tuple containing components of the return type.\nFor NxM tensor values: tensor(row,col) = tuple( M*row + col ).

FieldConstant

Constructible from key: value
Implements abstract type:
Description

R3_to_R Field constant in space.

Keys
  • unit

    optional

    Unit of the field values provided in the main input file, in the external file, or by a function (FieldPython).

  • value

    obligatory

    Value of the constant field. For vector values, you can use scalar value to enter constant vector. For square {$N\\times N$}-matrix values, you can use: - vector of size {$N$} to enter diagonal matrix\n\n - vector of size {$\\frac12N(N+1)$} to enter symmetric matrix (upper triangle, row by row)\n - scalar to enter multiple of the unit matrix.

Generic parameters
  • element_input_type

used in: referenced by:

FieldFormula

Constructible from key: value
Implements abstract type:
Description

R3_to_R Field given by runtime interpreted formula.

Keys
  • unit

    optional

    Unit of the field values provided in the main input file, in the external file, or by a function (FieldPython).

    • String (generic)

    value

    obligatory

    String, array of strings, or matrix of strings with formulas for individual entries of scalar, vector, or tensor value respectively.\nFor vector values, you can use just one string to enter homogeneous vector.\nFor square {$N\\times N$}-matrix values, you can use:\n\n - array of strings of size {$N$} to enter diagonal matrix\n - array of strings of size {$\\frac12N(N+1)$} to enter symmetric matrix (upper triangle, row by row)\n - just one string to enter (spatially variable) multiple of the unit matrix.\nFormula can contain variables x,y,z,t and usual operators and functions.

used in: referenced by:

FieldElementwise

Implements abstract type:
Description

R3_to_R Field piecewise constant on mesh elements.

Keys
  • unit

    optional

    Unit of the field values provided in the main input file, in the external file, or by a function (FieldPython).

    • file nameinput

    mesh_data_file

    obligatory

    Input file with ASCII GMSH file format.

    • String (generic)

    field_name

    obligatory

    The values of the Field are read from the $ElementData section with field name given by this key.

used in: referenced by:

FieldInterpolatedP0

Implements abstract type:
Description

R3_to_R Field interpolated from external mesh data and piecewise constant on mesh elements.

Keys
  • unit

    optional

    Unit of the field values provided in the main input file, in the external file, or by a function (FieldPython).

    • file nameinput

    mesh_data_file

    obligatory

    Input file with ASCII GMSH file format.

    • String (generic)

    field_name

    obligatory

    The values of the Field are read from the $ElementData section with field name given by this key.

used in: referenced by:

FieldTimeFunction

Constructible from key: time_function
Implements abstract type:
Description

R3_to_R Field time-dependent function in space.

Keys
  • unit

    optional

    Unit of the field values provided in the main input file, in the external file, or by a function (FieldPython).

  • time_function

    obligatory

    Values of time series initialization of Field.

Generic parameters
  • element_input_type

used in: referenced by:

TableFunction

Constructible from key: values
Description

Allow set variable series initialization of Fields.

KeysGeneric parameters
  • element_input_type

used in:

IndependentValue

Description

Value of Field for independent variable.

Keys
    • Double [0, +inf)

    t

    obligatory

    Independent variable of stamp.

  • value

    obligatory

    Value of the field in given stamp.

Generic parameters
  • element_input_type

used in: referenced by:

FieldFE

Implements abstract type:
Description

R3_to_R Field given by finite element approximation.

Keys
  • unit

    optional

    Unit of the field values provided in the main input file, in the external file, or by a function (FieldPython).

    • file nameinput

    mesh_data_file

    obligatory

    GMSH mesh with data. Can be different from actual computational mesh.

  • Section where to find the field, some sections are specific to file format \npoint_data/node_data, cell_data/element_data, -/element_node_data, native/-.\nIf not given by user we try to find the field in all sections, but report error \nif it is found in more the one section.

    • String (generic)

    field_name

    obligatory

    The values of the Field are read from the $ElementData section with field name given by this key.

used in:

Flow_Darcy_BC_Type

Description
no description provided
Values
  • Homogeneous Neumann boundary condition. Zero flux

  • Dirichlet boundary condition. Specify the pressure head through the ''bc_pressure'' field or the piezometric head through the ''bc_piezo_head'' field.

  • Flux boundary condition (combines Neumann and Robin type). Water inflow equal to {$ \\delta_d(q_d^N + \\sigma_d (h_d^R - h_d) )$}. Specify the water inflow by the 'bc_flux' field, the transition coefficient by 'bc_robin_sigma' and the reference pressure head or pieozmetric head through ''bc_pressure'' or ''bc_piezo_head'' respectively.

  • Seepage face boundary condition. Pressure and inflow bounded from above. Boundary with potential seepage flow is described by the pair of inequalities: {$h_d \\le h_d^D$} and {$ -\\boldsymbol q_d\\cdot\\boldsymbol n \\le \\delta q_d^N$}, where the equality holds in at least one of them. Caution. Setting {$q_d^N$} strictly negative may lead to an ill posed problem since a positive outflow is enforced. Parameters {$h_d^D$} and {$q_d^N$} are given by fields bc_switch_pressure (or bc_switch_piezo_head) and bc_flux respectively.

  • River boundary condition. For the water level above the bedrock, {$H_d > H_d^S$}, the Robin boundary condition is used with the inflow given by: { $ \\delta_d(q_d^N + \\sigma_d(H_d^D - H_d) )$}. For the water level under the bedrock, constant infiltration is used: { $ \\delta_d(q_d^N + \\sigma_d(H_d^D - H_d^S) )$}. Parameters: bc_pressure, bc_switch_pressure, bc_sigma,bc_flux``.

used in: referenced by:

NonlinearSolver

Description

Parameters to a non-linear solver.

Keys
  • linear_solver

    value at declaration = {}

    Linear solver for MH problem.

    • Double [0, +inf)

    tolerance

    value at declaration = 1e-06

    Residual tolerance.

    • Integer [0, INT]

    min_it

    value at declaration = 1

    Minimum number of iterations (linear solves) to use. This is usefull if the convergence criteria does not characterize your goal well enough so it converges prematurely possibly without the single linear solve.If greater then 'max_it' the value is set to 'max_it'.

    • Integer [0, INT]

    max_it

    value at declaration = 100

    Maximum number of iterations (linear solves) of the non-linear solver.

    • Bool (generic)

    converge_on_stagnation

    value at declaration = False

    If a stagnation of the nonlinear solver is detected the solver stops. A divergence is reported by default forcing the end of the simulation. Setting this flag to 'true', the solverends with convergence success on stagnation, but report warning about it.

used in: referenced by:

LinSys

Default descendant: Petsc
Description

Linear solver setting.

Implementations
  • Interface to PETSc solvers. Convergence criteria is:\n```\nnorm( res_n ) < max( norm( res_0 ) * r_tol, a_tol )\n```\nwhere res_i is the residuum vector after i-th iteration of the solver and res_0 is an estimate of the norm of initial residual. If the initial guess of the solution is provided (usually only for transient equations) the residual of this estimate is used, otherwise the norm of preconditioned RHS is used. The default norm is L2 norm of preconditioned residual: (($ P^{-1}(Ax-b)$)), usage of other norm may be prescribed using the 'option' key. See also PETSc documentation for KSPSetNormType.
  • Solver setting.

Petsc

Implements abstract type:
Description

Interface to PETSc solvers. Convergence criteria is:\n\nnorm( res_n ) &lt; max( norm( res_0 ) * r_tol, a_tol )\n\nwhere res_i is the residuum vector after i-th iteration of the solver and res_0 is an estimate of the norm of initial residual. If the initial guess of the solution is provided (usually only for transient equations) the residual of this estimate is used, otherwise the norm of preconditioned RHS is used. The default norm is L2 norm of preconditioned residual: {$ P^{-1}(Ax-b)$}, usage of other norm may be prescribed using the 'option' key. See also PETSc documentation for KSPSetNormType.

Keys
    • Double [0, 1]

    r_tol

    value at read time = Defalut value set by nonlinear solver or equation. If not we use value 1.0e-7.

    Relative residual tolerance, (to initial error).

    • Double [0, +inf)

    a_tol

    value at read time = Defalut value set by nonlinear solver or equation. If not we use value 1.0e-11.

    Absolute residual tolerance.

    • Integer [0, INT]

    max_it

    value at read time = Defalut value set by nonlinear solver or equation. If not we use value 1000.

    Maximum number of outer iterations of the linear solver.

    • String (generic)

    options

    value at declaration =

    Options passed to PETSC before creating KSP instead of default setting.

used in:

Bddc

Implements abstract type:
Description

Solver setting.

Keys
    • Double [0, 1]

    r_tol

    value at read time = Defalut value set by nonlinear solver or equation. If not we use value 1.0e-7.

    Relative residual tolerance, (to initial error).

    • Integer [0, INT]

    max_it

    value at read time = Defalut value set by nonlinear solver or equation. If not we use value 1000.

    Maximum number of outer iterations of the linear solver.

    • Integer [0, INT]

    max_nondecr_it

    value at declaration = 30

    Maximum number of iterations of the linear solver with non-decreasing residual.

    • Integer [0, INT]

    number_of_levels

    value at declaration = 2

    Number of levels in the multilevel method (=2 for the standard BDDC).

    • Bool (generic)

    use_adaptive_bddc

    value at declaration = False

    Use adaptive selection of constraints in BDDCML.

    • Integer [0, 2]

    bddcml_verbosity_level

    value at declaration = 0

    Level of verbosity of the BDDCML library:\n\n - 0 - no output\n - 1 - mild output\n - 2 - detailed output.

OutputStream

Description

Configuration of the spatial output of a single balance equation.

Keys
    • file nameoutput

    file

    value at read time = Name of the equation associated with the output stream.

    File path to the connected output file.

  • format

    value at declaration = {}

    Format of output stream and possible parameters.

  • times

    optional

    Output times used for equations without is own output times key.

  • output_mesh

    optional

    Output mesh record enables output on a refined mesh [EXPERIMENTAL, VTK only].Sofar refinement is performed only in discontinous sense.Therefore only corner and element data can be written on refined output mesh.Node data are to be transformed to corner data, native data cannot be written.Do not include any node or native data in output fields.

    • Integer [0, INT]

    precision

    value at declaration = 17

    The number of decimal digits used in output of floating point values.\ Default is about 17 decimal digits which is enough to keep double values exect after write-read cycle.

  • observe_points

    value at declaration = []

    Array of observe points.

used in: referenced by:

OutputTime

Default descendant: vtk
Description

Format of output stream and possible parameters.

Implementations
  • Parameters of vtk output format.
  • Parameters of gmsh output format.

vtk

Implements abstract type:
Description

Parameters of vtk output format.

Keys
  • variant

    value at declaration = ascii

    Variant of output stream file format.

    • Bool (generic)

    parallel

    value at declaration = False

    Parallel or serial version of file format.

used in:

VTK variant (ascii or binary)

Description
no description provided
Values
  • ASCII variant of VTK file format

  • Uncompressed appended binary XML VTK format without usage of base64 encoding of appended data.

  • Appended binary XML VTK format without usage of base64 encoding of appended data. Compressed with ZLib.

used in:

gmsh

Implements abstract type:
Description

Parameters of gmsh output format.

Keys

    TimeGrid

    Constructible from key: begin
    Description

    Equally spaced grid of time points.

    Keys
      • Double [0, +inf)

      begin

      value at read time = The initial time of the associated equation.

      The start time of the grid.

      • Double [0, +inf)

      step

      optional

      The step of the grid. If not specified, the grid consists only of the start time.

      • Double [0, +inf)

      end

      value at read time = The end time of the simulation.

      The time greater or equal to the last time in the grid.

    used in:

    OutputMesh

    Description

    Parameters of the refined output mesh.

    Keys
      • Integer [1, 20]

      max_level

      value at declaration = 3

      Maximal level of refinement of the output mesh.

      • Bool (generic)

      refine_by_error

      value at declaration = False

      Set true for using error_control_field. Set false for global uniform refinement to max_level.

      • String (generic)

      error_control_field

      optional

      Name of an output field, according to which the output mesh will be refined. The field must be a SCALAR one.

      • Double [0, +inf)

      refinement_error_tolerance

      value at declaration = 0.01

      Tolerance for element refinement by error. If tolerance is reached, refinement is stopped.Relative difference between error control field and its linear approximation on element is computedand compared with tolerance.

    used in:

    ObservePoint

    Constructible from key: point
    Description

    Specification of the observation point. The actual observe element and the observe point on it is determined as follows:\n\n1. Find an initial element containing the initial point. If no such element exists we report the error.\n2. Use BFS starting from the inital element to find the 'observe element'. The observe element is the closest element 3. Find the closest projection of the inital point on the observe element and snap this projection according to the 'snap_dim'.\n

    Keys
      • String (generic)

      name

      value at read time = Default name have the form 'obs_<id>', where 'id' is the rank of the point on the input.

      Optional point name. Has to be unique. Any string that is valid YAML key in record without any quoting can be used howeverusing just alpha-numerical characters and underscore instead of the space is recommended.

      • Array [3, 3]
      • of DOUBLE

      point

      obligatory

      Initial point for the observe point search.

      • Integer [0, 4]

      snap_dim

      value at declaration = 4

      The dimension of the sub-element to which center we snap. For value 4 no snapping is done. For values 0 up to 3 the element containing the initial point is found and then the observepoint is snapped to the nearest center of the sub-element of the given dimension. E.g. for dimension 2 we snap to the nearest center of the face of the initial element.

      • String (generic)

      snap_region

      value at declaration = ALL

      The region of the initial element for snapping. Without snapping we make a projection to the initial element.

      • Double [0, +inf)

      search_radius

      value at read time = Maximal distance of observe point from Mesh relative to its size (bounding box).

      Global value is define in Mesh by the key global_observe_search_radius.

    EquationOutput

    Description

    Output of the equation's fields.The output is done through the output stream of the associated balance law equation.The stream defines output format for the full space information in selected times and observe points for the full time information. The key 'fields' select the fields for the full spatial output.The set of output times may be specified per field otherwise common time set 'times' is used. If even this is not providedthe time set of the output_stream is used. The initial time of the equation is automatically added to the time set of every selected field. The end time of the equation is automatically added to the common output time set.

    Keys
    • times

      optional

      Output times used for the output fields without is own time series specification.

      • Bool (generic)

      add_input_times

      value at declaration = False

      Add all input time points of the equation, mentioned in the 'input_fields' list, also as the output points.

    • fields

      value at declaration = []

      Array of output fields and their individual output settings.

      • Array [0, UINT]
      • of PARAMETER

      observe_fields

      value at declaration = []

      Array of the fields evaluated in the observe points of the associated output stream.

    Generic parameters
    • output_field_selection

    FieldOutputSetting

    Constructible from key: field
    Description

    Setting of the field output. The field name, output times, output interpolation (future).

    Keys
    • field

      obligatory

      The field name (from selection).

    • times

      optional

      Output times specific to particular field.

    • interpolation

      value at read time = Interpolation type of output data.

      Optional value. Implicit value is given by field and can be changed.

    Generic parameters
    • output_field_selection

    Discrete_output

    Description

    Discrete type of output. Determines type of output data (element, node, native etc).

    Values

    Flow_Darcy_MH:OutputFields

    Description

    Selection of output fields for the Flow_Darcy_MH model.\n

    Values

    Output_DarcyMHSpecific

    Description

    Specific Darcy flow MH output.

    Keys
      • Bool (generic)

      compute_errors

      value at declaration = False

      SPECIAL PURPOSE. Computing errors pro non-compatible coupling.

      • file nameoutput

      raw_flow_output

      optional

      Output file with raw data form MH module.

    Balance

    Description

    Balance of a conservative quantity, boundary fluxes and sources.

    Keys
    • times

      value at declaration = []
      no description provided
      • Bool (generic)

      add_output_times

      value at declaration = True

      Add all output times of the balanced equation to the balance output times set. Note that this is not the time set of the output stream.

    • format

      value at declaration = txt

      Format of output file.

      • Bool (generic)

      cumulative

      value at declaration = False

      Compute cumulative balance over time. If true, then balance is calculated at each computational time step, which can slow down the program.

      • file nameoutput

      file

      value at read time = File name generated from the balanced quantity: <quantity_name>_balance.*

      File name for output of balance.

    used in:

    Balance_output_format

    Description

    Format of output file for balance.

    Values
    • Legacy format used by previous program versions.

    • Excel format with tab delimiter.

    • Format compatible with GnuPlot datafile with fixed column width.

    MH_MortarMethod

    Description
    no description provided
    Values
    • Mortar space: P0 on elements of lower dimension.

    • Mortar space: P0 on elements of lower dimension.

    • Mortar space: P1 on intersections, using non-conforming pressures.

    Flow_Richards_LMH

    Implements abstract type:
    Description

    Lumped Mixed-Hybrid solver for unsteady saturated Darcy flow.

    Keys

    RichardsLMH_Data

    Description

    Record to set fields of the equation.\nThe fields are set only on the domain specified by one of the keys: 'region', 'rid'\nand after the time given by the key 'time'. The field setting can be overridden by\n any RichardsLMH_Data record that comes later in the boundary data array.

    Keys
      • Array [1, UINT]
      • of STRING

      region

      optional

      Labels of the regions where to set fields.

      • Integer [0, INT]

      rid

      optional

      ID of the region where to set fields.

      • Double [0, +inf)

      time

      value at declaration = 0.0

      Apply field setting in this record after this time.\nThese times have to form an increasing sequence.

    • anisotropy

      optional

      Anisotropy of the conductivity tensor. {$[-]$}

      • instance of ABSTRACT
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      Complement dimension parameter (cross section for 1D, thickness for 2D). {$[m^{3-d}]$}

      • instance of ABSTRACT
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      conductivity

      optional

      Isotropic conductivity scalar. {$[ms^{-1}]$}

      • instance of ABSTRACT
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      sigma

      optional

      Transition coefficient between dimensions. {$[-]$}

      • instance of ABSTRACT
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      Water source density. {$[s^{-1}]$}

    • bc_type

      optional

      Boundary condition type, possible values: {$[-]$}

      • instance of ABSTRACT
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      bc_pressure

      optional

      Prescribed pressure value on the boundary. Used for all values of 'bc_type' except for 'none' and 'seepage'. See documentation of 'bc_type' for exact meaning of 'bc_pressure' in individual boundary condition types. {$[m]$}

      • instance of ABSTRACT
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      bc_flux

      optional

      Incoming water boundary flux. Used for bc_types : 'total_flux', 'seepage', 'river'. {$[m^{4-d}s^{-1}]$}

      • instance of ABSTRACT
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      Conductivity coefficient in the 'total_flux' or the 'river' boundary condition type. {$[m^{3-d}s^{-1}]$}

      • instance of ABSTRACT
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      Critical switch pressure for 'seepage' and 'river' boundary conditions. {$[m]$}

      • instance of ABSTRACT
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      Initial condition for pressure {$[m]$}

      • instance of ABSTRACT
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      storativity

      optional

      Storativity. {$[m^{-1}]$}

      • instance of ABSTRACT
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      \nSaturated water content {$ \\theta_s $}.\nrelative volume of the water in a reference volume of a saturated porous media.\n {$[-]$}

      • instance of ABSTRACT
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      \nResidual water content {$ \\theta_r $}.\nRelative volume of the water in a reference volume of an ideally dry porous media.\n {$[-]$}

      • instance of ABSTRACT
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      \nThe van Genuchten pressure head scaling parameter {$ \\alpha $}.\nThe parameter of the van Genuchten's model to scale the pressure head.\nRelated to the inverse of the air entry pressure, i.e. the pressure where the relative water content starts to decrease below 1.\n {$[m^{-1}]$}

      • instance of ABSTRACT
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      The van Genuchten exponent parameter {$ n $}. {$[-]$}

      • instance of ABSTRACT
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      Boundary piezometric head for BC types: dirichlet, robin, and river.

      • instance of ABSTRACT
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      Boundary switch piezometric head for BC types: seepage, river.

      • instance of ABSTRACT
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      Initial condition for the pressure given as the piezometric head.

    used in: referenced by:

    SoilModel

    Constructible from key: model_type
    Description

    Setting for the soil model.

    Keys
    • model_type

      value at declaration = van_genuchten

      Selection of the globally applied soil model. In future we replace this key by a field for selection of the model.That will allow usage of different soil model in a single simulation.

      • Double [0, 1]

      cut_fraction

      value at declaration = 0.999

      Fraction of the water content where we cut and rescale the curve.

    used in:

    Soil_Model_Type

    Description
    no description provided
    Values
    • Van Genuchten soil model with cutting near zero.

    • Irmay model for conductivity, Van Genuchten model for the water content. Suitable for bentonite.

    AdvectionProcess

    Description

    Abstract advection process. In particular: transport of substances or heat transfer.

    Implementations

    Coupling_OperatorSplitting

    Implements abstract type:
    Description

    Transport by convection and/or diffusion\ncoupled with reaction and adsorption model (ODE per element)\n via operator splitting.

    Keys

    Substance

    Constructible from key: name
    Description

    Chemical substance.

    Keys
      • String (generic)

      name

      obligatory

      Name of the substance.

      • Double [0, +inf)

      molar_mass

      value at declaration = 1

      Molar mass of the substance [kg/mol].

    Solute

    Description

    Transport of soluted substances.

    Implementations

    Solute_Advection_FV

    Implements abstract type:
    Description

    Explicit in time finite volume method for advection only solute transport.

    Keys
    used in: referenced by:

    Solute_Advection_FV:Data

    Description

    Record to set fields of the equation.\nThe fields are set only on the domain specified by one of the keys: 'region', 'rid'\nand after the time given by the key 'time'. The field setting can be overridden by\n any Solute_Advection_FV:Data record that comes later in the boundary data array.

    Keys
      • Array [1, UINT]
      • of STRING

      region

      optional

      Labels of the regions where to set fields.

      • Integer [0, INT]

      rid

      optional

      ID of the region where to set fields.

      • Double [0, +inf)

      time

      value at declaration = 0.0

      Apply field setting in this record after this time.\nThese times have to form an increasing sequence.

      • instance of ABSTRACT
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      porosity

      optional

      Mobile porosity {$[-]$}

      • Array [1, UINT]
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      Density of concentration sources. {$[m^{-3}kgs^{-1}]$}

      • Array [1, UINT]
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      Concentration flux. {$[s^{-1}]$}

      • Array [1, UINT]
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      sources_conc

      optional

      Concentration sources threshold. {$[m^{-3}kg]$}

      • Array [1, UINT]
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      bc_conc

      optional

      Boundary conditions for concentrations. {$[m^{-3}kg]$}

      • Array [1, UINT]
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      init_conc

      optional

      Initial concentrations. {$[m^{-3}kg]$}

    Solute_Advection_FV:OutputFields

    Description

    Selection of output fields for the Solute_Advection_FV model.\n

    Values
    • {$[-]$} Input field: Mobile porosity

    • {$[-]$} Input field: INTERNAL - water content passed from unsaturated Darcy

    • {$[m^{-3}kgs^{-1}]$} Input field: Density of concentration sources.

    • {$[s^{-1}]$} Input field: Concentration flux.

    • {$[m^{-3}kg]$} Input field: Concentration sources threshold.

    • {$[m^{-3}kg]$} Input field: Initial concentrations.

    • {$[m^{-3}kg]$}

    • {$[-]$} Input field:

    • {$[-]$} Input field:

    Solute_AdvectionDiffusion_DG

    Implements abstract type:
    Description

    DG solver for solute transport.

    Keys
      • Double [0, +inf)

      solvent_density

      value at declaration = 1.0

      Density of the solvent [ {$kg.m^(-3)$} ].

    • solver

      value at declaration = {}

      Linear solver for MH problem.

    • input_fields

      obligatory

      Input fields of the equation.

    • dg_variant

      value at declaration = non-symmetric

      Variant of interior penalty discontinuous Galerkin method.

      • Integer [0, 3]

      dg_order

      value at declaration = 1

      Polynomial order for finite element in DG method (order 0 is suitable if there is no diffusion/dispersion).

    • output

      value at declaration = {'fields': ['conc']}

      Setting of the field output.

    Solute_AdvectionDiffusion_DG:Data

    Description

    Record to set fields of the equation.\nThe fields are set only on the domain specified by one of the keys: 'region', 'rid'\nand after the time given by the key 'time'. The field setting can be overridden by\n any Solute_AdvectionDiffusion_DG:Data record that comes later in the boundary data array.

    Keys
      • Array [1, UINT]
      • of STRING

      region

      optional

      Labels of the regions where to set fields.

      • Integer [0, INT]

      rid

      optional

      ID of the region where to set fields.

      • Double [0, +inf)

      time

      value at declaration = 0.0

      Apply field setting in this record after this time.\nThese times have to form an increasing sequence.

      • instance of ABSTRACT
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      porosity

      optional

      Mobile porosity {$[-]$}

      • Array [1, UINT]
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      Density of concentration sources. {$[m^{-3}kgs^{-1}]$}

      • Array [1, UINT]
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      Concentration flux. {$[s^{-1}]$}

      • Array [1, UINT]
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      sources_conc

      optional

      Concentration sources threshold. {$[m^{-3}kg]$}

    • bc_type

      optional

      Type of boundary condition. {$[-]$}

      • Array [1, UINT]
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      bc_conc

      optional

      Dirichlet boundary condition (for each substance). {$[m^{-3}kg]$}

      • Array [1, UINT]
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      bc_flux

      optional

      Flux in Neumann boundary condition. {$[m^{1-d}kgs^{-1}]$}

      • Array [1, UINT]
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      Conductivity coefficient in Robin boundary condition. {$[m^{4-d}s^{-1}]$}

      • Array [1, UINT]
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      init_conc

      optional

      Initial concentrations. {$[m^{-3}kg]$}

      • Array [1, UINT]
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      disp_l

      optional

      Longitudal dispersivity in the liquid (for each substance). {$[m]$}

      • Array [1, UINT]
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      disp_t

      optional

      Transversal dispersivity in the liquid (for each substance). {$[m]$}

    • diff_m

      optional

      Molecular diffusivity in the liquid (for each substance). {$[m^{2}s^{-1}]$}

      • instance of ABSTRACT
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      rock_density

      optional

      Rock matrix density. {$[m^{-3}kg]$}

      • Array [1, UINT]
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      Coefficient of linear sorption. {$[m^{3}kg^{-1}]$}

      • Array [1, UINT]
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      Coefficient of diffusive transfer through fractures (for each substance). {$[-]$}

      • Array [1, UINT]
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      dg_penalty

      optional

      Penalty parameter influencing the discontinuity of the solution (for each substance). Its default value 1 is sufficient in most cases. Higher value diminishes the inter-element jumps. {$[-]$}

    used in:

    Solute_AdvectionDiffusion_BC_Type

    Description

    Types of boundary conditions for advection-diffusion solute transport model.

    Values
    • Default transport boundary condition.\nOn water inflow {$(q_w \\le 0)$}, total flux is given by the reference concentration 'bc_conc'. On water outflow we prescribe zero diffusive flux, i.e. the mass flows out only due to advection.

    • Dirichlet boundary condition {$ c = c_D $}.\nThe prescribed concentration {$c_D$} is specified by the field 'bc_conc'.

    • Total mass flux boundary condition.\nThe prescribed total incoming flux can have the general form {$\\delta(f_N+\\sigma_R(c_R-c) )$}, where the absolute flux {$f_N$} is specified by the field 'bc_flux', the transition parameter {$\\sigma_R$} by 'bc_robin_sigma', and the reference concentration {$c_R$} by 'bc_conc'.

    • Diffusive flux boundary condition.\nThe prescribed incoming mass flux due to diffusion can have the general form {$\\delta(f_N+\\sigma_R(c_R-c) )$}, where the absolute flux {$f_N$} is specified by the field 'bc_flux', the transition parameter {$\\sigma_R$} by 'bc_robin_sigma', and the reference concentration {$c_R$} by 'bc_conc'.

    DG_variant

    Description

    Type of penalty term.

    Values
    • non-symmetric weighted interior penalty DG method

    • incomplete weighted interior penalty DG method

    • symmetric weighted interior penalty DG method

    Solute_AdvectionDiffusion_DG:OutputFields

    Description

    Selection of output fields for the Solute_AdvectionDiffusion_DG model.\n

    Values
    • {$[-]$} Input field: Mobile porosity

    • {$[-]$} Input field: INTERNAL - water content passed from unsaturated Darcy

    • {$[m^{-3}kgs^{-1}]$} Input field: Density of concentration sources.

    • {$[s^{-1}]$} Input field: Concentration flux.

    • {$[m^{-3}kg]$} Input field: Concentration sources threshold.

    • {$[m^{-3}kg]$} Input field: Initial concentrations.

    • {$[m]$} Input field: Longitudal dispersivity in the liquid (for each substance).

    • {$[m]$} Input field: Transversal dispersivity in the liquid (for each substance).

    • {$[m^{2}s^{-1}]$} Input field: Molecular diffusivity in the liquid (for each substance).

    • {$[m^{-3}kg]$} Input field: Rock matrix density.

    • {$[m^{3}kg^{-1}]$} Input field: Coefficient of linear sorption.

    • {$[m^{-3}kg]$}

    • {$[-]$} Input field: Coefficient of diffusive transfer through fractures (for each substance).

    • {$[-]$} Input field: Penalty parameter influencing the discontinuity of the solution (for each substance). Its default value 1 is sufficient in most cases. Higher value diminishes the inter-element jumps.

    • {$[-]$} Input field:

    • {$[-]$} Input field:

    ReactionTerm

    Description

    Abstract equation for a reaction term (dual porosity, sorption, reactions). Can be part of coupling with a transport equation via. operator splitting.

    Implementations
    • A model of first order chemical reactions (decompositions of a reactant into products).
    • A model of a radioactive decay and possibly of a decay chain.
    • Sorption model in the reaction term of transport.
    • Dual porosity model in transport problems.\nProvides computing the concentration of substances in mobile and immobile zone.\n

    FirstOrderReaction

    Description

    A model of first order chemical reactions (decompositions of a reactant into products).

    Keys
    • reactions

      obligatory

      An array of first order chemical reactions.

    • ode_solver

      value at declaration = {}

      Numerical solver for the system of first order ordinary differential equations coming from the model.

    Reaction

    Description

    Describes a single first order chemical reaction.

    Keys
    • reactants

      obligatory

      An array of reactants. Do not use array, reactions with only one reactant (decays) are implemented at the moment!

      • Double [0, +inf)

      reaction_rate

      obligatory

      The reaction rate coefficient of the first order reaction.

    • products

      obligatory

      An array of products.

    used in:

    FirstOrderReactionReactant

    Constructible from key: name
    Description

    A record describing a reactant of a reaction.

    Keys
      • String (generic)

      name

      obligatory

      The name of the reactant.

    used in:

    FirstOrderReactionProduct

    Constructible from key: name
    Description

    A record describing a product of a reaction.

    Keys
      • String (generic)

      name

      obligatory

      The name of the product.

      • Double [0, +inf)

      branching_ratio

      value at declaration = 1.0

      The branching ratio of the product when there are more products.\nThe value must be positive. Further, the branching ratios of all products are normalized in order to sum to one.\nThe default value 1.0, should only be used in the case of single product.

    PadeApproximant

    Description

    Record with an information about pade approximant parameters.Note that stable method is guaranteed only if d-n=1 or d-n=2, where d=degree of denominator and n=degree of nominator. In those cases the Pade approximant corresponds to an implicit Runge-Kutta method which is both A- and L-stable. The default values n=2, d=3 yield relatively good precision while keeping the order moderately low.

    Keys
      • Integer [1, INT]

      pade_nominator_degree

      value at declaration = 1

      Polynomial degree of the nominator of Pade approximant.

      • Integer [1, INT]

      pade_denominator_degree

      value at declaration = 3

      Polynomial degree of the denominator of Pade approximant

    RadioactiveDecay

    Description

    A model of a radioactive decay and possibly of a decay chain.

    Keys
      • Array [1, UINT]
      • of Decay

      decays

      obligatory

      An array of radioactive decays.

    • ode_solver

      value at declaration = {}

      Numerical solver for the system of first order ordinary differential equations coming from the model.

    Decay

    Description

    A model of a radioactive decay.

    Keys
      • String (generic)

      radionuclide

      obligatory

      The name of the parent radionuclide.

      • Double [0, +inf)

      half_life

      obligatory

      The half life of the parent radionuclide in seconds.

    • products

      obligatory

      An array of the decay products (daughters).

    used in:

    RadioactiveDecayProduct

    Constructible from key: name
    Description

    A record describing a product of a radioactive decay.

    Keys
      • String (generic)

      name

      obligatory

      The name of the product.

      • Double [0, +inf)

      energy

      value at declaration = 0.0

      Not used at the moment! The released energy in MeV from the decay of the radionuclide into the product.

      • Double [0, +inf)

      branching_ratio

      value at declaration = 1.0

      The branching ratio of the product when there is more than one.Considering only one product, the default ratio 1.0 is used.Its value must be positive. Further, the branching ratios of all products are normalizedby their sum, so the sum then gives 1.0 (this also resolves possible rounding errors).

    Sorption

    Implements abstract type:
    Description

    Sorption model in the reaction term of transport.

    Keys
      • Array [1, UINT]
      • of STRING

      substances

      obligatory

      Names of the substances that take part in the sorption model.

      • Double [0, +inf)

      solvent_density

      value at declaration = 1.0

      Density of the solvent.

      • Integer [1, INT]

      substeps

      value at declaration = 1000

      Number of equidistant substeps, molar mass and isotherm intersections

      • Array [0, UINT]
      • of DOUBLE

      solubility

      optional

      Specifies solubility limits of all the sorbing species.

      • Array [0, UINT]
      • of DOUBLE

      table_limits

      optional

      Specifies highest aqueous concentration in interpolation table.

    • input_fields

      obligatory

      Containes region specific data necessary to construct isotherms.

    • Reaction model following the sorption in the liquid.

    • Reaction model following the sorption in the solid.

    • output

      value at declaration = {'fields': ['conc_solid']}

      Setting of the fields output.

    Sorption:Data

    Description

    Record to set fields of the equation.\nThe fields are set only on the domain specified by one of the keys: 'region', 'rid'\nand after the time given by the key 'time'. The field setting can be overridden by\n any Sorption:Data record that comes later in the boundary data array.

    Keys
      • Array [1, UINT]
      • of STRING

      region

      optional

      Labels of the regions where to set fields.

      • Integer [0, INT]

      rid

      optional

      ID of the region where to set fields.

      • Double [0, +inf)

      time

      value at declaration = 0.0

      Apply field setting in this record after this time.\nThese times have to form an increasing sequence.

      • instance of ABSTRACT
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      rock_density

      optional

      Rock matrix density. {$[m^{-3}kg]$}

    • Considered sorption is described by selected isotherm. If porosity on an element is equal or even higher than 1.0 (meaning no sorbing surface), then type 'none' will be selected automatically. {$[-]$}

      • Array [1, UINT]
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      Multiplication parameters (k, omega) in either Langmuir c_s = omega * (alphac_a)/(1- alphac_a) or in linear c_s = k * c_a isothermal description. {$[m^{3}kg^{-1}]$}

      • Array [1, UINT]
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      Second parameters (alpha, ...) defining isotherm c_s = omega * (alphac_a)/(1- alphac_a). {$[-]$}

      • Array [1, UINT]
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      Initial solid concentration of substances. Vector, one value for every substance. {$[kg^{-1}mol]$}

    used in:

    SorptionType

    Description
    no description provided
    Values
    • No sorption considered.

    • Linear isotherm runs the concentration exchange between liquid and solid.

    • Langmuir isotherm runs the concentration exchange between liquid and solid.

    • Freundlich isotherm runs the concentration exchange between liquid and solid.

    GenericReaction

    Description

    Abstract equation for a reaction of species in single compartment (e.g. mobile solid).It can be part of: direct operator splitting coupling, dual porosity model, any sorption.

    Implementations
    • A model of first order chemical reactions (decompositions of a reactant into products).
    • A model of a radioactive decay and possibly of a decay chain.

    Sorption:OutputFields

    Description

    Selection of output fields for the Sorption model.\n

    Values
    • {$[m^{-3}kg]$} Input field: Rock matrix density.

    • {$[-]$} Input field: Considered sorption is described by selected isotherm. If porosity on an element is equal or even higher than 1.0 (meaning no sorbing surface), then type 'none' will be selected automatically.

    • {$[m^{3}kg^{-1}]$} Input field: Multiplication parameters (k, omega) in either Langmuir c_s = omega * (alphac_a)/(1- alphac_a) or in linear c_s = k * c_a isothermal description.

    • {$[-]$} Input field: Second parameters (alpha, ...) defining isotherm c_s = omega * (alphac_a)/(1- alphac_a).

    • {$[kg^{-1}mol]$} Input field: Initial solid concentration of substances. Vector, one value for every substance.

    • {$[-]$}

    DualPorosity

    Implements abstract type:
    Description

    Dual porosity model in transport problems.\nProvides computing the concentration of substances in mobile and immobile zone.\n

    Keys
    used in: referenced by:

    DualPorosity:Data

    Description

    Record to set fields of the equation.\nThe fields are set only on the domain specified by one of the keys: 'region', 'rid'\nand after the time given by the key 'time'. The field setting can be overridden by\n any DualPorosity:Data record that comes later in the boundary data array.

    Keys
      • Array [1, UINT]
      • of STRING

      region

      optional

      Labels of the regions where to set fields.

      • Integer [0, INT]

      rid

      optional

      ID of the region where to set fields.

      • Double [0, +inf)

      time

      value at declaration = 0.0

      Apply field setting in this record after this time.\nThese times have to form an increasing sequence.

      • Array [1, UINT]
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      Diffusion coefficient of non-equilibrium linear exchange between mobile and immobile zone. {$[s^{-1}]$}

      • instance of ABSTRACT
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      Porosity of the immobile zone. {$[-]$}

      • Array [1, UINT]
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      Initial concentration of substances in the immobile zone. {$[m^{-3}kg]$}

    ReactionTermMobile

    Description

    Abstract equation for a reaction term of the MOBILE pores (sorption, reactions). Is part of dual porosity model.

    Implementations
    • A model of first order chemical reactions (decompositions of a reactant into products).
    • A model of a radioactive decay and possibly of a decay chain.
    • Sorption model in the mobile zone, following the dual porosity model.

    SorptionMobile

    Implements abstract type:
    Description

    Sorption model in the mobile zone, following the dual porosity model.

    Keys
      • Array [1, UINT]
      • of STRING

      substances

      obligatory

      Names of the substances that take part in the sorption model.

      • Double [0, +inf)

      solvent_density

      value at declaration = 1.0

      Density of the solvent.

      • Integer [1, INT]

      substeps

      value at declaration = 1000

      Number of equidistant substeps, molar mass and isotherm intersections

      • Array [0, UINT]
      • of DOUBLE

      solubility

      optional

      Specifies solubility limits of all the sorbing species.

      • Array [0, UINT]
      • of DOUBLE

      table_limits

      optional

      Specifies highest aqueous concentration in interpolation table.

    • input_fields

      obligatory

      Containes region specific data necessary to construct isotherms.

    • Reaction model following the sorption in the liquid.

    • Reaction model following the sorption in the solid.

    • output

      value at declaration = {'fields': ['conc_solid']}

      Setting of the fields output.

    SorptionMobile:OutputFields

    Description

    Selection of output fields for the SorptionMobile model.\n

    Values
    • {$[m^{-3}kg]$} Input field: Rock matrix density.

    • {$[-]$} Input field: Considered sorption is described by selected isotherm. If porosity on an element is equal or even higher than 1.0 (meaning no sorbing surface), then type 'none' will be selected automatically.

    • {$[m^{3}kg^{-1}]$} Input field: Multiplication parameters (k, omega) in either Langmuir c_s = omega * (alphac_a)/(1- alphac_a) or in linear c_s = k * c_a isothermal description.

    • {$[-]$} Input field: Second parameters (alpha, ...) defining isotherm c_s = omega * (alphac_a)/(1- alphac_a).

    • {$[kg^{-1}mol]$} Input field: Initial solid concentration of substances. Vector, one value for every substance.

    • {$[-]$}

    ReactionTermImmobile

    Description

    Abstract equation for a reaction term of the IMMOBILE pores (sorption, reactions). Is part of dual porosity model.

    Implementations
    • A model of first order chemical reactions (decompositions of a reactant into products).
    • A model of a radioactive decay and possibly of a decay chain.
    • Sorption model in the immobile zone, following the dual porosity model.

    SorptionImmobile

    Implements abstract type:
    Description

    Sorption model in the immobile zone, following the dual porosity model.

    Keys
      • Array [1, UINT]
      • of STRING

      substances

      obligatory

      Names of the substances that take part in the sorption model.

      • Double [0, +inf)

      solvent_density

      value at declaration = 1.0

      Density of the solvent.

      • Integer [1, INT]

      substeps

      value at declaration = 1000

      Number of equidistant substeps, molar mass and isotherm intersections

      • Array [0, UINT]
      • of DOUBLE

      solubility

      optional

      Specifies solubility limits of all the sorbing species.

      • Array [0, UINT]
      • of DOUBLE

      table_limits

      optional

      Specifies highest aqueous concentration in interpolation table.

    • input_fields

      obligatory

      Containes region specific data necessary to construct isotherms.

    • Reaction model following the sorption in the liquid.

    • Reaction model following the sorption in the solid.

    • output

      value at declaration = {'fields': ['conc_immobile_solid']}

      Setting of the fields output.

    SorptionImmobile:OutputFields

    Description

    Selection of output fields for the SorptionImmobile model.\n

    Values
    • {$[m^{-3}kg]$} Input field: Rock matrix density.

    • {$[-]$} Input field: Considered sorption is described by selected isotherm. If porosity on an element is equal or even higher than 1.0 (meaning no sorbing surface), then type 'none' will be selected automatically.

    • {$[m^{3}kg^{-1}]$} Input field: Multiplication parameters (k, omega) in either Langmuir c_s = omega * (alphac_a)/(1- alphac_a) or in linear c_s = k * c_a isothermal description.

    • {$[-]$} Input field: Second parameters (alpha, ...) defining isotherm c_s = omega * (alphac_a)/(1- alphac_a).

    • {$[kg^{-1}mol]$} Input field: Initial solid concentration of substances. Vector, one value for every substance.

    • {$[-]$}

    DualPorosity:OutputFields

    Description

    Selection of output fields for the DualPorosity model.\n

    Values

    Heat_AdvectionDiffusion_DG

    Implements abstract type:
    Description

    DG solver for heat transfer.

    Keys

    Heat_AdvectionDiffusion_DG:Data

    Description

    Record to set fields of the equation.\nThe fields are set only on the domain specified by one of the keys: 'region', 'rid'\nand after the time given by the key 'time'. The field setting can be overridden by\n any Heat_AdvectionDiffusion_DG:Data record that comes later in the boundary data array.

    Keys
      • Array [1, UINT]
      • of STRING

      region

      optional

      Labels of the regions where to set fields.

      • Integer [0, INT]

      rid

      optional

      ID of the region where to set fields.

      • Double [0, +inf)

      time

      value at declaration = 0.0

      Apply field setting in this record after this time.\nThese times have to form an increasing sequence.

    • bc_type

      optional

      Type of boundary condition. {$[-]$}

      • Array [1, UINT]
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      Boundary value of temperature. {$[K]$}

      • instance of ABSTRACT
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      bc_flux

      optional

      Flux in Neumann boundary condition. {$[m^{1-d}kgs^{-1}]$}

      • instance of ABSTRACT
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      Conductivity coefficient in Robin boundary condition. {$[m^{4-d}s^{-1}]$}

      • instance of ABSTRACT
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      Initial temperature. {$[K]$}

      • instance of ABSTRACT
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      porosity

      optional

      Porosity. {$[-]$}

      • instance of ABSTRACT
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      Density of fluid. {$[m^{-3}kg]$}

      • instance of ABSTRACT
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      Heat capacity of fluid. {$[m^{2}s^{-2}K^{-1}]$}

      • instance of ABSTRACT
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      Heat conductivity of fluid. {$[mkgs^{-3}K^{-1}]$}

      • instance of ABSTRACT
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      Density of solid (rock). {$[m^{-3}kg]$}

      • instance of ABSTRACT
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      Heat capacity of solid (rock). {$[m^{2}s^{-2}K^{-1}]$}

      • instance of ABSTRACT
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      Heat conductivity of solid (rock). {$[mkgs^{-3}K^{-1}]$}

      • instance of ABSTRACT
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      disp_l

      optional

      Longitudal heat dispersivity in fluid. {$[m]$}

      • instance of ABSTRACT
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      disp_t

      optional

      Transversal heat dispersivity in fluid. {$[m]$}

      • instance of ABSTRACT
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      Density of thermal source in fluid. {$[m^{-1}kgs^{-3}]$}

      • instance of ABSTRACT
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      Density of thermal source in solid. {$[m^{-1}kgs^{-3}]$}

      • instance of ABSTRACT
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      Heat exchange rate of source in fluid. {$[s^{-1}]$}

      • instance of ABSTRACT
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      Heat exchange rate of source in solid. {$[s^{-1}]$}

      • instance of ABSTRACT
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      Reference temperature of source in fluid. {$[K]$}

      • instance of ABSTRACT
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      Reference temperature in solid. {$[K]$}

      • Array [1, UINT]
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      Coefficient of diffusive transfer through fractures (for each substance). {$[-]$}

      • Array [1, UINT]
      • generic typeField_R3_to_R
      • parameter element_input_type = DOUBLE

      dg_penalty

      optional

      Penalty parameter influencing the discontinuity of the solution (for each substance). Its default value 1 is sufficient in most cases. Higher value diminishes the inter-element jumps. {$[-]$}

    used in:

    Heat_BC_Type

    Description

    Types of boundary conditions for heat transfer model.

    Values
    • Default heat transfer boundary condition.\nOn water inflow {$(q_w \\le 0)$}, total energy flux is given by the reference temperature 'bc_temperature'. On water outflow we prescribe zero diffusive flux, i.e. the energy flows out only due to advection.

    • Dirichlet boundary condition {$T = T_D $}.\nThe prescribed temperature {$T_D$} is specified by the field 'bc_temperature'.

    • Total energy flux boundary condition.\nThe prescribed incoming total flux can have the general form {$\\delta(f_N+\\sigma_R(T_R-T) )$}, where the absolute flux {$f_N$} is specified by the field 'bc_flux', the transition parameter {$\\sigma_R$} by 'bc_robin_sigma', and the reference temperature {$T_R$} by 'bc_temperature'.

    • Diffusive flux boundary condition.\nThe prescribed incoming energy flux due to diffusion can have the general form {$\\delta(f_N+\\sigma_R(T_R-T) )$}, where the absolute flux {$f_N$} is specified by the field 'bc_flux', the transition parameter {$\\sigma_R$} by 'bc_robin_sigma', and the reference temperature {$T_R$} by 'bc_temperature'.

    Heat_AdvectionDiffusion_DG:OutputFields

    Description

    Selection of output fields for the Heat_AdvectionDiffusion_DG model.\n

    Values