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

This class implements associated Material Status to RCSDNLMaterial. More...

#include <rcsdnl.h>

+ Inheritance diagram for oofem::RCSDNLMaterialStatus:
+ Collaboration diagram for oofem::RCSDNLMaterialStatus:

Public Member Functions

 RCSDNLMaterialStatus (int n, Domain *d, GaussPoint *g)
 
virtual ~RCSDNLMaterialStatus ()
 
virtual void printOutputAt (FILE *file, TimeStep *tStep)
 Print receiver's output to given stream. More...
 
const FloatArraygiveNonlocalStrainVector ()
 
const FloatArraygiveTempNonlocalStrainVector ()
 
void setTempNonlocalStrainVector (FloatArray ls)
 
const FloatArraygiveLocalStrainVectorForAverage ()
 
void setLocalStrainVectorForAverage (FloatArray ls)
 
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 *)
 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 InterfacegiveInterface (InterfaceType)
 Interface requesting service. More...
 
- Public Member Functions inherited from oofem::RCSDEMaterialStatus
 RCSDEMaterialStatus (int n, Domain *d, GaussPoint *g)
 
virtual ~RCSDEMaterialStatus ()
 
double giveTempMaxEquivStrain ()
 
void setTempMaxEquivStrain (double val)
 
double giveTempDamageCoeff ()
 
void setTempDamageCoeff (double val)
 
const FloatMatrixgiveDs0Matrix ()
 
void setDs0Matrix (FloatMatrix &mtrx)
 
double giveTransitionEpsCoeff ()
 
void setTransitionEpsCoeff (double val)
 
double giveEpsF2Coeff ()
 
void setEpsF2Coeff (double val)
 
__rcsdModeType giveTempMode ()
 
void setTempMode (__rcsdModeType mode)
 
double giveMaxEquivStrain ()
 
double giveDamageCoeff ()
 
__rcsdModeType giveMode ()
 
- Public Member Functions inherited from oofem::RCM2MaterialStatus
 RCM2MaterialStatus (int n, Domain *d, GaussPoint *g)
 
virtual ~RCM2MaterialStatus ()
 
const FloatArraygetPrincipalStrainVector () const
 
const FloatArraygetPrincipalStressVector () const
 
const FloatArraygivePrevPrincStrainVector () const
 
const FloatArraygivePrevPrincStressVector () const
 
void letPrincipalStrainVectorBe (FloatArray pv)
 
void letPrincipalStressVectorBe (FloatArray pv)
 
const IntArraygiveCrackMap () const
 
void letCrackMapBe (IntArray map)
 
virtual int isCrackActive (int i) const
 
virtual int giveNumberOfActiveCracks () const
 
virtual int giveNumberOfTempActiveCracks () const
 
int giveTempAlreadyCrack () const
 
const FloatMatrixgiveTempCrackDirs ()
 
void letTempCrackDirsBe (FloatMatrix a)
 
double giveTempMaxCrackStrain (int icrack)
 
void setTempMaxCrackStrain (int icrack, double val)
 
const IntArraygiveTempCrackStatus ()
 
int giveTempCrackStatus (int icrack) const
 
void setTempCrackStatus (int icrack, int val)
 
const FloatArraygiveCrackStrainVector () const
 
double giveCrackStrain (int icrack) const
 
const FloatArraygiveOldCrackStrainVector ()
 
void letCrackStrainVectorBe (FloatArray a)
 
void letOldCrackStrainVectorBe (FloatArray a)
 
double giveCharLength (int icrack) const
 
void setCharLength (int icrack, double val)
 
const FloatMatrixgiveCrackDirs ()
 
const IntArraygiveCrackStatus ()
 
int giveAlreadyCrack () const
 
- 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...
 
- 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...
 
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::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...
 
- Public Member Functions inherited from oofem::Interface
 Interface ()
 Constructor. More...
 
virtual ~Interface ()
 

Protected Attributes

FloatArray nonlocalStrainVector
 
FloatArray tempNonlocalStrainVector
 
FloatArray localStrainVectorForAverage
 
- Protected Attributes inherited from oofem::RCSDEMaterialStatus
double maxEquivStrain
 
double tempMaxEquivStrain
 
double damageCoeff
 
double tempDamageCoeff
 
FloatMatrix Ds0
 
double transitionEps
 
double epsF2
 
__rcsdModeType rcsdMode
 
__rcsdModeType tempRcsdMode
 
