Flow123d  jenkins-Flow123d-windows32-release-multijob-51
Classes | Public Member Functions | Static Public Attributes | Protected Member Functions | Protected Attributes | List of all members
TransportBase Class Reference

Specification of transport model interface. More...

#include <transport_operator_splitting.hh>

Inheritance diagram for TransportBase:
Inheritance graph
[legend]
Collaboration diagram for TransportBase:
Collaboration graph
[legend]

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
 
MassBalancemass_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 ()
 
Meshmesh ()
 
TimeMark::Type mark_type ()
 
FieldSetdata ()
 
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 RegionDBregion_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_DofHandlermh_dh
 
MassBalancemass_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...
 
Meshmesh_
 
TimeGovernortime_
 
Input::Record input_record_
 
FieldSeteq_data_
 

Additional Inherited Members

- Public Types inherited from EquationForMassBalance
enum  TimeIntegrationScheme { none, explicit_euler, implicit_euler, crank_nicholson }
 

Detailed Description

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.

Constructor & Destructor Documentation

TransportBase::TransportBase ( Mesh mesh,
const Input::Record  in_rec 
)

Definition at line 96 of file transport_operator_splitting.cc.

TransportBase::~TransportBase ( )
virtual

Definition at line 103 of file transport_operator_splitting.cc.

Member Function Documentation

MassBalance* TransportBase::mass_balance ( )
inline

Getter for mass balance class

Definition at line 101 of file transport_operator_splitting.hh.

Here is the caller graph for this function:

unsigned int TransportBase::n_substances ( )
inlineoverridevirtual

Returns number of trnasported substances.

Implements AdvectionProcessBase.

Definition at line 104 of file transport_operator_splitting.hh.

Here is the caller graph for this function:

const RegionDB* TransportBase::region_db ( )
inlineprotectedvirtual

Returns the region database.

Implements EquationForMassBalance.

Definition at line 115 of file transport_operator_splitting.hh.

virtual void TransportBase::set_concentration_vector ( Vec &  vec)
inlinevirtual

Definition at line 109 of file transport_operator_splitting.hh.

virtual void TransportBase::set_velocity_field ( const MH_DofHandler dh)
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.

Here is the caller graph for this function:

vector<string>& TransportBase::substance_names ( )
inlineoverridevirtual

Returns reference to the vector of substnace names.

Implements AdvectionProcessBase.

Definition at line 107 of file transport_operator_splitting.hh.

Member Data Documentation

Record TransportBase::input_type_output_record
static
Initial value:
= Record("TransportOutput", "Output setting for transport equations.")
.declare_key("output_stream", OutputTime::input_type, Default::obligatory(),
"Parameters of output stream.")

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.

MassBalance* TransportBase::mass_balance_
protected

object for calculation and writing the mass balance to file.

Definition at line 131 of file transport_operator_splitting.hh.

const MH_DofHandler* TransportBase::mh_dh
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.

unsigned int TransportBase::n_subst_
protected

Number of transported substances.

Definition at line 118 of file transport_operator_splitting.hh.

std::vector<string> TransportBase::subst_names_
protected

Names of transported substances.

Definition at line 121 of file transport_operator_splitting.hh.


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