OOFEM
2.4
OOFEM.org - Object Oriented Finite Element Solver
|
Abstract base class for all random materials. More...
#include <randommaterialext.h>
Public Member Functions | |
RandomMaterialExtensionInterface () | |
Constructor. More... | |
virtual | ~RandomMaterialExtensionInterface () |
Destructor. More... | |
IRResultType | initializeFrom (InputRecord *ir) |
Initializes receiver according to object description stored in input record. More... | |
void | giveInputRecord (DynamicInputRecord &ir) |
bool | give (int key, GaussPoint *gp, double &value) |
Returns the property in associated status of given integration point if defined. More... | |
Public Member Functions inherited from oofem::Interface | |
Interface () | |
Constructor. More... | |
virtual | ~Interface () |
virtual const char * | giveClassName () const =0 |
Protected Member Functions | |
void | _generateStatusVariables (GaussPoint *) const |
Sets up (generates) the variables identified in randVariables array using generators given in randomVariableGenerators and stores them in given status. More... | |
Protected Attributes | |
IntArray | randVariables |
Array of randomized variables (identified by a key). More... | |
IntArray | randomVariableGenerators |
Array of generators id's for corresponding randomized variables. More... | |
Abstract base class for all random materials.
Materials supporting random interface can store some of their constants inside integration points (in their statuses). This allows, for example, to set up random variation of certain parameter while still setting up only one material model within the FE model. The default implementation of provided services assumes that material statuses created by the material are derived from base RandomMaterialStatusExtensionInterface.
Definition at line 93 of file randommaterialext.h.
|
inline |
Constructor.
Definition at line 102 of file randommaterialext.h.
|
inlinevirtual |
Destructor.
Definition at line 105 of file randommaterialext.h.
|
protected |
Sets up (generates) the variables identified in randVariables array using generators given in randomVariableGenerators and stores them in given status.
Should be called from material CreateStatus service.
Definition at line 98 of file randommaterialext.C.
References oofem::RandomMaterialStatusExtensionInterface::_setProperty(), oofem::Element::computeGlobalCoordinates(), oofem::Function::evaluate(), oofem::FEMComponent::giveDomain(), oofem::GaussPoint::giveElement(), oofem::Domain::giveFunction(), oofem::FEMComponent::giveInterface(), oofem::GaussPoint::giveMaterialStatus(), oofem::GaussPoint::giveSubPatchCoordinates(), OOFEM_ERROR, and oofem::RandomMaterialStatusExtensionInterfaceType.
Referenced by oofem::ConcreteFCM::giveStatus(), oofem::IsotropicDamageMaterial1::giveStatus(), and oofem::LatticeDamage2d::giveStatus().
bool oofem::RandomMaterialExtensionInterface::give | ( | int | key, |
GaussPoint * | gp, | ||
double & | value | ||
) |
Returns the property in associated status of given integration point if defined.
Definition at line 90 of file randommaterialext.C.
References oofem::RandomMaterialStatusExtensionInterface::_giveProperty(), oofem::FEMComponent::giveInterface(), oofem::GaussPoint::giveMaterialStatus(), and oofem::RandomMaterialStatusExtensionInterfaceType.
Referenced by oofem::ConcreteFCM::give().
void oofem::RandomMaterialExtensionInterface::giveInputRecord | ( | DynamicInputRecord & | ir | ) |
Definition at line 82 of file randommaterialext.C.
References _IFT_RandomMaterialExt_randGen, _IFT_RandomMaterialExt_randVariables, and oofem::DynamicInputRecord::setField().
Referenced by oofem::IsotropicDamageMaterial1::giveInputRecord().
IRResultType oofem::RandomMaterialExtensionInterface::initializeFrom | ( | InputRecord * | ir | ) |
Initializes receiver according to object description stored in input record.
The density of material is read into property dictionary (keyword 'd') Intended to be called from material initializeFrom service.
Definition at line 63 of file randommaterialext.C.
References _IFT_RandomMaterialExt_randGen, _IFT_RandomMaterialExt_randVariables, IR_GIVE_OPTIONAL_FIELD, oofem::IRRT_BAD_FORMAT, oofem::IRRT_OK, and OOFEM_WARNING.
Referenced by oofem::ConcreteFCM::initializeFrom(), oofem::MazarsMaterial::initializeFrom(), oofem::IsotropicDamageMaterial1::initializeFrom(), and oofem::LatticeDamage2d::initializeFrom().
|
protected |
Array of generators id's for corresponding randomized variables.
Definition at line 99 of file randommaterialext.h.
|
protected |
Array of randomized variables (identified by a key).
Definition at line 97 of file randommaterialext.h.