Flow123d
jenkins-Flow123d-windows32-release-multijob-51
|
#include <linear_reaction.hh>
Public Member Functions | |
LinearReaction (Mesh &init_mesh, Input::Record in_rec) | |
Constructor. More... | |
~LinearReaction (void) | |
Destructor. More... | |
void | initialize () override |
Prepares the object to usage. More... | |
void | zero_time_step () override |
void | update_solution (void) override |
Updates the solution. More... | |
Public Member Functions inherited from ReactionTerm | |
ReactionTerm (Mesh &init_mesh, Input::Record in_rec) | |
Constructor. More... | |
~ReactionTerm (void) | |
Destructor. More... | |
virtual void | output_data (void) |
Output method. More... | |
void | choose_next_time (void) override |
Disable changes in TimeGovernor by empty method. More... | |
ReactionTerm & | names (const std::vector< string > &names) |
Sets the names of substances considered in transport. More... | |
ReactionTerm & | output_stream (OutputTime &ostream) |
Sets the output stream which is given from transport class. More... | |
ReactionTerm & | concentration_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 () |
Mesh & | mesh () |
TimeMark::Type | mark_type () |
FieldSet & | data () |
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 |
static Input::Type::Record | input_type_one_decay_substep |
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 | |
virtual void | modify_reaction_matrix (void) |
virtual double ** | compute_reaction (double **concentrations, int loc_el) override |
void | reset_reaction_matrix () |
Resets reaction matrix as eye matrix. More... | |
void | initialize_from_input () |
Initializes private members of sorption from the input record. More... | |
void | print_reaction_matrix (void) |
void | print_indices (int dec_nr, int n_subst) |
void | print_half_lives () |
unsigned int | find_subst_name (const std::string &name) |
Protected Member Functions inherited from ReactionTerm | |
virtual void | output_vector_gather (void) |
Protected Attributes | |
std::vector< std::vector < double > > | reaction_matrix_ |
std::vector< double > | prev_conc_ |
std::vector< double > | half_lives_ |
std::vector< std::vector < unsigned int > > | substance_ids_ |
std::vector< std::vector < double > > | bifurcation_ |
unsigned int | n_substances_ |
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... | |
Distribution * | distribution_ |
Pointer to reference to distribution of elements between processors. More... | |
vector< string > | names_ |
Names belonging to substances. More... | |
OutputTime * | output_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... | |
Mesh * | mesh_ |
TimeGovernor * | time_ |
Input::Record | input_record_ |
FieldSet * | eq_data_ |
Definition at line 20 of file linear_reaction.hh.
LinearReaction::LinearReaction | ( | Mesh & | init_mesh, |
Input::Record | in_rec | ||
) |
Constructor.
Definition at line 38 of file linear_reaction.cc.
LinearReaction::~LinearReaction | ( | void | ) |
Destructor.
Definition at line 43 of file linear_reaction.cc.
|
overrideprotectedvirtual |
For simulation of chemical reaction in just one element either inside of MOBILE or IMMOBILE pores.
Implements ReactionTerm.
Definition at line 112 of file linear_reaction.cc.
|
protected |
Finds a position of a string in specified array.
Definition at line 237 of file linear_reaction.cc.
|
overridevirtual |
Prepares the object to usage.
Allocating memory, reading input, initialization of fields.
Reimplemented from EquationBase.
Reimplemented in PadeApproximant.
Definition at line 47 of file linear_reaction.cc.
|
protected |
Initializes private members of sorption from the input record.
Definition at line 134 of file linear_reaction.cc.
|
protectedvirtual |
This method modificates reaction matrix as described in ini-file a single section [Decay_i] or [FoReact_i]. It is used when bifurcation is switched off.
Reimplemented in PadeApproximant.
Definition at line 86 of file linear_reaction.cc.
|
protected |
For printing (nr_of_isotopes - 1) doubles containing half-lives belonging to particular isotopes on screen.
Definition at line 228 of file linear_reaction.cc.
|
protected |
For printing nr_of_isotopes identifies of isotopes in a current decay chain.
|
protected |
For control printing of a matrix describing simple chemical raections.
Definition at line 209 of file linear_reaction.cc.
|
protected |
Resets reaction matrix as eye matrix.
Definition at line 74 of file linear_reaction.cc.
|
overridevirtual |
Updates the solution.
Goes through local distribution of elements and calls compute_reaction
.
Reimplemented from EquationBase.
Definition at line 192 of file linear_reaction.cc.
|
overridevirtual |
Initialization of the solution in the zero time. There is lot of things that can not be done in the constructor since we have not fully initialized fields yet. Fields coming from coupling has to be set after the constructor and before zero_time_step.
Reimplemented from EquationBase.
Reimplemented in PadeApproximant.
Definition at line 64 of file linear_reaction.cc.
|
protected |
Two dimensional array contains mass percentage of every single decay bifurcation on every single row.
Definition at line 108 of file linear_reaction.hh.
|
protected |
Sequence of (nr_of_isotopes - 1) doubles containing half-lives belonging to particular isotopes.
Definition at line 100 of file linear_reaction.hh.
|
static |
Static variable for new input data types input
Definition at line 26 of file linear_reaction.hh.
|
static |
Static variable gets information about particular decay step
Definition at line 30 of file linear_reaction.hh.
|
protected |
Definition at line 110 of file linear_reaction.hh.
|
protected |
Pointer to reference previous concentration array used in compute_reaction().
Definition at line 96 of file linear_reaction.hh.
|
protected |
Small (nr_of_species x nr_of_species) square matrix for realization of radioactive decay and first order reactions simulation.
Definition at line 92 of file linear_reaction.hh.
|
protected |
Sequence of integers describing an order of isotopes in decay chain or first order reaction.
Definition at line 104 of file linear_reaction.hh.