pyrtid.forward.models.ForwardModel#

class pyrtid.forward.models.ForwardModel(grid: ~pyrtid.utils.grid.RectilinearGrid, time_params: ~pyrtid.forward.models.TimeParameters, fl_params: ~pyrtid.forward.models.FlowParameters = <pyrtid.forward.models.FlowParameters object>, tr_params: ~pyrtid.forward.models.TransportParameters = <pyrtid.forward.models.TransportParameters object>, gch_params: ~pyrtid.forward.models.GeochemicalParameters = <pyrtid.forward.models.GeochemicalParameters object>, source_terms: ~typing.Optional[~typing.Union[~pyrtid.forward.models.SourceTerm, ~typing.Sequence[~pyrtid.forward.models.SourceTerm]]] = None, boundary_conditions: ~typing.Optional[~typing.Union[~pyrtid.forward.models.BoundaryCondition, ~typing.Sequence[~pyrtid.forward.models.BoundaryCondition]]] = None)[source]#

Bases: object

Class representing the reactive transport model.

wadv: float

Advection weight (for testing between 0.0 and 1.0). The default is 1.0.

__init__(grid: ~pyrtid.utils.grid.RectilinearGrid, time_params: ~pyrtid.forward.models.TimeParameters, fl_params: ~pyrtid.forward.models.FlowParameters = <pyrtid.forward.models.FlowParameters object>, tr_params: ~pyrtid.forward.models.TransportParameters = <pyrtid.forward.models.TransportParameters object>, gch_params: ~pyrtid.forward.models.GeochemicalParameters = <pyrtid.forward.models.GeochemicalParameters object>, source_terms: ~typing.Optional[~typing.Union[~pyrtid.forward.models.SourceTerm, ~typing.Sequence[~pyrtid.forward.models.SourceTerm]]] = None, boundary_conditions: ~typing.Optional[~typing.Union[~pyrtid.forward.models.BoundaryCondition, ~typing.Sequence[~pyrtid.forward.models.BoundaryCondition]]] = None) None[source]#

Initialize the instance.

Parameters

Methods definition

add_boundary_conditions(condition: BoundaryCondition) None[source]#

Add a boundary condition to the flow or the transport model.

add_src_term(source_term: SourceTerm) None[source]#

Add a source term.

get_ij_over_u(time_index: int) ndarray[Any, dtype[float64]][source]#

Get the ij/Unorm for the CFL condition.

get_sources(time: float, grid: RectilinearGrid) Tuple[ndarray[Any, dtype[float64]], ndarray[Any, dtype[float64]]][source]#

Get the flow sources and sink terms.

reinit() None[source]#

Set all arrays to zero except for the initial conditions(first time).