Loading...
Searching...
No Matches
stencil_weight.tpp
100 }
103 m_storage.pop_back();
115{
121}
151bool DiscreteStencilWeightManager<weight_t, value_t>::isNegligible(const W &weight, const weight_t &zero, double tolerance) const
165template<typename W, typename V, std::size_t D, typename std::enable_if<std::is_same<std::array<V, D>, W>::value>::type *>
166bool DiscreteStencilWeightManager<weight_t, value_t>::isNegligible(const std::array<V, D> &weight, const weight_t &zero, double tolerance) const
186template<typename W, typename V, typename std::enable_if<std::is_same<std::vector<V>, W>::value>::type *>
187bool DiscreteStencilWeightManager<weight_t, value_t>::isNegligible(const std::vector<V> &weight, const weight_t &zero, double tolerance) const
210void DiscreteStencilWeightManager<weight_t, value_t>::sum(const W &weight, double factor, W *target) const
224template<typename W, typename V, std::size_t D, typename std::enable_if<std::is_same<std::array<V, D>, W>::value>::type *>
225void DiscreteStencilWeightManager<weight_t, value_t>::sum(const std::array<V, D> &weight, double factor, std::array<V, D> *target) const
245template<typename W, typename V, typename std::enable_if<std::is_same<std::vector<V>, W>::value>::type *>
246void DiscreteStencilWeightManager<weight_t, value_t>::sum(const std::vector<V> &weight, double factor, std::vector<V> *target) const
289template<typename W, typename V, std::size_t D, typename std::enable_if<std::is_same<std::array<V, D>, W>::value>::type *>
290void DiscreteStencilWeightManager<weight_t, value_t>::copy(const std::array<V, D> &weight, std::array<V, D> *target) const
304template<typename W, typename V, typename std::enable_if<std::is_same<std::vector<V>, W>::value>::type *>
305void DiscreteStencilWeightManager<weight_t, value_t>::copy(const std::vector<V> &weight, std::vector<V> *target) const
341value_t & DiscreteStencilWeightManager<weight_t, value_t>::at(const W &weight, std::size_t index)
343 return const_cast<value_t &>(const_cast<const DiscreteStencilWeightManager<weight_t, value_t> *>(this)->at(weight, index));
354const value_t & DiscreteStencilWeightManager<weight_t, value_t>::at(const W &weight, std::size_t index) const
368template<typename W, typename V, std::size_t D, typename std::enable_if<std::is_same<std::array<V, D>, W>::value>::type *>
369value_t & DiscreteStencilWeightManager<weight_t, value_t>::at(const std::array<V, D> &weight, std::size_t index)
371 return const_cast<value_t &>(const_cast<const DiscreteStencilWeightManager<weight_t, value_t> *>(this)->at(weight, index));
381template<typename W, typename V, std::size_t D, typename std::enable_if<std::is_same<std::array<V, D>, W>::value>::type *>
382const value_t & DiscreteStencilWeightManager<weight_t, value_t>::at(const std::array<V, D> &weight, std::size_t index) const
394template<typename W, typename V, typename std::enable_if<std::is_same<std::vector<V>, W>::value>::type *>
395value_t & DiscreteStencilWeightManager<weight_t, value_t>::at(const std::vector<V> &weight, std::size_t index)
397 return const_cast<value_t &>(const_cast<const DiscreteStencilWeightManager<weight_t, value_t> *>(this)->at(weight, index));
407template<typename W, typename V, typename std::enable_if<std::is_same<std::vector<V>, W>::value>::type *>
408const value_t & DiscreteStencilWeightManager<weight_t, value_t>::at(const std::vector<V> &weight, int index) const
bool isNegligible(const W &weight, const weight_t &zero, double tolerance=1e-12) const
Definition stencil_weight.tpp:151
void copy(const W &weight, W *target) const
Definition stencil_weight.tpp:277
value_t & at(const W &weight, std::size_t index)
Definition stencil_weight.tpp:341
void move(W &&weight, W *target) const
Definition stencil_weight.tpp:328
void sum(const W &weight, double factor, W *target) const
Definition stencil_weight.tpp:210
void store(weight_t &&weight)
Definition stencil_weight.tpp:114
DiscreteStencilWeightPool(std::size_t capacity=128)
Definition stencil_weight.tpp:37
std::size_t capacity() const
Definition stencil_weight.tpp:64
