19 #ifndef CONC_TRANS_MODEL_HH_
20 #define CONC_TRANS_MODEL_HH_
42 namespace Input {
class Record; }
123 static constexpr
const char *
name() {
return "Solute_AdvectionDiffusion"; }
Discontinuous Galerkin method for equation of transport with dispersion.
static Input::Type::Abstract & get_input_type()
Common specification of the input record for secondary equations.
static constexpr const char * name()
static IT::Selection get_output_selection()
unsigned int n_substances()
Returns number of transported substances.
vector< unsigned int > subst_idx_
List of indices used to call balance methods for a set of quantities.
const vector< unsigned int > & subst_idx()
Returns reference to the vector of substance indices.
SubstanceList substances_
Transported substances.
static string default_output_field()
SubstanceList & substances()
Returns reference to the vector of substance names.
Field< 3, FieldValue< 3 >::Scalar > rock_density
Rock matrix density.
MultiField< 3, FieldValue< 3 >::Scalar > sources_conc_out
Concentration sources - concentration output.
BCMultiField< 3, FieldValue< 3 >::Enum > bc_type
Type of boundary condition (see also BC_Type)
MultiField< 3, FieldValue< 3 >::Scalar > init_condition
Initial concentrations.
Field< 3, FieldValue< 3 >::Scalar > mass_matrix_coef
Field represents coefficients of mass matrix.
MultiField< 3, FieldValue< 3 >::Scalar > sorption_coefficient
Coefficient of linear sorption.
MultiField< 3, FieldValue< 3 >::Scalar > sources_sigma_out
Concentration sources - sigma output.
BCMultiField< 3, FieldValue< 3 >::Scalar > bc_flux
Flux value in total/diffusive flux b.c.
Field< 3, FieldValue< 3 >::Scalar > v_norm
Velocity norm field.
MultiField< 3, FieldValue< 3 >::TensorFixed > diff_m
Molecular diffusivity (for each substance).
BCMultiField< 3, FieldValue< 3 >::Scalar > bc_dirichlet_value
Prescribed concentration for Dirichlet/reference concentration for flux b.c.
MultiField< 3, FieldValue< 3 >::Scalar > output_field
MultiField< 3, FieldValue< 3 >::Scalar > retardation_coef
Field represents retardation coefficients due to sorption.
MultiField< 3, FieldValue< 3 >::Scalar > disp_t
Transversal dispersivity (for each substance).
MultiField< 3, FieldValue< 3 >::TensorFixed > diffusion_coef
Diffusion coefficients.
static const Input::Type::Selection & get_bc_type_selection()
MultiField< 3, FieldValue< 3 >::VectorFixed > advection_coef
Advection coefficients.
MultiField< 3, FieldValue< 3 >::Scalar > sources_density_out
Concentration sources - density output.
MultiField< 3, FieldValue< 3 >::Scalar > disp_l
Longitudal dispersivity (for each substance).
BCMultiField< 3, FieldValue< 3 >::Scalar > bc_robin_sigma
Transition coefficient in total/diffusive flux b.c.
SubstanceList & substances() override
Returns reference to the vector of substance names.
virtual ModelEqData & eq_data()=0
Derived class should implement getter for ModelEqData instance.
void init_from_input(const Input::Record &in_rec) override
Read necessary data from input record.
void set_balance_object(std::shared_ptr< Balance > balance) override
unsigned int n_substances() override
Returns number of transported substances.
ConcentrationTransportBase FactoryBaseType
void set_target_time(double) override
void init_balance(const Input::Record &in_rec)
const vector< unsigned int > & get_subst_idx() override
Return substance indices used in balance.
virtual ModelEqFields & eq_fields()=0
Derived class should implement getter for ModelEqFields instance.
std::shared_ptr< OutputTime > output_stream_
double solvent_density_
Density of liquid (a global constant).
void set_output_stream(std::shared_ptr< OutputTime > stream)
Setter for output stream.
ConcentrationTransportModel(Mesh &mesh, const Input::Record &in_rec)
~ConcentrationTransportModel() override
std::shared_ptr< Balance > balance() const
Class template representing a field with values dependent on: point, element, and region.
Class for representation of a vector of fields of the same physical quantity.
The class for outputting data during time.
unsigned int size() const
Classes for storing substance data.