OOFEM  2.4
OOFEM.org - Object Oriented Finite Element Solver
oofem::DustMaterialStatus Class Reference

This class implements material status for dust material model. More...

#include <dustmat.h>

+ Inheritance diagram for oofem::DustMaterialStatus:
+ Collaboration diagram for oofem::DustMaterialStatus:

Public Types

enum  stateFlagValues {
  DM_Elastic, DM_Unloading, DM_Yielding1, DM_Yielding2,
  DM_Yielding3
}
 Values of history variable stateFlag. More...
 

Public Member Functions

 DustMaterialStatus (int n, Domain *d, GaussPoint *gp, double q0)
 Constructor. More...
 
virtual ~DustMaterialStatus ()
 Destructor. More...
 
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 void printOutputAt (FILE *file, TimeStep *tStep)
 Print receiver's output to given stream. 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 const char * giveClassName () const
 
const FloatArraygivePlasticStrain () const
 Get the full plastic strain vector from the material status. More...
 
double giveVolumetricPlasticStrain () const
 Get the full plastic strain vector from the material status. More...
 
double giveQ () const
 Get the value of hardening variable q from the material status. More...
 
int giveStateFlag () const
 Get the state flag from the material status. More...
 
const FloatArraygiveTempPlasticStrain () const
 Get the temp value of the full plastic strain vector from the material status. More...
 
double giveTempQ () const
 Get the temp value of the hardening variable q from the material status. More...
 
int giveTempStateFlag () const
 Get the temp value of the state flag from the material status. More...
 
void letTempPlasticStrainBe (const FloatArray &v)
 Assign the temp value of plastic strain. More...
 
void letTempQBe (double v)
 Assign the temp value of variable q. More...
 
void letTempStateFlagBe (int v)
 Assign the temp value of the state flag. More...
 
void letPlasticStrainBe (const FloatArray &v)
 Assign the value of plastic strain. More...
 
void letQBe (double v)
 Assign the value of variable q. More...
 
void setBulkModulus (double v)
 Assign the value of actual bulk modulus of the status. More...
 
void setShearModulus (double v)
 Assign the value of actual shear modulus of the status. More...
 
void setYoungsModulus (double v)
 Assign the value of actual Young's modulus of the status. More...
 
double giveBulkModulus ()
 Get the value of actual bulk modulus of the status. More...
 
double giveShearModulus ()
 Get the value of actual shear modulus of the status. More...
 
double giveYoungsModulus ()
 Get the value of actual Young's modulus of the status. 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 FloatArraygiveStrainVector () const
 Returns the const pointer to receiver's strain vector. More...
 
const FloatArraygiveStressVector () const
 Returns the const pointer to receiver's stress vector. More...
 
const FloatArraygivePVector () const
 Returns the const pointer to receiver's first Piola-Kirchhoff stress vector. More...
 
const FloatArraygiveCVector () const
 Returns the const pointer to receiver's Cauchy stress vector. More...
 
const FloatArraygiveFVector () const
 Returns the const pointer to receiver's deformation gradient vector. More...
 
const FloatArraygiveTempStrainVector () const
 Returns the const pointer to receiver's temporary strain vector. More...
 
const FloatArraygiveTempStressVector () const
 Returns the const pointer to receiver's temporary stress vector. More...
 
const FloatArraygiveTempPVector () const
 Returns the const pointer to receiver's temporary first Piola-Kirchhoff stress vector. More...
 
const FloatArraygiveTempCVector () const
 Returns the const pointer to receiver's temporary Cauchy stress vector. More...
 
const FloatArraygiveTempFVector () 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...
 
virtual const char * giveInputRecordName () const
 
- 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...
 
DomaingiveDomain () 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...
 
virtual InterfacegiveInterface (InterfaceType t)
 Interface requesting service. 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...
 

Protected Attributes

FloatArray plasticStrain
 Plastic strain. More...
 
FloatArray tempPlasticStrain
 
double q
 Hardening parameter q. More...
 
double tempQ
 
