changa  3.5
 All Classes Files Functions Variables Typedefs Enumerations Friends Macros Groups Pages
CUDAMoments.h
1 #ifndef CUDAMoments_h
2 #define CUDAMoments_h 1
3 
4 #include "cuda_typedef.h"
5 
7 #ifdef CUDA_UNIT_TEST
8 __global__ void
9 #else
10 __device__ inline void __attribute__(( always_inline ))
11 #endif
12 CUDA_momEvalFmomrcm(const CudaMultipoleMoments* _m,
13  const CudaVector3D* _r,
14  cudatype dir,
15  CudaVector3D* out,
16  cudatype* pot);
17 
18 #ifdef GPU_LOCAL_TREE_WALK
19 
20 __device__ inline void __attribute__(( always_inline ))
21 addCudaVector3D(CudaVector3D &a, CudaVector3D &b, CudaVector3D &c);
22 
23 __device__ inline void __attribute__(( always_inline ))
24 minusCudaVector3D(CudaVector3D &a, CudaVector3D &b, CudaVector3D &c);
25 
26 __device__ inline void __attribute__(( always_inline ))
27 assignCudaVector3D(CudaVector3D &a, CudaVector3D &b);
28 
29 __device__ inline bool __attribute__(( always_inline ))
30 CUDA_intersect(CUDABucketNode &b, CudaSphere &s);
31 
32 __device__ inline bool __attribute__(( always_inline ))
33 CUDA_intersect(CudaSphere &s1, CudaSphere &s2);
34 
35 __device__ inline bool __attribute__(( always_inline ))
36 CUDA_contains(const CudaSphere &s, const CudaVector3D &v);
37 
38 __device__ inline bool __attribute__(( always_inline ))
39 CUDA_contained(const CUDATreeNode &b, const CudaSphere &s);
40 
41 __device__ inline int __attribute__(( always_inline ))
42 CUDA_openSoftening(CUDATreeNode &node, CUDABucketNode &myNode);
43 
44 __device__ inline CudaVector3D __attribute__(( always_inline ))
45 CUDA_openCriterionNode(CUDATreeNode &node,
46  CUDABucketNode &myNode,
47  int localIndex,
50 
51 __device__ inline void __attribute__(( always_inline ))
52 CUDA_SPLINEQ(cudatype invr, cudatype r2, cudatype twoh, cudatype& a,
53  cudatype& b,cudatype& c,cudatype& d);
54 
55 __device__ inline void __attribute__(( always_inline ))
56 CUDA_SPLINE(cudatype r2, cudatype twoh, cudatype &a, cudatype &b);
57 
58 __device__ inline int __attribute__(( always_inline ))
59 CUDA_OptAction(int fakeOpen, int nodetype);
60 #endif //GPU_LOCAL_TREE_WALK
61 
62 #endif /* CUDAMoments_h */
Version of MultipoleMoments using cudatype.
Definition: cuda_typedef.h:95
cosmoType theta
BH-like opening criterion.
Definition: ParallelGravity.cpp:142
float cudatype
floating point type on the GPU
Definition: cuda_typedef.h:12
cosmoType thetaMono
Definition: ParallelGravity.cpp:143
3D vector of cudatype.
Definition: cuda_typedef.h:46