OOFEM 3.0
Loading...
Searching...
No Matches
oofem::RandomMaterialExtensionInterface Class Reference

#include <randommaterialext.h>

Inheritance diagram for oofem::RandomMaterialExtensionInterface:
Collaboration diagram for oofem::RandomMaterialExtensionInterface:

Public Member Functions

 RandomMaterialExtensionInterface ()
 Constructor.
virtual ~RandomMaterialExtensionInterface ()
 Destructor.
void initializeFrom (InputRecord &ir)
void giveInputRecord (DynamicInputRecord &ir)
bool give (int key, GaussPoint *gp, double &value) const
Public Member Functions inherited from oofem::Interface
 Interface ()
 Constructor.
virtual ~Interface ()
virtual const char * giveClassName () const =0

Protected Member Functions

void _generateStatusVariables (GaussPoint *) const

Protected Attributes

IntArray randVariables
 Array of randomized variables (identified by a key).
IntArray randomVariableGenerators
 Array of generators id's for corresponding randomized variables.

Detailed Description

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.

Constructor & Destructor Documentation

◆ RandomMaterialExtensionInterface()

oofem::RandomMaterialExtensionInterface::RandomMaterialExtensionInterface ( )
inline

◆ ~RandomMaterialExtensionInterface()

virtual oofem::RandomMaterialExtensionInterface::~RandomMaterialExtensionInterface ( )
inlinevirtual

Destructor.

Definition at line 105 of file randommaterialext.h.

Member Function Documentation

◆ _generateStatusVariables()

◆ give()

bool oofem::RandomMaterialExtensionInterface::give ( int key,
GaussPoint * gp,
double & value ) const

Returns the property in associated status of given integration point if defined.

Returns
true if property available, false otherwise

Definition at line 85 of file randommaterialext.C.

References oofem::RandomMaterialStatusExtensionInterface::_giveProperty(), oofem::IntegrationPointStatus::giveInterface(), oofem::GaussPoint::giveMaterialStatus(), and oofem::RandomMaterialStatusExtensionInterfaceType.

Referenced by oofem::LatticePlasticityDamage::give().

◆ giveInputRecord()

void oofem::RandomMaterialExtensionInterface::giveInputRecord ( DynamicInputRecord & ir)

◆ initializeFrom()

void 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, randomVariableGenerators, and randVariables.

Member Data Documentation

◆ randomVariableGenerators

IntArray oofem::RandomMaterialExtensionInterface::randomVariableGenerators
protected

Array of generators id's for corresponding randomized variables.

Definition at line 99 of file randommaterialext.h.

Referenced by _generateStatusVariables(), giveInputRecord(), initializeFrom(), and RandomMaterialExtensionInterface().

◆ randVariables

IntArray oofem::RandomMaterialExtensionInterface::randVariables
protected

Array of randomized variables (identified by a key).

Definition at line 97 of file randommaterialext.h.

Referenced by _generateStatusVariables(), giveInputRecord(), initializeFrom(), and RandomMaterialExtensionInterface().


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

This page is part of the OOFEM-3.0 documentation. Copyright Copyright (C) 1994-2025 Borek Patzak Bořek Patzák
Project e-mail: oofem@fsv.cvut.cz
Generated at for OOFEM by doxygen 1.15.0 written by Dimitri van Heesch, © 1997-2011