double bulkModulus
 Current bulk modulus. More...
 
double shearModulus
 Current shear modulus. More...
 
double youngsModulus
 Current Young's modulus. More...
 
int stateFlag
 Indicates the state (i.e. elastic, yielding, unloading) of the Gauss point. More...
 
int tempStateFlag
 
- 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
GaussPointgp
 Associated integration point. More...
 
- Protected Attributes inherited from oofem::FEMComponent
int number
 Component number. More...
 
Domaindomain
 Link to domain object, useful for communicating with other FEM components. More...
 
- Protected Attributes inherited from oofem::MaterialStatusMapperInterface
MaterialMappingAlgorithmmpMaterialMapper
 

Detailed Description

This class implements material status for dust material model.

See also
DustMaterial
Author
Jan Stransky

Definition at line 68 of file dustmat.h.

Member Enumeration Documentation

Values of history variable stateFlag.

Enumerator
DM_Elastic 
DM_Unloading 
DM_Yielding1 
DM_Yielding2 
DM_Yielding3 

Definition at line 72 of file dustmat.h.

Constructor & Destructor Documentation

oofem::DustMaterialStatus::~DustMaterialStatus ( )
virtual

Destructor.

Definition at line 64 of file dustmat.C.

Member Function Documentation

double oofem::DustMaterialStatus::giveBulkModulus ( )
inline

Get the value of actual bulk modulus of the status.

Returns
Value of bulk modulus

Definition at line 199 of file dustmat.h.

References bulkModulus.

Referenced by oofem::DustMaterial::performF1return(), and oofem::DustMaterial::performF2return().

virtual const char* oofem::DustMaterialStatus::giveClassName ( ) const
inlinevirtual
Returns
Class name of the receiver.

Reimplemented from oofem::StructuralMaterialStatus.

Definition at line 114 of file dustmat.h.

const FloatArray& oofem::DustMaterialStatus::givePlasticStrain ( ) const
inline

Get the full plastic strain vector from the material status.

Returns
Plastic strain.

Definition at line 120 of file dustmat.h.

References plasticStrain.

Referenced by oofem::DustMaterial::giveIPValue(), oofem::DustMaterial::performStressReturn(), and printOutputAt().

double oofem::DustMaterialStatus::giveQ ( ) const
inline

Get the value of hardening variable q from the material status.

Returns
Hardenenig variable q

Definition at line 130 of file dustmat.h.

References q.

Referenced by oofem::DustMaterial::giveIPValue(), oofem::DustMaterial::performF1return(), oofem::DustMaterial::performF2return(), and oofem::DustMaterial::performStressReturn().

double oofem::DustMaterialStatus::giveShearModulus ( )
inline

Get the value of actual shear modulus of the status.

Returns
Value of shear modulus

Definition at line 204 of file dustmat.h.

References shearModulus.

Referenced by oofem::DustMaterial::performF1return(), and oofem::DustMaterial::performF2return().

int oofem::DustMaterialStatus::giveStateFlag ( ) const
inline

Get the state flag from the material status.

Returns
State flag (i.e. elastic, unloading, yielding, vertex case yielding)

Definition at line 135 of file dustmat.h.

References stateFlag.

Referenced by oofem::DustMaterial::performStressReturn().

const FloatArray& oofem::DustMaterialStatus::giveTempPlasticStrain ( ) const
inline

Get the temp value of the full plastic strain vector from the material status.

Returns
Temp value of plastic strain vector.

Definition at line 141 of file dustmat.h.

References tempPlasticStrain.

double oofem::DustMaterialStatus::giveTempQ ( ) const
inline

Get the temp value of the hardening variable q from the material status.

Returns
Temp value of hardening variable kappaP.

Definition at line 146 of file dustmat.h.

References tempQ.

Referenced by oofem::DustMaterial::performF1return(), and oofem::DustMaterial::performStressReturn().

int oofem::DustMaterialStatus::giveTempStateFlag ( ) const
inline

Get the temp value of the state flag from the material status.

Returns
The temp value of the state flag.

