Loading...
Searching...
No Matches
elasticity_upscale_impl.hpp File Reference

Elasticity upscale class - template implementations. More...

`#include <iostream>`
`#include <opm/input/eclipse/Deck/DeckKeyword.hpp>`

Go to the source code of this file.

## Namespaces

namespace | Opm
| Inverting small matrices.

## Macros

#define | IMPL_FUNC(A, B)

## Functions

| Opm::Elasticity::IMPL_FUNC (std::vector< BoundaryGrid::Vertex >, extractFace(Direction dir, ctype coord))
| Opm::Elasticity::IMPL_FUNC (BoundaryGrid, extractMasterFace(Direction dir, ctype coord, SIDE side, bool dc))
master | Opm::Elasticity::push_back (extractMasterFace(Y, min[1]))
master | Opm::Elasticity::push_back (extractMasterFace(Z, min[2]))
slave | Opm::Elasticity::push_back (extractFace(X, max[0]))
slave | Opm::Elasticity::push_back (extractFace(Y, max[1]))
slave | Opm::Elasticity::push_back (extractFace(Z, max[2]))
| Opm::Elasticity::for (LeafVertexIterator it=start;it !=itend;++it)
| Opm::Elasticity::IMPL_FUNC (void, addMPC(Direction dir, int slavenode, const BoundaryGrid::Vertex &m))
| Opm::Elasticity::IMPL_FUNC (void, periodicPlane(Direction, Direction, const std::vector< BoundaryGrid::Vertex > &slavepointgrid, const BoundaryGrid &mastergrid))
| Opm::Elasticity::IMPL_FUNC (int, addBBlockMortar(const BoundaryGrid &b1, const BoundaryGrid &interface, int, int n1, int n2, int colofs))
| Opm::Elasticity::IMPL_FUNC (void, assembleBBlockMortar(const BoundaryGrid &b1, const BoundaryGrid &interface, int dir, int n1, int n2, int colofs, double alpha))
| Opm::Elasticity::IMPL_FUNC (void, fixPoint(Direction dir, GlobalCoordinate coord, const NodeValue &value))
| Opm::Elasticity::IMPL_FUNC (bool, isOnPlane(Direction plane, GlobalCoordinate coord, ctype value))
| Opm::Elasticity::IMPL_FUNC (void, fixLine(Direction dir, ctype x, ctype y, const NodeValue &value))
| Opm::Elasticity::IMPL_FUNC (bool, isOnLine(Direction dir, GlobalCoordinate coord, ctype x, ctype y))
| Opm::Elasticity::IMPL_FUNC (bool, isOnPoint(GlobalCoordinate coord, GlobalCoordinate point))
| Opm::Elasticity::if (loadcase > -1)
| Opm::Elasticity::if (matrix) A.getOperator()=0
| Opm::Elasticity::for (int i=0;i< 2;++i)
| Opm::Elasticity::IMPL_FUNC (template< int comp > void, averageStress(Dune::FieldVector< ctype, comp > &sigma, const Vector &uarg, int loadcase))
| Opm::Elasticity::if (file=="uniform")
| Opm::Elasticity::if (deck.hasKeyword("YOUNGMOD") &&deck.hasKeyword("POISSONMOD"))
else | Opm::Elasticity::if (deck.hasKeyword("LAMEMOD") &&deck.hasKeyword("SHEARMOD"))
else | Opm::Elasticity::if (deck.hasKeyword("BULKMOD") &&deck.hasKeyword("SHEARMOD"))
else | Opm::Elasticity::if (deck.hasKeyword("PERMX") &&deck.hasKeyword("PORO"))
| Opm::Elasticity::exit (1)
| Opm::Elasticity::if (deck.hasKeyword("SATNUM")) satnum
| Opm::Elasticity::if (deck.hasKeyword("RHO")) rho
| Opm::Elasticity::if (Escale > 0)
| Opm::Elasticity::if (satnum.empty())
| Opm::Elasticity::if (upscaledRho > 0)
| Opm::Elasticity::IMPL_FUNC (void, loadMaterialsFromRocklist(const std::string &file, const std::string &rocklist))
| Opm::Elasticity::determineSideFaces (min, max)
| Opm::Elasticity::if (params.type==ITERATIVE)
std::cerr<< "No direct solver available"<< std::endl;exit(1);siz=A.getOperator().N();} for(int i=0;i< 6;++i) b[i].resize(siz);}{ try { Dune::InverseOperatorResult r;u[loadcase].resize(b[loadcase].size());u[loadcase]=0;int solver=0;tsolver[solver]-> | Opm::Elasticity::apply (u[loadcase], b[loadcase], r)

## Variables

| Opm::Elasticity::min [0] = min[1] = min[2] = 1e5
const LeafVertexIterator | Opm::Elasticity::itend = gv.leafGridView().template end<dim>()
LeafVertexIterator | Opm::Elasticity::start = gv.leafGridView().template begin<dim>()
Dune::FieldVector< ctype, comp > | Opm::Elasticity::eps0 = 0
MaterialMap | Opm::Elasticity::cache
std::vector< double > | Opm::Elasticity::Emod
std::vector< double > | Opm::Elasticity::Poiss
std::vector< int > | Opm::Elasticity::satnum
std::vector< double > | Opm::Elasticity::rho
| Opm::Elasticity::upscaledRho = -1
| Opm::Elasticity::else
auto | Opm::Elasticity::deck = parser.parseFile(file)
std::vector< int > | Opm::Elasticity::cells = gv.globalCell()
int | Opm::Elasticity::j =0
std::map< Material *, double > | Opm::Elasticity::volume
std::cout<< "Number of materials: "<< cache.size()<< std::endl;double totalvolume=0;for(std::map< Material *, double >::iterator it=volume.begin();it !=volume.end();++it) totalvolume+=it-> | Opm::Elasticity::second
int | Opm::Elasticity::numsolvers = 1

## Detailed Description

Elasticity upscale class - template implementations.

Date
  Nov 9 2011

Author
  Arne Morten Kvarving / SINTEF

## Macro Definition Documentation

## IMPL_FUNC

#define IMPL_FUNC | ( |  | A,
|  |  | B )

Value:
template<class GridType, class PC> \
A ElasticityUpscale<GridType, PC>::B

## Function Documentation

## for()

Opm::Elasticity::for | ( |  | ) |

Initial value:
{
ctype c[8][3] = {{min[0],min[1],min[2]},
{max[0],min[1],min[2]},
{min[0],max[1],min[2]},
{max[0],max[1],min[2]},
{min[0],min[1],max[2]},
{max[0],min[1],max[2]},
{min[0],max[1],max[2]},
{max[0],max[1],max[2]}}

## Variable Documentation

## cache

MaterialMap Opm::Elasticity::cache

Initial value:
{
typedef std::map<std::pair<double,double>,
std::shared_ptr<Material> > MaterialMap

## else

Opm::Elasticity::else

Initial value:
{
Opm::Parser parser