Isotropic linear elastic material. More...

#include <materials.hh>

Inheritance diagram for Opm::Elasticity::Isotropic:
Inheritance graph

Public Member Functions

 Isotropic (int ID, double Emod, double Poisson, double rho=0.0)
 Constructor creating a new isotropic material. More...
 
virtual ~Isotropic ()
 Empty virtual destructor. More...
 
virtual int numPar () const
 Returns the number of parameters describing this material. More...
 
virtual double getPar (int ipar=1) const
 Returns the ipar'th parameter describing this material. More...
 
void setE (double E_)
 Set the E modulus of the material. More...
 
double getE () const
 Returns the E modulus of the material. More...
 
virtual bool getConstitutiveMatrix (Dune::FieldMatrix< double, 6, 6 > &C, bool invers=false) const
 Establishes the full constitutive matrix for this material. More...
 
virtual bool getConstitutiveMatrix (Dune::FieldMatrix< double, 3, 3 > &C, bool invers=false) const
 Establishes the full constitutive matrix for this material. More...
 
int num () const
 Returns the external material id. More...
 
double getMassDensity () const
 Returns the mass density of this material. More...
 

Static Public Member Functions

static Materialcreate (int ID, const Dune::DynamicVector< double > &params)
 Creates a material object of a given type. More...
 
static Materialcreate (int ID, const std::string &file)
 Creates a material object from a rocklist. More...
 

Protected Member Functions

virtual std::ostream & write (std::ostream &os) const
 Prints the material properties to a stream. More...
 

Detailed Description

Isotropic linear elastic material.

Constructor & Destructor Documentation

Opm::Elasticity::Isotropic::Isotropic ( int  ID,
double  Emod,
double  Poisson,
double  rho = 0.0 
)
inline

Constructor creating a new isotropic material.

Parameters
[in]IDExternal material number
[in]EmodYoung's modulus
[in]PoissonPoisson's ratio
[in]rhoMass density

References Opm::Elasticity::Emod, and Opm::Elasticity::rho.

virtual Opm::Elasticity::Isotropic::~Isotropic ( )
inlinevirtual

Empty virtual destructor.

Member Function Documentation

static Material* Opm::Elasticity::Material::create ( int  ID,
const Dune::DynamicVector< double > &  params 
)
staticinherited

Creates a material object of a given type.

The material type depends on the number of parameters provided.

Parameters
[in]IDExternal number for this material
[in]paramsArray of material parameters

Referenced by Opm::Elasticity::IMPL_FUNC().

static Material* Opm::Elasticity::Material::create ( int  ID,
const std::string &  file 
)
staticinherited

Creates a material object from a rocklist.

Parameters
[in]IDID of the material
[in]fileThe URL to the rocklist
virtual bool Opm::Elasticity::Isotropic::getConstitutiveMatrix ( Dune::FieldMatrix< double, 6, 6 > &  C,
bool  invers = false 
) const
virtual

Establishes the full constitutive matrix for this material.

Parameters
[out]CThe constitutive matrix
[in]inversIf true, set up the inverse matrix instead

Implements Opm::Elasticity::Material.

virtual bool Opm::Elasticity::Isotropic::getConstitutiveMatrix ( Dune::FieldMatrix< double, 3, 3 > &  C,
bool  invers = false 
) const
virtual

Establishes the full constitutive matrix for this material.

Parameters
[out]CThe constitutive matrix
[in]inversIf true, set up the inverse matrix instead

Implements Opm::Elasticity::Material.

double Opm::Elasticity::Isotropic::getE ( ) const
inline

Returns the E modulus of the material.

double Opm::Elasticity::Material::getMassDensity ( ) const
inlineinherited

Returns the mass density of this material.

virtual double Opm::Elasticity::Isotropic::getPar ( int  ipar = 1) const
inlinevirtual

Returns the ipar'th parameter describing this material.

Reimplemented from Opm::Elasticity::Material.

int Opm::Elasticity::Material::num ( ) const
inlineinherited

Returns the external material id.

virtual int Opm::Elasticity::Isotropic::numPar ( ) const
inlinevirtual

Returns the number of parameters describing this material.

Implements Opm::Elasticity::Material.

void Opm::Elasticity::Isotropic::setE ( double  E_)
inline

Set the E modulus of the material.

Parameters
[in]E_The E modulus to be set
virtual std::ostream& Opm::Elasticity::Isotropic::write ( std::ostream &  os) const
protectedvirtual

Prints the material properties to a stream.

Reimplemented from Opm::Elasticity::Material.


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