OpenCAEPoro  v0.5.0
A simulator for multicomponent porous media flow
Public Member Functions | Protected Attributes | Friends | List of all members
AllWells Class Reference

#include <AllWells.hpp>

Public Member Functions

void InputParam (const ParamWell &paramWell, const ParamOutput &output_param)
 Input param from ParamWell.
 
void Setup (const Grid &myGrid, const Bulk &myBulk)
 Setup wells.
 
void SetupWell (const Grid &myGrid, const Bulk &myBulk)
 complete the information of well according to Grid and Bulk.
 
void SetupWellGroup (const Bulk &myBulk)
 Setup information of wellGroup.
 
void SetupMixture (const Bulk &myBulk)
 get the mixture from bulk -— useless now
 
void SetupWellBulk (Bulk &myBulk) const
 Setup bulks which are penetrated by wells at current stage.
 
void SetupConnWell2Bulk (const Bulk &myBulk)
 Setup the static connection between well and bulks.
 
void ApplyControl (const USI &i)
 Apply the operation mode at the ith critical time.
 
void InitBHP (const Bulk &myBulk)
 Set the initial well pressure.
 
void PrepareWell (const Bulk &myBulk)
 Calculate well properties at the beginning of each time step.
 
void CalTrans (const Bulk &myBulk)
 Calculate Transmissibility of Wells.
 
void CalFlux (const Bulk &myBulk)
 Calculate volume flow rate and moles flow rate of each perforation.
 
void CaldG (const Bulk &myBulk)
 Calculate dG.
 
void CalIPRT (const Bulk &myBulk, OCP_DBL dt)
 Calculate Injection rate, total Injection, Production rate, total Production.
 
void CalReInjFluid (const Bulk &myBulk)
 Calculate Reinjection fluid.
 
void UpdateLastTimeStepBHP ()
 
void ResetBHP ()
 
OCP_INT CheckP (const Bulk &myBulk)
 Check if unreasonable well pressure or perforation pressure occurs.
 
USI GetWellNum () const
 Return the num of wells.
 
string GetWellName (const USI &i) const
 Return the name of specified well.
 
USI GetIndex (const string &name) const
 Return the index of specified well.
 
USI GetWellPerfNum (const USI &i) const
 Return the num of perforations of well i.
 
USI GetWellPerfNum () const
 Return the num of perforations of all wells.
 
USI GetMaxWellPerNum () const
 Calculate maximum num of perforations of all Wells.
 
void CalMaxBHPChange ()
 
OCP_DBL GetdBHPmax () const
 
OCP_DBL GetWBHP (const USI &w) const
 Return the BHP of wth well.
 
OCP_DBL GetWellDG (const USI &w, const USI &p) const
 Return the pth dG of wth well.
 
void ShowWellStatus (const Bulk &myBulk)
 
OCP_BOOL GetWellChange () const
 
const auto & GetWell2Bulk () const
 
OCP_DBL GetFGIT () const
 Return gas water injection in field.
 
OCP_DBL GetFWIR () const
 Return water injection rate in field.
 
OCP_DBL GetFWIT () const
 Return total water injection in field.
 
OCP_DBL GetFOPR () const
 Return oil production rate in field.
 
OCP_DBL GetFOPT () const
 Return total oil production in field.
 
OCP_DBL GetFGPR () const
 Return gas production rate in field.
 
OCP_DBL GetFGPT () const
 Return total gas production in field.
 
OCP_DBL GetFWPR () const
 Return water production rate in field.
 
OCP_DBL GetFWPT () const
 Return total water production in field.
 
OCP_DBL GetFGIR () const
 Return gas injection rate in field.
 
OCP_DBL GetWGIR (const USI &w) const
 Return gas injection rate of the wth well.
 
OCP_DBL GetWGIT (const USI &w) const
 Return total gas injection of the wth well.
 
OCP_DBL GetWWIR (const USI &w) const
 Return water injection rate of the wth well.
 
OCP_DBL GetWWIT (const USI &w) const
 Return total water injection of the wth well.
 
OCP_DBL GetWOPR (const USI &w) const
 Return oil production rate of the wth well.
 
OCP_DBL GetWOPT (const USI &w) const
 Return total oil production of the wth well.
 
OCP_DBL GetWGPR (const USI &w) const
 Return gas production rate of the wth well.
 
OCP_DBL GetWGPT (const USI &w) const
 Return total gas production of the wth well.
 
OCP_DBL GetWWPR (const USI &w) const
 Return water production rate of the wth well.
 
OCP_DBL GetWWPT (const USI &w) const
 Return total water production of the wth well.
 
void SetPolyhedronWell (const Grid &myGrid)
 
void SetWellVal () const
 

Protected Attributes

USI numWell
 num of wells.
 
vector< Wellwells
 well set.
 
USI numGroup
 num of groups
 
vector< WellGroupwellGroup
 wellGroup set
 
vector< vector< OCP_USI > > well2bulk
 connections between wells and bulks
 
OCP_BOOL wellChange
 if wells change, then OCP_TRUE
 
vector< SolventINJsolvents
 Sets of Solvent.
 
OCP_DBL dPmax {0}
 Maximum BHP change.
 
vector< Mixture * > flashCal
 Useless now.
 
OCP_DBL Psurf {PRESSURE_STD}
 well reference pressure
 
OCP_DBL Tsurf {TEMPERATURE_STD}
 well reference temperature
 
OCP_DBL FGIR {0}
 gas injection rate in field.
 
OCP_DBL FGIT {0}
 gas total injection in field.
 
OCP_DBL FWIR {0}
 water injection rate in field.
 
OCP_DBL FWIT {0}
 water total injection in field.
 
OCP_DBL FOPR {0}
 oil production rate in field.
 
OCP_DBL FOPT {0}
 oil total production in field.
 
OCP_DBL FGPR {0}
 gas production rate in field.
 
OCP_DBL FGPt {0}
 gas total production in field.
 
OCP_DBL FWPR {0}
 water production rate in field.
 
OCP_DBL FWPT {0}
 water total production in field.
 

Friends

class Reservoir
 
class Out4RPT
 
class Out4VTK
 
class IsoT_FIM
 
class IsoT_IMPEC
 
class IsoT_AIMc
 
class IsoT_FIMn
 
class T_FIM
 

Detailed Description

AllWells contains all wells now, it's used to manages all wells uniformly in reservoirs. actually, you can regard it as an interface between wells and other modules.

Definition at line 75 of file AllWells.hpp.


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