1 //////////////////////////////////////////////////////////////////////////////////////
2 // This file is distributed under the University of Illinois/NCSA Open Source License.
3 // See LICENSE file in top directory for details.
4 //
5 // Copyright (c) 2016 Jeongnim Kim and QMCPACK developers.
6 //
7 // File developed by: Ken Esler, kpesler@gmail.com, University of Illinois at Urbana-Champaign
8 //                    Jeremy McMinnis, jmcminis@gmail.com, University of Illinois at Urbana-Champaign
9 //
10 // File created by: Ken Esler, kpesler@gmail.com, University of Illinois at Urbana-Champaign
11 //////////////////////////////////////////////////////////////////////////////////////
12 
13 
14 #ifndef CUDA_NLPP_H
15 #define CUDA_NLPP_H
16 
17 void find_core_electrons_PBC(float* R[],
18                              int numElec,
19                              float I[],
20                              int firstIon,
21                              int lastIon,
22                              float rcut,
23                              float L[],
24                              float Linv[],
25                              int2* pairs[],
26                              float* dist[],
27                              int numPairs[],
28                              int numWalkers);
29 void find_core_electrons_PBC(double* R[],
30                              int numElec,
31                              double I[],
32                              int firstIon,
33                              int lastIon,
34                              double rcut,
35                              double L[],
36                              double Linv[],
37                              int2* pairs[],
38                              double* dist[],
39                              int numPairs[],
40                              int numWalkers);
41 
42 void find_core_electrons_PBC(float* R[],
43                              int numElec,
44                              float I[],
45                              int firstIon,
46                              int lastIon,
47                              float rcut,
48                              float L[],
49                              float Linv[],
50                              float quadPoints[],
51                              int numQuadPoints,
52                              int* elecs[],
53                              float* ratioPos[],
54                              float* dist_list[],
55                              float* cosTheta_list[],
56                              int numPairs[],
57                              int numWalkers);
58 
59 void find_core_electrons_PBC(double* R[],
60                              int numElec,
61                              double I[],
62                              int firstIon,
63                              int lastIon,
64                              double rcut,
65                              double L[],
66                              double Linv[],
67                              double quadPoints[],
68                              int numQuadPoints,
69                              int* elecs[],
70                              double* ratioPos[],
71                              double* dist_list[],
72                              double* cosTheta_list[],
73                              int numPairs[],
74                              int numWalkers);
75 
76 
77 void find_core_electrons(float* R[],
78                          int numElec,
79                          float I[],
80                          int firstIon,
81                          int lastIon,
82                          float rcut,
83                          int2* pairs[],
84                          float* dist[],
85                          int numPairs[],
86                          int numWalkers);
87 void find_core_electrons(double* R[],
88                          int numElec,
89                          double I[],
90                          int firstIon,
91                          int lastIon,
92                          double rcut,
93                          double L[],
94                          double Linv[],
95                          int2* pairs[],
96                          double* dist[],
97                          int numPairs[],
98                          int numWalkers);
99 
100 void find_core_electrons(float* R[],
101                          int numElec,
102                          float I[],
103                          int firstIon,
104                          int lastIon,
105                          float rcut,
106                          float quadPoints[],
107                          int numQuadPoints,
108                          int* elecs[],
109                          float* ratioPos[],
110                          float* dist_list[],
111                          float* cosTheta_list[],
112                          int numPairs[],
113                          int numWalkers);
114 
115 void find_core_electrons(double* R[],
116                          int numElec,
117                          double I[],
118                          int firstIon,
119                          int lastIon,
120                          double rcut,
121                          double quadPoints[],
122                          int numQuadPoints,
123                          int* elecs[],
124                          double* ratioPos[],
125                          double* dist_list[],
126                          double* cosTheta_list[],
127                          int numPairs[],
128                          int numWalkers);
129 
130 #endif
131