Deformetrica

RadialFunction.h
1 /***************************************************************************************
2 * *
3 * Deformetrica *
4 * *
5 * Copyright Inria and the University of Utah. All rights reserved. This file is *
6 * distributed under the terms of the MIT License. This file is also distributed *
7 * under the terms of the Inria Non-Commercial License Agreement. *
8 * *
9 * *
10 ****************************************************************************************/
11 
12 #ifndef _RadialFunction_h
13 #define _RadialFunction_h
14 
15 #include <cuda.h>
16 
31 template < typename TYPE >
33 {
34 
35 public:
36 
38  virtual __device__ __forceinline__ TYPE Eval(TYPE u) = 0;
39 
41  virtual __device__ __forceinline__ TYPE Diff(TYPE u) = 0;
42 
44  virtual __device__ __forceinline__ TYPE Diff2(TYPE u) = 0;
45 
47  virtual __device__ __forceinline__ void DiffDiff2(TYPE u, TYPE* d1, TYPE* d2)
48  {
49  *d1 = Diff(u);
50  *d2 = Diff2(u);
51  }
52 
53 }; /* class RadialFunction */
54 
55 
56 #endif /* _RadialFunction_h */
virtual __device__ __forceinline__ TYPE Diff2(TYPE u)=0
Computes the second derivative of .
virtual __device__ __forceinline__ void DiffDiff2(TYPE u, TYPE *d1, TYPE *d2)
Stores in d1 (resp. d2) the first (resp. second) derivative of .
Definition: RadialFunction.h:47
virtual __device__ __forceinline__ TYPE Eval(TYPE u)=0
Computes .
virtual __device__ __forceinline__ TYPE Diff(TYPE u)=0
Computes the derivative of .
Radial function.
Definition: RadialFunction.h:32