FlashBase Class Reference

#include <flashbase.h>

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

List of all members.

Public Member Functions

virtual void execute ()=0
virtual void printOutput ()=0
virtual ~FlashBase ()
void setTransport (TransportBase &trans)
void setDynamic (DynamicBase &dyn)
DynamicBasegetDynamicModule ()
TransportBasegetTransportModule ()
unsigned numComponents ()
unsigned numPhases ()

Protected Member Functions

 FlashBase (unsigned n_phases, unsigned n_components)

Protected Attributes

unsigned n_components
unsigned n_phases

Private Attributes

DynamicBasem_pDyn
TransportBasem_pTrans

Detailed Description

FlashCompositional is the base class of all the classes that implement flash computations. FlashCompositional's childs are responsible to implement the the thermodynamics calculations and give expressions for the molar densities of the phases. The standard units are Vol= m^3, Pressure=N/m^2, Mass Kg but this can be changed by other flashes classes. We strong recomend that all flash classes specify in their documentation the units they are using. Remember THE UNITS OF THE SIMULATOR ARE SPECIFIED BY THE FLASH MODULE

This class has an array that is fullfilled with the flash output everytime the execute() is called. We access these cash data throw the method flash(Index,FlashData). If you want to construct a flash module that does not cash their computations, or want do design a specialized cash structure, please override both methods. The Index entries goest to zero until the size of the solutions vector -1 of the transport and dynamic modules. The vectors of both modules are assumed to be equal.

Definition at line 26 of file flashbase.h.


Constructor & Destructor Documentation

FlashBase::FlashBase ( unsigned  n_phases,
unsigned  n_components 
) [protected]

Definition at line 6 of file flashbase.cpp.

00007    :n_components(n_components),n_phases(n_phases)
00008  {
00009     m_pDyn=NULL;m_pTrans=NULL;
00010 
00011 }

virtual FlashBase::~FlashBase (  )  [inline, virtual]

Definition at line 41 of file flashbase.h.

00041 {}


Member Function Documentation

virtual void FlashBase::execute (  )  [pure virtual]
DynamicBase& FlashBase::getDynamicModule (  )  [inline]

Definition at line 47 of file flashbase.h.

00047 {assert(m_pDyn);return *m_pDyn;}

TransportBase& FlashBase::getTransportModule (  )  [inline]

Definition at line 48 of file flashbase.h.

00048 {assert(m_pTrans);return *m_pTrans;}

unsigned FlashBase::numComponents (  )  [inline]

Definition at line 51 of file flashbase.h.

00051 {return n_components;}

unsigned FlashBase::numPhases (  )  [inline]

Definition at line 52 of file flashbase.h.

00052 {return n_phases;}

virtual void FlashBase::printOutput (  )  [pure virtual]
void FlashBase::setDynamic ( DynamicBase dyn  )  [inline]

Definition at line 46 of file flashbase.h.

00046 {m_pDyn=&dyn;}

void FlashBase::setTransport ( TransportBase trans  )  [inline]

Definition at line 45 of file flashbase.h.

00045 {m_pTrans=&trans;}


Member Data Documentation

Definition at line 29 of file flashbase.h.

Definition at line 30 of file flashbase.h.

unsigned FlashBase::n_components [protected]

Definition at line 32 of file flashbase.h.

unsigned FlashBase::n_phases [protected]

Definition at line 32 of file flashbase.h.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Generated on Sun Apr 8 23:13:06 2012 for CO2INJECTION by  doxygen 1.6.3