OOFEM
2.4
OOFEM.org - Object Oriented Finite Element Solver
|
This class implements associated Material Status to MazarsNLModel. More...
#include <mazarsmodelnl.h>
Public Member Functions | |
MazarsNLMaterialStatus (int n, Domain *d, GaussPoint *g) | |
Constructor. More... | |
virtual | ~MazarsNLMaterialStatus () |
Destructor. More... | |
virtual void | printOutputAt (FILE *file, TimeStep *tStep) |
Print receiver's output to given stream. More... | |
double | giveLocalEquivalentStrainForAverage () |
Returns the local equivalent strain to be averaged. More... | |
void | setLocalEquivalentStrainForAverage (double ls) |
Sets the local equivalent strain for average to given value. More... | |
virtual const char * | giveInputRecordName () const |
virtual const char * | giveClassName () const |
virtual void | initTempStatus () |
Initializes the temporary internal variables, describing the current state according to previously reached equilibrium internal variables. More... | |
virtual void | updateYourself (TimeStep *tStep) |
Update equilibrium history variables according to temp-variables. More... | |
virtual contextIOResultType | saveContext (DataStream &stream, ContextMode mode, void *obj=NULL) |
Stores receiver state to output stream. More... | |
virtual contextIOResultType | restoreContext (DataStream &stream, ContextMode mode, void *obj=NULL) |
Restores the receiver state previously written in stream. More... | |
virtual Interface * | giveInterface (InterfaceType it) |
Interface requesting service. More... | |
Public Member Functions inherited from oofem::MazarsMaterialStatus | |
MazarsMaterialStatus (int n, Domain *d, GaussPoint *g) | |
Constructor. More... | |
virtual | ~MazarsMaterialStatus () |
Destructor. More... | |
double | giveLec () |
Returns characteristic length stored in receiver. More... | |
void | setLec (double ls) |
Sets characteristic length to given value. More... | |
Public Member Functions inherited from oofem::IsotropicDamageMaterial1Status | |
IsotropicDamageMaterial1Status (int n, Domain *d, GaussPoint *g) | |
Constructor. More... | |
virtual | ~IsotropicDamageMaterial1Status () |
Destructor. More... | |
Public Member Functions inherited from oofem::IsotropicDamageMaterialStatus | |
IsotropicDamageMaterialStatus (int n, Domain *d, GaussPoint *g) | |
Constructor. More... | |
virtual | ~IsotropicDamageMaterialStatus () |
Destructor. More... | |
double | giveKappa () |
Returns the last equilibrated scalar measure of the largest strain level. More... | |
double | giveTempKappa () |
Returns the temp. scalar measure of the largest strain level. More... | |
void | setTempKappa (double newKappa) |
Sets the temp scalar measure of the largest strain level to given value. More... | |
double | giveDamage () |
Returns the last equilibrated damage level. More... | |
double | giveTempDamage () |
Returns the temp. damage level. More... | |
void | setTempDamage (double newDamage) |
Sets the temp damage level to given value. More... | |
double | giveLe () |
Returns characteristic length stored in receiver. More... | |
void | setLe (double ls) |
Sets characteristic length to given value. More... | |
double | giveCrackAngle () |
Returns crack angle stored in receiver. More... | |
void | setCrackAngle (double ca) |
Sets crack angle to given value. More... | |
void | giveCrackVector (FloatArray &answer) |
Returns crack vector stored in receiver. This is useful for plotting cracks as a vector field (paraview etc.). More... | |
void | setCrackVector (FloatArray cv) |
Sets crack vector to given value. This is useful for plotting cracks as a vector field (paraview etc.). More... | |
double | giveStressWork () |
Returns the density of total work of stress on strain increments. More... | |
double | giveTempStressWork () |
Returns the temp density of total work of stress on strain increments. More... | |
void | setTempStressWork (double w) |
Sets the density of total work of stress on strain increments to given value. More... | |
double | giveDissWork () |
Returns the density of dissipated work. More... | |
double | giveTempDissWork () |
Returns the density of temp dissipated work. More... | |
void | setTempDissWork (double w) |
Sets the density of dissipated work to given value. More... | |
void | computeWork (GaussPoint *gp) |
Computes the increment of total stress work and of dissipated work. More... | |
Public Member Functions inherited from oofem::StructuralMaterialStatus | |
StructuralMaterialStatus (int n, Domain *d, GaussPoint *g) | |
Constructor. Creates new StructuralMaterialStatus with number n, belonging to domain d and IntegrationPoint g. More... | |
virtual | ~StructuralMaterialStatus () |
Destructor. More... | |
const FloatArray & | giveStrainVector () const |
Returns the const pointer to receiver's strain vector. More... | |
const FloatArray & | giveStressVector () const |
Returns the const pointer to receiver's stress vector. More... | |
const FloatArray & | givePVector () const |
Returns the const pointer to receiver's first Piola-Kirchhoff stress vector. More... | |
const FloatArray & | giveCVector () const |
Returns the const pointer to receiver's Cauchy stress vector. More... | |
const FloatArray & | giveFVector () const |
Returns the const pointer to receiver's deformation gradient vector. More... | |
const FloatArray & | giveTempStrainVector () const |
Returns the const pointer to receiver's temporary strain vector. More... | |
const FloatArray & | giveTempStressVector () const |
Returns the const pointer to receiver's temporary stress vector. More... | |
const FloatArray & | giveTempPVector () const |
Returns the const pointer to receiver's temporary first Piola-Kirchhoff stress vector. More... | |
const FloatArray & | giveTempCVector () const |
Returns the const pointer to receiver's temporary Cauchy stress vector. More... | |
const FloatArray & | giveTempFVector () const |
Returns the const pointer to receiver's temporary deformation gradient vector. More... | |
void | letStrainVectorBe (const FloatArray &v) |
Assigns strain vector to given vector v. More... | |
void | letStressVectorBe (const FloatArray &v) |
Assigns stressVector to given vector v. More... | |
void | letPVectorBe (const FloatArray &v) |
Assigns PVector to given vector v. More... | |
void | letCVectorBe (const FloatArray &v) |
Assigns CVector to given vector v. More... | |
void | letFVectorBe (const FloatArray &v) |
Assigns FVector to given vector v. More... | |
void | letTempStressVectorBe (const FloatArray &v) |
Assigns tempStressVector to given vector v. More... | |
void | letTempStrainVectorBe (const FloatArray &v) |
Assigns tempStrainVector to given vector v. More... | |
void | letTempPVectorBe (const FloatArray &v) |
Assigns tempPVector to given vector v. More... | |
void | letTempCVectorBe (const FloatArray &v) |
Assigns tempPVector to given vector v. More... | |
void | letTempFVectorBe (const FloatArray &v) |
Assigns tempFVector to given vector v. More... | |
virtual void | copyStateVariables (const MaterialStatus &iStatus) |
Functions for MaterialStatusMapperInterface. More... | |
virtual void | addStateVariables (const MaterialStatus &iStatus) |
Public Member Functions inherited from oofem::MaterialStatus | |
MaterialStatus (int n, Domain *d, GaussPoint *g) | |
Constructor. More... | |
virtual | ~MaterialStatus () |
Destructor. More... | |
virtual bool | giveMaterialProperty (int propID, double &value) |
Returns the value of material model property stored in receiving status. More... | |
virtual void | setMaterialProperty (int propID, double value) |
Allows to set the value of material model property to be stored in receiving status. More... | |
virtual void | setStatusVariable (int varID, double value) |
Allows to set the value of a specific variable, identified by varID. More... | |
virtual void | restoreConsistency () |
Restores consistency of the status, i.e., computes or corrects the values of certain status variables such that the state is admissible. More... | |
virtual IRResultType | initializeFrom (InputRecord *ir) |
Initializes receiver according to object description stored in input record. More... | |
Public Member Functions inherited from oofem::IntegrationPointStatus | |
IntegrationPointStatus (int n, Domain *d, GaussPoint *g) | |
Constructor. More... | |
virtual | ~IntegrationPointStatus () |
Destructor. More... | |
Public Member Functions inherited from oofem::FEMComponent | |
FEMComponent (int n, Domain *d) | |
Regular constructor, creates component with given number and belonging to given domain. More... | |
virtual | ~FEMComponent () |
Virtual destructor. More... | |
Domain * | giveDomain () const |
virtual void | setDomain (Domain *d) |
Sets associated Domain. More... | |
int | giveNumber () const |
void | setNumber (int num) |
Sets number of receiver. More... | |
virtual void | updateLocalNumbering (EntityRenumberingFunctor &f) |
Local renumbering support. More... | |
virtual void | giveInputRecord (DynamicInputRecord &input) |
Setups the input record string of receiver. More... | |
virtual int | checkConsistency () |
Allows programmer to test some internal data, before computation begins. More... | |
virtual void | printYourself () |
Prints receiver state on stdout. Useful for debugging. More... | |
std::string | errorInfo (const char *func) const |
Returns string for prepending output (used by error reporting macros). More... | |
Public Member Functions inherited from oofem::MaterialStatusMapperInterface | |
MaterialStatusMapperInterface () | |
virtual | ~MaterialStatusMapperInterface () |
virtual int | MSMI_map (const GaussPoint &iGP, const Domain &iOldDom, Set &sourceSet, const TimeStep &iTStep, MaterialStatus &oStatus) |
Maps all internal state variables from the old domain to the given gp status. More... | |
virtual int | MSMI_map_cz (const GaussPoint &iGP, const Domain &iOldDom, Set &sourceSet, const TimeStep &iTStep, MaterialStatus &oStatus) |
virtual int | MSMI_update (const GaussPoint &iGP, const TimeStep &iTStep) |
Updates the internal state variables from previously mapped values. More... | |
virtual int | MSMI_finish (const TimeStep &iTStep) |
Finishes the mapping for given time step. More... | |
Public Member Functions inherited from oofem::RandomMaterialStatusExtensionInterface | |
RandomMaterialStatusExtensionInterface () | |
Constructor. More... | |
virtual | ~RandomMaterialStatusExtensionInterface () |
Destructor. More... | |
bool | _giveProperty (int key, double &value) |
Returns the value of random property, identified by a key. More... | |
void | _setProperty (int key, double value) |
Sets the value of random property, identified by a key. More... | |
Public Member Functions inherited from oofem::Interface | |
Interface () | |
Constructor. More... | |
virtual | ~Interface () |
Public Member Functions inherited from oofem::StructuralNonlocalMaterialStatusExtensionInterface | |
StructuralNonlocalMaterialStatusExtensionInterface () | |
~StructuralNonlocalMaterialStatusExtensionInterface () | |
Public Member Functions inherited from oofem::NonlocalMaterialStatusExtensionInterface | |
NonlocalMaterialStatusExtensionInterface () | |
Constructor. More... | |
virtual | ~NonlocalMaterialStatusExtensionInterface () |
Destructor. More... | |
std::vector< localIntegrationRecord > * | giveIntegrationDomainList () |
Returns integration list of receiver. More... | |
double | giveIntegrationScale () |
Returns associated integration scale. More... | |
void | setIntegrationScale (double val) |
Sets associated integration scale. More... | |
double | giveVolumeAround () |
Returns associated volume. More... | |
void | setVolumeAround (double val) |
Sets associated integration scale. More... | |
void | clear () |
clears the integration list of receiver More... | |
Protected Attributes | |
double | localEquivalentStrainForAverage |
Equivalent strain for averaging. More... | |
Protected Attributes inherited from oofem::MazarsMaterialStatus | |
double | lec |
Characteristic element length for compression, fixed as square from element size (for 2d). More... | |
Protected Attributes inherited from oofem::IsotropicDamageMaterialStatus | |
double | kappa |
Scalar measure of the largest strain level ever reached in material. More... | |
double | tempKappa |
Non-equilibrated scalar measure of the largest strain level. More... | |
double | damage |
Damage level of material. More... | |
double | tempDamage |
Non-equilibrated damage level of material. More... | |
double | le |
Characteristic element length, computed when damage initialized from direction of maximum positive principal strain. More... | |
double | crack_angle |
Angle characterizing the crack direction. More... | |
FloatArray | crackVector |
Crack orientation normalized to damage magnitude. This is useful for plotting cracks as a vector field (paraview etc.). More... | |
double | stressWork |
Density of total work done by stresses on strain increments. More... | |
double | tempStressWork |
Non-equilibrated density of total work done by stresses on strain increments. More... | |
double | dissWork |
Density of dissipated work. More... | |
double | tempDissWork |
Non-equilibrated density of dissipated work. More... | |
Protected Attributes inherited from oofem::StructuralMaterialStatus | |
FloatArray | strainVector |
Equilibrated strain vector in reduced form. More... | |
FloatArray | stressVector |
Equilibrated stress vector in reduced form. More... | |
FloatArray | tempStressVector |
Temporary stress vector in reduced form (increments are used mainly in nonlinear analysis) More... | |
FloatArray | tempStrainVector |
Temporary strain vector in reduced form (to find balanced state) More... | |
FloatArray | PVector |
Equilibrated first Piola-Kirchhoff stress vector. More... | |
FloatArray | tempPVector |
Temporary first Piola-Kirchhoff stress vector (to find balanced state) More... | |
FloatArray | CVector |
Equilibrated Cauchy stress vector. More... | |
FloatArray | tempCVector |
Temporary Cauchy stress vector (to find balanced state) More... | |
FloatArray | FVector |
Equilibrated deformation gradient in reduced form. More... | |
FloatArray | tempFVector |
Temporary deformation gradient in reduced form (to find balanced state) More... | |
Protected Attributes inherited from oofem::IntegrationPointStatus | |
GaussPoint * | gp |
Associated integration point. More... | |
Protected Attributes inherited from oofem::FEMComponent | |
int | number |
Component number. More... | |
Domain * | domain |
Link to domain object, useful for communicating with other FEM components. More... | |
Protected Attributes inherited from oofem::MaterialStatusMapperInterface | |
MaterialMappingAlgorithm * | mpMaterialMapper |
Protected Attributes inherited from oofem::RandomMaterialStatusExtensionInterface | |
Dictionary | randProperties |
Dictionary containing material model values. More... | |
Protected Attributes inherited from oofem::NonlocalMaterialStatusExtensionInterface | |
std::vector< localIntegrationRecord > | integrationDomainList |
List containing localIntegrationRecord values. More... | |
double | integrationScale |
Nonlocal volume around the corresponding integration point. More... | |
double | volumeAround |
Local volume around the corresponding integration point. More... | |
This class implements associated Material Status to MazarsNLModel.
Definition at line 53 of file mazarsmodelnl.h.
oofem::MazarsNLMaterialStatus::MazarsNLMaterialStatus | ( | int | n, |
Domain * | d, | ||
GaussPoint * | g | ||
) |
Constructor.
Definition at line 178 of file mazarsmodelnl.C.
References localEquivalentStrainForAverage.
Referenced by oofem::MazarsNLMaterial::CreateStatus().
|
virtual |
Destructor.
Definition at line 185 of file mazarsmodelnl.C.
|
inlinevirtual |
Reimplemented from oofem::MazarsMaterialStatus.
Definition at line 74 of file mazarsmodelnl.h.
References giveInterface(), initTempStatus(), restoreContext(), saveContext(), and updateYourself().
|
inlinevirtual |
Reimplemented from oofem::IntegrationPointStatus.
Definition at line 73 of file mazarsmodelnl.h.
References _IFT_MazarsNLMaterial_Name.
|
virtual |
Interface requesting service.
In the case of nonlocal constitutive models, the use of multiple inheritance is assumed. Typically, the class representing nonlocal constitutive model status is derived both from class representing local status and from class NonlocalMaterialStatusExtension or from one of its derived classes (which declare services and variables corresponding to specific analysis type).
Reimplemented from oofem::IsotropicDamageMaterial1Status.
Definition at line 262 of file mazarsmodelnl.C.
References oofem::NonlocalMaterialStatusExtensionInterfaceType.
Referenced by giveClassName(), and oofem::MazarsNLMaterial::giveClassName().
|
inline |
Returns the local equivalent strain to be averaged.
Definition at line 68 of file mazarsmodelnl.h.
References localEquivalentStrainForAverage.
Referenced by oofem::MazarsNLMaterial::computeEquivalentStrain(), and oofem::MazarsNLMaterial::packUnknowns().
|
virtual |
Initializes the temporary internal variables, describing the current state according to previously reached equilibrium internal variables.
Reimplemented from oofem::IsotropicDamageMaterialStatus.
Definition at line 203 of file mazarsmodelnl.C.
References oofem::IsotropicDamageMaterialStatus::initTempStatus().
Referenced by giveClassName().
|
virtual |
Print receiver's output to given stream.
Reimplemented from oofem::IsotropicDamageMaterialStatus.
Definition at line 190 of file mazarsmodelnl.C.
References oofem::IsotropicDamageMaterialStatus::damage, oofem::IsotropicDamageMaterialStatus::kappa, and oofem::StructuralMaterialStatus::printOutputAt().
|
virtual |
Restores the receiver state previously written in stream.
stream | Input stream. |
mode | Determines amount of info available in stream (state, definition, ...). |
obj | Special parameter for sending extra information. |
throws | an ContextIOERR exception if error encountered. |
Reimplemented from oofem::MazarsMaterialStatus.
Definition at line 244 of file mazarsmodelnl.C.
References oofem::CIO_OK, oofem::MazarsMaterialStatus::restoreContext(), and THROW_CIOERR.
Referenced by giveClassName().
|
virtual |
Stores receiver state to output stream.
stream | Output stream. |
mode | Determines amount of info required in stream (state, definition, ...). |
obj | Special parameter, used only to send particular integration point to material class version of this method. |
throws | an ContextIOERR exception if error encountered. |
Reimplemented from oofem::MazarsMaterialStatus.
Definition at line 226 of file mazarsmodelnl.C.
References oofem::CIO_OK, oofem::MazarsMaterialStatus::saveContext(), and THROW_CIOERR.
Referenced by giveClassName().
|
inline |
Sets the local equivalent strain for average to given value.
Definition at line 70 of file mazarsmodelnl.h.
Referenced by oofem::MazarsNLMaterial::unpackAndUpdateUnknowns(), and oofem::MazarsNLMaterial::updateBeforeNonlocAverage().
|
virtual |
Update equilibrium history variables according to temp-variables.
Invoked, after new equilibrium state has been reached.
Reimplemented from oofem::IsotropicDamageMaterialStatus.
Definition at line 214 of file mazarsmodelnl.C.
References oofem::IsotropicDamageMaterialStatus::updateYourself().
Referenced by giveClassName().
|
protected |
Equivalent strain for averaging.
Definition at line 57 of file mazarsmodelnl.h.
Referenced by giveLocalEquivalentStrainForAverage(), MazarsNLMaterialStatus(), and oofem::MazarsNLMaterial::unpackAndUpdateUnknowns().