100 answer.
at(1, 1) = dN.
at(1, 1);
101 answer.
at(1, 2) = dN.
at(1, 2);
102 answer.
at(1, 3) = dN.
at(1, 3);
103 answer.
at(1, 4) = dN.
at(2, 1);
104 answer.
at(1, 5) = dN.
at(2, 2);
105 answer.
at(1, 6) = dN.
at(2, 3);
139 double area, NForce, contrib;
147 NForce = stress.
at(1)*area;
148 contrib = NForce / l0;
153 answer.
at(2,2)=answer.
at(3,3)=answer.
at(5,5)=answer.
at(6,6) = contrib;
154 answer.
at(2,5)=answer.
at(5,2)=answer.
at(3,6)=answer.
at(6,3) = -contrib;
171 answer.
at(1, 1) = halfMass;
172 answer.
at(2, 2) = halfMass;
173 answer.
at(3, 3) = halfMass;
174 answer.
at(4, 4) = halfMass;
175 answer.
at(5, 5) = halfMass;
176 answer.
at(6, 6) = halfMass;
219 double npn = ly.dotProduct(lx);
225 for (
int i = 1; i <= 3; i++ ) {
226 answer.
at(1, i) = lx.
at(i);
227 answer.
at(2, i) = ly.at(i);
228 answer.
at(3, i) = lz.
at(i);
251 if ( type == IST_BeamForceMomentTensor ) {
258 answer.
at(1) = stress.
at(1)*area;
261 return NLStructuralElement :: giveIPValue(answer, gp, type, tStep);
281 answer = { D_u, D_v, D_w };
343 if ( !
gc.testElementGraphicActivity(
this) ) {
348 EASValsSetColor(
gc.getElementColor() );
356 go = CreateLine3D(p);
357 EGWithMaskChangeAttributes(WIDTH_MASK | COLOR_MASK | LAYER_MASK, go);
358 EGAttachObject(go, ( EObjectP )
this);
359 EMAddGraphicsToModel(ESIModel(), go);
366 double defScale =
gc.getDefScale();
369 if ( !
gc.testElementGraphicActivity(
this) ) {
374 EASValsSetColor(
gc.getDeformedElementColor() );
383 go = CreateLine3D(p);
384 EGWithMaskChangeAttributes(WIDTH_MASK | COLOR_MASK | LAYER_MASK, go);
385 EMAddGraphicsToModel(ESIModel(), go);
#define REGISTER_Element(class)
virtual double give(CrossSectionProperty a, GaussPoint *gp) const
virtual int setupIntegrationPoints(IntegrationRule &irule, int npoints, Element *element)
virtual int giveIPValue(FloatArray &answer, GaussPoint *ip, InternalStateType type, TimeStep *tStep)
double giveCoordinate(int i) const
Node * giveNode(int i) const
virtual bool isActivated(TimeStep *tStep)
int numberOfDofMans
Number of dofmanagers.
std::vector< std ::unique_ptr< IntegrationRule > > integrationRulesArray
CrossSection * giveCrossSection()
void beDifferenceOf(const FloatArray &a, const FloatArray &b)
void beVectorProductOf(const FloatArray &v1, const FloatArray &v2)
void resize(Index rows, Index cols)
void beNMatrixOf(const FloatArray &n, int nsd)
void beTranspositionOf(const FloatMatrix &src)
void zero()
Zeroes all coefficient of receiver.
double at(std::size_t i, std::size_t j) const
const FloatArray & giveNaturalCoordinates() const
Returns coordinate array of receiver.
double giveWeight()
Returns integration weight of receiver.
void initializeFrom(InputRecord &ir, int priority) override
NLStructuralElement(int n, Domain *d)
NodalAveragingRecoveryModelInterface()
Constructor.
virtual double giveUpdatedCoordinate(int ic, TimeStep *tStep, double scale=1.)
virtual FloatMatrixF< 1, 1 > giveStiffnessMatrix_dPdF_1d(MatResponseMode mode, GaussPoint *gp, TimeStep *tStep) const =0
virtual FloatArrayF< 1 > giveRealStress_1d(const FloatArrayF< 1 > &reducedStrain, GaussPoint *gp, TimeStep *tStep) const =0
virtual FloatMatrixF< 1, 1 > giveStiffnessMatrix_1d(MatResponseMode mode, GaussPoint *gp, TimeStep *tStep) const =0
StructuralCrossSection * giveStructuralCrossSection()
Helper function which returns the structural cross-section for the element.
virtual void computeStrainVector(FloatArray &answer, GaussPoint *gp, TimeStep *tStep)
void computeNmatrixAt(const FloatArray &iLocCoord, FloatMatrix &answer) override
double computeVolumeAround(GaussPoint *gp) override
void giveEdgeDofMapping(IntArray &answer, int iEdge) const override
void computeInitialStressMatrix(FloatMatrix &answer, TimeStep *tStep) override
int computeLoadLEToLRotationMatrix(FloatMatrix &answer, int, GaussPoint *gp) override
void drawDeformedGeometry(oofegGraphicContext &gc, TimeStep *tStep, UnknownType) override
void NodalAveragingRecoveryMI_computeNodalValue(FloatArray &answer, int node, InternalStateType type, TimeStep *tStep) override
double computeEdgeVolumeAround(GaussPoint *gp, int) override
void computeConstitutiveMatrix_dPdF_At(FloatMatrix &answer, MatResponseMode rMode, GaussPoint *gp, TimeStep *tStep) override
FEInterpolation * giveInterpolation() const override
void initializeFrom(InputRecord &ir, int priority) override
double computeLength() override
void computeBmatrixAt(GaussPoint *gp, FloatMatrix &answer, int=1, int=ALL_STRAINS) override
int giveLocalCoordinateSystem(FloatMatrix &answer) override
int giveIPValue(FloatArray &answer, GaussPoint *gp, InternalStateType type, TimeStep *tStep) override
void computeStressVector(FloatArray &answer, const FloatArray &strain, GaussPoint *gp, TimeStep *tStep) override
void computeLumpedMassMatrix(FloatMatrix &answer, TimeStep *tStep) override
void giveDofManDofIDMask(int inode, IntArray &) const override
void computeBHmatrixAt(GaussPoint *gp, FloatMatrix &answer) override
static FEI3dLineLin interp
Truss3d(int n, Domain *d)
void computeConstitutiveMatrixAt(FloatMatrix &answer, MatResponseMode rMode, GaussPoint *gp, TimeStep *tStep) override
Interface * giveInterface(InterfaceType it) override
void computeGaussPoints() override
void drawRawGeometry(oofegGraphicContext &gc, TimeStep *tStep) override
ZZNodalRecoveryModelInterface(Element *element)
Constructor.
@ ZZNodalRecoveryModelInterfaceType
@ NodalAveragingRecoveryModelInterfaceType
oofem::oofegGraphicContext gc[OOFEG_LAST_LAYER]
#define OOFEG_DEFORMED_GEOMETRY_LAYER
#define OOFEG_DEFORMED_GEOMETRY_WIDTH
#define OOFEG_RAW_GEOMETRY_WIDTH
#define OOFEG_RAW_GEOMETRY_LAYER