|
OOFEM 3.0
|
#include <rankinemat.h>
Public Member Functions | |
| RankineMatStatus (GaussPoint *g) | |
| const FloatArray & | givePlasticStrain () const |
| double | giveDamage () const |
| double | giveTempDamage () const |
| double | giveCumulativePlasticStrain () const |
| double | giveTempCumulativePlasticStrain () const |
| double | giveDKappa (int i) const |
| double | giveTangentShearStiffness () |
| const FloatArray & | giveEffectiveStress () const |
| const FloatArray & | giveTempEffectiveStress () const |
| void | letTempPlasticStrainBe (FloatArray values) |
| void | letEffectiveStressBe (FloatArray values) |
| void | letTempEffectiveStressBe (FloatArray values) |
| void | setTempCumulativePlasticStrain (double value) |
| void | setDKappa (double val1, double val2) |
| void | setTempDamage (double value) |
| void | setTangentShearStiffness (double value) |
| const FloatArray & | givePlasDef () |
| 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 |
| double | giveStressWork () |
| Returns the density of total work of stress on strain increments. | |
| double | giveTempStressWork () |
| Returns the temp density of total work of stress on strain increments. | |
| void | setTempStressWork (double w) |
| Sets the density of total work of stress on strain increments to given value. | |
| double | giveDissWork () |
| Returns the density of dissipated work. | |
| double | giveTempDissWork () |
| Returns the density of temp dissipated work. | |
| void | setTempDissWork (double w) |
| Sets the density of dissipated work to given value. | |
| void | computeWork_PlaneStress (GaussPoint *gp, double gf) |
| void | computeWork_1d (GaussPoint *gp, double gf) |
| 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) |
Protected Attributes | |
| FloatArray | plasticStrain |
| Plastic strain (initial). | |
| FloatArray | tempPlasticStrain |
| Plastic strain (final). | |
| FloatArray | effStress |
| Effective stress (initial). | |
| FloatArray | tempEffStress |
| Effective stress (final). | |
| double | kappa = 0. |
| Cumulative plastic strain (initial). | |
| double | tempKappa = 0. |
| Cumulative plastic strain (final). | |
| double | dKappa1 = 0. |
| double | dKappa2 = 0. |
| double | damage = 0. |
| Damage (initial). | |
| double | tempDamage = 0. |
| Damage (final). | |
| double | tanG = 0. |
| Tangent shear stiffness (needed for tangent matrix). | |
| double | stressWork = 0. |
| Density of total work done by stresses on strain increments. | |
| double | tempStressWork = 0. |
| Non-equilibrated density of total work done by stresses on strain increments. | |
| double | dissWork = 0. |
| Density of dissipated work. | |
| double | tempDissWork = 0. |
| Non-equilibrated density of dissipated work. | |
| 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 |
Definition at line 190 of file rankinemat.h.
| oofem::RankineMatStatus::RankineMatStatus | ( | GaussPoint * | g | ) |
Definition at line 676 of file rankinemat.C.
References damage, dissWork, dKappa1, dKappa2, kappa, plasticStrain, stressWork, oofem::StructuralMaterialStatus::StructuralMaterialStatus(), tanG, tempDamage, tempDissWork, tempKappa, tempPlasticStrain, and tempStressWork.
Referenced by oofem::RankineMatGradStatus::RankineMatGradStatus(), and oofem::RankineMatNlStatus::RankineMatNlStatus().
| void oofem::RankineMatStatus::computeWork_1d | ( | GaussPoint * | gp, |
| double | gf ) |
Definition at line 848 of file rankinemat.C.
References oofem::FloatArray::beDifferenceOf(), oofem::IntegrationPointStatus::gp, oofem::StructuralMaterialStatus::strainVector, oofem::StructuralMaterialStatus::stressVector, stressWork, tempDissWork, tempPlasticStrain, oofem::StructuralMaterialStatus::tempStrainVector, oofem::StructuralMaterialStatus::tempStressVector, and tempStressWork.
| void oofem::RankineMatStatus::computeWork_PlaneStress | ( | GaussPoint * | gp, |
| double | gf ) |
Computes the increment of total stress work and of dissipated work (gf is the dissipation density per unit volume at complete failure, it is needed only to determine which extremely small dissipation can be set to zero to get clean results, but parameter gf can be set to zero if not available).
Definition at line 820 of file rankinemat.C.
References oofem::FloatArray::beDifferenceOf(), oofem::IntegrationPointStatus::gp, oofem::StructuralMaterialStatus::strainVector, oofem::StructuralMaterialStatus::stressVector, stressWork, tempDissWork, tempPlasticStrain, oofem::StructuralMaterialStatus::tempStrainVector, oofem::StructuralMaterialStatus::tempStressVector, and tempStressWork.
Referenced by oofem::RankineMatGrad::giveRealStressVectorGradientDamage().
|
inlineoverridevirtual |
Implements oofem::IntegrationPointStatus.
Definition at line 315 of file rankinemat.h.
|
inline |
Definition at line 246 of file rankinemat.h.
References kappa.
Referenced by oofem::RankineMat::evaluatePlaneStressStiffMtrx(), oofem::RankineMatGrad::giveGradientDamageStiffnessMatrix_dd_NN(), oofem::RankineMatGrad::giveGradientDamageStiffnessMatrix_du(), oofem::RankineMatGrad::giveGradientDamageStiffnessMatrix_du_BB(), oofem::RankineMatGrad::giveGradientDamageStiffnessMatrix_du_NB(), oofem::RankineMat::giveIPValue(), oofem::RankineMatNl::giveRemoteNonlocalStiffnessContribution(), and oofem::RankineMat::performPlasticityReturn().
|
inline |
Definition at line 243 of file rankinemat.h.
References damage.
Referenced by oofem::RankineMat::computeDamage(), oofem::RankineMatGrad::giveGradientDamageStiffnessMatrix_ud(), oofem::RankineMatGrad::giveGradientDamageStiffnessMatrix_uu(), oofem::RankineMat::giveIPValue(), oofem::RankineMatNl::giveLocalNonlocalStiffnessContribution(), and oofem::RankineMatGrad::givePlaneStressStiffMtrx().
|
inline |
Returns the density of dissipated work.
Definition at line 299 of file rankinemat.h.
References dissWork.
Referenced by oofem::RankineMat::giveIPValue().
|
inline |
Definition at line 249 of file rankinemat.h.
References dKappa1, and dKappa2.
Referenced by oofem::RankineMat::computeEta(), oofem::RankineMatGrad::giveGradientDamageStiffnessMatrix_du(), oofem::RankineMatGrad::giveGradientDamageStiffnessMatrix_du_BB(), oofem::RankineMatGrad::giveGradientDamageStiffnessMatrix_du_NB(), and oofem::RankineMat::performPlasticityReturn().
|
inline |
Definition at line 261 of file rankinemat.h.
References effStress.
|
inline |
Definition at line 281 of file rankinemat.h.
References plasticStrain.
Referenced by oofem::RankineMat::giveIPValue().
|
inline |
Definition at line 241 of file rankinemat.h.
References plasticStrain.
Referenced by oofem::RankineMat::performPlasticityReturn().
|
inline |
Returns the density of total work of stress on strain increments.
Definition at line 293 of file rankinemat.h.
References stressWork.
Referenced by oofem::RankineMat::giveIPValue().
|
inline |
Definition at line 258 of file rankinemat.h.
References tanG.
|
inline |
Definition at line 247 of file rankinemat.h.
References tempKappa.
Referenced by oofem::RankineMat::computeCumPlastStrain(), oofem::RankineMatGrad::computeCumPlastStrain(), oofem::RankineMat::computeEta(), oofem::RankineMatGrad::computeLocalDamageDrivingVariable(), oofem::RankineMatGrad::giveGradientDamageStiffnessMatrix_dd_BN(), oofem::RankineMatGrad::giveGradientDamageStiffnessMatrix_dd_NN(), oofem::RankineMatGrad::giveGradientDamageStiffnessMatrix_du(), oofem::RankineMatGrad::giveGradientDamageStiffnessMatrix_du_BB(), oofem::RankineMatGrad::giveGradientDamageStiffnessMatrix_du_NB(), oofem::RankineMatGrad::giveGradientDamageStiffnessMatrix_ud(), oofem::RankineMatGrad::giveGradientDamageStiffnessMatrix_uu(), oofem::RankineMat::givePlaneStressStiffMtrx(), oofem::RankineMatGrad::givePlaneStressStiffMtrx(), oofem::RankineMatGrad::giveRealStressVectorGradientDamage(), and oofem::RankineMatNl::giveRemoteNonlocalStiffnessContribution().
|
inline |
Definition at line 244 of file rankinemat.h.
References tempDamage.
Referenced by oofem::RankineMatGrad::computeEikonalInternalLength_a(), oofem::RankineMatGrad::computeEikonalInternalLength_aPrime(), oofem::RankineMatGrad::computeEikonalInternalLength_b(), oofem::RankineMatGrad::computeEikonalInternalLength_bPrime(), oofem::RankineMat::give1dStressStiffMtrx(), oofem::RankineMatGrad::giveGradientDamageStiffnessMatrix_ud(), oofem::RankineMatGrad::giveGradientDamageStiffnessMatrix_uu(), oofem::RankineMatNl::giveLocalNonlocalStiffnessContribution(), oofem::RankineMatNl::giveNonlocalMetricModifierAt(), and oofem::RankineMatGrad::givePlaneStressStiffMtrx().
|
inline |
Returns the density of temp dissipated work.
Definition at line 301 of file rankinemat.h.
References tempDissWork.
|
inline |
Definition at line 262 of file rankinemat.h.
References tempEffStress.
Referenced by oofem::RankineMat::computeEta(), oofem::RankineMatGrad::giveGradientDamageStiffnessMatrix_du(), oofem::RankineMatGrad::giveGradientDamageStiffnessMatrix_du_BB(), oofem::RankineMatGrad::giveGradientDamageStiffnessMatrix_du_NB(), oofem::RankineMatGrad::giveGradientDamageStiffnessMatrix_ud(), oofem::RankineMatNl::giveLocalNonlocalStiffnessContribution(), and oofem::RankineMatGrad::giveRealStressVectorGradientDamage().
|
inline |
Returns the temp density of total work of stress on strain increments.
Definition at line 295 of file rankinemat.h.
References tempStressWork.
|
overridevirtual |
Initializes the temporary internal variables, describing the current state according to previously reached equilibrium internal variables.
Reimplemented from oofem::MaterialStatus.
Definition at line 723 of file rankinemat.C.
References damage, dissWork, oofem::IntegrationPointStatus::gp, kappa, plasticStrain, stressWork, tempDamage, tempDissWork, tempKappa, tempPlasticStrain, and tempStressWork.
|
inline |
Definition at line 266 of file rankinemat.h.
References effStress.
|
inline |
Definition at line 268 of file rankinemat.h.
References tempEffStress.
Referenced by oofem::RankineMatGrad::giveRealStressVectorGradientDamage(), and oofem::RankineMat::performPlasticityReturn().
|
inline |
Definition at line 264 of file rankinemat.h.
References tempPlasticStrain.
Referenced by oofem::RankineMat::performPlasticityReturn().
|
overridevirtual |
Print receiver's output to given stream.
Reimplemented from oofem::MaterialStatus.
Definition at line 693 of file rankinemat.C.
References dissWork, kappa, plasticStrain, stressWork, and tempDamage.
|
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 789 of file rankinemat.C.
References oofem::CIO_IOERR, oofem::CIO_OK, damage, dissWork, kappa, plasticStrain, oofem::DataStream::read(), stressWork, and THROW_CIOERR.
|
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 759 of file rankinemat.C.
References oofem::CIO_IOERR, oofem::CIO_OK, damage, dissWork, kappa, plasticStrain, stressWork, THROW_CIOERR, and oofem::DataStream::write().
|
inline |
Definition at line 272 of file rankinemat.h.
References dKappa1, and dKappa2.
Referenced by oofem::RankineMat::performPlasticityReturn().
|
inline |
Definition at line 279 of file rankinemat.h.
References tanG.
Referenced by oofem::RankineMat::performPlasticityReturn().
|
inline |
Definition at line 270 of file rankinemat.h.
References tempKappa.
Referenced by oofem::RankineMat::performPlasticityReturn().
|
inline |
Definition at line 277 of file rankinemat.h.
References tempDamage.
Referenced by oofem::RankineMatGrad::giveRealStressVectorGradientDamage().
|
inline |
Sets the density of dissipated work to given value.
Definition at line 303 of file rankinemat.h.
References tempDissWork.
|
inline |
Sets the density of total work of stress on strain increments to given value.
Definition at line 297 of file rankinemat.h.
References tempStressWork.
|
overridevirtual |
Update equilibrium history variables according to temp-variables. Invoked, after new equilibrium state has been reached.
Reimplemented from oofem::MaterialStatus.
Definition at line 744 of file rankinemat.C.
References damage, dissWork, kappa, plasticStrain, stressWork, tempDamage, tempDissWork, tempKappa, tempPlasticStrain, and tempStressWork.
|
protected |
Damage (initial).
Definition at line 219 of file rankinemat.h.
Referenced by giveDamage(), oofem::RankineMatGradStatus::initTempStatus(), initTempStatus(), oofem::RankineMatGradStatus::printOutputAt(), oofem::RankineMatNlStatus::printOutputAt(), RankineMatStatus(), restoreContext(), saveContext(), and updateYourself().
|
protected |
Density of dissipated work.
Definition at line 233 of file rankinemat.h.
Referenced by giveDissWork(), initTempStatus(), oofem::RankineMatGradStatus::printOutputAt(), oofem::RankineMatNlStatus::printOutputAt(), printOutputAt(), RankineMatStatus(), restoreContext(), saveContext(), and updateYourself().
|
protected |
Increments of cumulative plastic strain associated with the first and secomnd principal stress (used in the case of vertex return, needed for stiffness)
Definition at line 216 of file rankinemat.h.
Referenced by giveDKappa(), RankineMatStatus(), and setDKappa().
|
protected |
Definition at line 216 of file rankinemat.h.
Referenced by giveDKappa(), RankineMatStatus(), and setDKappa().
|
protected |
Effective stress (initial).
Definition at line 200 of file rankinemat.h.
Referenced by giveEffectiveStress(), and letEffectiveStressBe().
|
protected |
Cumulative plastic strain (initial).
Definition at line 206 of file rankinemat.h.
Referenced by giveCumulativePlasticStrain(), oofem::RankineMatGradStatus::initTempStatus(), initTempStatus(), oofem::RankineMatGradStatus::printOutputAt(), oofem::RankineMatNlStatus::printOutputAt(), printOutputAt(), RankineMatStatus(), restoreContext(), saveContext(), and updateYourself().
|
protected |
Plastic strain (initial).
Definition at line 194 of file rankinemat.h.
Referenced by givePlasDef(), givePlasticStrain(), oofem::RankineMatGradStatus::initTempStatus(), initTempStatus(), printOutputAt(), RankineMatStatus(), restoreContext(), saveContext(), and updateYourself().
|
protected |
Density of total work done by stresses on strain increments.
Definition at line 229 of file rankinemat.h.
Referenced by computeWork_1d(), computeWork_PlaneStress(), giveStressWork(), initTempStatus(), oofem::RankineMatGradStatus::printOutputAt(), oofem::RankineMatNlStatus::printOutputAt(), printOutputAt(), RankineMatStatus(), restoreContext(), saveContext(), and updateYourself().
|
protected |
Tangent shear stiffness (needed for tangent matrix).
Definition at line 225 of file rankinemat.h.
Referenced by giveTangentShearStiffness(), RankineMatStatus(), and setTangentShearStiffness().
|
protected |
Damage (final).
Definition at line 222 of file rankinemat.h.
Referenced by giveTempDamage(), oofem::RankineMatGradStatus::initTempStatus(), initTempStatus(), printOutputAt(), RankineMatStatus(), setTempDamage(), and updateYourself().
|
protected |
Non-equilibrated density of dissipated work.
Definition at line 235 of file rankinemat.h.
Referenced by computeWork_1d(), computeWork_PlaneStress(), giveTempDissWork(), initTempStatus(), RankineMatStatus(), setTempDissWork(), and updateYourself().
|
protected |
Effective stress (final).
Definition at line 203 of file rankinemat.h.
Referenced by giveTempEffectiveStress(), and letTempEffectiveStressBe().
|
protected |
Cumulative plastic strain (final).
Definition at line 209 of file rankinemat.h.
Referenced by giveTempCumulativePlasticStrain(), oofem::RankineMatGradStatus::initTempStatus(), initTempStatus(), RankineMatStatus(), setTempCumulativePlasticStrain(), and updateYourself().
|
protected |
Plastic strain (final).
Definition at line 197 of file rankinemat.h.
Referenced by computeWork_1d(), computeWork_PlaneStress(), oofem::RankineMatGradStatus::initTempStatus(), initTempStatus(), letTempPlasticStrainBe(), RankineMatStatus(), and updateYourself().
|
protected |
Non-equilibrated density of total work done by stresses on strain increments.
Definition at line 231 of file rankinemat.h.
Referenced by computeWork_1d(), computeWork_PlaneStress(), giveTempStressWork(), initTempStatus(), RankineMatStatus(), setTempStressWork(), and updateYourself().