15 if ((dim == 1) && (std::is_same<kernel_function_type, WendlandC2>::value))
18 coefficient = 5.0/(8.0*H);
21 if ((dim == 2) && (std::is_same<kernel_function_type, WendlandC2>::value))
24 coefficient = 7.0/(4.0*M_PI*H*H);
27 if ((dim == 3) && (std::is_same<kernel_function_type, WendlandC2>::value))
30 coefficient = 21.0/(16.0*M_PI*H*H*H);
42 double factor = 1.0 - q/2.0;
43 factor = factor*factor*factor;
44 return(coefficient*factor*(1.5*q + 1));
53 double factor = 1.0 - q/2.0;
54 factor = factor*factor;
55 factor = factor*factor;
56 return(coefficient*factor*(1.0 + 2.0*q));
65 double factor = 1.0 - q/2.0;
66 factor = factor*factor;
67 factor = factor*factor;
68 return(coefficient*factor*(1.0 + 2.0*q));
83 double factor = (-5.0*coefficient/(H))*q*(1.0 - q/2.0)*(1.0 - q/2.0)*(1.0 - q/2.0);
85 DW.
get(0) = factor * dx.
get(0)/r;
86 DW.
get(1) = factor * dx.
get(1)/r;
103 double factor = (-5.0*coefficient/(H))*q*(1.0 - q/2.0)*(1.0 - q/2.0)*(1.0 - q/2.0);
105 DW.
get(0) = factor * dx.
get(0)/r;
106 DW.
get(1) = factor * dx.
get(1)/r;
107 DW.
get(2) = factor * dx.
get(2)/r;
This class implement the point shape in an N-dimensional space.
__device__ __host__ const T & get(unsigned int i) const
Get coordinate.