Flow123d  jenkins-Flow123d-windows-release-multijob-285
Public Member Functions | Static Public Attributes | Protected Member Functions | List of all members
SorptionImmob Class Reference

Sorption model in immobile zone in case dual porosity is considered. More...

#include <sorption.hh>

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

Public Member Functions

 SorptionImmob (Mesh &init_mesh, Input::Record in_rec)
 Constructor. More...
 
 ~SorptionImmob (void)
 Destructor. More...
 
- Public Member Functions inherited from SorptionDual
 SorptionDual (Mesh &init_mesh, Input::Record in_rec, const string &output_conc_name, const string &output_selection_name)
 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)
 
 DECLARE_INPUT_EXCEPTION (ExcSubstanceCountMatch,<< "The size of the input array "<< EI_ArrayName::qval<< " does not match the number of substances.")
 
 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)
 Constructor. More...
 
 ~ReactionTerm (void)
 Destructor. More...
 
void choose_next_time (void) override
 Disable changes in TimeGovernor by empty method. More...
 
ReactionTermsubstances (SubstanceList &substances)
 Sets the names of substances considered in transport. More...
 
ReactionTermoutput_stream (OutputTime &ostream)
 Sets the output stream which is given from transport class. More...
 
ReactionTermconcentration_matrix (double **concentration, Distribution *conc_distr, int *el_4_loc, int *row_4_el)
 
- 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)
 
virtual void set_time_lower_constraint (double dt)
 
TimeGovernor const & time ()
 
virtual void set_time_governor (TimeGovernor &time)
 
double planned_time ()
 
double solved_time ()
 
Meshmesh ()
 
TimeMark::Type mark_type ()
 
FieldSetdata ()
 
virtual void get_solution_vector (double *&vector, unsigned int &size)
 
virtual void get_parallel_solution_vector (Vec &vector)
 

Static Public Attributes

static Input::Type::Record input_type = SorptionBase::record_factory(SorptionRecord::immobile)
 
- Static Public Attributes inherited from SorptionBase
static Input::Type::Record input_type
 
- Static Public Attributes inherited from ReactionTerm
static Input::Type::AbstractRecord input_type = AbstractRecord("ReactionTerm", "Equation for reading information about simple chemical reactions.")
 
static Input::Type::Record input_type_output_record
 Specification of the output record. More...
 

Protected Member Functions

void isotherm_reinit (std::vector< Isotherm > &isotherms_vec, const ElementAccessor< 3 > &elem) override
 Reinitializes the isotherm. 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 set_initial_condition ()
 Reads and sets initial condition for concentration in solid. More...
 
void allocate_output_mpi (void)
 Allocates petsc vectors, prepares them for output and creates vector scatter. More...
 
void output_vector_gather (void) override
 Gathers all the parallel vectors to enable them to be output. More...
 
double ** compute_reaction (double **concentrations, int loc_el)
 
void make_tables (void)
 

Additional Inherited Members

- Static Public Member Functions inherited from SorptionBase
static Input::Type::Record record_factory (SorptionRecord::Type)
 Creates the input record for different cases of sorption model (simple or in dual porosity). More...
 
static Input::Type::Selection make_output_selection (const string &output_field_name, const string &selection_name)
 
- Protected Attributes inherited from SorptionDual
Field< 3, FieldValue< 3 >::Scalar > immob_porosity_
 
- Protected Attributes inherited from SorptionBase
EqDatadata_
 Pointer to equation data. The object is constructed in descendants. More...
 
unsigned int n_interpolation_steps_
 
double solvent_density_
 
std::vector< double > solubility_vec_
 
std::vector< double > table_limit_
 
std::vector< std::vector< Isotherm > > isotherms
 
unsigned int n_substances_
 
std::vector< unsigned int > substance_global_idx_
 Mapping from local indexing of substances to global. More...
 
double ** conc_solid
 
Input::Array output_array
 
Input::Type::Selection output_selection
 
ReactionTermreaction_liquid
 
ReactionTermreaction_solid
 
VecScatter vconc_out_scatter
 Output vector scatter. More...
 
Vec * vconc_solid
 PETSC sorbed concentration vector (parallel). More...
 
std::vector< VectorSeqDoubleconc_solid_out
 sorbed concentration array output (gathered - sequential) More...
 
- Protected Attributes inherited from ReactionTerm
double ** concentration_matrix_
 
int * el_4_loc_
 Indices of elements belonging to local dofs. More...
 
int * row_4_el_
 Indices of rows belonging to elements. More...
 
Distributiondistribution_
 Pointer to reference to distribution of elements between processors. More...
 
SubstanceList substances_
 Names belonging to substances. More...
 
OutputTimeoutput_stream_
 Pointer to a transport output stream. 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_data_
 

Detailed Description

Sorption model in immobile zone in case dual porosity is considered.

Definition at line 96 of file sorption.hh.

Constructor & Destructor Documentation

SorptionImmob::SorptionImmob ( Mesh init_mesh,
Input::Record  in_rec 
)

Constructor.

Definition at line 178 of file sorption.cc.

SorptionImmob::~SorptionImmob ( void  )

Destructor.

Definition at line 182 of file sorption.cc.

Member Function Documentation

void SorptionImmob::isotherm_reinit ( std::vector< Isotherm > &  isotherms_vec,
const ElementAccessor< 3 > &  elem 
)
overrideprotectedvirtual

Reinitializes the isotherm.

Implements SorptionDual.

Definition at line 193 of file sorption.cc.

Member Data Documentation

Definition at line 99 of file sorption.hh.


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