Flow123d
JS_before_hm-2115-gf629a871a
|
Class representing dual porosity model in transport. More...
#include <dual_porosity.hh>
Classes | |
class | EqFields |
DualPorosity fields. More... | |
Public Types | |
typedef ReactionTerm | FactoryBaseType |
Public Types inherited from ReactionTerm | |
typedef std::vector< std::shared_ptr< FieldFE< 3, FieldValue< 3 >::Scalar > > > | FieldFEScalarVec |
Public Member Functions | |
DualPorosity (Mesh &init_mesh, Input::Record in_rec) | |
Constructor. More... | |
~DualPorosity (void) | |
Destructor. More... | |
void | initialize () override |
Prepares the object to usage. More... | |
void | zero_time_step () override |
void | update_solution (void) override |
void | output_data (void) override |
Main output routine. More... | |
Public Member Functions inherited from ReactionTerm | |
TYPEDEF_ERR_INFO (EI_Substance, std::string) | |
TYPEDEF_ERR_INFO (EI_Model, std::string) | |
DECLARE_INPUT_EXCEPTION (ExcUnknownSubstance,<< "Unknown substance name: "<< EI_Substance::qval) | |
DECLARE_INPUT_EXCEPTION (ExcWrongDescendantModel,<< "Impossible descendant model: "<< EI_Model::qval) | |
ReactionTerm (Mesh &init_mesh, Input::Record in_rec) | |
~ReactionTerm (void) | |
Destructor. More... | |
ReactionTerm & | substances (SubstanceList &substances) |
Sets the names of substances considered in transport. More... | |
ReactionTerm & | output_stream (std::shared_ptr< OutputTime > ostream) |
Sets the output stream which is given from transport class. More... | |
ReactionTerm & | concentration_fields (FieldFEScalarVec &conc_mobile) |
void | choose_next_time (void) override |
Disable changes in TimeGovernor by empty method. More... | |
Public Member Functions inherited from EquationBase | |
EquationBase () | |
EquationBase (Mesh &mesh, const Input::Record in_rec) | |
virtual | ~EquationBase () |
virtual void | set_time_upper_constraint (double dt, std::string message) |
virtual void | set_time_lower_constraint (double dt, std::string message) |
TimeGovernor & | time () |
virtual void | set_time_governor (TimeGovernor &time) |
double | planned_time () |
virtual double | solved_time () |
Mesh & | mesh () |
std::shared_ptr< Balance > | balance () const |
TimeMark::Type | mark_type () |
FieldSet & | eq_fieldset () |
Static Public Member Functions | |
static const Input::Type::Record & | get_input_type () |
Static Public Member Functions inherited from ReactionTerm | |
static Input::Type::Abstract & | it_abstract_term () |
static Input::Type::Abstract & | it_abstract_mobile_term () |
static Input::Type::Abstract & | it_abstract_immobile_term () |
static Input::Type::Abstract & | it_abstract_reaction () |
Static Public Member Functions inherited from EquationBase | |
static Input::Type::Record & | record_template () |
Template Record with common keys for derived equations. More... | |
Protected Member Functions | |
DualPorosity () | |
void | make_reactions () |
Resolves construction of following reactions. More... | |
void | set_initial_condition () |
Sets initial condition from input. More... | |
void | initialize_fields () |
Initializes field sets. More... | |
void | compute_reaction (const DHCellAccessor &dh_cell) override |
Compute reaction on a single element. More... | |
Protected Member Functions inherited from ReactionTerm |
Protected Attributes | |
std::shared_ptr< EqFields > | eq_fields_ |
Equation fields - all fields are in this set. More... | |
FieldSet | input_field_set_ |
std::shared_ptr< ReactionTerm > | reaction_mobile |
Reaction running in mobile zone. More... | |
std::shared_ptr< ReactionTerm > | reaction_immobile |
Reaction running in immobile zone. More... | |
double | scheme_tolerance_ |
Dual porosity computational scheme tolerance. More... | |
Protected Attributes inherited from ReactionTerm | |
std::shared_ptr< OutputTime > | output_stream_ |
Pointer to a transport output stream. More... | |
std::shared_ptr< EqFields > | eq_fields_base_ |
Equation data - all fields needs in assembly class. More... | |
std::shared_ptr< EqData > | eq_data_ |
Equation data - all data needs in assembly class. More... | |
Protected Attributes inherited from EquationBase | |
bool | equation_empty_ |
flag is true if only default constructor was called More... | |
Mesh * | mesh_ |
TimeGovernor * | time_ |
Input::Record | input_record_ |
FieldSet * | eq_fieldset_ |
std::shared_ptr< Balance > | balance_ |
object for calculation and writing the mass balance to file. More... | |
Static Private Attributes | |
static const int | registrar |
Registrar of class to factory. More... | |
Class representing dual porosity model in transport.
Definition at line 50 of file dual_porosity.hh.
Definition at line 53 of file dual_porosity.hh.
DualPorosity::DualPorosity | ( | Mesh & | init_mesh, |
Input::Record | in_rec | ||
) |
Constructor.
Definition at line 113 of file dual_porosity.cc.
DualPorosity::~DualPorosity | ( | void | ) |
Destructor.
Definition at line 128 of file dual_porosity.cc.
|
protected |
This method disables to use constructor without parameters.
|
overrideprotectedvirtual |
Compute reaction on a single element.
Implements ReactionTerm.
Definition at line 283 of file dual_porosity.cc.
|
static |
Static variable for new input data types input
Definition at line 47 of file dual_porosity.cc.
|
overridevirtual |
Prepares the object to usage.
Allocating memory, reading input, initialization of fields.
Reimplemented from EquationBase.
Definition at line 158 of file dual_porosity.cc.
|
protected |
Initializes field sets.
Definition at line 186 of file dual_porosity.cc.
|
protected |
Resolves construction of following reactions.
Definition at line 133 of file dual_porosity.cc.
|
overridevirtual |
Main output routine.
Reimplemented from ReactionTerm.
Definition at line 350 of file dual_porosity.cc.
|
protected |
Sets initial condition from input.
Definition at line 253 of file dual_porosity.cc.
|
overridevirtual |
Updates the solution according to the dual porosity model.
Reimplemented from EquationBase.
Definition at line 267 of file dual_porosity.cc.
|
overridevirtual |
Does first computation after initialization process. The time is set and initial condition is set and output.
Reimplemented from EquationBase.
Definition at line 216 of file dual_porosity.cc.
|
protected |
Equation fields - all fields are in this set.
Definition at line 126 of file dual_porosity.hh.
|
protected |
Input data set - fields in this set are read from the input file.
Definition at line 131 of file dual_porosity.hh.
|
protected |
Reaction running in immobile zone.
Definition at line 134 of file dual_porosity.hh.
|
protected |
Reaction running in mobile zone.
Definition at line 133 of file dual_porosity.hh.
|
staticprivate |
Registrar of class to factory.
Definition at line 144 of file dual_porosity.hh.
|
protected |
Dual porosity computational scheme tolerance.
According to this tolerance the analytical solution of dual porosity concentrations or simple forward difference approximation of concentrations is chosen for computation.
Definition at line 140 of file dual_porosity.hh.