21 #ifndef fiber_collection_of_kernels_hpp
22 #define fiber_collection_of_kernels_hpp
24 #include "../common/common.hpp"
26 #include "scalar_traits.hpp"
34 template <
typename T>
class CollectionOf3dArrays;
35 template <
typename T>
class CollectionOf4dArrays;
36 template <
typename CoordinateType>
class GeometricalData;
58 template <
typename ValueType_>
62 typedef ValueType_ ValueType;
85 size_t& testGeomDeps,
size_t& trialGeomDeps)
const = 0;
148 throw std::runtime_error(
"CollectionOfKernels::evaluateClCode(): "
152 virtual CoordinateType estimateRelativeScale(CoordinateType distance)
const = 0;
Traits of scalar types.
Definition: scalar_traits.hpp:40
virtual void evaluateAtPointPairs(const GeometricalData< CoordinateType > &testGeomData, const GeometricalData< CoordinateType > &trialGeomData, CollectionOf3dArrays< ValueType > &result) const =0
Evaluate the kernels at a list of (test point, trial point) pairs.
Collection of kernels.
Definition: collection_of_kernels.hpp:59
Storage of geometrical data.
Definition: geometrical_data.hpp:54
virtual void addGeometricalDependencies(size_t &testGeomDeps, size_t &trialGeomDeps) const =0
Retrieve types of geometrical data on which the kernels depend.
Definition: collection_of_3d_arrays.hpp:39
virtual ~CollectionOfKernels()
Destructor.
Definition: collection_of_kernels.hpp:66
virtual void evaluateOnGrid(const GeometricalData< CoordinateType > &testGeomData, const GeometricalData< CoordinateType > &trialGeomData, CollectionOf4dArrays< ValueType > &result) const =0
Evaluate the kernels on a tensor grid of test and trial points.
Definition: collection_of_4d_arrays.hpp:41
virtual std::pair< const char *, int > evaluateClCode() const
Currently unused.
Definition: collection_of_kernels.hpp:147