A class for doing single phase (permeability) upscaling. More...

#include <SinglePhaseUpscaler.hpp>

Inheritance diagram for Opm::SinglePhaseUpscaler:
Inheritance graph

Public Types

enum  
 
enum  BoundaryConditionType
 
typedef Dune::CpGrid GridType
 
typedef GridInterfaceEuler
< GridType
GridInterface
 
typedef
UpscalingTraitsBasic::template
ResProp< Dimension >::Type 
ResProp
 
typedef ResProp::MutablePermTensor permtensor_t
 A type for the upscaled permeability. More...
 

Public Member Functions

void init (const Opm::parameter::ParameterGroup &param)
 Initializes the upscaler from parameters. More...
 
void init (Opm::DeckConstPtr deck, BoundaryConditionType bctype, double perm_threshold, double residual_tolerance=1e-8, int linsolver_verbosity=0, int linsolver_type=3, bool twodim_hack=false, int linsolver_maxit=0, double linsolver_prolongate_factor=1.0, int linsolver_smooth_steps=1)
 Initializes the upscaler from given arguments. More...
 
const GridTypegrid () const
 Access the grid. More...
 
void setBoundaryConditionType (BoundaryConditionType type)
 
void setPermeability (const int cell_index, const permtensor_t &k)
 
permtensor_t upscaleSinglePhase ()
 
double upscalePorosity () const
 
double upscaleNetPorosity () const
 
double upscaleNTG () const
 
double upscaleSWCR (const bool NTG) const
 
double upscaleSOWCR (const bool NTG) const
 

Protected Types

typedef GridInterface::CellIterator CellIter
 
typedef CellIter::FaceIterator FaceIter
 
typedef
BasicBoundaryConditions< true,
true > 
BCs
 
typedef
UpscalingTraitsBasic::template
FlowSolver< GridInterface, BCs >
::Type 
FlowSolver
 

Protected Member Functions

double computeAverageVelocity (const FlowSol &flow_solution, const int flow_dir, const int pdrop_dir) const
 
double computeDelta (const int flow_dir) const
 
permtensor_t upscaleEffectivePerm (const FluidInterface &fluid)
 
virtual void initImpl (const Opm::parameter::ParameterGroup &param)
 
virtual void initFinal (const Opm::parameter::ParameterGroup &param)
 

Protected Attributes

BoundaryConditionType bctype_
 
bool twodim_hack_
 
double residual_tolerance_
 
int linsolver_maxit_
 
double linsolver_prolongate_factor_
 
int linsolver_verbosity_
 
int linsolver_type_
 
int linsolver_smooth_steps_
 
GridType grid_
 
GridInterface ginterf_
 
ResProp res_prop_
 
BCs bcond_
 
FlowSolver flow_solver_
 

Detailed Description

A class for doing single phase (permeability) upscaling.

Author
Atgeirr F. Rasmussen atgei.nosp@m.rr@s.nosp@m.intef.nosp@m..no

Member Typedef Documentation

typedef BasicBoundaryConditions<true, true> Opm::UpscalerBase< UpscalingTraitsBasic >::BCs
protectedinherited
typedef GridInterface::CellIterator Opm::UpscalerBase< UpscalingTraitsBasic >::CellIter
protectedinherited
typedef CellIter::FaceIterator Opm::UpscalerBase< UpscalingTraitsBasic >::FaceIter
protectedinherited
typedef UpscalingTraitsBasic ::template FlowSolver<GridInterface, BCs>::Type Opm::UpscalerBase< UpscalingTraitsBasic >::FlowSolver
protectedinherited
typedef GridInterfaceEuler<GridType> Opm::UpscalerBase< UpscalingTraitsBasic >::GridInterface
inherited
typedef Dune::CpGrid Opm::UpscalerBase< UpscalingTraitsBasic >::GridType
inherited
typedef ResProp::MutablePermTensor Opm::UpscalerBase< UpscalingTraitsBasic >::permtensor_t
inherited

A type for the upscaled permeability.

typedef UpscalingTraitsBasic ::template ResProp<Dimension>::Type Opm::UpscalerBase< UpscalingTraitsBasic >::ResProp
inherited

Member Enumeration Documentation

anonymous enum
inherited

Member Function Documentation

double Opm::UpscalerBase< UpscalingTraitsBasic >::computeAverageVelocity ( const FlowSol &  flow_solution,
const int  flow_dir,
const int  pdrop_dir 
) const
protectedinherited
double Opm::UpscalerBase< UpscalingTraitsBasic >::computeDelta ( const int  flow_dir) const
protectedinherited
const GridType& Opm::UpscalerBase< UpscalingTraitsBasic >::grid ( ) const
inherited

