Flow123d  jenkins-Flow123d-windows32-release-multijob-51
Public Types | Public Member Functions | Protected Member Functions | Friends | List of all members
EquationForMassBalance Class Referenceabstract

#include <mass_balance.hh>

Inheritance diagram for EquationForMassBalance:
Inheritance graph
[legend]

Public Types

enum  TimeIntegrationScheme { none, explicit_euler, implicit_euler, crank_nicholson }
 

Public Member Functions

virtual ~EquationForMassBalance ()
 
virtual unsigned int n_substances ()=0
 Returns number of trnasported substances. More...
 
virtual vector< string > & substance_names ()=0
 Returns reference to the vector of substnace names. More...
 
virtual TimeIntegrationScheme time_scheme ()=0
 Returns the time integration scheme of the equation. More...
 

Protected Member Functions

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
 
virtual const RegionDBregion_db ()=0
 Returns the region database. More...
 

Friends

class MassBalance
 

Detailed Description

Interface class for equation which implements methods required for mass balance.

Definition at line 10 of file mass_balance.hh.

Member Enumeration Documentation

Enumerator
none 
explicit_euler 
implicit_euler 
crank_nicholson 

Definition at line 16 of file mass_balance.hh.

Constructor & Destructor Documentation

virtual EquationForMassBalance::~EquationForMassBalance ( )
inlinevirtual

Definition at line 23 of file mass_balance.hh.

Member Function Documentation

virtual void EquationForMassBalance::calc_elem_sources ( vector< vector< double > > &  mass,
vector< vector< double > > &  src_balance 
)
protectedpure virtual

Calculates the substance mass and sources on all regions. The actual calculation depends on the numerical scheme, so each descendant of TransportBase implements this method.

Parameters
massmass[i][j] is the calculated mass of ith substance on jth region.
src_balancesrc_balance[i][j] is the source mass of ith substance on jth region.

Implemented in TransportDG< Model >, TransportDG< Model >, TransportOperatorSplitting, ConvectionTransport, and TransportNothing.

Here is the caller graph for this function:

virtual void EquationForMassBalance::calc_fluxes ( vector< vector< double > > &  bcd_balance,
vector< vector< double > > &  bcd_plus_balance,
vector< vector< double > > &  bcd_minus_balance 
)
protectedpure virtual

Calculates the total flux through boundaries of all regions, and additionally positive and negative fluxes. The actual calculation depends on the numerical scheme, so each descendant of TransportBase implements this method.

Parameters
bcd_balancebcd_balance[i][j] is the calculated total flux of ith substance through boundary of jth region.
bcd_plus_balancebcd_plus_balance[i][j] is the total positive flux of ith substance through boundary of jth region.
bcd_minus_balancebcd_minus_balance[i][j] is the total negative flux of ith substance through boundary of jth region.

Implemented in TransportDG< Model >, TransportDG< Model >, TransportOperatorSplitting, ConvectionTransport, and TransportNothing.

Here is the caller graph for this function:

virtual unsigned int EquationForMassBalance::n_substances ( )
pure virtual

Returns number of trnasported substances.

Implemented in TransportBase, and AdvectionProcessBase.

Here is the caller graph for this function:

virtual const RegionDB* EquationForMassBalance::region_db ( )
protectedpure virtual

Returns the region database.

Implemented in TransportBase.

Here is the caller graph for this function:

virtual vector<string>& EquationForMassBalance::substance_names ( )
pure virtual

Returns reference to the vector of substnace names.

Implemented in TransportBase, and AdvectionProcessBase.

Here is the caller graph for this function:

virtual TimeIntegrationScheme EquationForMassBalance::time_scheme ( )
pure virtual

Returns the time integration scheme of the equation.

Implemented in TransportDG< Model >, TransportOperatorSplitting, ConvectionTransport, and TransportNothing.

Here is the caller graph for this function:

Friends And Related Function Documentation

friend class MassBalance
friend

Definition at line 62 of file mass_balance.hh.


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