23 #ifndef DUAL_POROSITY_H_ 24 #define DUAL_POROSITY_H_ 26 #include <boost/exception/info.hpp> 93 void initialize()
override;
99 void zero_time_step()
override;
104 void update_solution(
void)
override;
107 void output_data(
void)
override;
109 bool evaluate_time_constraint(
double &time_constraint)
override;
118 void make_reactions();
121 void set_initial_condition();
123 void initialize_fields();
153 #endif //DUAL_POROSITY_H_ ReactionTerm FactoryBaseType
Container for various descendants of FieldCommonBase.
std::shared_ptr< ReactionTerm > reaction_mobile
Reaction running in mobile zone.
MultiField< 3, FieldValue< 3 >::Scalar > conc_immobile
Calculated concentrations in the immobile zone.
Class template representing a field with values dependent on: point, element, and region...
EquationOutput output_fields
Fields indended for output, i.e. all input fields plus those representing solution.
Field< 3, FieldValue< 3 >::Scalar > porosity_immobile
Immobile porosity field.
Cell accessor allow iterate over DOF handler cells.
Class ReactionTerm is an abstract class representing reaction term in transport.
double scheme_tolerance_
Dual porosity computational scheme tolerance.
std::shared_ptr< ReactionTerm > reaction_immobile
Reaction running in immobile zone.
Class representing dual porosity model in transport.
FieldFEScalarVec conc_immobile_fe
Underlaying FieldFE for each substance of conc_immobile.
MultiField< 3, FieldValue< 3 >::Scalar > diffusion_rate_immobile
Mass transfer coefficients between mobile and immobile pores.
static const int registrar
Registrar of class to factory.
MultiField< 3, FieldValue< 3 >::Scalar > init_conc_immobile
Initial concentrations in the immobile zone.
Field< 3, FieldValue< 3 >::Scalar > porosity
Porosity field.
Class for representation of a vector of fields of the same physical quantity.