14 #ifndef INCLUDED_protocols_pockets_Fingerprint_hh
15 #define INCLUDED_protocols_pockets_Fingerprint_hh
17 #include <utility/pointer/ReferenceCount.hh>
25 #include <numeric/constants.hh>
26 #include <numeric/xyzVector.hh>
27 #include <utility/vector1_bool.hh>
31 #include <utility/vector1.hh>
32 #include <basic/gpu/GPU.hh>
34 #define NUMBER_OF_PARTICLES 200
35 #define ATOMS_ARRAY 20000
36 #define RAY_SCORE_ARRAY 2500000
37 #define MAX_NUM_RAYS 100000
112 void setup_gpu_rays();
140 basic::gpu::GPU gpu_;
141 cl_mem gpu_rays_, gpu_atoms_, gpu_ray_scores_, gpu_particle_scores_, gpu_weights_, gpu_atom_maxmin_phipsi_;
142 int gpu_num_rays_, gpu_num_atoms_, gpu_num_particles_;
223 core::Real const triplet_rho = sqrt((coord.x()*coord.x())+(coord.y()*coord.y())+(coord.z()*coord.z()));
224 triplet.
rho = triplet_rho;
225 triplet.
phi = acos(coord.z()/triplet_rho);
226 triplet.
psi = atan2((coord.y()),(coord.x()));
233 core::Real const rho_times_sin_triplet_phi = triplet_rho*sin(triplet_phi);
234 coord.x() = rho_times_sin_triplet_phi*cos(triplet_psi);
235 coord.y() = rho_times_sin_triplet_phi*sin(triplet_psi);
236 coord.z() = triplet_rho*cos(triplet_phi);
240 double dD_dv1(
const double,
const double,
const double,
const double,
const double,
const double,
const double,
const double,
const double,
const double) ;
241 double dD_dv2(
const double,
const double,
const double,
const double,
const double,
const double,
const double,
const double,
const double,
const double) ;
242 double dD_dv3(
const double,
const double,
const double,
const double,
const double,
const double,
const double,
const double,
const double,
const double) ;
243 double dD_dv4(
const double,
const double,
const double,
const double,
const double,
const double,
const double,
const double,
const double,
const double,
const double,
const double,
const double,
const double,
const double,
const double,
const double,
const double,
const double) ;
244 double dD_dv5(
const double,
const double,
const double,
const double,
const double,
const double,
const double,
const double,
const double,
const double,
const double,
const double,
const double,
const double,
const double,
const double,
const double,
const double,
const double) ;
245 double dD_dv6(
const double,
const double,
const double,
const double,
const double,
const double,
const double,
const double,
const double,
const double,
const double,
const double,
const double,
const double,
const double,
const double,
const double,
const double,
const double) ;