-
Notifications
You must be signed in to change notification settings - Fork 83
Description
Describe the bug
fpocket and dpocket compute different drug scores for otherwise identical pockets (all other descriptors appear to be the same)
To Reproduce
Steps to reproduce the behavior:
- Take any holo pdb and create an analogous "apo" pdb by deleting the ligand
- Run
fpocket -f apo.pdb -d | head -n2 > fpout_fpocketp.txtandecho "holo.pdb <residue name>" > input.txt; dpocket -f input.txt - Compare descriptors in fpout_fpocketp.txt and dpout_fpocketp.txt:
These are in different formats and differ in contents so I ran the following script to compare a few obvious ones.
for val in drug_score hydrophobicity_score volume_score polarity_score charge_score mean_loc_hyd_dens as_density
do
fpock=`awk '{if(NR==1){for(i=1; i<=NF; i++){ if($i == "'$val'"){ j=i; }}}else{print $j}}' fpout_fpocketp.txt`
dpock=`awk '{if(NR==1){for(i=1; i<=NF; i++){ if($i == "'$val'"){ j=i; }}}else{print $j}}' dpout_fpocketp.txt`
printf "%20s % 8f %8f\n" $val $fpock $dpock
done
Expected behavior
Unless I am misunderstanding something about how dpocket operates, I would have thought all descriptors would be the same.
Screenshots
This probably wouldn't help, but I visualized and diff`ed the vertices pqr files and everything is the same except for the header.
Desktop (please complete the following information):
- OS: Ubuntu 24.04
- Fpocket 4.0
Additional context
My original goal was to make a quick workflow to report the drug score for the pocket most overlapping with a given holo structure -- this finding doesn't hinder that goal because I will just give deference to fpocket and choose the pocket with the highest overlap (not hard to script), but I assumed dpocket already implemented this.