Flow123d
jenkins-Flow123d-windows32-release-multijob-51
|
Specification of transport model interface. More...
#include <transport_operator_splitting.hh>
Classes | |
class | TransportEqData |
Public Member Functions | |
TransportBase (Mesh &mesh, const Input::Record in_rec) | |
virtual | ~TransportBase () |
virtual void | set_velocity_field (const MH_DofHandler &dh) override |
MassBalance * | mass_balance () |
unsigned int | n_substances () override |
Returns number of trnasported substances. More... | |
vector< string > & | substance_names () override |
Returns reference to the vector of substnace names. More... | |
virtual void | set_concentration_vector (Vec &vec) |
Public Member Functions inherited from AdvectionProcessBase | |
AdvectionProcessBase (Mesh &mesh, const Input::Record in_rec) | |
Public Member Functions inherited from EquationBase | |
EquationBase () | |
EquationBase (Mesh &mesh, const Input::Record in_rec) | |
virtual | ~EquationBase () |
virtual void | zero_time_step () |
virtual void | update_solution () |
virtual void | initialize () |
Initialize fields. More... | |
virtual void | choose_next_time () |
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) |
virtual void | output_data () |
Write computed fields. More... | |
Public Member Functions inherited from EquationForMassBalance | |
virtual | ~EquationForMassBalance () |
virtual TimeIntegrationScheme | time_scheme ()=0 |
Returns the time integration scheme of the equation. More... | |
Static Public Attributes | |
static Input::Type::Record | input_type_output_record |
Static Public Attributes inherited from AdvectionProcessBase | |
static Input::Type::AbstractRecord | input_type |
Common specification of the input record for secondary equations. More... | |
Protected Member Functions | |
const RegionDB * | region_db () |
Returns the region database. More... | |
Protected Member Functions inherited from EquationForMassBalance | |
virtual void | calc_fluxes (vector< vector< double > > &bcd_balance, vector< vector< double > > &bcd_plus_balance, vector< vector< double > > &bcd_minus_balance)=0 |
virtual void | calc_elem_sources (vector< vector< double > > &mass, vector< vector< double > > &src_balance)=0 |
Protected Attributes | |
unsigned int | n_subst_ |
Number of transported substances. More... | |
std::vector< string > | subst_names_ |
Names of transported substances. More... | |
const MH_DofHandler * | mh_dh |
MassBalance * | mass_balance_ |
object for calculation and writing the mass balance to file. 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_ |
Additional Inherited Members | |
Public Types inherited from EquationForMassBalance | |
enum | TimeIntegrationScheme { none, explicit_euler, implicit_euler, crank_nicholson } |
Specification of transport model interface.
Here one has to specify methods for setting or getting data particular to transport equations.
Definition at line 59 of file transport_operator_splitting.hh.
TransportBase::TransportBase | ( | Mesh & | mesh, |
const Input::Record | in_rec | ||
) |
Definition at line 96 of file transport_operator_splitting.cc.
|
virtual |
Definition at line 103 of file transport_operator_splitting.cc.
|
inline |
Getter for mass balance class
Definition at line 101 of file transport_operator_splitting.hh.
|
inlineoverridevirtual |
Returns number of trnasported substances.
Implements AdvectionProcessBase.
Definition at line 104 of file transport_operator_splitting.hh.
|
inlineprotectedvirtual |
Returns the region database.
Implements EquationForMassBalance.
Definition at line 115 of file transport_operator_splitting.hh.
|
inlinevirtual |
Definition at line 109 of file transport_operator_splitting.hh.
|
inlineoverridevirtual |
This method takes sequential PETSc vector of side velocities and update transport matrix. The ordering is same as ordering of sides in the mesh. We just keep the pointer, but do not destroy the object.
TODO: We should pass whole velocity field object (description of base functions and dof numbering) and vector.
Implements AdvectionProcessBase.
Reimplemented in TransportDG< Model >, and TransportOperatorSplitting.
Definition at line 94 of file transport_operator_splitting.hh.
|
inlineoverridevirtual |
Returns reference to the vector of substnace names.
Implements AdvectionProcessBase.
Definition at line 107 of file transport_operator_splitting.hh.
|
static |
Specification of the output record. Need not to be used by all transport models, but they should allow output of similar fields.
Definition at line 89 of file transport_operator_splitting.hh.
|
protected |
object for calculation and writing the mass balance to file.
Definition at line 131 of file transport_operator_splitting.hh.
|
protected |
Temporary solution how to pass velocity field form the flow model. TODO: introduce FieldDiscrete -containing true DOFHandler and data vector and pass such object together with other data. Possibly make more general set_data method, allowing setting data given by name. needs support from EqDataBase.
Definition at line 128 of file transport_operator_splitting.hh.
|
protected |
Number of transported substances.
Definition at line 118 of file transport_operator_splitting.hh.
|
protected |
Names of transported substances.
Definition at line 121 of file transport_operator_splitting.hh.