|
OOFEM 3.0
|
#include <compodamagemat.h>
Public Member Functions | |
| CompoDamageMatStatus (GaussPoint *g) | |
| Constructor. | |
| void | printOutputAt (FILE *file, TimeStep *tStep) const override |
| Print receiver's output to given stream. | |
| void | initTempStatus () override |
| void | updateYourself (TimeStep *tStep) override |
| void | saveContext (DataStream &stream, ContextMode mode) override |
| void | restoreContext (DataStream &stream, ContextMode mode) override |
| const char * | giveClassName () const override |
| Public Member Functions inherited from oofem::StructuralMaterialStatus | |
| StructuralMaterialStatus (GaussPoint *g) | |
| Constructor. Creates new StructuralMaterialStatus with IntegrationPoint g. | |
| void | printOutputAt (FILE *file, TimeStep *tStep) const override |
| Print receiver's output to given stream. | |
| void | initTempStatus () override |
| void | updateYourself (TimeStep *tStep) override |
| void | saveContext (DataStream &stream, ContextMode mode) override |
| void | restoreContext (DataStream &stream, ContextMode mode) override |
| const FloatArray & | giveStrainVector () const |
| Returns the const pointer to receiver's strain vector. | |
| const FloatArray & | giveStressVector () const |
| Returns the const pointer to receiver's stress vector. | |
| const FloatArray & | givePVector () const |
| Returns the const pointer to receiver's first Piola-Kirchhoff stress vector. | |
| const FloatArray & | giveCVector () const |
| Returns the const pointer to receiver's Cauchy stress vector. | |
| const FloatArray & | giveFVector () const |
| Returns the const pointer to receiver's deformation gradient vector. | |
| const FloatArray & | giveTempStrainVector () const |
| Returns the const pointer to receiver's temporary strain vector. | |
| const FloatArray & | giveTempStressVector () const |
| Returns the const pointer to receiver's temporary stress vector. | |
| const FloatArray & | giveTempPVector () const |
| Returns the const pointer to receiver's temporary first Piola-Kirchhoff stress vector. | |
| const FloatArray & | giveTempCVector () const |
| Returns the const pointer to receiver's temporary Cauchy stress vector. | |
| const FloatArray & | giveTempFVector () const |
| Returns the const pointer to receiver's temporary deformation gradient vector. | |
| void | letStrainVectorBe (const FloatArray &v) |
| Assigns strain vector to given vector v. | |
| void | letStressVectorBe (const FloatArray &v) |
| Assigns stressVector to given vector v. | |
| void | letPVectorBe (const FloatArray &v) |
| Assigns PVector to given vector v. | |
| void | letCVectorBe (const FloatArray &v) |
| Assigns CVector to given vector v. | |
| void | letFVectorBe (const FloatArray &v) |
| Assigns FVector to given vector v. | |
| void | letTempStressVectorBe (const FloatArray &v) |
| Assigns tempStressVector to given vector v. | |
| void | letTempStrainVectorBe (const FloatArray &v) |
| Assigns tempStrainVector to given vector v. | |
| void | letTempPVectorBe (const FloatArray &v) |
| Assigns tempPVector to given vector v. | |
| void | letTempCVectorBe (const FloatArray &v) |
| Assigns tempPVector to given vector v. | |
| void | letTempFVectorBe (const FloatArray &v) |
| Assigns tempFVector to given vector v. | |
| const char * | giveClassName () const override |
| void | copyStateVariables (const MaterialStatus &iStatus) override |
| Functions for MaterialStatusMapperInterface. | |
| void | addStateVariables (const MaterialStatus &iStatus) override |
| Public Member Functions inherited from oofem::MaterialStatus | |
| MaterialStatus (GaussPoint *g) | |
| virtual bool | giveMaterialProperty (int propID, double &value) |
| virtual void | setMaterialProperty (int propID, double value) |
| Public Member Functions inherited from oofem::IntegrationPointStatus | |
| IntegrationPointStatus (GaussPoint *g) | |
| virtual | ~IntegrationPointStatus ()=default |
| Destructor. | |
| virtual void | setStatusVariable (int varID, double value) |
| virtual Interface * | giveInterface (InterfaceType t) |
| 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) |
| 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) |
| virtual int | MSMI_finish (const TimeStep &iTStep) |
Public Attributes | |
| FloatArray | tempKappa |
| Highest strain ever reached at IP. Can be unequilibrated from last iterations [6 tension, 6 compression]. | |
| FloatArray | kappa |
| Highest strain ever reached in all previous equilibrated steps [6 tension, 6 compression]. | |
| FloatArray | tempOmega |
| Highest damage ever reached at IP. Can be unequilibrated from last iterations [6 for tension and compression]. | |
| IntArray | hasSnapBack |
| Checks whether snapback occurred at IP. | |
| FloatArray | omega |
| Highest damage ever reached in all previous equilibrated steps at IP [6 for tension and compression]. | |
| int | Iteration = 0 |
| Iteration in the time step. | |
| FloatArray | initDamageStress |
| Stress at which damage starts. For uniaxial loading is equal to given maximum stress in the input. The stress is linearly interpolated between increments at IP [6 tension, 6 compression]. | |
| FloatArray | strainAtMaxStress |
| Strain when damage is initiated at IP. In literature denoted eps_0 [6 tension, 6 compression]. | |
| FloatArray | maxStrainAtZeroStress |
| Maximum strain when stress becomes zero due to complete damage (omega = 1) at IP. Determined from fracture energy and characteristic length. Derived for mode I only on the uniaxial loading case. In literature denoted often eps_f [6 tension, 6 compression]. | |
| FloatArray | tempStressMLCS |
| Only for printing purposes in CompoDamageMatStatus. | |
| FloatArray | elemCharLength |
| Characteristic element length at IP in three perpendicular planes aligned with material orientation. | |
Additional Inherited Members | |
| Protected Attributes inherited from oofem::StructuralMaterialStatus | |
| FloatArray | strainVector |
| Equilibrated strain vector in reduced form. | |
| FloatArray | stressVector |
| Equilibrated stress vector in reduced form. | |
| FloatArray | tempStressVector |
| Temporary stress vector in reduced form (increments are used mainly in nonlinear analysis). | |
| FloatArray | tempStrainVector |
| Temporary strain vector in reduced form (to find balanced state). | |
| FloatArray | PVector |
| Equilibrated first Piola-Kirchhoff stress vector. | |
| FloatArray | tempPVector |
| Temporary first Piola-Kirchhoff stress vector (to find balanced state). | |
| FloatArray | CVector |
| Equilibrated Cauchy stress vector. | |
| FloatArray | tempCVector |
| Temporary Cauchy stress vector (to find balanced state). | |
| FloatArray | FVector |
| Equilibrated deformation gradient in reduced form. | |
| FloatArray | tempFVector |
| Temporary deformation gradient in reduced form (to find balanced state). | |
| Protected Attributes inherited from oofem::IntegrationPointStatus | |
| GaussPoint * | gp |
| Associated integration point. | |
| Protected Attributes inherited from oofem::MaterialStatusMapperInterface | |
| std::unique_ptr< MaterialMappingAlgorithm > | mpMaterialMapper |
Class for maintaining Gauss point values for CompoDamageMat model. Prefix temp* refers to unequilibrated values, e.g. tempOmega is a temporal damage array
Definition at line 67 of file compodamagemat.h.
| oofem::CompoDamageMatStatus::CompoDamageMatStatus | ( | GaussPoint * | g | ) |
Constructor.
Definition at line 549 of file compodamagemat.C.
References elemCharLength, hasSnapBack, initDamageStress, kappa, maxStrainAtZeroStress, omega, strainAtMaxStress, oofem::StructuralMaterialStatus::StructuralMaterialStatus(), tempKappa, tempOmega, and tempStressMLCS.
|
inlineoverridevirtual |
Implements oofem::IntegrationPointStatus.
Definition at line 115 of file compodamagemat.h.
|
overridevirtual |
Initializes the temporary internal variables, describing the current state according to previously reached equilibrium internal variables.
Reimplemented from oofem::MaterialStatus.
Definition at line 623 of file compodamagemat.C.
|
overridevirtual |
Print receiver's output to given stream.
Reimplemented from oofem::IntegrationPointStatus.
Definition at line 580 of file compodamagemat.C.
References oofem::IntegrationPointStatus::gp, kappa, omega, OOFEM_ERROR, and tempStressMLCS.
|
overridevirtual |
Restores the receiver state previously written in stream.
| stream | Input stream. |
| mode | Determines amount of info available in stream (state, definition, ...). |
| throws | an ContextIOERR exception if error encountered. |
Reimplemented from oofem::IntegrationPointStatus.
Definition at line 644 of file compodamagemat.C.
|
overridevirtual |
Stores receiver state to output stream.
| stream | Output stream. |
| mode | Determines amount of info required in stream (state, definition, ...). |
| throws | an ContextIOERR exception if error encountered. |
Reimplemented from oofem::IntegrationPointStatus.
Definition at line 639 of file compodamagemat.C.
|
overridevirtual |
Update equilibrium history variables according to temp-variables. Invoked, after new equilibrium state has been reached.
Reimplemented from oofem::IntegrationPointStatus.
Definition at line 629 of file compodamagemat.C.
References Iteration, kappa, omega, tempKappa, and tempOmega.
| FloatArray oofem::CompoDamageMatStatus::elemCharLength |
Characteristic element length at IP in three perpendicular planes aligned with material orientation.
Definition at line 110 of file compodamagemat.h.
Referenced by oofem::CompoDamageMat::checkSnapBack(), CompoDamageMatStatus(), oofem::CompoDamageMat::giveCharLength(), oofem::CompoDamageMat::giveCharLengthForModes(), and oofem::CompoDamageMat::giveRealStressVector().
| IntArray oofem::CompoDamageMatStatus::hasSnapBack |
Checks whether snapback occurred at IP.
Definition at line 91 of file compodamagemat.h.
Referenced by CompoDamageMatStatus(), and oofem::CompoDamageMat::giveRealStressVector().
| FloatArray oofem::CompoDamageMatStatus::initDamageStress |
Stress at which damage starts. For uniaxial loading is equal to given maximum stress in the input. The stress is linearly interpolated between increments at IP [6 tension, 6 compression].
Definition at line 100 of file compodamagemat.h.
Referenced by CompoDamageMatStatus(), and oofem::CompoDamageMat::giveRealStressVector().
| int oofem::CompoDamageMatStatus::Iteration = 0 |
Iteration in the time step.
Definition at line 97 of file compodamagemat.h.
Referenced by oofem::CompoDamageMat::giveRealStressVector(), and updateYourself().
| FloatArray oofem::CompoDamageMatStatus::kappa |
Highest strain ever reached in all previous equilibrated steps [6 tension, 6 compression].
Definition at line 85 of file compodamagemat.h.
Referenced by CompoDamageMatStatus(), oofem::CompoDamageMat::giveRealStressVector(), printOutputAt(), and updateYourself().
| FloatArray oofem::CompoDamageMatStatus::maxStrainAtZeroStress |
Maximum strain when stress becomes zero due to complete damage (omega = 1) at IP. Determined from fracture energy and characteristic length. Derived for mode I only on the uniaxial loading case. In literature denoted often eps_f [6 tension, 6 compression].
Definition at line 104 of file compodamagemat.h.
Referenced by CompoDamageMatStatus(), and oofem::CompoDamageMat::giveRealStressVector().
| FloatArray oofem::CompoDamageMatStatus::omega |
Highest damage ever reached in all previous equilibrated steps at IP [6 for tension and compression].
Definition at line 94 of file compodamagemat.h.
Referenced by CompoDamageMatStatus(), oofem::CompoDamageMat::giveIPValue(), oofem::CompoDamageMat::giveRealStressVector(), printOutputAt(), and updateYourself().
| FloatArray oofem::CompoDamageMatStatus::strainAtMaxStress |
Strain when damage is initiated at IP. In literature denoted eps_0 [6 tension, 6 compression].
Definition at line 102 of file compodamagemat.h.
Referenced by CompoDamageMatStatus(), and oofem::CompoDamageMat::giveRealStressVector().
| FloatArray oofem::CompoDamageMatStatus::tempKappa |
Highest strain ever reached at IP. Can be unequilibrated from last iterations [6 tension, 6 compression].
Definition at line 82 of file compodamagemat.h.
Referenced by CompoDamageMatStatus(), oofem::CompoDamageMat::giveRealStressVector(), and updateYourself().
| FloatArray oofem::CompoDamageMatStatus::tempOmega |
Highest damage ever reached at IP. Can be unequilibrated from last iterations [6 for tension and compression].
Definition at line 88 of file compodamagemat.h.
Referenced by CompoDamageMatStatus(), oofem::CompoDamageMat::giveRealStressVector(), oofem::CompoDamageMat::giveUnrotated3dMaterialStiffnessMatrix(), and updateYourself().
| FloatArray oofem::CompoDamageMatStatus::tempStressMLCS |
Only for printing purposes in CompoDamageMatStatus.
Definition at line 107 of file compodamagemat.h.
Referenced by CompoDamageMatStatus(), oofem::CompoDamageMat::giveRealStressVector(), and printOutputAt().