35 #ifndef structuralinterfacecrosssection_h 36 #define structuralinterfacecrosssection_h 38 #include "../sm/Materials/InterfaceMaterials/structuralinterfacematerial.h" 44 #define _IFT_StructuralInterfaceCrossSection_Name "interfacecs" 45 #define _IFT_StructuralInterfaceCrossSection_Material "material" 46 #define _IFT_StructuralInterfaceCrossSection_thickness "thickness" 144 virtual const char *
giveClassName()
const {
return "StructuralInterfaceCrossSection"; }
152 #endif // structuralcrosssection_h 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)
Structural interface capability.
InternalStateType
Type representing the physical meaning of element or constitutive model internal variable.
StructuralInterfaceMaterial * giveInterfaceMaterial()
void give3dStiffnessMatrix_dTdj(FloatMatrix &answer, MatResponseMode rMode, GaussPoint *gp, TimeStep *tStep)
void give2dStiffnessMatrix_dTdj(FloatMatrix &answer, MatResponseMode rMode, GaussPoint *gp, TimeStep *tStep)
CrossSectExtension crossSectionType
virtual void giveEngTraction_1d(FloatArray &answer, GaussPoint *gp, const FloatArray &jump, TimeStep *tStep)
void give1dStiffnessMatrix_Eng(FloatMatrix &answer, MatResponseMode rMode, GaussPoint *gp, TimeStep *tStep)
The purpose of DataStream abstract class is to allow to store/restore context to different streams...
void giveFirstPKTraction_1d(FloatArray &answer, GaussPoint *gp, const FloatArray &jump, const FloatMatrix &F, TimeStep *tStep)
Computes the real stress vector for given strain and integration point.
virtual int checkConsistency()
Allows programmer to test some internal data, before computation begins.
MatResponseMode
Describes the character of characteristic material matrix.
GaussPoint IntegrationPoint
virtual void giveFirstPKTraction_2d(FloatArray &answer, GaussPoint *gp, const FloatArray &jump, const FloatMatrix &reducedF, TimeStep *tStep)
Base abstract class representing cross section in finite element mesh.
CrossSectExtension
Type representing cross section extension for run time testing.
virtual const char * giveInputRecordName() const
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...
virtual void giveFirstPKTraction_3d(FloatArray &answer, GaussPoint *gp, const FloatArray &jump, const FloatMatrix &F, TimeStep *tStep)
virtual int unpackAndUpdateUnknowns(DataStream &buff, TimeStep *tStep, GaussPoint *gp)
Unpack and updates all necessary data of given integration point (according to element parallel_mode)...
virtual const char * giveClassName() const
void giveEngTraction_3d(FloatArray &answer, GaussPoint *gp, const FloatArray &jump, TimeStep *tStep)
virtual Material * giveMaterial(IntegrationPoint *ip)
Returns the material associated with the GP.
const FloatArray & giveTraction(IntegrationPoint *ip)
virtual int testCrossSectionExtension(CrossSectExtension ext)
Returns nonzero, if receiver implements required extension.
#define _IFT_StructuralInterfaceCrossSection_Name
Base class for all structural interface cross section models.
Abstract base class for all material models.
virtual int estimatePackSize(DataStream &buff, GaussPoint *gp)
Estimates the necessary pack size to hold all packed data of receiver.
void give1dStiffnessMatrix_dTdj(FloatMatrix &answer, MatResponseMode rMode, GaussPoint *gp, TimeStep *tStep)
void setMaterialNumber(int matNum)
Class representing vector of real numbers.
void give3dStiffnessMatrix_Eng(FloatMatrix &answer, MatResponseMode rMode, GaussPoint *gp, TimeStep *tStep)
Implementation of matrix containing floating point numbers.
virtual int giveIPValue(FloatArray &answer, GaussPoint *ip, InternalStateType type, TimeStep *tStep)
Returns the integration point corresponding value in Reduced form.
IRResultType
Type defining the return values of InputRecord reading operations.
StructuralInterfaceCrossSection(int n, Domain *d)
Constructor.
void give2dStiffnessMatrix_Eng(FloatMatrix &answer, MatResponseMode rMode, GaussPoint *gp, TimeStep *tStep)
virtual IRResultType initializeFrom(InputRecord *ir)
Initializes receiver according to object description stored in input record.
void giveFirstPKTraction_2d(FloatArray &answer, GaussPoint *gp, const FloatArray &jump, const FloatMatrix &F, TimeStep *tStep)
void giveEngTraction_1d(FloatArray &answer, GaussPoint *gp, const FloatArray &jump, TimeStep *tStep)
int giveMaterialNumber() const
void giveEngTraction_2d(FloatArray &answer, GaussPoint *gp, const FloatArray &jump, TimeStep *tStep)
void giveFirstPKTraction_3d(FloatArray &answer, GaussPoint *gp, const FloatArray &jump, const FloatMatrix &F, TimeStep *tStep)
Abstract base class for all "structural" interface models.
the oofem namespace is to define a context or scope in which all oofem names are defined.
virtual int packUnknowns(DataStream &buff, TimeStep *tStep, GaussPoint *gp)
Pack all necessary data of integration point (according to element parallel_mode) into given communic...
Class representing integration point in finite element program.
Class representing solution step.
virtual ~StructuralInterfaceCrossSection()
Destructor.