|
opm-upscaling
|
This is a base class for linear elastic materials. More...
#include <material.hh>
Public Member Functions | |
| virtual | ~Material () |
| Empty virtual destructor. | |
| int | num () const |
| Returns the external material id. | |
| virtual int | numPar () const =0 |
| Returns the number of parameters describing this material. | |
| virtual double | getPar (int=1) const |
| Returns the ipar'th parameter describing this material. | |
| virtual bool | getConstitutiveMatrix (Dune::FieldMatrix< double, 6, 6 > &C, bool invers=false) const =0 |
| Establishes the full constitutive matrix for this material. | |
| virtual bool | getConstitutiveMatrix (Dune::FieldMatrix< double, 3, 3 > &C, bool invers=false) const =0 |
| Establishes the full constitutive matrix for this material. | |
| double | getMassDensity () const |
| Returns the mass density of this material. | |
Static Public Member Functions | |
| static Material * | create (int ID, const Dune::DynamicVector< double > ¶ms) |
| Creates a material object of a given type. | |
| static Material * | create (int ID, const std::string &file) |
| Creates a material object from a rocklist. | |
Protected Member Functions | |
| Material (int ID=0, double density=0.0) | |
| Default constructor creating an empty material. | |
| virtual std::ostream & | write (std::ostream &os) const |
| Prints the material properties to a stream. | |
Friends | |
| std::ostream & | operator<< (std::ostream &os, const Material &m) |
| Global stream operator printing a material properties object. | |
This is a base class for linear elastic materials.
It is an abstract class since some of the member functions are purely virtual.
|
static |
Creates a material object of a given type.
The material type depends on the number of parameters provided.
| [in] | ID | External number for this material |
| [in] | params | Array of material parameters |
|
static |
Creates a material object from a rocklist.
| [in] | ID | ID of the material |
| [in] | file | The URL to the rocklist |
|
pure virtual |
Establishes the full constitutive matrix for this material.
| [out] | C | The constitutive matrix |
| [in] | invers | If true, set up the inverse matrix instead |
Implemented in Opm::Elasticity::Isotropic, Opm::Elasticity::OrthotropicD, and Opm::Elasticity::OrthotropicSym.
|
pure virtual |
Establishes the full constitutive matrix for this material.
| [out] | C | The constitutive matrix |
| [in] | invers | If true, set up the inverse matrix instead |
Implemented in Opm::Elasticity::Isotropic, Opm::Elasticity::OrthotropicD, and Opm::Elasticity::OrthotropicSym.
|
inlinevirtual |
Returns the ipar'th parameter describing this material.
Reimplemented in Opm::Elasticity::Isotropic, Opm::Elasticity::OrthotropicD, and Opm::Elasticity::OrthotropicSym.
|
pure virtual |
Returns the number of parameters describing this material.
Implemented in Opm::Elasticity::Isotropic, Opm::Elasticity::OrthotropicD, and Opm::Elasticity::OrthotropicSym.
|
inlineprotectedvirtual |
Prints the material properties to a stream.
Reimplemented in Opm::Elasticity::Isotropic, Opm::Elasticity::OrthotropicD, and Opm::Elasticity::OrthotropicSym.