flyweight.hh
Go to the documentation of this file.
19 return ( (order.polynomialDegree_ << 10 | order.nQuadraturePoints_) << 10) | order.quadratureType_;
122 std::shared_ptr<const FunctionT> makeShapeFunction(const concepts::QuadratureRule1d& quadratureRule,
206 quadrature = std::make_shared<AdaptiveQuadratureRule1d<intRule::GAUSS_JACOBI> >(nQuadraturePoints);
std::shared_ptr< const FunctionT > makeShapeFunction(const concepts::QuadratureRule1d &quadratureRule, const uint polynomialDegree)
factory function encapsulating the memory manager
Definition: flyweight.hh:122
std::unordered_map< KeyT, std::weak_ptr< const ValueT >, Hash< KeyT > > container_
TODO: Write extra method for the removable of entries with non-lockable weak_ptrs.
Definition: flyweight.hh:117
concepts::intRule quadratureType_
Definition: flyweight.hh:47
ShapeFunction1DOrder(const uint polynomialDegree, const uint nQuadraturePoints, const concepts::intRule quadratureType)
Definition: flyweight.hh:23
void insert(const KeyT &key, std::shared_ptr< const ValueT > &value)
Definition: flyweight.hh:106
#define conceptsAssert(cond, exc)
Assert that a certain condition is fulfilled.
Definition: exceptions.hh:394
Definition: flyweight.hh:14
Gauss Jacobi quadrature rule not including both endpoints.
Definition: quadRule.hh:135
std::shared_ptr< const FunctionT > makeQuadrature(const uint nQuadraturePoints, const intRule quadratureType)
factory function encapsulating the memory manager
Definition: flyweight.hh:154
std::size_t operator()(const ShapeFunction1DOrder &order) const
Definition: flyweight.hh:18
std::shared_ptr< const ValueT > get(const KeyT &key)
Definition: flyweight.hh:98
Definition: flyweight.hh:78
std::size_t operator()(const QuadratureOrder &order) const
Definition: flyweight.hh:54
QuadratureOrder(const uint nQuadraturePoints, const concepts::intRule quadratureType)
Definition: flyweight.hh:59
Gauss Lobatto quadrature rule including both endpoints.
Definition: quadRule.hh:94
bool operator==(const ShapeFunction1DOrder &other) const
Definition: flyweight.hh:37
uint nQuadraturePoints_
Definition: flyweight.hh:46
std::shared_ptr< const FunctionT > makeAdaptiveQuadrature(const uint nQuadraturePoints, const intRule quadratureType)
factory function encapsulating the memory manager
Definition: flyweight.hh:191
bool operator==(const QuadratureOrder &other) const
Definition: flyweight.hh:66
ShapeFunction1DOrder::Hash type
Definition: flyweight.hh:83
concepts::intRule quadratureType_
Definition: flyweight.hh:74
Definition: flyweight.hh:52
Definition: flyweight.hh:50
Definition: quadRule.hh:178