Opm::PolymerProperties Class Reference

#include <PolymerProperties.hpp>

Public Types

enum  AdsorptionBehaviour { Desorption = 1 , NoDesorption = 2 }
 

Public Member Functions

 PolymerProperties ()
 
 PolymerProperties (double c_max, double mix_param, double rock_density, double dead_pore_vol, double res_factor, double c_max_ads, AdsorptionBehaviour ads_index, const std::vector< double > &c_vals_visc, const std::vector< double > &visc_mult_vals, const std::vector< double > &c_vals_ads, const std::vector< double > &ads_vals, const std::vector< double > &water_vel_vals, const std::vector< double > &shear_vrf_vals)
 
 PolymerProperties (Opm::DeckConstPtr deck, Opm::EclipseStateConstPtr eclipseState)
 
void set (double c_max, double mix_param, double rock_density, double dead_pore_vol, double res_factor, double c_max_ads, AdsorptionBehaviour ads_index, const std::vector< double > &c_vals_visc, const std::vector< double > &visc_mult_vals, const std::vector< double > &c_vals_ads, const std::vector< double > &ads_vals, const std::vector< double > &water_vel_vals, const std::vector< double > &shear_vrf_vals)
 
void readFromDeck (Opm::DeckConstPtr deck, Opm::EclipseStateConstPtr eclipseState)
 
double cMax () const
 
double mixParam () const
 
double rockDensity () const
 
double deadPoreVol () const
 
double resFactor () const
 
double cMaxAds () const
 
int adsIndex () const
 
bool hasPlyshlog () const
 indicate whehter PLYSHLOG is specified More...
 
const std::vector< double > & shearWaterVelocity () const
 the water velocity or water shear rate in PLYSHLOG table More...
 
const std::vector< double > & shearViscosityReductionFactor () const
 the viscosity reduction factor PLYSHLOG table More...
 
double plyshlogRefConc () const
 the reference polymer concentration in PLYSHLOG More...
 
bool hasPlyshlogRefSalinity () const
 indicate wheter reference salinity is specified in PLYSHLOG More...
 
bool hasPlyshlogRefTemp () const
 indicate whether reference temperature is specified in PLYSHLOG More...
 
double plyshlogRefSalinity () const
 the reference salinity in PLYSHLOG More...
 
double plyshlogRefTemp () const
 the reference temperature in PLYSHLOG More...
 
bool hasShrate () const
 indicate whether SHRATE keyword is specified More...
 
double shrate () const
 the value of SHRATE More...
 
double shearVrf (const double velocity) const
 
double shearVrfWithDer (const double velocity, double &der) const
 
double viscMult (double c) const
 
double viscMultWithDer (double c, double *der) const
 
void simpleAdsorption (double c, double &c_ads) const
 
void simpleAdsorptionWithDer (double c, double &c_ads, double &dc_ads_dc) const
 
void adsorption (double c, double cmax, double &c_ads) const
 
void adsorptionWithDer (double c, double cmax, double &c_ads, double &dc_ads_dc) const
 
void effectiveVisc (const double c, const double *visc, double &mu_w_eff) const
 
void effectiveViscWithDer (const double c, const double *visc, double &mu_w_eff, double dmu_w_eff_dc) const
 
void effectiveInvVisc (const double c, const double *visc, double &inv_mu_w_eff) const
 
void effectiveInvViscWithDer (const double c, const double *visc, double &inv_mu_w_eff, double &dinv_mu_w_eff_dc) const
 
void effectiveRelperm (const double c, const double cmax, const double *relperm, double &eff_relperm_wat) const
 
void effectiveRelpermWithDer (const double c, const double cmax, const double *relperm, const double *drelperm_ds, double &eff_relperm_wat, double &deff_relperm_wat_ds, double &deff_relperm_wat_dc) const
 
void effectiveMobilities (const double c, const double cmax, const double *visc, const double *relperm, double *mob) const
 
void effectiveMobilitiesWithDer (const double c, const double cmax, const double *visc, const double *relperm, const double *drelpermds, double *mob, double *dmob_ds, double &dmobwatdc) const
 
void effectiveMobilitiesBoth (const double c, const double cmax, const double *visc, const double *relperm, const double *drelperm_ds, double *mob, double *dmob_ds, double &dmobwat_dc, bool if_with_der) const
 
void effectiveTotalMobility (const double c, const double cmax, const double *visc, const double *relperm, double &totmob) const
 
void effectiveTotalMobilityWithDer (const double c, const double cmax, const double *visc, const double *relperm, const double *drelpermds, double &totmob, double *dtotmob_dsdc) const
 
void effectiveTotalMobilityBoth (const double c, const double cmax, const double *visc, const double *relperm, const double *drelperm_ds, double &totmob, double *dtotmob_dsdc, bool if_with_der) const
 
void computeMc (const double &c, double &mc) const
 
void computeMcWithDer (const double &c, double &mc, double &dmc_dc) const
 
