Flow123d  JS_before_hm-2196-g9bdbf60c0
Classes | Public Member Functions | Protected Attributes | List of all members
SorptionDual Class Reference

Abstract class of sorption model in case dual porosity is considered. More...

#include <sorption.hh>

Inheritance diagram for SorptionDual:
Inheritance graph
[legend]
Collaboration diagram for SorptionDual:
Collaboration graph
[legend]

Classes

class  EqFields
 

Public Member Functions

 SorptionDual (Mesh &init_mesh, Input::Record in_rec, const string &output_conc_name, const string &output_conc_desc)
 Constructor. More...
 
 ~SorptionDual (void)
 Destructor. More...
 
void set_porosity_immobile (Field< 3, FieldValue< 3 >::Scalar > &por_imm)
 Sets the immobile porosity field. More...
 
- Public Member Functions inherited from SorptionBase
 TYPEDEF_ERR_INFO (EI_ArrayName, std::string)
 
 TYPEDEF_ERR_INFO (EI_Subst, unsigned int)
 
 DECLARE_INPUT_EXCEPTION (ExcSubstanceCountMatch,<< "The size of the input array "<< EI_ArrayName::qval<< " does not match the number of substances.")
 
 DECLARE_EXCEPTION (ExcNotPositiveScaling,<< "Scaling parameter in sorption is not positive. Check the input for rock density and molar mass of "<< EI_Subst::val<< ". substance.\n")
 
 SorptionBase (Mesh &init_mesh, Input::Record in_rec)
 
virtual ~SorptionBase (void)
 
void initialize () override
 Prepares the object to usage. More...
 
void zero_time_step () override
 
void update_solution (void) override
 Updates the solution. More...
 
void output_data (void) override
 Output method. 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...
 
ReactionTermsubstances (SubstanceList &substances)
 Sets the names of substances considered in transport. More...
 
ReactionTermoutput_stream (std::shared_ptr< OutputTime > ostream)
 Sets the output stream which is given from transport class. More...
 
ReactionTermconcentration_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)
 
TimeGovernortime ()
 
virtual void set_time_governor (TimeGovernor &time)
 
double planned_time ()
 
virtual double solved_time ()
 
Meshmesh ()
 
std::shared_ptr< Balancebalance () const
 
TimeMark::Type mark_type ()
 
FieldSeteq_fieldset ()
 

Protected Attributes

std::shared_ptr< EqFieldseq_fields_dual_
 Overwrites SorptionBase::eq_fields_. More...
 
- Protected Attributes inherited from SorptionBase
std::shared_ptr< EqFieldseq_fields_
 Pointer to equation fields. The object is constructed in descendants. More...
 
std::shared_ptr< EqDataeq_data_
 Equation data. More...
 
unsigned int n_interpolation_steps_
 
double solvent_density_
 
std::vector< double > solubility_vec_
 
std::vector< double > table_limit_
 
std::vector< std::vector< double > > max_conc
 
std::vector< std::vector< Isotherm > > isotherms
 
std::shared_ptr< ReactionTermreaction_liquid
 
std::shared_ptr< ReactionTermreaction_solid
 
GenericAssembly< InitConditionAssemblySorp > * init_condition_assembly_
 general assembly objects, hold assembly objects of appropriate dimension More...
 
- Protected Attributes inherited from ReactionTerm
std::shared_ptr< OutputTimeoutput_stream_
 Pointer to a transport output stream. More...
 
std::shared_ptr< EqFieldseq_fields_base_
 Equation data - all fields needs in assembly class. More...
 
std::shared_ptr< EqDataeq_data_base_
 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...
 
Meshmesh_
 
TimeGovernortime_
 
Input::Record input_record_
 
FieldSeteq_fieldset_
 
std::shared_ptr< Balancebalance_
 object for calculation and writing the mass balance to file. More...
 

Additional Inherited Members

- Public Types inherited from ReactionTerm
typedef std::vector< std::shared_ptr< FieldFE< 3, FieldValue< 3 >::Scalar > > > FieldFEScalarVec
 
- Static Public Member Functions inherited from SorptionBase
static const Input::Type::Recordget_input_type ()
 
static Input::Type::Instance make_output_type (const string &equation_name, const string &output_field_name, const string &output_field_desc)
 
- Static Public Member Functions inherited from ReactionTerm
static Input::Type::Abstractit_abstract_term ()
 
static Input::Type::Abstractit_abstract_mobile_term ()
 
static Input::Type::Abstractit_abstract_immobile_term ()
 
static Input::Type::Abstractit_abstract_reaction ()
 
- Static Public Member Functions inherited from EquationBase
static Input::Type::Recordrecord_template ()
 Template Record with common keys for derived equations. More...
 
- Protected Member Functions inherited from SorptionBase
 SorptionBase ()
 
void make_reactions ()
 
void initialize_substance_ids ()
 Reads names of substances from input and creates indexing to global vector of substance. More...
 
void initialize_from_input ()
 Initializes private members of sorption from the input record. More...
 
void initialize_fields ()
 Initializes field sets. More...
 
void compute_reaction (const DHCellAccessor &dh_cell) override
 Compute reaction on a single element. More...
 
void isotherm_reinit (unsigned int i_subst, const ElementAccessor< 3 > &elm)
 Reinitializes the isotherm. More...
 
void isotherm_reinit_all (const ElementAccessor< 3 > &elm)
 Calls isotherm_reinit for all isotherms. More...
 
void make_tables (void)
 
void update_max_conc ()
 Computes maximal aqueous concentration at the current step. More...
 
void clear_max_conc ()
 Sets max conc to zeros on all regins. More...
 
virtual void init_field_models ()=0
 Initialize FieldModels, method is implemented in descendants. More...
 
- Protected Member Functions inherited from ReactionTerm

Detailed Description

Abstract class of sorption model in case dual porosity is considered.

Definition at line 78 of file sorption.hh.

Constructor & Destructor Documentation

◆ SorptionDual()

SorptionDual::SorptionDual ( Mesh init_mesh,
Input::Record  in_rec,
const string &  output_conc_name,
const string &  output_conc_desc 
)

Constructor.

Definition at line 105 of file sorption.cc.

◆ ~SorptionDual()

SorptionDual::~SorptionDual ( void  )

Destructor.

Definition at line 116 of file sorption.cc.

Member Function Documentation

◆ set_porosity_immobile()

void SorptionDual::set_porosity_immobile ( Field< 3, FieldValue< 3 >::Scalar > &  por_imm)
inline

Sets the immobile porosity field.

Definition at line 97 of file sorption.hh.

Member Data Documentation

◆ eq_fields_dual_

std::shared_ptr<EqFields> SorptionDual::eq_fields_dual_
protected

Overwrites SorptionBase::eq_fields_.

Definition at line 103 of file sorption.hh.


The documentation for this class was generated from the following files: