|
OOFEM 3.0
|
#include <intmatisodamagetable.h>
Public Member Functions | |
| IntMatIsoDamageTable (int n, Domain *d) | |
| Constructor. | |
| const char * | giveClassName () const override |
| const char * | giveInputRecordName () const override |
| double | computeDamageParam (double kappa) const override |
| void | initializeFrom (InputRecord &ir) override |
| void | giveInputRecord (DynamicInputRecord &input) override |
| Public Member Functions inherited from oofem::IntMatIsoDamage | |
| IntMatIsoDamage (int n, Domain *d) | |
| bool | hasAnalyticalTangentStiffness () const override |
| FloatArrayF< 3 > | giveEngTraction_3d (const FloatArrayF< 3 > &jump, GaussPoint *gp, TimeStep *tStep) const override |
| FloatArrayF< 3 > | giveFirstPKTraction_3d (const FloatArrayF< 3 > &jump, const FloatMatrixF< 3, 3 > &F, GaussPoint *gp, TimeStep *tStep) const override |
| int | giveIPValue (FloatArray &answer, GaussPoint *gp, InternalStateType type, TimeStep *tStep) override |
| virtual double | computeEquivalentJump (const FloatArray &jump) const |
| std::unique_ptr< MaterialStatus > | CreateStatus (GaussPoint *gp) const override |
| FloatMatrixF< 2, 2 > | give2dStiffnessMatrix_Eng (MatResponseMode rMode, GaussPoint *gp, TimeStep *tStep) const override |
| FloatMatrixF< 3, 3 > | give3dStiffnessMatrix_Eng (MatResponseMode rMode, GaussPoint *gp, TimeStep *tStep) const override |
| Public Member Functions inherited from oofem::StructuralInterfaceMaterial | |
| StructuralInterfaceMaterial (int n, Domain *d) | |
| virtual double | giveFirstPKTraction_1d (double jump, double reducedF, GaussPoint *gp, TimeStep *tStep) const |
| virtual FloatArrayF< 2 > | giveFirstPKTraction_2d (const FloatArrayF< 2 > &jump, const FloatMatrixF< 2, 2 > &reducedF, GaussPoint *gp, TimeStep *tStep) const |
| virtual double | giveEngTraction_1d (double jump, GaussPoint *gp, TimeStep *tStep) const |
| virtual FloatArrayF< 2 > | giveEngTraction_2d (const FloatArrayF< 2 > &jump, GaussPoint *gp, TimeStep *tStep) const |
| virtual FloatMatrixF< 1, 1 > | give1dStiffnessMatrix_dTdj (MatResponseMode rMode, GaussPoint *gp, TimeStep *tStep) const |
| virtual FloatMatrixF< 2, 2 > | give2dStiffnessMatrix_dTdj (MatResponseMode rMode, GaussPoint *gp, TimeStep *tStep) const |
| virtual FloatMatrixF< 3, 3 > | give3dStiffnessMatrix_dTdj (MatResponseMode rMode, GaussPoint *gp, TimeStep *tStep) const |
| virtual FloatMatrixF< 1, 1 > | give1dStiffnessMatrix_Eng (MatResponseMode rMode, GaussPoint *gp, TimeStep *tStep) const |
| FloatMatrixF< 1, 1 > | give1dStiffnessMatrix_dTdj_Num (GaussPoint *gp, TimeStep *tStep) const |
| FloatMatrixF< 2, 2 > | give2dStiffnessMatrix_dTdj_Num (GaussPoint *gp, TimeStep *tStep) const |
| FloatMatrixF< 3, 3 > | give3dStiffnessMatrix_dTdj_Num (GaussPoint *gp, TimeStep *tStep) const |
| FloatMatrixF< 1, 1 > | give1dStiffnessMatrix_Eng_Num (GaussPoint *gp, TimeStep *tStep) const |
| FloatMatrixF< 2, 2 > | give2dStiffnessMatrix_Eng_Num (GaussPoint *gp, TimeStep *tStep) const |
| FloatMatrixF< 3, 3 > | give3dStiffnessMatrix_Eng_Num (GaussPoint *gp, TimeStep *tStep) const |
| void | initializeFrom (InputRecord &ir) override |
| void | giveInputRecord (DynamicInputRecord &input) override |
| virtual FloatArray | giveInterfaceStrength () |
| int | giveIPValue (FloatArray &answer, GaussPoint *gp, InternalStateType type, TimeStep *tStep) override |
| Public Member Functions inherited from oofem::Material | |
| Material (int n, Domain *d) | |
| virtual | ~Material ()=default |
| Destructor. | |
| virtual bool | isCharacteristicMtrxSymmetric (MatResponseMode rMode) const |
| virtual void | giveCharacteristicMatrix (FloatMatrix &answer, MatResponseMode type, GaussPoint *gp, TimeStep *tStep) const |
| Returns characteristic matrix of the receiver. | |
| virtual void | giveCharacteristicVector (FloatArray &answer, FloatArray &flux, MatResponseMode type, GaussPoint *gp, TimeStep *tStep) const |
| Returns characteristic vector of the receiver. | |
| virtual double | giveCharacteristicValue (MatResponseMode type, GaussPoint *gp, TimeStep *tStep) const |
| Returns characteristic value of the receiver. | |
| virtual double | give (int aProperty, GaussPoint *gp) const |
| virtual bool | hasProperty (int aProperty, GaussPoint *gp) const |
| virtual void | modifyProperty (int aProperty, double value, GaussPoint *gp) |
| double | giveCastingTime () const |
| virtual bool | isActivated (TimeStep *tStep) const |
| virtual bool | hasMaterialModeCapability (MaterialMode mode) const |
| virtual bool | hasCastingTimeSupport () const |
| virtual int | setIPValue (const FloatArray &value, GaussPoint *gp, InternalStateType type) |
| void | printYourself () override |
| Prints receiver state on stdout. Useful for debugging. | |
| virtual void | saveIPContext (DataStream &stream, ContextMode mode, GaussPoint *gp) |
| virtual void | restoreIPContext (DataStream &stream, ContextMode mode, GaussPoint *gp) |
| int | checkConsistency () override |
| virtual void | restoreConsistency (GaussPoint *gp) |
| virtual int | initMaterial (Element *element) |
| virtual MaterialStatus * | giveStatus (GaussPoint *gp) const |
| virtual int | packUnknowns (DataStream &buff, TimeStep *tStep, GaussPoint *ip) |
| virtual int | unpackAndUpdateUnknowns (DataStream &buff, TimeStep *tStep, GaussPoint *ip) |
| virtual int | estimatePackSize (DataStream &buff, GaussPoint *ip) |
| virtual double | predictRelativeComputationalCost (GaussPoint *gp) |
| virtual double | predictRelativeRedistributionCost (GaussPoint *gp) |
| virtual void | initTempStatus (GaussPoint *gp) const |
| void | saveContext (DataStream &stream, ContextMode mode) override |
| void | restoreContext (DataStream &stream, ContextMode mode) override |
| Public Member Functions inherited from oofem::FEMComponent | |
| FEMComponent (int n, Domain *d) | |
| virtual | ~FEMComponent ()=default |
| Virtual destructor. | |
| Domain * | giveDomain () const |
| virtual void | setDomain (Domain *d) |
| int | giveNumber () const |
| void | setNumber (int num) |
| virtual void | updateLocalNumbering (EntityRenumberingFunctor &f) |
| virtual void | initializeFrom (InputRecord &ir, int priority) |
| virtual void | initializeFinish () |
| virtual void | postInitialize () |
| Performs post initialization steps. Called after all components are created and initialized. | |
| virtual void | printOutputAt (FILE *file, TimeStep *tStep) |
| virtual Interface * | giveInterface (InterfaceType t) |
| std::string | errorInfo (const char *func) const |
| Returns string for prepending output (used by error reporting macros). | |
Protected Attributes | |
| std::string | tablename |
| Name of table file. | |
| FloatArray | tableDamages |
| Damages read from the second column in the table file. | |
| FloatArray | tableJumps |
| Jumps read from the first column in the table file. | |
| Protected Attributes inherited from oofem::IntMatIsoDamage | |
| double | kn = 0. |
| Elastic properties (normal moduli). | |
| double | ks = 0. |
| Shear moduli. | |
| double | ft = 0. |
| Tension strength. | |
| double | gf = 0. |
| Fracture energy. | |
| double | e0 = 0. |
| Limit elastic deformation. | |
| double | maxOmega = 0.999999 |
| Maximum limit on omega. The purpose is elimination of a too compliant material which may cause convergency problems. Set to something like 0.99 if needed. | |
| bool | semiExplicit = false |
| Protected Attributes inherited from oofem::Material | |
| Dictionary | propertyDictionary |
| double | castingTime |
| int | preCastingTimeMat |
| Material existing before casting time - optional parameter, zero by default. | |
| Protected Attributes inherited from oofem::FEMComponent | |
| int | number |
| Component number. | |
| Domain * | domain |
| Link to domain object, useful for communicating with other FEM components. | |
Additional Inherited Members | |
| Public Attributes inherited from oofem::StructuralInterfaceMaterial | |
| bool | useNumericalTangent |
Simple isotropic damage based model for 2d and 3d interface elements. In 2d, the interface elements are used to model contact layer between element edges. The generalized strain vector contains two relative displacements (in normal and shear direction). The generalized stress vector contains corresponding tractions in normal and tangent direction.
In 3d, the interface elements are used to model contact layer between element surfaces. The generalized strain vector contains two relative displacements (in normal and shear direction). The generalized stress vector contains corresponding tractions in normal and tangent direction
The behaviour of the model is elastic, described by normal and shear stiffness components. Isotropic damage is initiated when the stress reaches the tensile strength. Damage evolution is governed by normal component of generalized strain vector (normal relative displacement) by a table given by a file that relates the normal displacement to the damage. A linear interpolation is made between the values given in the table. If the strain is greater than the largest value in the table the largest damage in the table will be used.
Differences between this class and IsoInterfaceDamageMaterial written by:
Definition at line 79 of file intmatisodamagetable.h.
| oofem::IntMatIsoDamageTable::IntMatIsoDamageTable | ( | int | n, |
| Domain * | d ) |
Constructor.
Definition at line 50 of file intmatisodamagetable.C.
References oofem::IntMatIsoDamage::IntMatIsoDamage().
|
overridevirtual |
computes the value of damage parameter omega, based on given value of equivalent strain.
| kappa | Equivalent strain measure. |
| strain | Total strain vector in full form. (unnecessary?) |
| gp | Integration point. |
Reimplemented from oofem::IntMatIsoDamage.
Definition at line 126 of file intmatisodamagetable.C.
References oofem::IntMatIsoDamage::e0, tableDamages, and tableJumps.
|
inlineoverridevirtual |
Reimplemented from oofem::IntMatIsoDamage.
Definition at line 93 of file intmatisodamagetable.h.
|
overridevirtual |
Setups the input record string of receiver.
| input | Dynamic input record to be filled by receiver. |
Reimplemented from oofem::IntMatIsoDamage.
Definition at line 113 of file intmatisodamagetable.C.
References _IFT_IntMatIsoDamageTable_ft, _IFT_IntMatIsoDamageTable_kn, _IFT_IntMatIsoDamageTable_ks, _IFT_IntMatIsoDamageTable_maxOmega, _IFT_IntMatIsoDamageTable_tablename, oofem::IntMatIsoDamage::ft, oofem::IntMatIsoDamage::kn, oofem::IntMatIsoDamage::ks, oofem::IntMatIsoDamage::maxOmega, oofem::DynamicInputRecord::setField(), and tablename.
|
inlineoverridevirtual |
Reimplemented from oofem::IntMatIsoDamage.
Definition at line 94 of file intmatisodamagetable.h.
References _IFT_IntMatIsoDamageTable_Name.
|
overridevirtual |
Initializes receiver according to object description stored in input record. This function is called immediately after creating object using constructor. Input record can be imagined as data record in component database belonging to receiver. Receiver may use value-name extracting functions to extract particular field from record. Note that initializeFrom may be called mutiple times.
| ir | Input record to initialize from. |
| priority | Priority of the input record. This is used to determine the order of initialization |
Reimplemented from oofem::IntMatIsoDamage.
Definition at line 54 of file intmatisodamagetable.C.
References _IFT_IntMatIsoDamageTable_ft, _IFT_IntMatIsoDamageTable_kn, _IFT_IntMatIsoDamageTable_ks, _IFT_IntMatIsoDamageTable_maxOmega, _IFT_IntMatIsoDamageTable_tablename, oofem::IntMatIsoDamage::e0, oofem::IntMatIsoDamage::ft, IR_GIVE_FIELD, IR_GIVE_OPTIONAL_FIELD, oofem::IntMatIsoDamage::kn, oofem::IntMatIsoDamage::ks, oofem::max(), oofem::IntMatIsoDamage::maxOmega, oofem::min(), OOFEM_ERROR, tableDamages, tableJumps, and tablename.
|
protected |
Damages read from the second column in the table file.
Definition at line 85 of file intmatisodamagetable.h.
Referenced by computeDamageParam(), and initializeFrom().
|
protected |
Jumps read from the first column in the table file.
Definition at line 87 of file intmatisodamagetable.h.
Referenced by computeDamageParam(), and initializeFrom().
|
protected |
Name of table file.
Definition at line 83 of file intmatisodamagetable.h.
Referenced by giveInputRecord(), and initializeFrom().