- Protected Attributes inherited from oofem::RCM2MaterialStatus
IntArray crackStatuses
 One value from (pscm_NONE, pscm_OPEN, pscm_SOFTENING, pscm_RELOADING, pscm_UNLOADING, pscm_CLOSED. More...
 
IntArray tempCrackStatuses
 
FloatArray maxCrackStrains
 Max crack strain reached. More...
 
FloatArray tempMaxCrackStrains
 
FloatArray crackStrainVector
 Components of crack strain vector. More...
 
FloatArray oldCrackStrainVector
 
FloatMatrix crackDirs
 Storing direction of cracks in columwise format. More...
 
FloatMatrix tempCrackDirs
 
FloatArray charLengths
 
FloatArray principalStrain
 
FloatArray oldPrincipalStrain
 
FloatArray principalStress
 
FloatArray oldPrincipalStress
 
IntArray crackMap
 
- 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
 
- Protected Attributes inherited from oofem::NonlocalMaterialStatusExtensionInterface
std::vector< localIntegrationRecordintegrationDomainList
 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...
 

Additional Inherited Members

- Public Types inherited from oofem::RCSDEMaterialStatus
enum  __rcsdModeType { rcMode, sdMode }
 

Detailed Description

This class implements associated Material Status to RCSDNLMaterial.

Definition at line 60 of file rcsdnl.h.

Constructor & Destructor Documentation

oofem::RCSDNLMaterialStatus::~RCSDNLMaterialStatus ( )
virtual

Definition at line 449 of file rcsdnl.C.

Member Function Documentation

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

Reimplemented from oofem::RCSDEMaterialStatus.

Definition at line 80 of file rcsdnl.h.

References giveInterface(), initTempStatus(), restoreContext(), saveContext(), and updateYourself().

virtual const char* oofem::RCSDNLMaterialStatus::giveInputRecordName ( ) const
inlinevirtual
Returns
Input record name of the receiver.

Reimplemented from oofem::IntegrationPointStatus.

Definition at line 79 of file rcsdnl.h.

References _IFT_RCSDNLMaterial_Name.

Interface * oofem::RCSDNLMaterialStatus::giveInterface ( InterfaceType  t)
virtual

Interface requesting service.

See also
InterfaceType
Returns
Requested interface if implemented, otherwise NULL.

Reimplemented from oofem::FEMComponent.

Definition at line 552 of file rcsdnl.C.

References oofem::NonlocalMaterialStatusExtensionInterfaceType.

Referenced by giveClassName(), and oofem::RCSDNLMaterial::giveClassName().

const FloatArray& oofem::RCSDNLMaterialStatus::giveLocalStrainVectorForAverage ( )
inline
const FloatArray& oofem::RCSDNLMaterialStatus::giveNonlocalStrainVector ( )
inline

Definition at line 71 of file rcsdnl.h.

References nonlocalStrainVector.

const FloatArray& oofem::RCSDNLMaterialStatus::giveTempNonlocalStrainVector ( )
inline

Definition at line 72 of file rcsdnl.h.

References tempNonlocalStrainVector.

void oofem::RCSDNLMaterialStatus::initTempStatus ( )
virtual

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

Reimplemented from oofem::RCSDEMaterialStatus.

Definition at line 472 of file rcsdnl.C.

References oofem::GaussPoint::giveMaterialMode(), oofem::FloatArray::giveSize(), oofem::StructuralMaterial::giveSizeOfVoigtSymVector(), oofem::IntegrationPointStatus::gp, oofem::RCSDEMaterialStatus::initTempStatus(), localStrainVectorForAverage, nonlocalStrainVector, oofem::FloatArray::resize(), and tempNonlocalStrainVector.

Referenced by giveClassName().

void oofem::RCSDNLMaterialStatus::printOutputAt ( FILE *  file,
TimeStep tStep 
)
virtual
contextIOResultType oofem::RCSDNLMaterialStatus::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::RCSDEMaterialStatus.

Definition at line 529 of file rcsdnl.C.

References oofem::CIO_OK, nonlocalStrainVector, oofem::RCSDEMaterialStatus::restoreContext(), oofem::FloatArray::restoreYourself(), and THROW_CIOERR.

Referenced by giveClassName().

contextIOResultType oofem::RCSDNLMaterialStatus::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::RCSDEMaterialStatus.

Definition at line 506 of file rcsdnl.C.

References oofem::CIO_OK, nonlocalStrainVector, oofem::RCSDEMaterialStatus::saveContext(), oofem::FloatArray::storeYourself(), and THROW_CIOERR.

Referenced by giveClassName().

void oofem::RCSDNLMaterialStatus::setLocalStrainVectorForAverage ( FloatArray  ls)
inline
void oofem::RCSDNLMaterialStatus::setTempNonlocalStrainVector ( FloatArray  ls)
inline

Definition at line 73 of file rcsdnl.h.

Referenced by oofem::RCSDNLMaterial::giveRealStressVector().

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

Update equilibrium history variables according to temp-variables.

Invoked, after new equilibrium state has been reached.

Reimplemented from oofem::RCSDEMaterialStatus.

Definition at line 493 of file rcsdnl.C.

References nonlocalStrainVector, tempNonlocalStrainVector, and oofem::RCSDEMaterialStatus::updateYourself().

Referenced by giveClassName().

Member Data Documentation

FloatArray oofem::RCSDNLMaterialStatus::localStrainVectorForAverage
protected
FloatArray oofem::RCSDNLMaterialStatus::nonlocalStrainVector
protected
FloatArray oofem::RCSDNLMaterialStatus::tempNonlocalStrainVector
protected

Definition at line 63 of file rcsdnl.h.

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


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:41 for OOFEM by doxygen 1.8.11 written by Dimitri van Heesch, © 1997-2011