changa 3.5
Loading...
Searching...
No Matches
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
12CUDA_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 ))
21addCudaVector3D(CudaVector3D &a, CudaVector3D &b, CudaVector3D &c);
22
23__device__ inline void __attribute__(( always_inline ))
24minusCudaVector3D(CudaVector3D &a, CudaVector3D &b, CudaVector3D &c);
25
26__device__ inline void __attribute__(( always_inline ))
27assignCudaVector3D(CudaVector3D &a, CudaVector3D &b);
28
29__device__ inline bool __attribute__(( always_inline ))
30CUDA_intersect(CUDABucketNode &b, CudaSphere &s);
31
32__device__ inline bool __attribute__(( always_inline ))
33CUDA_intersect(CudaSphere &s1, CudaSphere &s2);
34
35__device__ inline bool __attribute__(( always_inline ))
36CUDA_contains(const CudaSphere &s, const CudaVector3D &v);
37
38__device__ inline bool __attribute__(( always_inline ))
39CUDA_contained(const CUDATreeNode &b, const CudaSphere &s);
40
41__device__ inline int __attribute__(( always_inline ))
42CUDA_openSoftening(CUDATreeNode &node, CUDABucketNode &myNode);
43
44__device__ inline CudaVector3D __attribute__(( always_inline ))
45CUDA_openCriterionNode(CUDATreeNode &node,
46 CUDABucketNode &myNode,
47 int localIndex,
48 cudatype theta,
49 cudatype thetaMono);
50
51__device__ inline void __attribute__(( always_inline ))
52CUDA_SPLINEQ(cudatype invr, cudatype r2, cudatype twoh, cudatype& a,
53 cudatype& b,cudatype& c,cudatype& d);
54
55__device__ inline void __attribute__(( always_inline ))
56CUDA_SPLINE(cudatype r2, cudatype twoh, cudatype &a, cudatype &b);
57
58__device__ inline int __attribute__(( always_inline ))
59CUDA_OptAction(int fakeOpen, int nodetype);
60#endif //GPU_LOCAL_TREE_WALK
61
62#endif /* CUDAMoments_h */
float cudatype
floating point type on the GPU
Definition cuda_typedef.h:12
Version of MultipoleMoments using cudatype.
Definition cuda_typedef.h:104
3D vector of cudatype.
Definition cuda_typedef.h:55