FChaventMobility Class Reference

#include <fchaventmobility.h>

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

List of all members.

Public Member Functions

 FChaventMobility (double vw, double vo, double Srw, double Sro)
virtual double operator() (double x, unsigned cmp=0) const
void getMinMaxValues (double a, double b, double &min, double &max) const
virtual void setParameters (const VecDouble &v)
virtual ~FChaventMobility ()

Private Attributes

double m_M
double MinSo
double MinSw
double MaxSo
double MaxSw
double _c

Detailed Description

Definition at line 14 of file fchaventmobility.h.


Constructor & Destructor Documentation

FChaventMobility::FChaventMobility ( double  vw,
double  vo,
double  Srw,
double  Sro 
)

Definition at line 9 of file fchaventmobility.cpp.

00010   :Function1D(1)
00011 {
00012   m_M=vw/vo;
00013 
00014   MaxSo=1-Srw;
00015   MaxSw=1-Sro;
00016   MinSw=Srw;
00017   MinSo=Sro;
00018 
00019 
00020   //1_Srw2=1_Srw*1_Srw;
00021   //1_Sro=1-Sro;
00022 
00023   _c = m_M*MaxSo*MaxSo/(MaxSw*MaxSw);
00024 
00025   
00026   
00027 
00028 }

FChaventMobility::~FChaventMobility (  )  [virtual]

Definition at line 30 of file fchaventmobility.cpp.

00031 {
00032 }


Member Function Documentation

void FChaventMobility::getMinMaxValues ( double  a,
double  b,
double &  min,
double &  max 
) const [virtual]

Reimplemented from Function1D.

Definition at line 53 of file fchaventmobility.cpp.

00054 {
00055   assert(a>=0.0);
00056   assert(b<=1.0);
00057   assert(a<=b);
00058   min=(*this)(a);
00059   max=(*this)(b);
00060 
00061 }

double FChaventMobility::operator() ( double  x,
unsigned  cmp = 0 
) const [virtual]

Implements Function1D.

Definition at line 35 of file fchaventmobility.cpp.

00036 {
00037   assert(cmp==0);
00038   if (x >= MaxSw)
00039      return 1.0;
00040   else if (x <= MinSw)
00041      return 0.0;
00042  double d1=MaxSw - x;
00043  double d2=x-MinSw;
00044  x=d1/d2;
00045  x*=x;
00046  return 1.0/(_c*x+1.0);
00047 }

void FChaventMobility::setParameters ( const VecDouble v  )  [virtual]

The set parameters is the viscosities of each of the phases

Parameters:
v Vector of parameters
Returns:

Reimplemented from GeneralFunctionInterface.

Definition at line 71 of file fchaventmobility.cpp.

00072 {
00073   assert(v.size() ==2);
00074   m_M=v(0)/v(1);
00075 }


Member Data Documentation

double FChaventMobility::_c [private]

Definition at line 19 of file fchaventmobility.h.

double FChaventMobility::m_M [private]

Definition at line 17 of file fchaventmobility.h.

double FChaventMobility::MaxSo [private]

Definition at line 18 of file fchaventmobility.h.

double FChaventMobility::MaxSw [private]

Definition at line 18 of file fchaventmobility.h.

double FChaventMobility::MinSo [private]

Definition at line 18 of file fchaventmobility.h.

double FChaventMobility::MinSw [private]

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