Access the grid.

void Opm::UpscalerBase< UpscalingTraitsBasic >::init ( const Opm::parameter::ParameterGroup &  param)
inherited

Initializes the upscaler from parameters.

void Opm::UpscalerBase< UpscalingTraitsBasic >::init ( Opm::DeckConstPtr  deck,
BoundaryConditionType  bctype,
double  perm_threshold,
double  residual_tolerance = 1e-8,
int  linsolver_verbosity = 0,
int  linsolver_type = 3,
bool  twodim_hack = false,
int  linsolver_maxit = 0,
double  linsolver_prolongate_factor = 1.0,
int  linsolver_smooth_steps = 1 
)
inherited

Initializes the upscaler from given arguments.

virtual void Opm::UpscalerBase< UpscalingTraitsBasic >::initFinal ( const Opm::parameter::ParameterGroup &  param)
protectedvirtualinherited
virtual void Opm::UpscalerBase< UpscalingTraitsBasic >::initImpl ( const Opm::parameter::ParameterGroup &  param)
protectedvirtualinherited
void Opm::UpscalerBase< UpscalingTraitsBasic >::setBoundaryConditionType ( BoundaryConditionType  type)
inherited

Set boundary condition type. This may not be used to swicth between Periodic and the other types, since the grid is modified for Periodic conditions.

void Opm::UpscalerBase< UpscalingTraitsBasic >::setPermeability ( const int  cell_index,
const permtensor_t k 
)
inherited

Set the permeability of a cell directly. This will override the permeability that was read from the eclipse file.

permtensor_t Opm::UpscalerBase< UpscalingTraitsBasic >::upscaleEffectivePerm ( const FluidInterface &  fluid)
protectedinherited
double Opm::UpscalerBase< UpscalingTraitsBasic >::upscaleNetPorosity ( ) const
inherited

Compute upscaled net porosity.

Returns
total pore volume (with NTG) of all cells divided by total volume.
double Opm::UpscalerBase< UpscalingTraitsBasic >::upscaleNTG ( ) const
inherited

Compute upscaled NTG.

Returns
total net of all cells divided by total volume.
double Opm::UpscalerBase< UpscalingTraitsBasic >::upscalePorosity ( ) const
inherited

Compute upscaled porosity.

Returns
total pore volume of all cells divided by total volume.
permtensor_t Opm::UpscalerBase< UpscalingTraitsBasic >::upscaleSinglePhase ( )
inherited

Does a single-phase upscaling.

Returns
an upscaled permeability tensor.
double Opm::UpscalerBase< UpscalingTraitsBasic >::upscaleSOWCR ( const bool  NTG) const
inherited

Compute upscaled SOWCR.

Returns
total irreducible oil volume divided by total pore volume
double Opm::UpscalerBase< UpscalingTraitsBasic >::upscaleSWCR ( const bool  NTG) const
inherited

Compute upscaled SWCR.

Returns
total irreducible water volume divided by total pore volume

Member Data Documentation

BCs Opm::UpscalerBase< UpscalingTraitsBasic >::bcond_
protectedinherited
FlowSolver Opm::UpscalerBase< UpscalingTraitsBasic >::flow_solver_
protectedinherited
GridInterface Opm::UpscalerBase< UpscalingTraitsBasic >::ginterf_
protectedinherited
GridType Opm::UpscalerBase< UpscalingTraitsBasic >::grid_
protectedinherited
int Opm::UpscalerBase< UpscalingTraitsBasic >::linsolver_maxit_
protectedinherited
double Opm::UpscalerBase< UpscalingTraitsBasic >::linsolver_prolongate_factor_
protectedinherited
int Opm::UpscalerBase< UpscalingTraitsBasic >::linsolver_smooth_steps_
protectedinherited
int Opm::UpscalerBase< UpscalingTraitsBasic >::linsolver_type_
protectedinherited
int Opm::UpscalerBase< UpscalingTraitsBasic >::linsolver_verbosity_
protectedinherited
ResProp Opm::UpscalerBase< UpscalingTraitsBasic >::res_prop_
protectedinherited
double Opm::UpscalerBase< UpscalingTraitsBasic >::residual_tolerance_
protectedinherited
bool Opm::UpscalerBase< UpscalingTraitsBasic >::twodim_hack_
protectedinherited

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