75 answer.
at(1, i * 3 - 2) = d.
at(i, 1);
76 answer.
at(2, i * 3 - 1) = d.
at(i, 2);
77 answer.
at(3, i * 3 - 0) = d.
at(i, 3);
79 answer.
at(4, 3 * i - 1) = d.
at(i, 3);
80 answer.
at(4, 3 * i - 0) = d.
at(i, 2);
82 answer.
at(5, 3 * i - 2) = d.
at(i, 3);
83 answer.
at(5, 3 * i - 0) = d.
at(i, 1);
85 answer.
at(6, 3 * i - 2) = d.
at(i, 2);
86 answer.
at(6, 3 * i - 1) = d.
at(i, 1);
92 double determinant = fabs(this->
giveElement()->giveInterpolation()
virtual FEInterpolation * giveInterpolation() const
CrossSection * giveCrossSection()
virtual void evalN(FloatArray &answer, const FloatArray &lcoords, const FEICellGeometry &cellgeo) const =0
virtual double evaldNdx(FloatMatrix &answer, const FloatArray &lcoords, const FEICellGeometry &cellgeo) const =0
void resize(Index rows, Index cols)
void beNMatrixOf(const FloatArray &n, int nsd)
void zero()
Zeroes all coefficient of receiver.
int giveNumberOfRows() const
Returns number of rows of receiver.
double at(std::size_t i, std::size_t j) const
const FloatArray & giveNaturalCoordinates() const
Returns coordinate array of receiver.
IntegrationRule * giveIntegrationRule()
Returns corresponding integration rule to receiver.
double giveWeight()
Returns integration weight of receiver.
virtual const IntArray * giveKnotSpan()
Returns receiver sub patch indices (if apply).
void computeNMatrixAt(FloatMatrix &answer, GaussPoint *gp) override
void computeStressVector(FloatArray &answer, const FloatArray &strain, GaussPoint *gp, TimeStep *tStep) override
void computeConstitutiveMatrixAt(FloatMatrix &answer, MatResponseMode rMode, GaussPoint *gp, TimeStep *tStep) override
void computeBMatrixAt(FloatMatrix &answer, GaussPoint *gp) override
double computeVolumeAround(GaussPoint *gp) override
virtual Element * giveElement()=0