@@ -29,7 +29,7 @@ static PyObject * cpydock_calculate_energy(PyObject *self, PyObject *args) {
29
29
PyArrayObject * rec_hydrogens , * lig_hydrogens , * rec_asa , * lig_asa , * rec_des_energy , * lig_des_energy = NULL ;
30
30
double atom_elec , total_elec , total_vdw , total_solvation_rec , total_solvation_lig , vdw_energy , vdw_radius , p6 , k , solv_rec , solv_lig ;
31
31
unsigned int rec_len , lig_len , i , j , interface_len , intf_array_size , * interface_receptor , * interface_ligand ;
32
- double * * rec_array , * * lig_array , x , y , z , distance2 , interface_cutoff ;
32
+ double * * rec_array , * * lig_array , x , y , z , distance2 , interface_cutoff , interface_cutoff2 ;
33
33
npy_intp dims [2 ];
34
34
double * rec_c_charges , * lig_c_charges , * rec_c_vdw , * lig_c_vdw , * rec_c_vdw_radii , * lig_c_vdw_radii = NULL ;
35
35
double * rec_c_asa , * lig_c_asa , * rec_c_des_energy , * lig_c_des_energy = NULL ;
@@ -51,6 +51,8 @@ static PyObject * cpydock_calculate_energy(PyObject *self, PyObject *args) {
51
51
& rec_vdw , & lig_vdw , & rec_vdw_radii , & lig_vdw_radii , & rec_hydrogens , & lig_hydrogens ,
52
52
& rec_asa , & lig_asa , & rec_des_energy , & lig_des_energy , & interface_cutoff )) {
53
53
54
+ interface_cutoff2 = interface_cutoff * interface_cutoff ;
55
+
54
56
tmp0 = PyObject_GetAttrString (receptor_coordinates , "coordinates" );
55
57
tmp1 = PyObject_GetAttrString (ligand_coordinates , "coordinates" );
56
58
@@ -122,7 +124,7 @@ static PyObject * cpydock_calculate_energy(PyObject *self, PyObject *args) {
122
124
total_vdw += k ;
123
125
}
124
126
125
- if (sqrt ( distance2 ) <= interface_cutoff ) {
127
+ if (distance2 <= interface_cutoff2 ) {
126
128
interface_receptor [interface_len ] = i ;
127
129
interface_ligand [interface_len ++ ] = j ;
128
130
}
0 commit comments