21 #ifndef REACTION_TERM_H 22 #define REACTION_TERM_H 74 {substances_.
initialize(substances);
return *
this;}
78 {output_stream_=ostream;
return *
this;}
81 virtual bool evaluate_time_constraint(
double &time_constraint) = 0;
90 concentration_matrix_ = concentration;
91 distribution_ = conc_distr;
108 void choose_next_time(
void)
override;
113 dof_handler_ = dof_handler;
122 virtual double **compute_reaction(
double **concentrations,
int loc_el) =0;
151 #endif // REACTION_TERM_H virtual void output_data(void) override
Output method.
Abstract base class for equation clasess.
Declaration of class which handles the ordering of degrees of freedom (dof) and mappings between loca...
double ** concentration_matrix_
virtual void initialize()
ReactionTerm & output_stream(std::shared_ptr< OutputTime > ostream)
Sets the output stream which is given from transport class.
SubstanceList substances_
Names belonging to substances.
std::shared_ptr< OutputTime > output_stream_
Pointer to a transport output stream.
Distribution * distribution_
Pointer to reference to distribution of elements between processors.
ReactionTerm & set_dh(std::shared_ptr< DOFHandlerMultiDim > dof_handler)
Sets the pointer to DOF handler (shared through the reaction tree)
The class for outputting data during time.
int LongIdx
Define type that represents indices of large arrays (elements, nodes, dofs etc.)
LongIdx * row_4_el_
Indices of rows belonging to elements.
Classes for storing substance data.
std::shared_ptr< DOFHandlerMultiDim > dof_handler_
Pointer to DOF handler used through the reaction tree.
ReactionTerm & concentration_matrix(double **concentration, Distribution *conc_distr, LongIdx *el_4_loc, LongIdx *row_4_el)
LongIdx * el_4_loc_
Indices of elements belonging to local dofs.
ReactionTerm & substances(SubstanceList &substances)
Sets the names of substances considered in transport.