OOFEM
2.4
OOFEM.org - Object Oriented Finite Element Solver
|
Abstract base class for all "structural" interface models. More...
#include <structuralinterfacematerial.h>
Public Member Functions | |
StructuralInterfaceMaterial (int n, Domain *d) | |
Constructor. More... | |
virtual | ~StructuralInterfaceMaterial () |
Destructor. More... | |
virtual void | giveFirstPKTraction_1d (FloatArray &answer, GaussPoint *gp, const FloatArray &jump, const FloatMatrix &reducedF, TimeStep *tStep) |
Computes the first Piola-Kirchoff traction vector for given total jump/gap and integration point. More... | |
virtual void | giveFirstPKTraction_2d (FloatArray &answer, GaussPoint *gp, const FloatArray &jump, const FloatMatrix &reducedF, TimeStep *tStep) |
virtual void | giveFirstPKTraction_3d (FloatArray &answer, GaussPoint *gp, const FloatArray &jump, const FloatMatrix &F, TimeStep *tStep) |
virtual void | giveEngTraction_1d (FloatArray &answer, GaussPoint *gp, const FloatArray &jump, TimeStep *tStep) |
virtual void | giveEngTraction_2d (FloatArray &answer, GaussPoint *gp, const FloatArray &jump, TimeStep *tStep) |
virtual void | giveEngTraction_3d (FloatArray &answer, GaussPoint *gp, const FloatArray &jump, TimeStep *tStep) |
virtual void | give1dStiffnessMatrix_dTdj (FloatMatrix &answer, MatResponseMode rMode, GaussPoint *gp, TimeStep *tStep) |
Gives the tangent: . More... | |
virtual void | give2dStiffnessMatrix_dTdj (FloatMatrix &answer, MatResponseMode rMode, GaussPoint *gp, TimeStep *tStep) |
virtual void | give3dStiffnessMatrix_dTdj (FloatMatrix &answer, MatResponseMode rMode, GaussPoint *gp, TimeStep *tStep) |
virtual void | give1dStiffnessMatrix_Eng (FloatMatrix &answer, MatResponseMode rMode, GaussPoint *gp, TimeStep *tStep) |
virtual void | give2dStiffnessMatrix_Eng (FloatMatrix &answer, MatResponseMode rMode, GaussPoint *gp, TimeStep *tStep) |
virtual void | give3dStiffnessMatrix_Eng (FloatMatrix &answer, MatResponseMode rMode, GaussPoint *gp, TimeStep *tStep) |
void | give1dStiffnessMatrix_dTdj_Num (FloatMatrix &answer, GaussPoint *gp, TimeStep *tStep) |
void | give2dStiffnessMatrix_dTdj_Num (FloatMatrix &answer, GaussPoint *gp, TimeStep *tStep) |
void | give3dStiffnessMatrix_dTdj_Num (FloatMatrix &answer, GaussPoint *gp, TimeStep *tStep) |
void | give1dStiffnessMatrix_Eng_Num (FloatMatrix &answer, GaussPoint *gp, TimeStep *tStep) |
void | give2dStiffnessMatrix_Eng_Num (FloatMatrix &answer, GaussPoint *gp, TimeStep *tStep) |
void | give3dStiffnessMatrix_Eng_Num (FloatMatrix &answer, GaussPoint *gp, TimeStep *tStep) |
virtual bool | hasAnalyticalTangentStiffness () const =0 |
Tells if the model has implemented analytical tangent stiffness. More... | |
virtual const char * | giveClassName () const |
virtual IRResultType | initializeFrom (InputRecord *ir) |
Initializes receiver according to object description stored in input record. More... | |
virtual void | giveInputRecord (DynamicInputRecord &input) |
Setups the input record string of receiver. More... | |
virtual FloatArray | giveInterfaceStrength () |
virtual int | giveIPValue (FloatArray &answer, GaussPoint *gp, InternalStateType type, TimeStep *tStep) |
Returns the integration point corresponding value in Reduced form. More... | |
Public Member Functions inherited from oofem::Material | |
Material (int n, Domain *d) | |
Constructor. More... | |
virtual | ~Material () |
Destructor. More... | |
virtual bool | isCharacteristicMtrxSymmetric (MatResponseMode rMode) |
Returns true if stiffness matrix of receiver is symmetric Default implementation returns true. More... | |
virtual double | give (int aProperty, GaussPoint *gp) |
Returns the value of material property 'aProperty'. More... | |
virtual bool | hasProperty (int aProperty, GaussPoint *gp) |
Returns true if 'aProperty' exists on material. More... | |
virtual void | modifyProperty (int aProperty, double value, GaussPoint *gp) |
Modify 'aProperty', which already exists on material. More... | |
double | giveCastingTime () |
virtual bool | isActivated (TimeStep *tStep) |
virtual int | hasNonLinearBehaviour () |
Returns nonzero if receiver is non linear. More... | |
virtual int | hasMaterialModeCapability (MaterialMode mode) |
Tests if material supports material mode. More... | |
virtual int | hasCastingTimeSupport () |
Tests if material supports casting time. More... | |
virtual void | printYourself () |
Prints receiver state on stdout. Useful for debugging. More... | |
virtual contextIOResultType | saveIPContext (DataStream &stream, ContextMode mode, GaussPoint *gp) |
Stores integration point state to output stream. More... | |
virtual contextIOResultType | restoreIPContext (DataStream &stream, ContextMode mode, GaussPoint *gp) |
Reads integration point state to output stream. More... | |
virtual int | checkConsistency () |
Allows programmer to test some internal data, before computation begins. More... | |
virtual int | initMaterial (Element *element) |
Optional function to call specific procedures when initializing a material. More... | |
virtual MaterialStatus * | giveStatus (GaussPoint *gp) const |
Returns material status of receiver in given integration point. More... | |
virtual int | packUnknowns (DataStream &buff, TimeStep *tStep, GaussPoint *ip) |
Pack all necessary data of integration point (according to element parallel_mode) into given communication buffer. More... | |
virtual int | unpackAndUpdateUnknowns (DataStream &buff, TimeStep *tStep, GaussPoint *ip) |
Unpack and updates all necessary data of given integration point (according to element parallel_mode) into given communication buffer. More... | |
virtual int | estimatePackSize (DataStream &buff, GaussPoint *ip) |
Estimates the necessary pack size to hold all packed data of receiver. More... | |
virtual double | predictRelativeComputationalCost (GaussPoint *gp) |
Returns the weight representing relative computational cost of receiver The reference material model is linear isotropic material - its weight is set to 1.0 The other material models should compare to this reference model. More... | |
virtual double | predictRelativeRedistributionCost (GaussPoint *gp) |
Returns the relative redistribution cost of the receiver. More... | |
virtual MaterialStatus * | CreateStatus (GaussPoint *gp) const |
Creates new copy of associated status and inserts it into given integration point. More... | |
virtual void | initTempStatus (GaussPoint *gp) |
Initializes temporary variables stored in integration point status at the beginning of new time step. More... | |
virtual int | setIPValue (const FloatArray &value, GaussPoint *gp, InternalStateType type) |
Sets the value of a certain variable at a given integration point to the given value. 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... | |
virtual const char * | giveInputRecordName () const =0 |
Domain * | giveDomain () 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 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 void | printOutputAt (FILE *file, TimeStep *tStep) |
Prints output of receiver to stream, for given time step. More... | |
virtual Interface * | giveInterface (InterfaceType t) |
Interface requesting service. More... | |
std::string | errorInfo (const char *func) const |
Returns string for prepending output (used by error reporting macros). More... | |
Public Attributes | |
bool | useNumericalTangent |
Additional Inherited Members | |
Protected Attributes inherited from oofem::Material | |
Dictionary | propertyDictionary |
Property dictionary. More... | |
double | castingTime |
Casting time. More... | |
Protected Attributes inherited from oofem::FEMComponent | |
int | number |
Component number. More... | |
Domain * | domain |
Link to domain object, useful for communicating with other FEM components. More... | |
Abstract base class for all "structural" interface models.
It declares common services provided by all interface material models. The implementation of these services is partly left on derived classes, which will implement constitutive model dependent part.
Structural material introduces following basic stress/strain modes
Generally speaking, there are following major tasks, covered by declared services.
Definition at line 72 of file structuralinterfacematerial.h.
oofem::StructuralInterfaceMaterial::StructuralInterfaceMaterial | ( | int | n, |
Domain * | d | ||
) |
Constructor.
Creates material with given number, belonging to given domain.
Definition at line 41 of file structuralinterfacematerial.C.
References useNumericalTangent.
|
inlinevirtual |
Destructor.
Definition at line 82 of file structuralinterfacematerial.h.
References giveFirstPKTraction_1d(), and giveFirstPKTraction_2d().
|
virtual |
Gives the tangent: .
Where T is the first PK traction and j is the spatial jump between the two sides, x(+) - x(-)
answer | The computed tangent from the last evaluated first-PK-stress. |
rMode | Material mode. |
gp | Gauss point. |
tStep | Time step. |
Definition at line 171 of file structuralinterfacematerial.C.
References oofem::FloatMatrix::at(), give3dStiffnessMatrix_dTdj_Num(), and oofem::FloatMatrix::resize().
Referenced by oofem::StructuralInterfaceCrossSection::give1dStiffnessMatrix_dTdj(), and giveFirstPKTraction_3d().
void oofem::StructuralInterfaceMaterial::give1dStiffnessMatrix_dTdj_Num | ( | FloatMatrix & | answer, |
GaussPoint * | gp, | ||
TimeStep * | tStep | ||
) |
Definition at line 265 of file structuralinterfacematerial.C.
References oofem::FloatArray::at(), oofem::FloatArray::beDifferenceOf(), giveFirstPKTraction_1d(), oofem::FloatArray::giveSize(), oofem::Material::giveStatus(), oofem::StructuralInterfaceMaterialStatus::giveTempF(), oofem::StructuralInterfaceMaterialStatus::giveTempJump(), oofem::FloatMatrix::resize(), oofem::FloatMatrix::setColumn(), and oofem::FloatMatrix::times().
Referenced by oofem::StructuralInterfaceCrossSection::give1dStiffnessMatrix_dTdj(), and giveFirstPKTraction_3d().
|
virtual |
Reimplemented in oofem::IntMatCoulombContact, and oofem::CebFipSlip90Material.
Definition at line 131 of file structuralinterfacematerial.C.
References oofem::FloatMatrix::at(), give3dStiffnessMatrix_Eng(), and oofem::FloatMatrix::resize().
Referenced by oofem::StructuralInterfaceCrossSection::give1dStiffnessMatrix_Eng(), and giveFirstPKTraction_3d().
void oofem::StructuralInterfaceMaterial::give1dStiffnessMatrix_Eng_Num | ( | FloatMatrix & | answer, |
GaussPoint * | gp, | ||
TimeStep * | tStep | ||
) |
Definition at line 353 of file structuralinterfacematerial.C.
References oofem::FloatArray::at(), oofem::FloatArray::beDifferenceOf(), giveEngTraction_1d(), oofem::FloatArray::giveSize(), oofem::Material::giveStatus(), oofem::StructuralInterfaceMaterialStatus::giveTempJump(), oofem::FloatMatrix::resize(), oofem::FloatMatrix::setColumn(), oofem::FloatMatrix::times(), and oofem::FloatMatrix::zero().
Referenced by oofem::StructuralInterfaceCrossSection::give1dStiffnessMatrix_Eng(), and giveFirstPKTraction_3d().
|
virtual |
Definition at line 180 of file structuralinterfacematerial.C.
References give3dStiffnessMatrix_dTdj_Num(), and oofem::FloatMatrix::resize().
Referenced by oofem::StructuralInterfaceCrossSection::give2dStiffnessMatrix_dTdj(), and giveFirstPKTraction_3d().
void oofem::StructuralInterfaceMaterial::give2dStiffnessMatrix_dTdj_Num | ( | FloatMatrix & | answer, |
GaussPoint * | gp, | ||
TimeStep * | tStep | ||
) |
Definition at line 294 of file structuralinterfacematerial.C.
References oofem::FloatArray::at(), oofem::FloatArray::beDifferenceOf(), giveFirstPKTraction_2d(), oofem::FloatArray::giveSize(), oofem::Material::giveStatus(), oofem::StructuralInterfaceMaterialStatus::giveTempF(), oofem::StructuralInterfaceMaterialStatus::giveTempJump(), oofem::FloatMatrix::resize(), oofem::FloatMatrix::setColumn(), and oofem::FloatMatrix::times().
Referenced by oofem::StructuralInterfaceCrossSection::give2dStiffnessMatrix_dTdj(), and giveFirstPKTraction_3d().
|
virtual |
Reimplemented in oofem::IntMatIsoDamage, and oofem::IntMatCoulombContact.
Definition at line 141 of file structuralinterfacematerial.C.
References oofem::FloatMatrix::beSubMatrixOf(), give2dStiffnessMatrix_Eng_Num(), give3dStiffnessMatrix_Eng(), oofem::FloatMatrix::printYourself(), and oofem::FloatMatrix::subtract().
Referenced by oofem::StructuralInterfaceCrossSection::give2dStiffnessMatrix_Eng(), and giveFirstPKTraction_3d().
void oofem::StructuralInterfaceMaterial::give2dStiffnessMatrix_Eng_Num | ( | FloatMatrix & | answer, |
GaussPoint * | gp, | ||
TimeStep * | tStep | ||
) |
Definition at line 382 of file structuralinterfacematerial.C.
References oofem::FloatArray::at(), oofem::FloatArray::beDifferenceOf(), giveEngTraction_2d(), oofem::FloatArray::giveSize(), oofem::Material::giveStatus(), oofem::StructuralInterfaceMaterialStatus::giveTempJump(), oofem::FloatMatrix::resize(), oofem::FloatMatrix::setColumn(), oofem::FloatMatrix::times(), and oofem::FloatMatrix::zero().
Referenced by give2dStiffnessMatrix_Eng(), oofem::StructuralInterfaceCrossSection::give2dStiffnessMatrix_Eng(), and giveFirstPKTraction_3d().
|
virtual |
Reimplemented in oofem::IntMatBilinearCZFagerstrom, oofem::IntMatBilinearCZJansson, oofem::IntMatBilinearCZElastic, oofem::IntMatBilinearCZ, oofem::IntMatDummyCZ, and oofem::IntMatElastic.
Definition at line 192 of file structuralinterfacematerial.C.
References give3dStiffnessMatrix_dTdj_Num(), and OOFEM_WARNING.
Referenced by oofem::XfemStructuralElementInterface::computeCohesiveTangent(), oofem::Shell7BaseXFEM::computeCohesiveTangentAt(), oofem::StructuralInterfaceCrossSection::give3dStiffnessMatrix_dTdj(), give3dStiffnessMatrix_Eng(), and giveFirstPKTraction_3d().
void oofem::StructuralInterfaceMaterial::give3dStiffnessMatrix_dTdj_Num | ( | FloatMatrix & | answer, |
GaussPoint * | gp, | ||
TimeStep * | tStep | ||
) |
Definition at line 323 of file structuralinterfacematerial.C.
References oofem::FloatArray::at(), oofem::FloatArray::beDifferenceOf(), giveFirstPKTraction_3d(), oofem::FloatArray::giveSize(), oofem::Material::giveStatus(), oofem::StructuralInterfaceMaterialStatus::giveTempF(), oofem::StructuralInterfaceMaterialStatus::giveTempJump(), oofem::FloatMatrix::resize(), oofem::FloatMatrix::setColumn(), and oofem::FloatMatrix::times().
Referenced by give1dStiffnessMatrix_dTdj(), give2dStiffnessMatrix_dTdj(), give3dStiffnessMatrix_dTdj(), oofem::StructuralInterfaceCrossSection::give3dStiffnessMatrix_dTdj(), oofem::IntMatBilinearCZ::give3dStiffnessMatrix_dTdj(), and giveFirstPKTraction_3d().
|
virtual |
Reimplemented in oofem::IntMatIsoDamage, oofem::IsoInterfaceDamageMaterial_2, oofem::IsoInterfaceDamageMaterial, oofem::BondCEBMaterial, oofem::IntMatCoulombContact, oofem::ExpCZMaterial, oofem::SimpleInterfaceMaterial, oofem::IntMatPhaseField, and oofem::CohesiveInterfaceMaterial.
Definition at line 163 of file structuralinterfacematerial.C.
References give3dStiffnessMatrix_dTdj().
Referenced by give1dStiffnessMatrix_Eng(), give2dStiffnessMatrix_Eng(), oofem::StructuralInterfaceCrossSection::give3dStiffnessMatrix_Eng(), and giveFirstPKTraction_3d().
void oofem::StructuralInterfaceMaterial::give3dStiffnessMatrix_Eng_Num | ( | FloatMatrix & | answer, |
GaussPoint * | gp, | ||
TimeStep * | tStep | ||
) |
Definition at line 411 of file structuralinterfacematerial.C.
References oofem::FloatArray::at(), oofem::FloatArray::beDifferenceOf(), giveEngTraction_3d(), oofem::FloatArray::giveSize(), oofem::Material::giveStatus(), oofem::StructuralInterfaceMaterialStatus::giveTempJump(), oofem::FloatMatrix::resize(), oofem::FloatMatrix::setColumn(), oofem::FloatMatrix::times(), and oofem::FloatMatrix::zero().
Referenced by oofem::StructuralInterfaceCrossSection::give3dStiffnessMatrix_Eng(), and giveFirstPKTraction_3d().
|
inlinevirtual |
Implements oofem::FEMComponent.
Reimplemented in oofem::IntMatBilinearCZFagerstrom, oofem::IntMatBilinearCZJansson, oofem::IsoInterfaceDamageMaterial_2, oofem::IsoInterfaceDamageMaterial, oofem::BondCEBMaterial, oofem::CebFipSlip90Material, oofem::IntMatBilinearCZElastic, oofem::ExpCZMaterial, oofem::IntMatBilinearCZ, oofem::SimpleInterfaceMaterial, oofem::IntMatPhaseField, oofem::CohesiveInterfaceMaterial, oofem::StructuralInterfaceMaterialPhF, oofem::IntMatElastic, and oofem::IntMatDummyCZ.
Definition at line 140 of file structuralinterfacematerial.h.
References giveInputRecord(), and initializeFrom().
|
virtual |
Reimplemented in oofem::CebFipSlip90Material, and oofem::IntMatCoulombContact.
Definition at line 236 of file structuralinterfacematerial.C.
References oofem::FloatArray::at(), and giveEngTraction_3d().
Referenced by give1dStiffnessMatrix_Eng_Num(), oofem::StructuralInterfaceCrossSection::giveEngTraction_1d(), and giveFirstPKTraction_3d().
|
virtual |
Reimplemented in oofem::IntMatCoulombContact.
Definition at line 244 of file structuralinterfacematerial.C.
References oofem::FloatArray::at(), and giveEngTraction_3d().
Referenced by give2dStiffnessMatrix_Eng_Num(), oofem::StructuralInterfaceCrossSection::giveEngTraction_2d(), and giveFirstPKTraction_3d().
|
virtual |
Reimplemented in oofem::IsoInterfaceDamageMaterial_2, oofem::IsoInterfaceDamageMaterial, oofem::IntMatIsoDamage, oofem::BondCEBMaterial, oofem::ExpCZMaterial, oofem::SimpleInterfaceMaterial, oofem::IntMatCoulombContact, and oofem::CohesiveInterfaceMaterial.
Definition at line 253 of file structuralinterfacematerial.C.
References oofem::FloatMatrix::beUnitMatrix(), and giveFirstPKTraction_3d().
Referenced by give3dStiffnessMatrix_Eng_Num(), giveEngTraction_1d(), giveEngTraction_2d(), oofem::StructuralInterfaceCrossSection::giveEngTraction_3d(), and giveFirstPKTraction_3d().
|
virtual |
Computes the first Piola-Kirchoff traction vector for given total jump/gap and integration point.
The total gap is computed from the displacement field at the given time step. The service should use previously reached equilibrium history variables. Also it should update temporary history variables in status according to newly reached state. The temporary history variables are moved into equilibrium ones after global structure equilibrium has been reached by iteration process.
answer | Contains result. |
gp | Integration point. |
reducedF | Deformation gradient in in reduced form. |
tStep | Current time step (most models are able to respond only when tStep is current time step). |
Definition at line 200 of file structuralinterfacematerial.C.
References oofem::FloatArray::at(), oofem::FloatMatrix::at(), and giveFirstPKTraction_3d().
Referenced by give1dStiffnessMatrix_dTdj_Num(), oofem::StructuralInterfaceCrossSection::giveFirstPKTraction_1d(), and ~StructuralInterfaceMaterial().
|
virtual |
Definition at line 214 of file structuralinterfacematerial.C.
References oofem::FloatArray::at(), oofem::FloatMatrix::at(), and giveFirstPKTraction_3d().
Referenced by give2dStiffnessMatrix_dTdj_Num(), oofem::StructuralInterfaceCrossSection::giveFirstPKTraction_2d(), and ~StructuralInterfaceMaterial().
|
inlinevirtual |
Reimplemented in oofem::IntMatBilinearCZFagerstrom, oofem::IntMatBilinearCZJansson, oofem::IntMatIsoDamage, oofem::IntMatBilinearCZElastic, oofem::IntMatBilinearCZ, oofem::IntMatBilinearCZFagerstromRate, oofem::IntMatDummyCZ, and oofem::IntMatElastic.
Definition at line 101 of file structuralinterfacematerial.h.
References give1dStiffnessMatrix_dTdj(), give1dStiffnessMatrix_dTdj_Num(), give1dStiffnessMatrix_Eng(), give1dStiffnessMatrix_Eng_Num(), give2dStiffnessMatrix_dTdj(), give2dStiffnessMatrix_dTdj_Num(), give2dStiffnessMatrix_Eng(), give2dStiffnessMatrix_Eng_Num(), give3dStiffnessMatrix_dTdj(), give3dStiffnessMatrix_dTdj_Num(), give3dStiffnessMatrix_Eng(), give3dStiffnessMatrix_Eng_Num(), giveEngTraction_1d(), giveEngTraction_2d(), giveEngTraction_3d(), hasAnalyticalTangentStiffness(), and OOFEM_ERROR.
Referenced by oofem::Shell7BaseXFEM::computeCohesiveForces(), oofem::XfemStructuralElementInterface::computeGlobalCohesiveTractionVector(), give3dStiffnessMatrix_dTdj_Num(), giveEngTraction_3d(), giveFirstPKTraction_1d(), giveFirstPKTraction_2d(), oofem::StructuralInterfaceCrossSection::giveFirstPKTraction_3d(), giveInputRecord(), oofem::Shell7BaseXFEM::giveRecoveredTransverseInterfaceStress(), and oofem::Shell7BaseXFEM::recoverShearStress().
|
virtual |
Setups the input record string of receiver.
input | Dynamic input record to be filled by receiver. |
Reimplemented from oofem::Material.
Reimplemented in oofem::IntMatBilinearCZFagerstrom, oofem::IsoInterfaceDamageMaterial_2, oofem::IntMatIsoDamage, oofem::IsoInterfaceDamageMaterial, oofem::IntMatCoulombContact, oofem::CebFipSlip90Material, oofem::BondCEBMaterial, oofem::IntMatBilinearCZ, oofem::IntMatBilinearCZElastic, oofem::SimpleInterfaceMaterial, oofem::IntMatIsoDamageTable, oofem::IntMatPhaseField, oofem::IntMatBilinearCZFagerstromRate, oofem::CohesiveInterfaceMaterial, oofem::IntMatDummyCZ, and oofem::IntMatElastic.
Definition at line 88 of file structuralinterfacematerial.C.
References oofem::FloatArray::at(), giveFirstPKTraction_3d(), oofem::Material::giveInputRecord(), oofem::FloatMatrix::giveNumberOfRows(), oofem::Material::giveStatus(), oofem::StructuralInterfaceMaterialStatus::giveTempF(), oofem::StructuralInterfaceMaterialStatus::giveTempJump(), oofem::FloatMatrix::resize(), oofem::FloatMatrix::setColumn(), oofem::FloatMatrix::times(), and oofem::FloatMatrix::zero().
Referenced by giveClassName(), oofem::IntMatElastic::giveInputRecord(), oofem::IntMatDummyCZ::giveInputRecord(), oofem::CohesiveInterfaceMaterial::giveInputRecord(), oofem::IntMatPhaseField::giveInputRecord(), oofem::IntMatIsoDamageTable::giveInputRecord(), oofem::SimpleInterfaceMaterial::giveInputRecord(), oofem::IntMatBilinearCZElastic::giveInputRecord(), oofem::IntMatBilinearCZ::giveInputRecord(), oofem::BondCEBMaterial::giveInputRecord(), oofem::CebFipSlip90Material::giveInputRecord(), oofem::IntMatCoulombContact::giveInputRecord(), oofem::IsoInterfaceDamageMaterial::giveInputRecord(), oofem::IntMatIsoDamage::giveInputRecord(), oofem::IsoInterfaceDamageMaterial_2::giveInputRecord(), and oofem::IntMatBilinearCZFagerstrom::giveInputRecord().
|
inlinevirtual |
Reimplemented in oofem::IntMatBilinearCZFagerstrom, and oofem::IntMatBilinearCZJansson.
Definition at line 144 of file structuralinterfacematerial.h.
References giveIPValue().
Referenced by oofem::Shell7BaseXFEM::giveFailedInterfaceNumber().
|
virtual |
Returns the integration point corresponding value in Reduced form.
answer | Contain corresponding ip value, zero sized if not available. |
gp | Integration point to which the value refers. |
type | Determines the type of internal variable. |
tStep | Determines the time step. |
Reimplemented from oofem::Material.
Reimplemented in oofem::IntMatBilinearCZFagerstrom, oofem::IntMatBilinearCZJansson, oofem::IsoInterfaceDamageMaterial_2, oofem::IsoInterfaceDamageMaterial, oofem::IntMatIsoDamage, oofem::BondCEBMaterial, oofem::IntMatBilinearCZ, oofem::IntMatBilinearCZElastic, oofem::CebFipSlip90Material, oofem::ExpCZMaterial, oofem::SimpleInterfaceMaterial, and oofem::CohesiveInterfaceMaterial.
Definition at line 48 of file structuralinterfacematerial.C.
References oofem::FloatArray::beVectorForm(), oofem::StructuralInterfaceMaterialStatus::giveF(), oofem::StructuralInterfaceMaterialStatus::giveFirstPKTraction(), oofem::Material::giveIPValue(), oofem::StructuralInterfaceMaterialStatus::giveJump(), oofem::StructuralInterfaceMaterialStatus::giveNormal(), oofem::Material::giveStatus(), oofem::StructuralInterfaceMaterialStatus::giveTempFirstPKTraction(), oofem::StructuralInterfaceMaterialStatus::giveTraction(), and oofem::FloatArray::resizeWithValues().
Referenced by giveInterfaceStrength(), oofem::CohesiveInterfaceMaterial::giveIPValue(), oofem::SimpleInterfaceMaterial::giveIPValue(), oofem::ExpCZMaterial::giveIPValue(), oofem::IntMatBilinearCZElastic::giveIPValue(), oofem::CebFipSlip90Material::giveIPValue(), oofem::StructuralInterfaceCrossSection::giveIPValue(), oofem::BondCEBMaterial::giveIPValue(), oofem::IntMatBilinearCZ::giveIPValue(), oofem::IntMatIsoDamage::giveIPValue(), oofem::IsoInterfaceDamageMaterial::giveIPValue(), oofem::IsoInterfaceDamageMaterial_2::giveIPValue(), oofem::IntMatBilinearCZJansson::giveIPValue(), oofem::IntMatBilinearCZFagerstrom::giveIPValue(), and oofem::Shell7BaseXFEM::giveMaxCZDamages().
|
pure virtual |
Tells if the model has implemented analytical tangent stiffness.
If not, the tangent must be computed numerically.
Implemented in oofem::IntMatBilinearCZFagerstrom, oofem::IntMatBilinearCZJansson, oofem::IsoInterfaceDamageMaterial_2, oofem::IntMatCoulombContact, oofem::IsoInterfaceDamageMaterial, oofem::IntMatIsoDamage, oofem::IntMatBilinearCZElastic, oofem::CebFipSlip90Material, oofem::BondCEBMaterial, oofem::IntMatBilinearCZ, oofem::IntMatPhaseField, oofem::SimpleInterfaceMaterial, oofem::IntMatBilinearCZFagerstromRate, oofem::CohesiveInterfaceMaterial, oofem::IntMatElastic, and oofem::IntMatDummyCZ.
Referenced by oofem::XfemStructuralElementInterface::computeCohesiveTangent(), oofem::StructuralInterfaceCrossSection::give1dStiffnessMatrix_dTdj(), oofem::StructuralInterfaceCrossSection::give1dStiffnessMatrix_Eng(), oofem::StructuralInterfaceCrossSection::give2dStiffnessMatrix_dTdj(), oofem::StructuralInterfaceCrossSection::give2dStiffnessMatrix_Eng(), oofem::StructuralInterfaceCrossSection::give3dStiffnessMatrix_dTdj(), oofem::StructuralInterfaceCrossSection::give3dStiffnessMatrix_Eng(), and giveFirstPKTraction_3d().
|
virtual |
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.
ir | Input record to initialize from. |
Reimplemented from oofem::Material.
Reimplemented in oofem::IntMatBilinearCZFagerstrom, oofem::IntMatBilinearCZJansson, oofem::IsoInterfaceDamageMaterial_2, oofem::IntMatIsoDamage, oofem::IsoInterfaceDamageMaterial, oofem::IntMatCoulombContact, oofem::CebFipSlip90Material, oofem::BondCEBMaterial, oofem::IntMatBilinearCZ, oofem::IntMatBilinearCZElastic, oofem::ExpCZMaterial, oofem::SimpleInterfaceMaterial, oofem::IntMatIsoDamageTable, oofem::IntMatPhaseField, oofem::IntMatBilinearCZFagerstromRate, oofem::CohesiveInterfaceMaterial, oofem::IntMatDummyCZ, and oofem::IntMatElastic.
Definition at line 77 of file structuralinterfacematerial.C.
References _IFT_StructuralInterfaceMaterial_useNumericalTangent, IR_GIVE_OPTIONAL_FIELD, oofem::IRRT_OK, and useNumericalTangent.
Referenced by giveClassName(), oofem::IntMatElastic::initializeFrom(), oofem::IntMatDummyCZ::initializeFrom(), oofem::CohesiveInterfaceMaterial::initializeFrom(), oofem::IntMatBilinearCZFagerstromRate::initializeFrom(), oofem::IntMatPhaseField::initializeFrom(), oofem::IntMatIsoDamageTable::initializeFrom(), oofem::SimpleInterfaceMaterial::initializeFrom(), oofem::IntMatBilinearCZElastic::initializeFrom(), oofem::IntMatBilinearCZ::initializeFrom(), oofem::BondCEBMaterial::initializeFrom(), oofem::CebFipSlip90Material::initializeFrom(), oofem::IntMatCoulombContact::initializeFrom(), oofem::IsoInterfaceDamageMaterial::initializeFrom(), oofem::IntMatIsoDamage::initializeFrom(), oofem::IsoInterfaceDamageMaterial_2::initializeFrom(), and oofem::IntMatBilinearCZFagerstrom::initializeFrom().
bool oofem::StructuralInterfaceMaterial::useNumericalTangent |
Definition at line 150 of file structuralinterfacematerial.h.
Referenced by oofem::StructuralInterfaceCrossSection::give1dStiffnessMatrix_dTdj(), oofem::StructuralInterfaceCrossSection::give1dStiffnessMatrix_Eng(), oofem::StructuralInterfaceCrossSection::give2dStiffnessMatrix_dTdj(), oofem::StructuralInterfaceCrossSection::give2dStiffnessMatrix_Eng(), oofem::StructuralInterfaceCrossSection::give3dStiffnessMatrix_dTdj(), oofem::StructuralInterfaceCrossSection::give3dStiffnessMatrix_Eng(), initializeFrom(), and StructuralInterfaceMaterial().