Rodin::Variational::IntegrationPoint class

Evaluation point used by variational operators.

An IntegrationPoint always stores a geometric point. It may optionally be associated to a quadrature formula and quadrature index:

  • getQuadratureFormula() != nullptr: the point is part of a quadrature loop, and getIndex() identifies the quadrature sample in that formula.
  • getQuadratureFormula() == nullptr: the point represents a generic pointwise evaluation (outside a quadrature tabulation context). In this case, consumers are expected to evaluate using getPoint().getReferenceCoordinates() rather than quadrature tabulation.

Constructors, destructors, conversion operators

IntegrationPoint(const Geometry::Point& p, const QF::QuadratureFormulaBase* qf, size_t qp)
Constructs a quadrature-associated integration point.

Public functions

auto getPoint() const -> const Geometry::Point&
auto getQuadratureFormula() const -> const QF::QuadratureFormulaBase*
auto getIndex() const -> size_t

Function documentation

Rodin::Variational::IntegrationPoint::IntegrationPoint(const Geometry::Point& p, const QF::QuadratureFormulaBase* qf, size_t qp)

Constructs a quadrature-associated integration point.

Parameters
in Geometric point (usually built from quadrature sample coordinates)
qf in Non-owning pointer to the quadrature formula that owns the sample indexing, or nullptr for direct pointwise evaluation
qp in Quadrature sample index in qf

const Geometry::Point& Rodin::Variational::IntegrationPoint::getPoint() const

Returns Underlying geometric point context.

const QF::QuadratureFormulaBase* Rodin::Variational::IntegrationPoint::getQuadratureFormula() const

Returns Non-owning pointer to the quadrature formula, or nullptr when this integration point is not in a quadrature context.

size_t Rodin::Variational::IntegrationPoint::getIndex() const

Returns Quadrature index associated with this point.