FaceFluxFunction Class Reference

#include <facefluxfunction.h>

Inheritance diagram for FaceFluxFunction:
Inheritance graph
[legend]

List of all members.

Public Member Functions

 FaceFluxFunction (unsigned nComponents)
virtual ~FaceFluxFunction ()
unsigned numComponents ()
virtual void fluxAtFace (VecDouble &vFlux, const FaceInfo &face, const VecDouble &Q1, const VecDouble &Q2)
virtual void exactFluxAtFace (VecDouble &vFlux, const FaceInfo &face, const VecDouble &Q1, const VecDouble &Q2)
virtual double maxLocalCharVelocity (const FaceInfo &face, const VecDouble &Q1, const VecDouble &Q2)
virtual void updateDynamicData (DynamicBase &dynMod)
virtual void maxGlobalCharVelocity (double vel[3])
virtual void transformToFlash (VecDouble &vec)

Private Attributes

unsigned m_nComponents

Detailed Description

This class is used by the childrens of the ConservativeMethodForSystems class. It is used to generate the flux term for conservative methods that aproximate the conservative law in the original mesh like the classes LaxFriedrichsMethod, UpwindMethod and RussanovMethod.

Definition at line 15 of file facefluxfunction.h.


Constructor & Destructor Documentation

FaceFluxFunction::FaceFluxFunction ( unsigned  nComponents  )  [inline]

Definition at line 23 of file facefluxfunction.h.

00023 {m_nComponents=nComponents;}

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

Reimplemented in TraceFaceFluxWithGravity.

Definition at line 24 of file facefluxfunction.h.

00024 {}


Member Function Documentation

void FaceFluxFunction::exactFluxAtFace ( VecDouble vFlux,
const FaceInfo face,
const VecDouble Q1,
const VecDouble Q2 
) [virtual]

Reimplemented in FaceFluxWithGravity.

Definition at line 14 of file facefluxfunction.cpp.

00015 {
00016   throw new Exception("FaceFluxFunction::exactFluxAtFace not implemented\nProbably because there is no Riemman Solver for this Flux Function\n");
00017   
00018 }

void FaceFluxFunction::fluxAtFace ( VecDouble vFlux,
const FaceInfo face,
const VecDouble Q1,
const VecDouble Q2 
) [virtual]

Reimplemented in FaceFluxCO2Brine, FaceFluxSimpleBlackOil, FaceFluxWithGravity, FaceFluxWithIndependentEquations, and FluxForCO2Inj.

Definition at line 3 of file facefluxfunction.cpp.

00004 {
00005   throw new Exception("FaceFluxFunction::fluxAtFaces not implemented");
00006 
00007 }

void FaceFluxFunction::maxGlobalCharVelocity ( double  vel[3]  )  [virtual]

Reimplemented in FaceFluxCO2Brine, FaceFluxCompositional, FaceFluxSimpleBlackOil, FaceFluxSimpleBlackOilMass, FaceFluxWithGravity, FaceFluxWithIndependentEquations, FaceFluxWithoutGravity, FluxForCO2Inj, and TraceFaceFluxWithGravity.

Definition at line 31 of file facefluxfunction.cpp.

00031                                                           {
00032   throw new Exception("FaceFluxFunction::maxGlobalCharVelocity not implemented");
00033 }

double FaceFluxFunction::maxLocalCharVelocity ( const FaceInfo face,
const VecDouble Q1,
const VecDouble Q2 
) [virtual]

Reimplemented in FaceFluxCO2Brine, FaceFluxSimpleBlackOil, FaceFluxWithGravity, FaceFluxWithIndependentEquations, and FluxForCO2Inj.

Definition at line 9 of file facefluxfunction.cpp.

00010 {
00011   throw new Exception("FaceFluxFunction::maxLocalCharVelocity not implemented");
00012 }

unsigned FaceFluxFunction::numComponents (  )  [inline]

Definition at line 25 of file facefluxfunction.h.

00025 {return m_nComponents;} 

void FaceFluxFunction::transformToFlash ( VecDouble vec  )  [virtual]

Reimplemented in FaceFluxSimpleBlackOil, and FaceFluxWithGravity.

Definition at line 39 of file facefluxfunction.cpp.

00040 {
00041   throw new Exception("FaceFluxFunction::transformToFlash not implemented.\nMaybe this is not a flux function designed for compositional model");
00042 }

void FaceFluxFunction::updateDynamicData ( DynamicBase dynMod  )  [virtual]

Reimplemented in FaceFluxCO2Brine, FaceFluxCompositional, FaceFluxSimpleBlackOil, FaceFluxSimpleBlackOilMass, FaceFluxWithGravity, FaceFluxWithIndependentEquations, FaceFluxWithoutGravity, and FluxForCO2Inj.

Definition at line 27 of file facefluxfunction.cpp.

00027                                                             {
00028   assert(0); 
00029   throw new Exception("FaceFluxFunction::setVelocity not implemented");
00030 }


Member Data Documentation

unsigned FaceFluxFunction::m_nComponents [private]

Definition at line 18 of file facefluxfunction.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:03 2012 for CO2INJECTION by  doxygen 1.6.3