Flow123d
release_3.0.0-1190-g0f314ad
|
#include <transport_operator_splitting.hh>
Public Member Functions | |
ConcentrationTransportBase (Mesh &init_mesh, const Input::Record in_rec) | |
virtual void | set_target_time (double target_time)=0 |
virtual void | set_balance_object (std::shared_ptr< Balance > balance)=0 |
virtual bool | evaluate_time_constraint (double &time_constraint)=0 |
Computes a constraint for time step. More... | |
virtual const vector< unsigned int > & | get_subst_idx ()=0 |
Return substance indices used in balance. More... | |
virtual void | calculate_concentration_matrix ()=0 |
Calculate the array of concentrations per element (for reactions). More... | |
virtual void | update_after_reactions (bool solution_changed)=0 |
Perform changes to transport solution after reaction step. More... | |
virtual void | set_output_stream (std::shared_ptr< OutputTime > stream)=0 |
Setter for output stream. More... | |
virtual std::shared_ptr< OutputTime > | output_stream ()=0 |
Getter for output stream. More... | |
virtual double ** | get_concentration_matrix ()=0 |
Getter for array of concentrations per element. More... | |
virtual const Vec & | get_solution (unsigned int sbi)=0 |
Return PETSc vector with solution for sbi-th substance. More... | |
virtual void | get_par_info (LongIdx *&el_4_loc, Distribution *&el_ds)=0 |
Return array of indices of local elements and parallel distribution of elements. More... | |
virtual LongIdx * | get_row_4_el ()=0 |
Return global array of order of elements within parallel vector. More... | |
virtual void | set_velocity_field (const MH_DofHandler &dh)=0 |
Pass velocity from flow to transport. More... | |
virtual unsigned int | n_substances ()=0 |
Returns number of trnasported substances. More... | |
virtual SubstanceList & | substances ()=0 |
Returns reference to the vector of substnace names. More... | |
Public Member Functions inherited from EquationBase | |
EquationBase () | |
EquationBase (Mesh &mesh, const Input::Record in_rec) | |
virtual void | initialize () |
virtual void | zero_time_step () |
virtual | ~EquationBase () |
virtual void | update_solution () |
virtual void | choose_next_time () |
virtual void | set_time_upper_constraint (double dt, std::string message) |
virtual void | set_time_lower_constraint (double dt, std::string message) |
TimeGovernor & | 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) |
virtual void | output_data () |
Write computed fields. More... | |
Static Public Member Functions | |
static Input::Type::Abstract & | get_input_type () |
Common specification of the input record for secondary equations. More... | |
Additional Inherited Members | |
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_ |
std::shared_ptr< Balance > | balance_ |
object for calculation and writing the mass balance to file. More... | |
Abstract interface class for implementations of transport equation within TransportOperatorSplitting.
Definition at line 61 of file transport_operator_splitting.hh.
|
inline |
Constructor.
Definition at line 67 of file transport_operator_splitting.hh.
|
pure virtual |
Calculate the array of concentrations per element (for reactions).
Implemented in ConvectionTransport.
|
pure virtual |
Computes a constraint for time step.
Implemented in ConvectionTransport.
|
pure virtual |
Getter for array of concentrations per element.
Implemented in ConvectionTransport.
|
static |
Common specification of the input record for secondary equations.
Definition at line 62 of file transport_operator_splitting.cc.
|
pure virtual |
Return array of indices of local elements and parallel distribution of elements.
Implemented in ConvectionTransport.
|
pure virtual |
Return global array of order of elements within parallel vector.
Implemented in ConvectionTransport.
|
pure virtual |
Return PETSc vector with solution for sbi-th substance.
Implemented in ConvectionTransport.
|
pure virtual |
Return substance indices used in balance.
Implemented in ConcentrationTransportModel, and ConvectionTransport.
|
pure virtual |
Returns number of trnasported substances.
Implemented in ConvectionTransport, and ConcentrationTransportModel.
|
pure virtual |
Getter for output stream.
Implemented in ConcentrationTransportModel, and ConvectionTransport.
|
pure virtual |
Use Balance object from upstream equation (e.g. in various couplings) instead of own instance.
Implemented in ConcentrationTransportModel, and ConvectionTransport.
|
pure virtual |
Setter for output stream.
Implemented in ConcentrationTransportModel, and ConvectionTransport.
|
pure virtual |
Set time interval which is considered as one time step by TransportOperatorSplitting. In particular the velocity field dosn't change over this interval.
Dependencies:
velocity, porosity -> matrix, source_vector matrix -> time_step
data_read_times -> time_step (not necessary if we won't stick to jump times) data -> source_vector time_step -> scaling
Implemented in ConcentrationTransportModel, and ConvectionTransport.
|
pure virtual |
Pass velocity from flow to transport.
Implemented in ConvectionTransport, and ConcentrationTransportModel.
|
pure virtual |
Returns reference to the vector of substnace names.
Implemented in ConvectionTransport, and ConcentrationTransportModel.
|
pure virtual |
Perform changes to transport solution after reaction step.
Implemented in ConvectionTransport.