Generated 16-04-2020 16:28:58 UTC

3.0.9
Transport Processes in Fractured Media

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.

Keys
    • String (generic)

    description

    optional

    Short description of the solved problem.
    Is 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:

    • ALL (all regions of the mesh)
    • .BOUNDARY (all boundary regions)
    • BULK (all bulk regions)
  • partitioning

    value at declaration = any_neighboring

    Parameters of mesh partitioning algorithms.

    • 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_snap_radius

    value at declaration = 0.001

    Maximal snapping distance from the mesh in various search operations. In particular, it is used to find the closest mesh element of an observe point; and in FieldFormula to find closest surface element in plan view (Z projection).

    • file nameoutput

    raw_ngh_output

    optional

    Output file with neighboring data from mesh.

Region

Description

Abstract record for Region.

Implementations
  • Elementary region declared by its id.
    It allows to create a new region with given id and name, or to rename an existing region of given id.

  • Elementary region declared by its name (label).
    It gives a new name to an elementary region with the original name (in the mesh file) given by the mesh_label.

  • Elementary region declared by a list of elements.
    The new region is assigned to the list of elements specified by the key element_list.

  • Defines a new region (set) as a union of two or more regions. The regions can be given by their names or ids or both.

  • Defines a new region (set) as a difference of two regions (sets), given by their names.

  • Defines a new region (set) as an intersection of two or more regions (sets), given by their names.

used in:

From_Id

Implements abstract type:
Description

Elementary region declared by its id.
It allows to create a new region with given id and name, or to rename an existing region of given id.

Keys
    • String (generic)

    name

    obligatory

    Name (label) of the region. It has to be unique per single mesh.

    • Integer [0, INT]

    id

    obligatory

    Id of the region to which you assign the name.

    • Integer [0, INT]

    dim

    optional

    Dimension of the region to which you assign the name.
    The value is taken into account only if a new region is created.

used in:

From_Label

Implements abstract type:
Description

Elementary region declared by its name (label).
It gives a new name to an elementary region with the original name (in the mesh file) given by the mesh_label.

Keys
    • String (generic)

    name

    obligatory

    New name (label) of the region. It has to be unique per single mesh.

    • String (generic)

    mesh_label

    obligatory

    The original region name in the input file, e.g. a physical volume name in the 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 specified by the key element_list.

Keys
    • String (generic)

    name

    obligatory

    Name (label) of the region. It has to be unique per single mesh.

    • Integer [0, INT]

    id

    optional

    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 a new region (set) as a union of two or more regions. The regions can be given by their names or ids or both.

Keys
    • String (generic)

    name

    obligatory

    Name (label) of the new region. It has to be unique per single mesh.

    • Array [0, UINT]
    • of INTEGER

    region_ids

    optional

    List of region ids to be added to the new region set.

    • Array [0, UINT]
    • of STRING

    regions

    optional

    List of region names (labels) to be added to the new region set.

used in:

Difference

Implements abstract type:
Description

Defines a new region (set) as a difference of two regions (sets), given by their names.

Keys
    • String (generic)

    name

    obligatory

    Name (label) of the new region. It has to be unique per single mesh.

    • Array [2, 2]
    • of STRING

    regions

    obligatory

    List of exactly two region (set) names.
    Supposing region sets r1, r2, the result includes all regions of r1 that are not in r2.

used in:

Intersection

Implements abstract type:
Description

Defines a new region (set) as an intersection of two or more regions (sets), given by their names.

Keys
    • String (generic)

    name

    obligatory

    Name (label) of the new region. It has to be unique per single mesh.

    • Array [2, UINT]
    • of STRING

    regions

    obligatory

    List of two or more region (set) 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
from the multidimensional mesh. Main difference is dealing with
neighboring 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

