|
OOFEM 3.0
|
#include <intmatcoulombcontact.h>
Public Member Functions | |
| IntMatCoulombContact (int n, Domain *d) | |
| const char * | giveInputRecordName () const override |
| const char * | giveClassName () const override |
| FloatArrayF< 3 > | giveEngTraction_3d (const FloatArrayF< 3 > &jump, GaussPoint *gp, TimeStep *tStep) const override |
| FloatMatrixF< 3, 3 > | give3dStiffnessMatrix_Eng (MatResponseMode rMode, GaussPoint *gp, TimeStep *tStep) const override |
| std::pair< double, FloatArrayF< 2 > > | computeEngTraction (const FloatArrayF< 2 > &tempShearStressShift, double normalJump, const FloatArrayF< 2 > &shearJump) |
| void | initializeFrom (InputRecord &ir) override |
| void | giveInputRecord (DynamicInputRecord &input) override |
| bool | hasAnalyticalTangentStiffness () const override |
| std::unique_ptr< MaterialStatus > | CreateStatus (GaussPoint *gp) 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 FloatArrayF< 3 > | giveFirstPKTraction_3d (const FloatArrayF< 3 > &jump, const FloatMatrixF< 3, 3 > &F, 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 |
| virtual FloatMatrixF< 2, 2 > | give2dStiffnessMatrix_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 | |
| double | kn = 0. |
| double | stiffCoeff = 0. |
| double | frictCoeff = 0. |
| double | normalClearance = 0. |
| Normal distance which needs to be closed when interface element should act in compression (distance is 0 by default). | |
| 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 |
This class represents a "simple" interface material which is linear elastic in the normal direction. It is similar to a Coulomb contact model in the sense that the maximum shear stress is bounded by the normal stress times the coefficient of friction.
Definition at line 89 of file intmatcoulombcontact.h.
| oofem::IntMatCoulombContact::IntMatCoulombContact | ( | int | n, |
| Domain * | d ) |
Definition at line 47 of file intmatcoulombcontact.C.
References oofem::StructuralInterfaceMaterial::StructuralInterfaceMaterial().
| std::pair< double, FloatArrayF< 2 > > oofem::IntMatCoulombContact::computeEngTraction | ( | const FloatArrayF< 2 > & | tempShearStressShift, |
| double | normalJump, | ||
| const FloatArrayF< 2 > & | shearJump ) |
|
inlineoverridevirtual |
Creates new copy of associated status and inserts it into given integration point.
| gp | Integration point where newly created status will be stored. |
Reimplemented from oofem::Material.
Definition at line 117 of file intmatcoulombcontact.h.
|
overridevirtual |
Reimplemented from oofem::StructuralInterfaceMaterial.
Definition at line 90 of file intmatcoulombcontact.C.
References oofem::eye(), oofem::Material::giveStatus(), oofem::StructuralInterfaceMaterialStatus::giveTempJump(), kn, normalClearance, and stiffCoeff.
|
inlineoverridevirtual |
Implements oofem::FEMComponent.
Definition at line 105 of file intmatcoulombcontact.h.
|
overridevirtual |
Reimplemented from oofem::StructuralInterfaceMaterial.
Definition at line 51 of file intmatcoulombcontact.C.
References frictCoeff, oofem::IntMatCoulombContactStatus::giveShearStressShift(), oofem::Material::giveStatus(), kn, oofem::StructuralInterfaceMaterialStatus::letTempJumpBe(), oofem::StructuralInterfaceMaterialStatus::letTempTractionBe(), oofem::norm(), normalClearance, oofem::IntMatCoulombContactStatus::setTempShearStressShift(), and stiffCoeff.
|
overridevirtual |
Setups the input record string of receiver.
| input | Dynamic input record to be filled by receiver. |
Reimplemented from oofem::FEMComponent.
Definition at line 126 of file intmatcoulombcontact.C.
References _IFT_IntMatCoulombContact_frictCoeff, _IFT_IntMatCoulombContact_kn, _IFT_IntMatCoulombContact_normalClearance, _IFT_IntMatCoulombContact_stiffCoeff, frictCoeff, kn, normalClearance, oofem::DynamicInputRecord::setField(), and stiffCoeff.
|
inlineoverridevirtual |
Implements oofem::FEMComponent.
Definition at line 104 of file intmatcoulombcontact.h.
References _IFT_IntMatCoulombContact_Name.
|
inlineoverridevirtual |
Tells if the model has implemented analytical tangent stiffness. If not, the tangent must be computed numerically.
Implements oofem::StructuralInterfaceMaterial.
Definition at line 115 of file intmatcoulombcontact.h.
|
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::FEMComponent.
Definition at line 111 of file intmatcoulombcontact.C.
References _IFT_IntMatCoulombContact_frictCoeff, _IFT_IntMatCoulombContact_kn, _IFT_IntMatCoulombContact_normalClearance, _IFT_IntMatCoulombContact_stiffCoeff, frictCoeff, IR_GIVE_FIELD, IR_GIVE_OPTIONAL_FIELD, kn, normalClearance, and stiffCoeff.
|
protected |
Definition at line 97 of file intmatcoulombcontact.h.
Referenced by giveEngTraction_3d(), giveInputRecord(), and initializeFrom().
|
protected |
Definition at line 93 of file intmatcoulombcontact.h.
Referenced by give3dStiffnessMatrix_Eng(), giveEngTraction_3d(), giveInputRecord(), and initializeFrom().
|
protected |
Normal distance which needs to be closed when interface element should act in compression (distance is 0 by default).
Definition at line 99 of file intmatcoulombcontact.h.
Referenced by give3dStiffnessMatrix_Eng(), giveEngTraction_3d(), giveInputRecord(), and initializeFrom().
|
protected |
Definition at line 95 of file intmatcoulombcontact.h.
Referenced by give3dStiffnessMatrix_Eng(), giveEngTraction_3d(), giveInputRecord(), and initializeFrom().