Definition at line 151 of file dustmat.h.

References tempStateFlag.

double oofem::DustMaterialStatus::giveVolumetricPlasticStrain ( ) const
inline

Get the full plastic strain vector from the material status.

Returns
Volumetric part of plastic strain.

Definition at line 125 of file dustmat.h.

References oofem::FloatArray::at().

Referenced by oofem::DustMaterial::computeAndSetBulkAndShearModuli(), oofem::DustMaterial::give3dMaterialStiffnessMatrix(), and oofem::DustMaterial::giveIPValue().

double oofem::DustMaterialStatus::giveYoungsModulus ( )
inline

Get the value of actual Young's modulus of the status.

Returns
Value of Young's modulus

Definition at line 209 of file dustmat.h.

References youngsModulus.

Referenced by oofem::DustMaterial::give3dMaterialStiffnessMatrix().

void oofem::DustMaterialStatus::initTempStatus ( )
virtual

Initializes the temporary internal variables, describing the current state according to previously reached equilibrium internal variables.

Reimplemented from oofem::StructuralMaterialStatus.

Definition at line 68 of file dustmat.C.

References oofem::StructuralMaterialStatus::initTempStatus(), plasticStrain, q, stateFlag, tempPlasticStrain, tempQ, and tempStateFlag.

void oofem::DustMaterialStatus::letPlasticStrainBe ( const FloatArray v)
inline

Assign the value of plastic strain.

Parameters
vNew value of plastic strain.

Definition at line 173 of file dustmat.h.

Referenced by oofem::DustMaterial::setIPValue().

void oofem::DustMaterialStatus::letQBe ( double  v)
inline

Assign the value of variable q.

Parameters
vNew value of variable q

Definition at line 178 of file dustmat.h.

Referenced by oofem::DustMaterial::setIPValue().

void oofem::DustMaterialStatus::letTempPlasticStrainBe ( const FloatArray v)
inline

Assign the temp value of plastic strain.

Parameters
vNew temp value o plastic strain.

Definition at line 157 of file dustmat.h.

Referenced by oofem::DustMaterial::performStressReturn().

void oofem::DustMaterialStatus::letTempQBe ( double  v)
inline

Assign the temp value of variable q.

Parameters
vNew temp value of variable q

Definition at line 162 of file dustmat.h.

Referenced by oofem::DustMaterial::performF1return(), oofem::DustMaterial::performF2return(), and oofem::DustMaterial::performStressReturn().

void oofem::DustMaterialStatus::letTempStateFlagBe ( int  v)
inline

Assign the temp value of the state flag.

Parameters
vNew temp value of the state flag.

Definition at line 167 of file dustmat.h.

Referenced by oofem::DustMaterial::performStressReturn().

void oofem::DustMaterialStatus::printOutputAt ( FILE *  file,
TimeStep tStep 
)
virtual

Print receiver's output to given stream.

Reimplemented from oofem::StructuralMaterialStatus.

Definition at line 88 of file dustmat.C.

References DM_Elastic, DM_Unloading, DM_Yielding1, DM_Yielding2, DM_Yielding3, givePlasticStrain(), oofem::StructuralMaterialStatus::printOutputAt(), q, and stateFlag.

contextIOResultType oofem::DustMaterialStatus::restoreContext ( DataStream stream,
ContextMode  mode,
void *  obj = NULL 
)
virtual

Restores the receiver state previously written in stream.

See also
saveContext
Parameters
streamInput stream.
modeDetermines amount of info available in stream (state, definition, ...).
objSpecial parameter for sending extra information.
Returns
contextIOResultType.
Exceptions
throwsan ContextIOERR exception if error encountered.

Reimplemented from oofem::StructuralMaterialStatus.

Definition at line 139 of file dustmat.C.

References oofem::CIO_OK, oofem::StructuralMaterialStatus::restoreContext(), and THROW_CIOERR.

contextIOResultType oofem::DustMaterialStatus::saveContext ( DataStream stream,
ContextMode  mode,
void *  obj = NULL 
)
virtual