void computeMcBoth (const double &c, double &mc, double &dmc_dc, bool if_with_der) const
 
bool computeShearMultLog (std::vector< double > &water_vel, std::vector< double > &visc_mult, std::vector< double > &shear_mult) const
 Computing the shear multiplier based on the water velocity/shear rate with PLYSHLOG keyword. More...
 

Member Enumeration Documentation

◆ AdsorptionBehaviour

Enumerator
Desorption 
NoDesorption 

Constructor & Destructor Documentation

◆ PolymerProperties() [1/3]

Opm::PolymerProperties::PolymerProperties ( )
inline

◆ PolymerProperties() [2/3]

Opm::PolymerProperties::PolymerProperties ( double  c_max,
double  mix_param,
double  rock_density,
double  dead_pore_vol,
double  res_factor,
double  c_max_ads,
AdsorptionBehaviour  ads_index,
const std::vector< double > &  c_vals_visc,
const std::vector< double > &  visc_mult_vals,
const std::vector< double > &  c_vals_ads,
const std::vector< double > &  ads_vals,
const std::vector< double > &  water_vel_vals,
const std::vector< double > &  shear_vrf_vals 
)
inline

Construct from parameters

Parameters
[in]c_maxMaximum polymer concentration used in computation of effective viscosity
[in]mix_paramMixing parameter
[in]rock_densityRock density
[in]dead_pore_volDead pore volume
[in]res_factorResidual resistance factor
[in]c_max_adsMaximum polymer adsorption value used in computation of the resistance factor
[in]c_vals_viscArray of concentration for effective vicosity multiplier
[in]visc_mult_valsArray of effective vicosity multiplier
[in]c_vals_adsArray of concentration for adsorption values
[in]ads_valsArray of adsorption values
[in]water_vel_vals_Array of water phase velocity for shear
[in]shear_vrf_vals_Array of viscosity reduction factor

◆ PolymerProperties() [3/3]

Opm::PolymerProperties::PolymerProperties ( Opm::DeckConstPtr  deck,
Opm::EclipseStateConstPtr  eclipseState 
)
inline

References readFromDeck().

Member Function Documentation

◆ adsIndex()

int Opm::PolymerProperties::adsIndex ( ) const

◆ adsorption()

void Opm::PolymerProperties::adsorption ( double  c,
double  cmax,
double &  c_ads 
) const

◆ adsorptionWithDer()

void Opm::PolymerProperties::adsorptionWithDer ( double  c,
double  cmax,
double &  c_ads,
double &  dc_ads_dc 
) const

◆ cMax()

double Opm::PolymerProperties::cMax ( ) const

◆ cMaxAds()

double Opm::PolymerProperties::cMaxAds ( ) const

◆ computeMc()

void Opm::PolymerProperties::computeMc ( const double &  c,
double &  mc 
) const

◆ computeMcBoth()

void Opm::PolymerProperties::computeMcBoth ( const double &  c,
double &  mc,
double &  dmc_dc,
bool  if_with_der 
) const

◆ computeMcWithDer()

void Opm::PolymerProperties::computeMcWithDer ( const double &  c,
double &  mc,
double &  dmc_dc 
) const

◆ computeShearMultLog()

bool Opm::PolymerProperties::computeShearMultLog ( std::vector< double > &  water_vel,
std::vector< double > &  visc_mult,
std::vector< double > &  shear_mult 
) const

Computing the shear multiplier based on the water velocity/shear rate with PLYSHLOG keyword.

◆ deadPoreVol()

double Opm::PolymerProperties::deadPoreVol ( ) const

◆ effectiveInvVisc()

void Opm::PolymerProperties::effectiveInvVisc ( const double  c,
const double *  visc,
double &  inv_mu_w_eff 
) const

◆ effectiveInvViscWithDer()

void Opm::PolymerProperties::effectiveInvViscWithDer ( const double  c,
const double *  visc,
double &  inv_mu_w_eff,
double &  dinv_mu_w_eff_dc 
) const

◆ effectiveMobilities()

void Opm::PolymerProperties::effectiveMobilities ( const double  c,
const double  cmax,
const double *  visc,
const double *  relperm,
double *  mob 
) const

◆ effectiveMobilitiesBoth()

void Opm::PolymerProperties::effectiveMobilitiesBoth ( const double  c,
const double  cmax,
const double *  visc,
const double *  relperm,
const double *  drelperm_ds,
double *  mob,
double *  dmob_ds,
double &  dmobwat_dc,
bool  if_with_der 
) const

◆ effectiveMobilitiesWithDer()

void Opm::PolymerProperties::effectiveMobilitiesWithDer ( const double  c,
const double  cmax,
const double *  visc,
const double *  relperm,
const double *  drelpermds,
double *  mob,
double *  dmob_ds,
double &  dmobwatdc 
) const

◆ effectiveRelperm()

void Opm::PolymerProperties::effectiveRelperm ( const double  c,
const double  cmax,
const double *  relperm,
double &  eff_relperm_wat 
) const

