Loading...
Searching...
No Matches
Opm::Rock< dim > Class Template Reference

A property class for porous media rock. More...

`#include <Rock.hpp>`

## Public Types

typedef ImmutableCMatrix | PermTensor
| Tensor type for read-only access to permeability.
typedef OwnCMatrix | MutablePermTensor
| Tensor type to be used for holding copies of permeability tensors.
typedef SharedCMatrix | SharedPermTensor
| Tensor type for read and write access to permeability.

## Public Member Functions

| Rock (::std::size_t nc, ::std::size_t dim)
const ::std::vector< double > & | perm () const
const ::std::vector< double > & | poro () const
void | perm_homogeneous (double k)
void | poro_homogeneous (double phi)
| Rock ()
| Default constructor.
void | init (const Opm::Deck &deck, const std::vector< int > &global_cell, const double perm_threshold=0.0)
| Initialize from a grdecl file.
void | init (const int num_cells, const double uniform_poro, const double uniform_perm)
| Initialize a uniform reservoir.
double | porosity (int cell_index) const
| Read-access to porosity.
PermTensor | permeability (int cell_index) const
| Read-access to permeability.
SharedPermTensor | permeabilityModifiable (int cell_index)
| Read- and write-access to permeability.

## Protected Member Functions

void | assignPorosity (const Opm::Deck &deck, const std::vector< int > &global_cell)
void | assignPermeability (const Opm::Deck &deck, const std::vector< int > &global_cell, const double perm_threshold)

## Protected Attributes

std::vector< double > | porosity_
std::vector< double > | permeability_
std::vector< unsigned char > | permfield_valid_
PermeabilityKind | permeability_kind_

## Detailed Description

template<int dim>
class Opm::Rock< dim >

A property class for porous media rock.

Template Parameters

  dim | the dimension of the space, used for giving permeability tensors the right size.

## Member Function Documentation

## init() [1/2]

template<int dim>

void Opm::Rock< dim >::init | ( | const int | num_cells,
|  | const double | uniform_poro,
|  | const double | uniform_perm )

Initialize a uniform reservoir.

Parameters

  num_cells | number of cells in the grid.
  uniform_poro | the uniform porosity.
  uniform_perm | the uniform (scalar) permeability.

## init() [2/2]

template<int dim>

void Opm::Rock< dim >::init | ( | const Opm::Deck & | deck,
|  | const std::vector< int > & | global_cell,
|  | const double | perm_threshold = 0.0 )

Initialize from a grdecl file.

Parameters

  deck | Deck to initialize from
  global_cell | the mapping from cell indices to the logical cartesian indices of the grdecl file.
  perm_threshold | lower threshold for permeability.

## permeability()

template<int dim>

Rock< dim >::PermTensor Opm::Rock< dim >::permeability | ( | int | cell_index | ) | const

Read-access to permeability.

Parameters

  cell_index | index of a grid cell.

Returns
  permeability value of the cell.

## permeabilityModifiable()

template<int dim>

Rock< dim >::SharedPermTensor Opm::Rock< dim >::permeabilityModifiable | ( | int | cell_index | ) |

Read- and write-access to permeability.

Use with caution.

Parameters

  cell_index | index of a grid cell.

Returns
  permeability value of the cell.

## porosity()

template<int dim>

double Opm::Rock< dim >::porosity | ( | int | cell_index | ) | const

Read-access to porosity.

Parameters

  cell_index | index of a grid cell.

Returns
  porosity value of the cell.

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

- opm/porsol/common/ImplicitTransportDefs.hpp
- opm/porsol/common/Rock.hpp
- opm/porsol/common/Rock_impl.hpp