Stores receiver state to output stream.

Parameters
streamOutput stream.
modeDetermines amount of info required in stream (state, definition, ...).
objSpecial parameter, used only to send particular integration point to material class version of this method.
Returns
contextIOResultType.
Exceptions
throwsan ContextIOERR exception if error encountered.

Reimplemented from oofem::StructuralMaterialStatus.

Definition at line 125 of file dustmat.C.

References oofem::CIO_OK, oofem::StructuralMaterialStatus::saveContext(), and THROW_CIOERR.

void oofem::DustMaterialStatus::setBulkModulus ( double  v)
inline

Assign the value of actual bulk modulus of the status.

Parameters
vNew value of bulk modulus

Definition at line 184 of file dustmat.h.

Referenced by oofem::DustMaterial::computeAndSetBulkAndShearModuli().

void oofem::DustMaterialStatus::setShearModulus ( double  v)
inline

Assign the value of actual shear modulus of the status.

Parameters
vNew value of shear modulus

Definition at line 189 of file dustmat.h.

Referenced by oofem::DustMaterial::computeAndSetBulkAndShearModuli().

void oofem::DustMaterialStatus::setYoungsModulus ( double  v)
inline

Assign the value of actual Young's modulus of the status.

Parameters
vNew value of Young's modulus

Definition at line 194 of file dustmat.h.

Referenced by oofem::DustMaterial::computeAndSetBulkAndShearModuli().

void oofem::DustMaterialStatus::updateYourself ( TimeStep )
virtual

Update equilibrium history variables according to temp-variables.

Invoked, after new equilibrium state has been reached.

Reimplemented from oofem::StructuralMaterialStatus.

Definition at line 78 of file dustmat.C.

References plasticStrain, q, stateFlag, tempPlasticStrain, tempQ, tempStateFlag, and oofem::StructuralMaterialStatus::updateYourself().

Member Data Documentation

double oofem::DustMaterialStatus::bulkModulus
protected

Current bulk modulus.

Definition at line 90 of file dustmat.h.

Referenced by giveBulkModulus().

FloatArray oofem::DustMaterialStatus::plasticStrain
protected

Plastic strain.

Definition at line 82 of file dustmat.h.

Referenced by givePlasticStrain(), initTempStatus(), and updateYourself().

double oofem::DustMaterialStatus::q
protected

Hardening parameter q.

Definition at line 86 of file dustmat.h.

Referenced by DustMaterialStatus(), giveQ(), initTempStatus(), printOutputAt(), and updateYourself().

double oofem::DustMaterialStatus::shearModulus
protected

Current shear modulus.

Definition at line 92 of file dustmat.h.

Referenced by giveShearModulus().

int oofem::DustMaterialStatus::stateFlag
protected

Indicates the state (i.e. elastic, yielding, unloading) of the Gauss point.

Definition at line 97 of file dustmat.h.

Referenced by giveStateFlag(), initTempStatus(), printOutputAt(), and updateYourself().

FloatArray oofem::DustMaterialStatus::tempPlasticStrain
protected

Definition at line 83 of file dustmat.h.

Referenced by giveTempPlasticStrain(), initTempStatus(), and updateYourself().

double oofem::DustMaterialStatus::tempQ
protected

Definition at line 87 of file dustmat.h.

Referenced by giveTempQ(), initTempStatus(), and updateYourself().

int oofem::DustMaterialStatus::tempStateFlag
protected

Definition at line 98 of file dustmat.h.

Referenced by giveTempStateFlag(), initTempStatus(), and updateYourself().

double oofem::DustMaterialStatus::youngsModulus
protected

Current Young's modulus.

Definition at line 94 of file dustmat.h.

Referenced by giveYoungsModulus().


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

This page is part of the OOFEM documentation. Copyright (c) 2011 Borek Patzak
Project e-mail: info@oofem.org
Generated at Tue Jan 2 2018 20:07:34 for OOFEM by doxygen 1.8.11 written by Dimitri van Heesch, © 1997-2011