35#ifndef integrationrule_h
36#define integrationrule_h
170 int setUpIntegrationPoints(
integrationDomain intdomain,
int nPoints, MaterialMode matMode);
179 int setUpIntegrationPoints(
integrationDomain intdomain,
int nPointsXY,
int nPointsZ, MaterialMode matMode);
188 int setUpEmbeddedIntegrationPoints(
integrationDomain intdomain,
int nPoints, MaterialMode matMode,
189 const std :: vector< FloatArray > &coords);
195 virtual void printOutputAt(FILE *file,
TimeStep *tStep);
200 void updateYourself(
TimeStep *tStep);
256 int SetUpPoint(MaterialMode mode);
virtual const IntArray * giveKnotSpan()
Returns receiver sub patch indices (if apply).
std::string errorInfo(const char *func) const
Error printing helper.
virtual int SetUpPointsOnLine(int, MaterialMode mode)
virtual IntegrationRuleType giveIntegrationRuleType() const
virtual int SetUpPointsOn3dDegShell(int nPointsXY, int nPointsZ, MaterialMode mode)
virtual int getRequiredNumberOfIntegrationPoints(integrationDomain dType, int approxOrder)
Element * elem
Element which integration rule is coupled to.
int giveNumberOfIntegrationPoints() const
virtual int SetUpPointsOnCubeLayers(int nPoints1, int nPoints2, int nPointsDepth, MaterialMode mode, const FloatArray &layerThickness)
std::vector< GaussPoint * > gaussPoints
Array containing integration points.
virtual int SetUpPointsOn3dDegShellLayers(int nPointsXY, int nPointsZ, MaterialMode mode, const FloatArray &layerThickness)
virtual const char * giveClassName() const
integrationDomain intdomain
Integration domain.
IntegrationRule(int n, Element *e, int startIndx, int endIndx, bool dynamic)
virtual int SetUpPointsOnWedge(int nPointsTri, int nPointsDepth, MaterialMode mode)
virtual void initializeFrom(InputRecord &ir)
virtual int SetUpPointsOnWedgeLayers(int nPointsTri, int nPointsDepth, MaterialMode mode, const FloatArray &layerThickness)
int getEndIndexOfLocalStrainWhereApply()
virtual int SetUpPointsOnSquare(int, MaterialMode mode)
virtual int SetUpPointsOnCube(int, MaterialMode mode)
std::vector< GaussPoint * >::iterator end()
int getStartIndexOfLocalStrainWhereApply()
std::vector< GaussPoint * >::iterator begin()
void setElement(Element *e)
virtual int SetUpPointsOnTriangle(int, MaterialMode mode)
integrationDomain giveIntegrationDomain() const
virtual int SetUpPointsOn2DEmbeddedLine(int nPoints, MaterialMode mode, const FloatArray &coord0, const FloatArray &coord1)
virtual int SetUpPointsOnTetrahedra(int, MaterialMode mode)