35 #ifndef structuralinterfaceelement_h 36 #define structuralinterfaceelement_h 38 #include "../sm/CrossSections/structuralinterfacecrosssection.h" 50 class StructuralInterfaceMaterial;
54 class FEInterpolation;
137 virtual const char *
giveClassName()
const {
return "StructuralInterfaceElement"; }
148 OOFEM_ERROR(
"not implemented for the current element");
154 OOFEM_ERROR(
"not implemented for the current element");
181 #endif // structuralinterfaceelement_h virtual void updateInternalState(TimeStep *tStep)
Updates element state after equilibrium in time step has been reached.
virtual int testCrossSectionExtension(CrossSectExtension ext)
Structural interface capability.
InternalStateType
Type representing the physical meaning of element or constitutive model internal variable.
virtual void computeTransformationMatrixAt(GaussPoint *gp, FloatMatrix &answer)=0
virtual ~StructuralInterfaceElement()
Destructor.
Element_Geometry_Type
Enumerative type used to classify element geometry Possible values are: EGT_point - point in space EG...
virtual void giveFirstPKTraction(FloatArray &answer, GaussPoint *gp, const FloatArray &jump, const FloatMatrix &F, TimeStep *tStep)
virtual Interface * giveInterface(InterfaceType)
Interface requesting service.
virtual void computeTraction(FloatArray &traction, IntegrationPoint *ip, const FloatArray &jump, TimeStep *tStep)
ValueModeType
Type representing the mode of UnknownType or CharType, or similar types.
Abstract base class for all finite elements.
StructuralInterfaceElement(int n, Domain *d)
Constructor.
virtual double computeAreaAround(GaussPoint *gp)=0
MatResponseMode
Describes the character of characteristic material matrix.
virtual void giveInternalForcesVector(FloatArray &answer, TimeStep *tStep, int useUpdatedGpRecord=0)
Returns equivalent nodal forces vectors.
FloatArray initialDisplacements
Initial displacement vector, describes the initial nodal displacements when element has been casted...
virtual int computeGlobalCoordinates(FloatArray &answer, const FloatArray &lcoords)
Computes the global coordinates from given element's local coordinates.
CrossSectExtension
Type representing cross section extension for run time testing.
virtual FEInterpolation * giveInterpolation() const
Class representing a general abstraction for finite element interpolation class.
virtual void computeNmatrixAt(GaussPoint *gp, FloatMatrix &answer)=0
Computes modified interpolation matrix (N) for the element which multiplied with the unknowns vector ...
virtual Element_Geometry_Type giveGeometryType() const
Returns the element geometry type.
ElementExtension
Type representing element extension.
virtual void updateYourself(TimeStep *tStep)
Updates element state after equilibrium in time step has been reached.
Base class for all structural interface cross section models.
FEInterpolation * interpolation
virtual int checkConsistency()
Performs consistency check.
virtual void computeStiffnessMatrix(FloatMatrix &answer, MatResponseMode rMode, TimeStep *tStep)
Computes the stiffness/tangent matrix of receiver.
virtual void giveStiffnessMatrix_dTdj(FloatMatrix &answer, MatResponseMode rMode, IntegrationPoint *ip, TimeStep *tStep)
virtual void giveStiffnessMatrix_Eng(FloatMatrix &answer, MatResponseMode rMode, IntegrationPoint *ip, TimeStep *tStep)
Class representing vector of real numbers.
Implementation of matrix containing floating point numbers.
IRResultType
Type defining the return values of InputRecord reading operations.
virtual void giveCharacteristicMatrix(FloatMatrix &answer, CharType, TimeStep *tStep)
Computes characteristic matrix of receiver of requested type in given time step.
virtual int giveNumberOfIPForMassMtrxIntegration()
Return desired number of integration points for consistent mass matrix computation, if required.
virtual void giveEngTraction(FloatArray &answer, GaussPoint *gp, const FloatArray &jump, TimeStep *tStep)
virtual void giveCharacteristicVector(FloatArray &answer, CharType type, ValueModeType mode, TimeStep *tStep)
Computes characteristic vector of receiver of requested type in given time step.
virtual void computeSpatialJump(FloatArray &answer, GaussPoint *gp, TimeStep *tStep)
virtual IRResultType initializeFrom(InputRecord *ir)
Initializes receiver according to object description stored in input record.
InterfaceType
Enumerative type, used to identify interface type.
Abstract base class for all structural interface elements.
virtual int testElementExtension(ElementExtension ext)
Tests if the element implements required extension.
the oofem namespace is to define a context or scope in which all oofem names are defined.
virtual int giveIPValue(FloatArray &answer, GaussPoint *gp, InternalStateType type, TimeStep *tStep)
Returns the integration point corresponding value in full form.
int nlGeometry
Flag indicating if geometrical nonlinearities apply.
Class representing integration point in finite element program.
Class representing solution step.
virtual const char * giveClassName() const
virtual void giveInputRecord(DynamicInputRecord &input)
Setups the input record string of receiver.
StructuralInterfaceCrossSection * giveInterfaceCrossSection()