Time axis settings of the simulation.
The settings is specific to a particular equation.
TimeGovernor allows to:
- define start time and end time of simulation
- define lower and upper limits of time steps
- direct fixed time marks of whole simulation
- set global time unit of equation (see 'common_time_unit' key)
Limits of time steps are defined by keys 'min_dt', 'max_dt', 'init_dt' and 'dt_limits'. Key 'init_dt' has the highest priority and allows set fix size of time steps. Pair of keys 'min_dt' and 'max_dt' define interval of time steps. Both previous cases ('init_dt' or pair 'min_dt' and 'max_dt') set global limits of whole simulation. In contrasts, 'dt_limits' allow set time-dependent function of min_dt/max_dt. Used time steps of simulation can be printed to YAML output file (see 'write_used_timesteps'.
Fixed time marks define exact values of time steps. They are defined in:
- start time and end time of simulation
- output times printed to output mesh file
- times defined in 'dt_limits' table (optional, see 'add_dt_limits_time_marks' key)

Keys
  • start_time

    value at declaration = 0.0

    Start time of the simulation.

  • end_time

    value at declaration = 5e+17

    End time of the simulation.
    The default value is higher than the age of the Universe (given in seconds).

  • init_dt

    value at declaration = 0.0

    Initial guess for the time step.
    It applies to equations that use an adaptive time stepping. If set to 0.0, the time step is determined in fully autonomous way, assuming the equation supports it.

  • min_dt

    value at read time = Machine precision.

    Soft lower limit for the time step.
    Equation using an adaptive time stepping cannot suggest smaller time step. The actual time step can only decrease below the limit in order to match the prescribed input or output times.

  • max_dt

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

    Hard upper limit for the time step.
    The actual time step can only increase above the limit in order to match the prescribed input or output times.

  • dt_limits

    optional

    Allow to set a time dependent changes in min_dt and max_dt limits. This list is processed at individual times overwriting previous values of min_dt/max_dt. Limits equal to 0 are ignored and replaced with min_dt/max_dt values.

    • Bool (generic)

    add_dt_limits_time_marks

    value at declaration = False

    Add all times defined in dt_limits table to the list of fixed TimeMarks.

    • file nameoutput

    write_used_timesteps

    optional

    Write used time steps to the given file in YAML format corresponding with the format of dt_limits.

    • String (generic)

    common_time_unit

    value at declaration = s

    Common time unit of the equation.
    This unit will be used for all time inputs and outputs within the equation. Individually, the common time unit can be overwritten for every declared time.
    Time units are used in the following cases:
    1) Time units of time value keys in: TimeGovernor, FieldDescriptors.
    The common time unit can be overwritten for every declared time.
    2) Time units in:
    a) input fields: FieldFE and FieldTimeFunction
    b) time steps definition of OutputTimeSet
    Common time unit can be overwritten by one unit value for every whole mesh data file or time function.
    3) Time units in output files: observation times, balance times, frame times of VTK and GMSH
    Common time unit cannot be overwritten in these cases.

TimeValue

Constructible from key: time
Description

A time with unit specification.

Keys
    • Double (-inf, +inf)

    time

    obligatory

    Numeric value of time.

    • String (generic)

    unit

    value at read time = Common time unit of equation defined in Time Governor

    Specify unit of an input time value.

TimeValue

Constructible from key: time
Description

A time with unit specification.

Keys
    • Double [0, +inf)

    time

    obligatory

    Numeric value of time.

    • String (generic)

    unit

    value at read time = Common time unit of equation defined in Time Governor

    Specify unit of an input time value.

used in:

DtLimits

Constructible from key: time
Description

Time dependent changes in min_dt and max_dt limits.

Keys
  • time

    obligatory

    The start time of dt step set.

  • min_dt

    value at read time = 'min_dt' value of TimeGovernor.

    Soft lower limit for the time step.

  • max_dt

    value at read time = 'max_dt' value of TimeGovernor.

    Whole time of the simulation if specified, infinity else.

DarcyFlow

Description

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

Implementations

Flow_Darcy_MH

Implements abstract type:
Description

Mixed-Hybrid solver for saturated Darcy flow.

Keys
    • Array [3, 3]
    • of DOUBLE

    gravity

    value at declaration = [0, 0, -1]

    Vector of the gravity force. Dimensionless.

  • input_fields

    obligatory

    Input data for Darcy flow model.

  • nonlinear_solver

    value at declaration = {}

    Non-linear solver for MH problem.

  • output_stream

    value at declaration = {}

    Output stream settings.
    Specify file format, precision etc.

  • output

    value at declaration = {'fields': ['pressure_p0', 'velocity_p0']}

    Specification of output fields and output times.

  • Output settings specific to Darcy flow model.
    Includes raw output and some experimental functionality.

  • balance

    value at declaration = {}

    Settings for computing mass balance.

  • time

    value at declaration = {}

    Time governor settings for the unsteady Darcy flow model.

    • Integer [0, 2]

    n_schurs

    value at declaration = 2

    Number of Schur complements to perform when solving MH system.

  • mortar_method

    value at declaration = None

    Method for coupling Darcy flow between dimensions on incompatible meshes. [Experimental]

