Flow123d
JS_before_hm-1008-g3dab983
|
#include <reaction_term.hh>
Public Types | |
typedef std::vector< std::shared_ptr< FieldFE< 3, FieldValue< 3 >::Scalar > > > | FieldFEScalarVec |
Public Member Functions | |
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) | |
Constructor. More... | |
~ReactionTerm (void) | |
Destructor. More... | |
virtual void | output_data (void) override |
Output method. More... | |
void | choose_next_time (void) override |
Disable changes in TimeGovernor by empty method. More... | |
Setters | |
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... | |
virtual bool | evaluate_time_constraint (double &time_constraint)=0 |
Computes a constraint for time step. More... | |
ReactionTerm & | concentration_fields (FieldFEScalarVec &conc_mobile) |
Public Member Functions inherited from EquationBase | |
EquationBase () | |
EquationBase (Mesh &mesh, const Input::Record in_rec) | |
virtual void | initialize () |
virtual void | zero_time_step () |
virtual | ~EquationBase () |
virtual void | update_solution () |
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 () |
double | solved_time () |
Mesh & | mesh () |
std::shared_ptr< Balance > | balance () const |
TimeMark::Type | mark_type () |
FieldSet & | data () |
Static Public Member Functions | |
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 | |
virtual void | compute_reaction (const DHCellAccessor &dh_cell)=0 |
Compute reaction on a single element. More... | |
Protected Attributes | |
FieldFEScalarVec | conc_mobile_fe |
FieldFEs representing P0 interpolation of mobile concentration (passed from transport). More... | |
SubstanceList | substances_ |
Names belonging to substances. More... | |
std::shared_ptr< OutputTime > | output_stream_ |
Pointer to a transport output stream. More... | |
std::shared_ptr< DOFHandlerMultiDim > | dof_handler_ |
Pointer to DOF handler used through the reaction tree. 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_data_ |
std::shared_ptr< Balance > | balance_ |
object for calculation and writing the mass balance to file. More... | |
Definition at line 45 of file reaction_term.hh.
typedef std::vector<std::shared_ptr<FieldFE< 3, FieldValue<3>::Scalar> > > ReactionTerm::FieldFEScalarVec |
Definition at line 53 of file reaction_term.hh.
ReactionTerm::ReactionTerm | ( | Mesh & | init_mesh, |
Input::Record | in_rec | ||
) |
Constructor.
init_mesh | is the reference to the computational mesh |
in_rec | is the input record |
Definition at line 51 of file reaction_term.cc.
ReactionTerm::~ReactionTerm | ( | void | ) |
Destructor.
Definition at line 56 of file reaction_term.cc.
|
overridevirtual |
Disable changes in TimeGovernor by empty method.
Reimplemented from EquationBase.
Definition at line 63 of file reaction_term.cc.
|
protectedpure virtual |
Compute reaction on a single element.
Implemented in SorptionBase, DualPorosity, and FirstOrderReactionBase.
|
inline |
Sets the pointer to concentration matrix for the mobile zone, all substances and on all elements (given by transport).
Definition at line 90 of file reaction_term.hh.
ReactionTerm::DECLARE_INPUT_EXCEPTION | ( | ExcUnknownSubstance | , |
<< "Unknown substance name: "<< EI_Substance::qval | |||
) |
ReactionTerm::DECLARE_INPUT_EXCEPTION | ( | ExcWrongDescendantModel | , |
<< "Impossible descendant model: "<< EI_Model::qval | |||
) |
|
pure virtual |
Computes a constraint for time step.
Implemented in DualPorosity, and FirstOrderReactionBase.
|
static |
|
static |
|
static |
|
static |
Static variable for definition of common input record in reaction term.
Definition at line 25 of file reaction_term.cc.
|
inlineoverridevirtual |
Output method.
Some reaction models have their own data to output (sorption, dual porosity)
Reimplemented from EquationBase.
Reimplemented in SorptionBase, and DualPorosity.
Definition at line 105 of file reaction_term.hh.
|
inline |
Sets the output stream which is given from transport class.
Definition at line 80 of file reaction_term.hh.
|
inline |
Sets the names of substances considered in transport.
Definition at line 76 of file reaction_term.hh.
ReactionTerm::TYPEDEF_ERR_INFO | ( | EI_Substance | , |
std::string | |||
) |
ReactionTerm::TYPEDEF_ERR_INFO | ( | EI_Model | , |
std::string | |||
) |
|
protected |
FieldFEs representing P0 interpolation of mobile concentration (passed from transport).
Definition at line 115 of file reaction_term.hh.
|
protected |
Pointer to DOF handler used through the reaction tree.
Definition at line 127 of file reaction_term.hh.
|
protected |
Pointer to a transport output stream.
Definition at line 124 of file reaction_term.hh.
|
protected |
Names belonging to substances.
Must be same as in the transport.
Definition at line 121 of file reaction_term.hh.