◆ effectiveRelpermWithDer()

void Opm::PolymerProperties::effectiveRelpermWithDer ( const double  c,
const double  cmax,
const double *  relperm,
const double *  drelperm_ds,
double &  eff_relperm_wat,
double &  deff_relperm_wat_ds,
double &  deff_relperm_wat_dc 
) const

◆ effectiveTotalMobility()

void Opm::PolymerProperties::effectiveTotalMobility ( const double  c,
const double  cmax,
const double *  visc,
const double *  relperm,
double &  totmob 
) const

◆ effectiveTotalMobilityBoth()

void Opm::PolymerProperties::effectiveTotalMobilityBoth ( const double  c,
const double  cmax,
const double *  visc,
const double *  relperm,
const double *  drelperm_ds,
double &  totmob,
double *  dtotmob_dsdc,
bool  if_with_der 
) const

◆ effectiveTotalMobilityWithDer()

void Opm::PolymerProperties::effectiveTotalMobilityWithDer ( const double  c,
const double  cmax,
const double *  visc,
const double *  relperm,
const double *  drelpermds,
double &  totmob,
double *  dtotmob_dsdc 
) const

◆ effectiveVisc()

void Opm::PolymerProperties::effectiveVisc ( const double  c,
const double *  visc,
double &  mu_w_eff 
) const

◆ effectiveViscWithDer()

void Opm::PolymerProperties::effectiveViscWithDer ( const double  c,
const double *  visc,
double &  mu_w_eff,
double  dmu_w_eff_dc 
) const

◆ hasPlyshlog()

bool Opm::PolymerProperties::hasPlyshlog ( ) const

indicate whehter PLYSHLOG is specified

◆ hasPlyshlogRefSalinity()

bool Opm::PolymerProperties::hasPlyshlogRefSalinity ( ) const

indicate wheter reference salinity is specified in PLYSHLOG

◆ hasPlyshlogRefTemp()

bool Opm::PolymerProperties::hasPlyshlogRefTemp ( ) const

indicate whether reference temperature is specified in PLYSHLOG

◆ hasShrate()

bool Opm::PolymerProperties::hasShrate ( ) const

indicate whether SHRATE keyword is specified

◆ mixParam()

double Opm::PolymerProperties::mixParam ( ) const

◆ plyshlogRefConc()

double Opm::PolymerProperties::plyshlogRefConc ( ) const

the reference polymer concentration in PLYSHLOG

◆ plyshlogRefSalinity()

double Opm::PolymerProperties::plyshlogRefSalinity ( ) const

the reference salinity in PLYSHLOG

◆ plyshlogRefTemp()

double Opm::PolymerProperties::plyshlogRefTemp ( ) const

the reference temperature in PLYSHLOG

◆ readFromDeck()

void Opm::PolymerProperties::readFromDeck ( Opm::DeckConstPtr  deck,
Opm::EclipseStateConstPtr  eclipseState 
)
inline

Referenced by PolymerProperties().

◆ resFactor()

double Opm::PolymerProperties::resFactor ( ) const

◆ rockDensity()

double Opm::PolymerProperties::rockDensity ( ) const

◆ set()

void Opm::PolymerProperties::set ( double  c_max,
double  mix_param,
double  rock_density,
double  dead_pore_vol,
double  res_factor,
double  c_max_ads,
AdsorptionBehaviour  ads_index,
const std::vector< double > &  c_vals_visc,
const std::vector< double > &  visc_mult_vals,
const std::vector< double > &  c_vals_ads,
const std::vector< double > &  ads_vals,
const std::vector< double > &  water_vel_vals,
const std::vector< double > &  shear_vrf_vals 
)
inline

◆ shearViscosityReductionFactor()

const std::vector< double > & Opm::PolymerProperties::shearViscosityReductionFactor ( ) const

the viscosity reduction factor PLYSHLOG table

◆ shearVrf()

double Opm::PolymerProperties::shearVrf ( const double  velocity) const

◆ shearVrfWithDer()

double Opm::PolymerProperties::shearVrfWithDer ( const double  velocity,
double &  der 
) const

◆ shearWaterVelocity()

const std::vector< double > & Opm::PolymerProperties::shearWaterVelocity ( ) const

the water velocity or water shear rate in PLYSHLOG table

◆ shrate()

double Opm::PolymerProperties::shrate ( ) const

the value of SHRATE

◆ simpleAdsorption()

void Opm::PolymerProperties::simpleAdsorption ( double  c,
double &  c_ads 
) const

◆ simpleAdsorptionWithDer()

void Opm::PolymerProperties::simpleAdsorptionWithDer ( double  c,
double &  c_ads,
double &  dc_ads_dc 
) const

◆ viscMult()

double Opm::PolymerProperties::viscMult ( double  c) const

◆ viscMultWithDer()

double Opm::PolymerProperties::viscMultWithDer ( double  c,
double *  der 
) const

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