1#ifndef dftefeScalarSpatialFunction_h
2#define dftefeScalarSpatialFunction_h
30 virtual std::vector<Q>
31 operator()(
const std::vector<utils::Point> &points)
const = 0;
33 template <MemorySpace memorySpace>
39#ifdef DFTEFE_WITH_DEVICE
40 evalDevice(numPoints, t, q);
43 false,
"eval<DEVICE>() called but DEVICE support not compiled.");
57 false,
"evalHost() not implemented for this ScalarSpatialFunction.");
60#ifdef DFTEFE_WITH_DEVICE
62 evalDevice(
size_type numPoints,
const double *t, Q *q)
const
66 "evalDevice() not implemented for this ScalarSpatialFunction.");
90 virtual std::vector<double>
93 template <MemorySpace memorySpace>
99#ifdef DFTEFE_WITH_DEVICE
100 evalDevice(numPoints, t, q);
103 false,
"eval<DEVICE>() called but DEVICE support not compiled.");
118 "evalHost() not implemented for this ScalarSpatialFunctionReal1D.");
121#ifdef DFTEFE_WITH_DEVICE
123 evalDevice(
size_type numPoints,
const double *t,
double *q)
const
127 "evalDevice() not implemented for this ScalarSpatialFunctionReal1D.");
Definition: PointImpl.h:13
Abstract base for scalar functions of a single real variable.
Definition: ScalarSpatialFunction.h:83
virtual std::vector< double > operator()(const std::vector< double > &x) const =0
virtual double operator()(double x) const =0
void eval(const size_type numPoints, const double *t, double *q) const
Definition: ScalarSpatialFunction.h:95
virtual ~ScalarSpatialFunctionReal1D()=default
virtual void evalHost(size_type numPoints, const double *t, double *q) const
Definition: ScalarSpatialFunction.h:114
Abstract base for scalar functions of a spatial point.
Definition: ScalarSpatialFunction.h:23
void eval(const size_type numPoints, const double *t, Q *q) const
Definition: ScalarSpatialFunction.h:35
virtual std::vector< Q > operator()(const std::vector< utils::Point > &points) const =0
virtual ~ScalarSpatialFunction()=default
virtual Q operator()(const utils::Point &point) const =0
virtual void evalHost(size_type numPoints, const double *t, Q *q) const
Definition: ScalarSpatialFunction.h:54
void throwException(bool condition, std::string msg)
Definition: Exceptions.cpp:56
dealii includes
Definition: AtomFieldDataSpherical.cpp:31
std::uint64_t size_type
Definition: TypeConfig.h:9