Flow_Darcy_MH_Data

Description

Record to set fields of the equation.
The fields are set only on the domain specified by one of the keys: 'region', 'rid'
and after the time given by the key 'time'. The field setting can be overridden by
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.

  • time

    value at declaration = 0.0

    Apply field setting in this record after this time.
    These 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. {$[-]$}

    • 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 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. {$[ms^{-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. {$[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 in time dependent problems. {$[m]$}

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

    storativity

    optional

    Storativity (in time dependent problems). {$[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 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.
    For 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:
<UnitExpr>;<Variable>=<Number>*<UnitExpr>;...,
where <Variable> is a variable name and <UnitExpr> is a units expression which consists of products and divisions of terms.

A 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:

MPa/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

    • vector of size {$\frac12N(N+1)$} to enter symmetric matrix (upper triangle, row by row)
    • 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.
    For vector values, you can use just one string to enter homogeneous vector.
    For square {$N\times N$}-matrix values, you can use:

    • array of strings of size {$N$} to enter diagonal matrix
    • array of strings of size {$\frac12N(N+1)$} to enter symmetric matrix (upper triangle, row by row)
    • just one string to enter (spatially variable) multiple of the unit matrix.
      Formula can contain variables x,y,z,t,d and usual operators and functions.
    • String (generic)

    surface_direction

    value at declaration = 0 0 1

    The vector used to project evaluation point onto the surface.

    • String (generic)

    surface_region

    optional

    The name of region set considered as the surface. You have to set surface region if you want to use formula variable d.

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 time variable.

Keys
  • t

    obligatory

    Time 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: point_data/node_data, cell_data/element_data, -/element_node_data, native/-.
    If not given by a user, we try to find the field in all sections, but we report an error if it is found in more than 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.

    • Double (-inf, +inf)

    default_value

    optional

    Default value is set on elements which values have not been listed in the mesh data file.

    • String (generic)

    time_unit

    value at read time = Common unit of TimeGovernor.

    Definition of the unit of all times defined in the mesh data file.

  • read_time_shift

    value at declaration = 0.0

    This key allows reading field data from the mesh data file shifted in time. Considering the time 't', field descriptor with time 'T', time shift 'S', then if 't > T', we read the time frame 't + S'.

  • interpolation

    value at declaration = equivalent_mesh

    Type of interpolation applied to the input spatial data.
    The default value 'equivalent_mesh' assumes the data being constant on elements living on the same mesh as the computational mesh, but possibly with different numbering. In the case of the same numbering, the user can set 'identical_mesh' to omit algorithm for guessing node and element renumbering. Alternatively, in case of different input mesh, several interpolation algorithms are available.

FE_discretization

Description

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

Values

interpolation

Description

Specify interpolation of the input data from its input mesh to the computational mesh.

Values
  • Topology and indices of nodes and elements ofthe input mesh and the computational mesh are identical. This interpolation is typically used for GMSH input files containing only the field values without explicit mesh specification.

  • Topologies of the input mesh and the computational mesh are the same, the node and element numbering may differ. This interpolation can be used also for VTK input data.

  • Topologies of the input mesh and the computational mesh may differ. Constant values on the elements of the computational mesh are evaluated using the Gaussian quadrature of the fixed order 4, where the quadrature points and their values are found in the input mesh and input data using the BIH tree search.

  • Topologies of the input mesh and the computational mesh may differ. Can be applied only for boundary fields. For every (boundary) element of the computational mesh the intersection with the input mesh is computed. Constant values on the elements of the computational mesh are evaluated as the weighted average of the (constant) values on the intersecting elements of the input mesh.

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.
    For 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

    • vector of size {$\frac12N(N+1)$} to enter symmetric matrix (upper triangle, row by row)
    • 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.
    For vector values, you can use just one string to enter homogeneous vector.
    For square {$N\times N$}-matrix values, you can use:

    • array of strings of size {$N$} to enter diagonal matrix
    • array of strings of size {$\frac12N(N+1)$} to enter symmetric matrix (upper triangle, row by row)
    • just one string to enter (spatially variable) multiple of the unit matrix.
      Formula can contain variables x,y,z,t,d and usual operators and functions.
    • String (generic)

    surface_direction

    value at declaration = 0 0 1

    The vector used to project evaluation point onto the surface.

    • String (generic)

    surface_region

    optional

    The name of region set considered as the surface. You have to set surface region if you want to use formula variable d.

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 time variable.

Keys
  • t

    obligatory

    Time stamp.

  • value

    obligatory

    Value of the field in given stamp.

Generic parameters
  • element_input_type

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: point_data/node_data, cell_data/element_data, -/element_node_data, native/-.
    If not given by a user, we try to find the field in all sections, but we report an error if it is found in more than 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.

    • Double (-inf, +inf)

    default_value

    optional

    Default value is set on elements which values have not been listed in the mesh data file.

    • String (generic)

    time_unit

    value at read time = Common unit of TimeGovernor.

    Definition of the unit of all times defined in the mesh data file.

  • read_time_shift

    value at declaration = 0.0

    This key allows reading field data from the mesh data file shifted in time. Considering the time 't', field descriptor with time 'T', time shift 'S', then if 't > T', we read the time frame 't + S'.

  • interpolation

    value at declaration = equivalent_mesh

    Type of interpolation applied to the input spatial data.
    The default value 'equivalent_mesh' assumes the data being constant on elements living on the same mesh as the computational mesh, but possibly with different numbering. In the case of the same numbering, the user can set 'identical_mesh' to omit algorithm for guessing node and element renumbering. Alternatively, in case of different input mesh, several interpolation algorithms are available.

used in:

Flow_Darcy_BC_Type

Description
no description provided
Values
  • Homogeneous Neumann boundary condition
    (zero normal flux over the boundary).

  • 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 piezometric 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 the 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

Non-linear solver settings.

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 solutions) to use.
    This is usefull if the convergence criteria does not characterize your goal well enough so it converges prematurely, possibly even without a single linear solution.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 solutions) 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. By setting this flag to 'true', the solver ends with convergence success on stagnation, but it reports warning about it.

used in: referenced by:

LinSys

Default descendant: Petsc
Description

Linear solver settings.

Implementations
  • PETSc solver settings.
    It provides interface to various PETSc solvers. The convergence criteria is:
    norm( res_i ) < max( norm( res_0 ) * r_tol, a_tol )
    where res_i is the residuum vector after i-th iteration of the solver and res_0 is the estimate of the norm of the 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 {$L_2$} 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.

  • BDDCML (Balancing Domain Decomposition by Constraints - Multi-Level) solver settings.

Petsc

Implements abstract type:
Description

PETSc solver settings.
It provides interface to various PETSc solvers. The convergence criteria is:
norm( res_i ) < max( norm( res_0 ) * r_tol, a_tol )
where res_i is the residuum vector after i-th iteration of the solver and res_0 is the estimate of the norm of the 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 {$L_2$} 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 = Default value is set by the nonlinear solver or the equation. If not, we use the value 1.0e-7.

    Residual tolerance relative to the initial error.

    • Double [0, +inf)

    a_tol

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

    Absolute residual tolerance.

    • Integer [0, INT]

    max_it

    value at read time = Default value is set by the nonlinear solver or the equation. If not, we use the value 1000.

    Maximum number of outer iterations of the linear solver.

    • String (generic)

    options

    value at declaration =

    This options is passed to PETSC to create a particular KSP (Krylov space method).
    If the string is left empty (by default), the internal default options is used.

used in:

Bddc

Implements abstract type:
Description

BDDCML (Balancing Domain Decomposition by Constraints - Multi-Level) solver settings.

Keys
    • Double [0, 1]

    r_tol

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

    Residual tolerance relative to the initial error.

    • Integer [0, INT]

    max_it

    value at read time = Default value is set by the nonlinear solver or the equation. If not, we use the 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:

    • 0 - no output,
    • 1 - mild output,
    • 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 = {}

    File format of the output stream and possible parameters.

  • times

    optional

    Output times used for fields that do not have their own output times defined.

  • 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 17 decimal digits which are necessary to reproduce double values exactly 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
    • begin

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

      The start time of the grid.

    • step

      optional

      The step of the grid. If not specified, the grid consists of the single time given by the begin key.

    • 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. [Not impemented]

    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 observation element and the observation point on it is determined as follows:

    1. Find an initial element containing the initial point. If no such element exists, we report an error.
    2. Use BFS (Breadth-first search) 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.
    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, which has to be unique.
      Any string that is a valid YAML key in record without any quoting can be used, however, using 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 the observe point from the mesh relative to the mesh diameter.

      Global value is defined in mesh record by the key global_snap_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.

    Values
    • {$[m]$} Pressure solution - P0 interpolation.

    • {$[m]$} Pressure solution - P1 interpolation.

    • {$[m]$} Piezo head solution - P0 interpolation.

    • {$[ms^{-1}]$} Velocity solution - P0 interpolation.

    • {$[-]$} Input field: Subdomain ids of the domain decomposition.

    • {$[-]$} Input field: Region ids.

    • {$[-]$} Input field: Anisotropy of the conductivity tensor.

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

    • {$[ms^{-1}]$} Input field: Isotropic conductivity scalar.

    • {$[-]$} Input field: Transition coefficient between dimensions.

    • {$[s^{-1}]$} Input field: Water source density.

    • {$[m]$} Input field: Initial condition for pressure in time dependent problems.

    • {$[m^{-1}]$} Input field: Storativity (in time dependent problems).

    Output_DarcyMHSpecific

    Description

    Specific Darcy flow MH output.

    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.

      • Bool (generic)

      compute_errors

      value at declaration = False

      SPECIAL PURPOSE. Computes error norms of the solution, particulary suited for non-compatible coupling models.

      • file nameoutput

      raw_flow_output

      optional

      Output file with raw data from MH module.

    Generic parameters
    • output_field_selection

    Flow_Darcy_MH_specific:OutputFields

    Description

    Selection of output fields for the Flow_Darcy_MH_specific model.

    Values
    • {$[m]$} Error norm of the pressure solution. [Experimental]

    • {$[ms^{-1}]$} Error norm of the velocity solution. [Experimental]

    • {$[s^{-1}]$} Error norm of the divergence of the velocity solution. [Experimental]

    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
    • No Mortar method is applied.

    • 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 unsaturated Darcy flow.

    Keys
      • Array [3, 3]
      • of DOUBLE

      gravity

      value at declaration = [0, 0, -1]

      Vector of the gravity force. Dimensionless.

    • input_fields

      obligatory

      Input data for Darcy flow model.

    • nonlinear_solver

      value at declaration = {}

      Non-linear solver for MH problem.

    • output_stream

      value at declaration = {}

      Output stream settings.
      Specify file format, precision etc.

    • output

      value at declaration = {'fields': ['pressure_p0', 'velocity_p0']}

      Specification of output fields and output times.

    • Output settings specific to Darcy flow model.
      Includes raw output and some experimental functionality.

    • balance

      value at declaration = {}

      Settings for computing mass balance.

    • time

      value at declaration = {}

      Time governor settings for the unsteady Darcy flow model.

      • Integer [0, 2]

      n_schurs

      value at declaration = 2

      Number of Schur complements to perform when solving MH system.

    • mortar_method

      value at declaration = None

      Method for coupling Darcy flow between dimensions on incompatible meshes. [Experimental]

    • soil_model

      value at declaration = van_genuchten

      Soil model settings.

    RichardsLMH_Data

    Description

    Record to set fields of the equation.
    The fields are set only on the domain specified by one of the keys: 'region', 'rid'
    and after the time given by the key 'time'. The field setting can be overridden by
    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.

    • time

      value at declaration = 0.0

      Apply field setting in this record after this time.
      These 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. {$[-]$}

      • 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 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. {$[ms^{-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. {$[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 in time dependent problems. {$[m]$}

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

      storativity

      optional

      Storativity (in time dependent problems). {$[m^{-1}]$}

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

      Saturated water content {$ \theta_s $}.
      Relative volume of water in a reference volume of a saturated porous media. {$[-]$}

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

      Residual water content {$ \theta_r $}.
      Relative volume of water in a reference volume of an ideally dry porous media. {$[-]$}

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

      The van Genuchten pressure head scaling parameter {$ \alpha $}.
      It is related to the inverse of the air entry pressure, i.e. the pressure
      where the relative water content starts to decrease below 1. {$[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

    Soil model settings.

    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.

    Coupling_Iterative

    Implements abstract type:
    Description

    Record with data for iterative coupling of flow and mechanics.

    Keys
    • flow_equation

      obligatory

      Flow equation, provides the velocity field as a result.

    • Mechanics, provides the displacement field.

      • Double (-inf, +inf)

      iteration_parameter

      value at declaration = 1

      Tuning parameter for iterative splitting. Its default valuecorresponds to a theoretically optimal value with fastest convergence.

      • Integer [0, INT]

      max_it

      value at declaration = 100

      Maximal count of HM iterations.

      • Integer [0, INT]

      min_it

      value at declaration = 1

      Minimal count of HM iterations.

      • Double [0, +inf)

      a_tol

      value at declaration = 1e-07

      Absolute tolerance for difference in HM iteration.

      • Double [0, +inf)

      r_tol

      value at declaration = 1e-07

      Relative tolerance for difference in HM iteration.

    Mechanics_LinearElasticity_FE

    Description

    FEM for linear elasticity.

    Keys

    Mechanics_LinearElasticity_FE:Data

    Description

    Record to set fields of the equation.
    The fields are set only on the domain specified by one of the keys: 'region', 'rid'
    and after the time given by the key 'time'. The field setting can be overridden by
    any Mechanics_LinearElasticity_FE: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.

    • time

      value at declaration = 0.0

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

    • bc_type

      optional

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

      • instance of ABSTRACT
      • generic typeField_R3_to_R[3]
      • parameter element_input_type = DOUBLE

      Prescribed displacement. {$[m]$}

      • instance of ABSTRACT
      • generic typeField_R3_to_R[3]
      • parameter element_input_type = DOUBLE

      bc_traction

      optional

      Prescribed traction. {$[m^{-1}kgs^{-2}]$}

      • instance of ABSTRACT
      • generic typeField_R3_to_R[3]
      • parameter element_input_type = DOUBLE

      load

      optional

      Prescribed load. {$[m^{-3}kgs^{-2}]$}

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

      Young modulus. {$[m^{-1}kgs^{-2}]$}

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

      Poisson ratio. {$[-]$}

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

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

    used in:

    Elasticity_BC_Type

    Description

    Types of boundary conditions for heat transfer model.

    Values

    Field_R3_to_R[3]

    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[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.
      For NxM tensor values: tensor(row,col) = tuple( M*row + col ).

    used in: referenced by:

    FieldConstant

    Constructible from key: value
    Implements abstract type:
    Description

    R3_to_R[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, 3]
      • of PARAMETER

      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

      • vector of size {$\frac12N(N+1)$} to enter symmetric matrix (upper triangle, row by row)
      • 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] 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 STRING

      value

      obligatory

      String, array of strings, or matrix of strings with formulas for individual entries of scalar, vector, or tensor value respectively.
      For vector values, you can use just one string to enter homogeneous vector.
      For square {$N\times N$}-matrix values, you can use:

      • array of strings of size {$N$} to enter diagonal matrix
      • array of strings of size {$\frac12N(N+1)$} to enter symmetric matrix (upper triangle, row by row)
      • just one string to enter (spatially variable) multiple of the unit matrix.
        Formula can contain variables x,y,z,t,d and usual operators and functions.
      • String (generic)

      surface_direction

      value at declaration = 0 0 1

      The vector used to project evaluation point onto the surface.

      • String (generic)

      surface_region

      optional

      The name of region set considered as the surface. You have to set surface region if you want to use formula variable d.

    used in: referenced by:

    FieldTimeFunction

    Constructible from key: time_function
    Implements abstract type:
    Description

    R3_to_R[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 time variable.

    Keys
    • t

      obligatory

      Time stamp.

      • Array [1, 3]
      • of PARAMETER

      value

      obligatory

      Value of the field in given stamp.

    Generic parameters
    • element_input_type

    FieldFE

    Implements abstract type:
    Description

    R3_to_R[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: point_data/node_data, cell_data/element_data, -/element_node_data, native/-.
      If not given by a user, we try to find the field in all sections, but we report an error if it is found in more than 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.

      • Double (-inf, +inf)

      default_value

      optional

      Default value is set on elements which values have not been listed in the mesh data file.

      • String (generic)

      time_unit

      value at read time = Common unit of TimeGovernor.

      Definition of the unit of all times defined in the mesh data file.

    • read_time_shift

      value at declaration = 0.0

      This key allows reading field data from the mesh data file shifted in time. Considering the time 't', field descriptor with time 'T', time shift 'S', then if 't > T', we read the time frame 't + S'.

    • interpolation

      value at declaration = equivalent_mesh

      Type of interpolation applied to the input spatial data.
      The default value 'equivalent_mesh' assumes the data being constant on elements living on the same mesh as the computational mesh, but possibly with different numbering. In the case of the same numbering, the user can set 'identical_mesh' to omit algorithm for guessing node and element renumbering. Alternatively, in case of different input mesh, several interpolation algorithms are available.

    Mechanics_LinearElasticity_FE:OutputFields

    Description

    Selection of output fields for the Mechanics_LinearElasticity_FE model.

    Values

    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
    coupled with reaction and adsorption model (ODE per element)
    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

    Finite volume method, explicit in time, for advection only solute transport.

    Keys

    Solute_Advection_FV:Data

    Description

    Record to set fields of the equation.
    The fields are set only on the domain specified by one of the keys: 'region', 'rid'
    and after the time given by the key 'time'. The field setting can be overridden by
    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.

    • time

      value at declaration = 0.0

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

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

      porosity

      optional

      Porosity of the mobile phase. {$[-]$}

      • 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 condition for concentration of substances. {$[m^{-3}kg]$}

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

      init_conc

      optional

      Initial values for concentration of substances. {$[m^{-3}kg]$}

    Solute_Advection_FV:OutputFields

    Description

    Selection of output fields for the Solute_Advection_FV model.

    Values
    • {$[-]$} Input field: Porosity of the mobile phase.

    • {$[-]$} Input field: INTERNAL. Water content passed from unsaturated Darcy flow model.

    • {$[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 values for concentration of substances.

    • {$[m^{-3}kg]$} Concentration solution.

    • {$[-]$} Input field: Region ids.

    • {$[-]$} Input field: Subdomain ids of the domain decomposition.

    Solute_AdvectionDiffusion_DG

    Implements abstract type:
    Description

    Discontinuous Galerkin (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 = {}

      Solver for the linear system.

    • input_fields

      obligatory

      Input fields of the equation.

    • dg_variant

      value at declaration = non-symmetric

      Variant of the interior penalty discontinuous Galerkin method.

      • Integer [0, 3]

      dg_order

      value at declaration = 1

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

    • output

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

      Specification of output fields and output times.

    Solute_AdvectionDiffusion_DG:Data

    Description

    Record to set fields of the equation.
    The fields are set only on the domain specified by one of the keys: 'region', 'rid'
    and after the time given by the key 'time'. The field setting can be overridden by
    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.

    • time

      value at declaration = 0.0

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

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

      porosity

      optional

      Porosity of the mobile phase. {$[-]$}

      • 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 values for concentration of substances. {$[m^{-3}kg]$}

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

      disp_l

      optional

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

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

      disp_t

      optional

      Transverse 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.
      On 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 $}.
      The prescribed concentration {$c_D$} is specified by the field 'bc_conc'.

    • Total mass flux boundary condition.
      The 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.
      The 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.

    Values
    • {$[-]$} Input field: Porosity of the mobile phase.

    • {$[-]$} Input field: INTERNAL. Water content passed from unsaturated Darcy flow model.

    • {$[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 values for concentration of substances.

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

    • {$[m]$} Input field: Transverse 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]$} Concentration solution.

    • {$[-]$} 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: Region ids.

    • {$[-]$} Input field: Subdomain ids of the domain decomposition.

    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.
      Provides computing the concentration of substances in mobile and immobile zone.

    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.

    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.
      The value must be positive. Further, the branching ratios of all products are normalized in order to sum to one.
      The default value 1.0, should only be used in the case of single product.

    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.

    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 the highest aqueous concentration in the isotherm function interpolation table. Use any negative value for an automatic choice according to current maximal concentration (default and recommended). Use '0' to always evaluate isotherm function directly (can be very slow). Use a positive value to set the interpolation table limit manually (if aqueous concentration is higher, then the isotherm function is evaluated directly).

    • 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.
    The fields are set only on the domain specified by one of the keys: 'region', 'rid'
    and after the time given by the key 'time'. The field setting can be overridden by
    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.

    • time

      value at declaration = 0.0

      Apply field setting in this record after this time.
      These 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 to 1.0 (or even higher), meaning no sorbing surface, then type 'none' will be selected automatically. {$[-]$}

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

      Distribution coefficient { $k_l, k_F, k_L $} of linear, Freundlich or Langmuir isotherm respectively. {$[m^{3}kg^{-1}]$}

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

      Additional parameter {$ \alpha $} of nonlinear isotherms. {$[-]$}

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

      Initial solid concentration of substances. It is a vector: one value for every substance. {$[-]$}

    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.

    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 to 1.0 (or even higher), meaning no sorbing surface, then type 'none' will be selected automatically.

    • {$[m^{3}kg^{-1}]$} Input field: Distribution coefficient { $k_l, k_F, k_L $} of linear, Freundlich or Langmuir isotherm respectively.

    • {$[-]$} Input field: Additional parameter {$ \alpha $} of nonlinear isotherms.

    • {$[-]$} Input field: Initial solid concentration of substances. It is a vector: one value for every substance.

    • {$[-]$} Concentration solution in the solid phase.

    DualPorosity

    Implements abstract type:
    Description

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

    Keys
    used in: referenced by:

    DualPorosity:Data

    Description

    Record to set fields of the equation.
    The fields are set only on the domain specified by one of the keys: 'region', 'rid'
    and after the time given by the key 'time'. The field setting can be overridden by
    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.

    • time

      value at declaration = 0.0

      Apply field setting in this record after this time.
      These 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 the highest aqueous concentration in the isotherm function interpolation table. Use any negative value for an automatic choice according to current maximal concentration (default and recommended). Use '0' to always evaluate isotherm function directly (can be very slow). Use a positive value to set the interpolation table limit manually (if aqueous concentration is higher, then the isotherm function is evaluated directly).

    • 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.

    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 to 1.0 (or even higher), meaning no sorbing surface, then type 'none' will be selected automatically.

    • {$[m^{3}kg^{-1}]$} Input field: Distribution coefficient { $k_l, k_F, k_L $} of linear, Freundlich or Langmuir isotherm respectively.

    • {$[-]$} Input field: Additional parameter {$ \alpha $} of nonlinear isotherms.

    • {$[-]$} Input field: Initial solid concentration of substances. It is a vector: one value for every substance.

    • {$[-]$} Concentration solution in the solid mobile phase.

    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 the highest aqueous concentration in the isotherm function interpolation table. Use any negative value for an automatic choice according to current maximal concentration (default and recommended). Use '0' to always evaluate isotherm function directly (can be very slow). Use a positive value to set the interpolation table limit manually (if aqueous concentration is higher, then the isotherm function is evaluated directly).

    • 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.

    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 to 1.0 (or even higher), meaning no sorbing surface, then type 'none' will be selected automatically.

    • {$[m^{3}kg^{-1}]$} Input field: Distribution coefficient { $k_l, k_F, k_L $} of linear, Freundlich or Langmuir isotherm respectively.

    • {$[-]$} Input field: Additional parameter {$ \alpha $} of nonlinear isotherms.

    • {$[-]$} Input field: Initial solid concentration of substances. It is a vector: one value for every substance.

    • {$[-]$} Concentration solution in the solid immobile phase.

    DualPorosity:OutputFields

    Description

    Selection of output fields for the DualPorosity model.

    Values

    Heat_AdvectionDiffusion_DG

    Implements abstract type:
    Description

    Discontinuous Galerkin (DG) solver for heat transfer.

    Keys

    Heat_AdvectionDiffusion_DG:Data

    Description

    Record to set fields of the equation.
    The fields are set only on the domain specified by one of the keys: 'region', 'rid'
    and after the time given by the key 'time'. The field setting can be overridden by
    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.

    • time

      value at declaration = 0.0

      Apply field setting in this record after this time.
      These 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

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

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

      disp_t

      optional

      Transverse 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.
      On 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 $}.
      The prescribed temperature {$T_D$} is specified by the field 'bc_temperature'.

    • Total energy flux boundary condition.
      The 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.
      The 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.

    Values
    • {$[K]$} Input field: Initial temperature.

    • {$[-]$} Input field: Porosity.

    • {$[-]$} Input field:

    • {$[m^{-3}kg]$} Input field: Density of fluid.

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

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

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

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

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

    • {$[m]$} Input field: Longitudinal heat dispersivity in fluid.

    • {$[m]$} Input field: Transverse heat dispersivity in fluid.

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

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

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

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

    • {$[K]$} Input field: Reference temperature of source in fluid.

    • {$[K]$} Input field: Reference temperature in solid.

    • {$[K]$} Temperature solution.

    • {$[-]$} 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: Region ids.

    • {$[-]$} Input field: Subdomain ids of the domain decomposition.