Flow123d  jenkins-Flow123d-windows32-release-multijob-51
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
SorptionDual Class Referenceabstract

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]

Public Member Functions

 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
 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
 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...
 
ReactionTermnames (const std::vector< string > &names)
 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)
 

Protected Member Functions

virtual void isotherm_reinit (std::vector< Isotherm > &isotherms, const ElementAccessor< 3 > &elm)=0
 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)
 

Protected Attributes

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_
 
std::vector< double > molar_masses_
 
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...
 
Vec * vconc_solid_out
 PETSC sorbed concentration vector output (gathered - sequential) More...
 
double ** conc_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...
 
vector< string > names_
 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_
 

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)
 
- 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...
 

Detailed Description

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

Definition at line 45 of file sorption.hh.

Constructor & Destructor Documentation

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

Constructor.

Definition at line 73 of file sorption.cc.

SorptionDual::~SorptionDual ( void  )

Destructor.

Definition at line 86 of file sorption.cc.

Member Function Documentation

virtual void SorptionDual::isotherm_reinit ( std::vector< Isotherm > &  isotherms,
const ElementAccessor< 3 > &  elm 
)
protectedpure virtual

Reinitializes the isotherm.

Implements SorptionBase.

Implemented in SorptionImmob, and SorptionMob.

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

Sets the immobile porosity field.

Definition at line 57 of file sorption.hh.

Member Data Documentation

Field<3, FieldValue<3>::Scalar > SorptionDual::immob_porosity_
protected

Definition at line 66 of file sorption.hh.


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