Git Product home page Git Product logo

discngine / fpocket Goto Github PK

View Code? Open in Web Editor NEW
278.0 26.0 60.0 127.66 MB

fpocket is a very fast open source protein pocket detection algorithm based on Voronoi tessellation. The platform is suited for the scientific community willing to develop new scoring functions and extract pocket descriptors on a large scale level. fpocket is distributed as free open source software. If you are interested in integrating fpocket in an industrial setting and require official support, please contact Discngine (www.discngine.com).

License: MIT License

Makefile 1.15% Shell 0.88% Python 0.30% C 67.57% C++ 9.81% HTML 17.68% CSS 0.03% CMake 0.37% Batchfile 0.61% Roff 0.85% QMake 0.50% Promela 0.23% Dockerfile 0.01%

fpocket's Introduction

fpocket logo

Build Status Join the chat at https://gitter.im/fpocket/community

The fpocket suite of programs is a very fast open source protein pocket detection algorithm based on Voronoi tessellation. The platform is suited for the scientific community willing to develop new scoring functions and extract pocket descriptors on a large scale level.

Detailed documentation is available here: User Manual. The documentation below here is just a quick & rough overview.

Content

  • fpocket : the original pocket prediction on a single protein structure
  • mdpocket : extension of fpocket to analyse conformational ensembles of proteins (MD trajectories for instance)
  • dpocket : extract pocket descriptors
  • tpocket : test your pocket scoring function

What's new compared to fpocket 2.0 (old sourceforge repo)

fpocket:

  • fpocket now supports mmCIF as input and output format together with the classical PDB format
  • support was added to define / delete and handle protein chains or sets of them to enable characterization of protein protein binding epitopes
  • is now able to consider explicit pockets when you want to calculate properties for a known binding site
  • cli changed a bit
  • pocket flexibility using temperature factors is better considered (less very flexible pockets on very solvent exposed areas)
  • druggability score has been reoptimized vs original paper. Yields now slightly better results than the original implementation.
  • compiler bug on newer compilers fixed

mdpocket:

  • can now read Gromacs XTC, netcdf and dcd trajectories
  • can also read prmtop topologies
  • if topology provided, interaction energy grids can be calculated for transient pockets and channels (experimental)

Getting Started

Prerequisites (if you want to compile it)

The most recent versions (starting with fpocket 3.0) make use of the molfile plugin from VMD. This plugin is shipped with fpocket. However, now you need to install the netcdf library on your system. This is typically called netcdf-devel or so, depending on you linux distribution. fpocket needs to be compiled to run on your machine. For this you'll need the gnu c compiler (or another one).

install netcdf-devel on ubuntu type :

sudo apt-get install libnetcdf-dev

on a RHEL based distribution something like this should do:

sudo yum install netcdf-devel.x86_64

on OSX:

Install MacPorts https://www.macports.org/ for instance (needed for netcdf install)

sudo port install netcdf
export LIBRARY_PATH=/opt/local/lib

Docker Image

Using the official fpocket docker image

The following command will pull the latest fpocket docker image from the dockerhub.

docker pull fpocket/fpocket

Building the docker image

You can create a docker image with fpocket using the provided Dockerfile of the repo (obviously you'd need docker to do that):

docker build -t fpocket/fpocket .

Using the docker image

This will build fpocket into your local fpocket/fpocket image. You can then run fpocket/mdpocket etc using:

docker run -v `pwd`:/workdir fpocket/fpocket fpocket -f /workdir/yourfile.pdb

Here you mount your current directory with your input files into the preconfigured /workdir in the docker container and then run fpocket on a file in that mounted folder. Make sure that the folder is writeable to others if you run it through docker.

Installing

Download the sources from github via the website or using git clone and then build and deploy fpocket using the following commands.

Compiling on Linux

git clone https://github.com/Discngine/fpocket.git
cd fpocket
make 
sudo make install

Compiling on Mac

git clone https://github.com/Discngine/fpocket.git
cd fpocket
make ARCH=MACOSXX86_64
sudo make install

For M1 and M2, use the MACOSXARM64 architecture:

ARCH=MACOSXARM64 make

Using conda

There's also a conda package of fpocket available thanks to Simon Bray. You can install fpocket using conda with:

conda config --add channels conda-forge
conda install fpocket

Testing your installation

In order to test if the compilation went well you can compare results from fpocket sample files to reference results shipped with fpocket. The easiest way to do that is by using pytest. If you do not have pytest yet, you can install the required library using the conda environment file in the tests folder:

conda env create -f tests/environment.yml
conda activate fpocket_test

Once your conda environment activated you can run

pytest

If everything works fine you should get something like this output here:

fpocket_test) Mac-Pro:fpocket peter$ pytest 
============================================================= test session starts ==============================================================
platform darwin -- Python 3.7.7, pytest-5.4.2, py-1.8.1, pluggy-0.13.1
rootdir: /Users/peter/Documents/Work/fpocket_git/fpocket
collected 4 items                                                                                                                              

tests/test_fpocket.py ....                                                                                                               [100%]

============================================================== 4 passed in 40.92s ==============================================================

If something fails in there you'll have a rather verbose and red output ... trust me you'll notice and panic ;)

Running fpocket

You can run fpocket using the following command line as an example:

fpocket -f 1uyd.pdb

fpocket now also eats cif as input, so this would work as well. Make sure to use proper file extensions

fpocket -f 1uyd.cif

This will detect all pockets on the input pdb file, named 1uyd.pdb If you want to get all command line args for fpocket, simply type `fpocket``

Running mdpocket

To detect all pockets and create a pocket frequency grid on a sample input trajectory in an xtc format for instance you can run:

mdpocket --trajectory_file input.xtc --trajectory_format xtc -f topology.pdb

Detailed User Manual

You can access the detailed user manual here * User Manual

Contributing

Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.

Authors

  • Peter Schmidtke - Initial work - pschmidtke
  • Vincent Le Guilloux - Initial work - leguilv
  • Mael Shorkar - Chain handling, MMCIF support - shorkarmael

License

This project is licensed under the MIT License - see the LICENSE file for details

fpocket's People

Contributors

drewnutt avatar elizakartchner avatar jordansafer avatar mshyu24 avatar pegerto-ck avatar peyratg avatar pschmidtke avatar shorkarmael avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

fpocket's Issues

Pytests fail after installation from source

Hi,
I am struggling with the installation from source code (on ubuntu 20.04).
I installed fpocket from source as described on the manual page.
However, after the installation all 5 tests are failing.
I included the make output
make_out.txt
and the test output.
test_out.txt

Would be great if you could let me know what I am doing wrong.

Thanks for your help,
Michael

what's behind "exceeding memory size for each grid element"?

Hello fpocket team!

I just got into using fpocket today, looping it over a couple of hundred protein homology models I built:

for i in *.pdb; do
  fpocket -v 10000 \ 
  -f $i
done

During the runs, I repeatedly got a warning saying "exceeding memory size for each grid element".

The runs are completing despite this error, and I can't really tell if it has any consequence for the output files. I think I found the chunk of code that outputs the error:

fpocket/src/rpdb.c

Lines 242 to 244 in 38a1c49

else
fprintf(stderr, "exceeding memory size for each grid element\n");
g->atom_ptr[xidx][yidx][zidx].natoms += 1;

I still don't know what it means, though. Any tips?

Thanks!
Leonard

topology file

What PDB file are we supposed to indicate as topology file in the -f flag for the Pocket Exploration stage ?
I thought the point of pocket 3.0 was that we only needed trajectory files, and am not sure what file to mention in the -f flag

Originally posted by @rpmagalhaes in #24 (comment)

ANSWER:

If you want to analyze a large MD trajectories you can use MD formats like XTC etc. the -f flag simply indicates a SINGLE pdb structure in order to get the topology of the structure (atom types, residue names etc). Some MD formats (DCD for instance) do not contain that level of detail...so that's why specifying -f and a pdb file is mandatory. Note that -f is not the same as specifying a list of PDB files as coordinates using --pdb_list or -L...

Hope that's clearer now.

Compile error "clang: error: cannot specify -o when generating multiple output files"

Following #6

Full make output:
make.error3.txt

Relevant part:

gcc obj/fpmain.o obj/psorting.o obj/pscoring.o obj/utils.o obj/pertable.o obj/memhandler.o obj/voronoi.o obj/sort.o obj/calc.o obj/writepdb.o obj/rpdb.o obj/tparams.o obj/fparams.o obj/pocket.o obj/refine.o obj/descriptors.o obj/aa.o obj/fpocket.o obj/write_visu.o obj/fpout.o obj/atom.o obj/writepocket.o obj/voronoi_lst.o obj/asa.o obj/clusterlib.o obj/energy.o obj/topology.o src/qhull/geom2.o src/qhull/geom.o src/qhull/global.o src/qhull/io.o src/qhull/io.h src/qhull/libqhull.o src/qhull/mem.o src/qhull/merge.o src/qhull/poly2.o src/qhull/poly.o src/qhull/qset.o src/qhull/random.o src/qhull/rboxlib.o src/qhull/stat.o src/qhull/user.o src/qhull/usermem.o src/qhull/userprintf.o src/qhull/qvoronoi.o src/qhull/qconvex.o -o bin/fpocket -lm -Lplugins/MACOSX/molfile plugins/MACOSX/molfile/libmolfile_plugin.a -lnetcdf -lstdc++
clang: error: cannot specify -o when generating multiple output files
make: *** [bin/fpocket] Error 1

I'm not familiar enough with gcc to find a solution to this, and Googling hasn't been fruitful. Any ideas?

fpocket generates huge pockets for 3qmn

Pockets are too big on some structures, we should limit the clustering algorithm to a max size ? How could we avoid too greedy single linkage clustering?

Conda package

Hello, I'm working on a conda package for fpocket at the minute. I'm creating it for my own use, but perhaps it could also be useful for other users as an alternative way to install? Just to let you know.

I plan to make it available via the conda-forge channel.

Error analyzing Gromacs xtc file with mdpocket

Hi all,

I have run a 20 ns MD calculation with GROMACS 2019.6, and my xtc file has 2000 frames. When I use the command

mdpocket --trajectory_file md_0_10_fit.xtc --trajectory_format xtc -f md_0_10_start.pdb -S -o 6y84_0_20_mdpocket_results

, in the end I get the following error:

corrupted size vs. prev_sizet 2001
Aborted

I know that this doesn't give much information, but I just don't want to make this initial text too long. If any other information is needed, and/or data files are needed, I will gladly supply them.

Best regards,

Marcos

Allow override of predefined HETATM's in fpocket

Currently fpocket provides a compiled list of HETATM codes that are by default considered as part of the protein:

static const char *ST_keep_hetatm[] = {

Sometimes cofactors want to be considered as part of the protein structure, sometimes not. Give the user the possibility to explicitly define a list of HETATM codes as part of the protein or a list of HETATM codes NOT part of the protein through the command line

Running f-pocket on multiple protein structures

Hello,
I am a PhD student in Life and Health Sciences at Caen university.
In my project, I'm currently analysing a database where noble gases binding sites were modelled in all PDB entries, I'm looking for interesting proteins that bind noble gases, I'm trying to characterize those binding sites and calculate their volumes using f-pocket v 3.0 on linux.

When I run it on single proteins structures, it worked well. However, whenever I create a file that contains a list of PDB files, in order to run it on multiple protein structures I don't get any result.

I read the manual very carefully and I even checked similar answers to my question in 'The official support mailing list for fpocket' and I followed this example with this input:

110l.pdb
test_pdb4li2.pdb

Then I run f-pocket like this:

ls -1 *.pdb > fpocketList.txt
fpocket -F fpocketList.txt

I got this error message :
! Invalid pdb name given.

Would you please help me to manager this error. In some cases, I need to analyse over than 100 proteins and I can't run f-pocket for each one separately.

I thank you in advance.

Best regards.

_Islem HAMMAMI - PhD Student

GIP CYCERON - Unité ISTCT - Equipe CERVOxy
Bd H Becquerel 14074 Caen
www.istct.cyceron.fr

AIR LIQUIDE SANTE INTERNATIONAL
Paris Innovation Campus
1, chemin de la Porte des Loges
78350 Les loges en Josas - FRANCE
www.airliquide.com_

Compile error "conflicting types for 'write_out_fpocket_info_file'"

Hi,

Great to see fPocket on GitHub 😃

I'm trying to compile on OS X 10.11.6 and am getting an error.

I changed ARCH to MACOSX in the makefile before running make.

GCC version:

$ gcc -v                                                                                        
Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/usr/include/c++/4.2.1
Apple LLVM version 7.3.0 (clang-703.0.31)
Target: x86_64-apple-darwin15.6.0
Thread model: posix
InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin

The full make output is here:
make.error.txt

I found this can be fixed by adding

void write_out_fpocket_info_file(c_lst_pockets *pockets, char *output_file_name);

to headers/fpout.h.

If this error isn't isolated to my setup, I can make a pull request with this fix.

I got further errors after fixing this one, but I can make separate issues for those.

mdpocket with --pdb_list flag just returns the help page

Hi!
I'm trying to run the pocket exploration with mdpocket (fpocket3.0), on a set of superimposed PDB files.

I have a text file, pdblistfile.txt, which is a list of PDB file paths that I generated using createMDPocketInputFile.py

mdpocket --pdb_list pdblistfile.txt
just gives the help page as if I had used the flag -h, and when I try the old command;
mdpocket -L pdblistfile.txt
I get the same thing

Any thoughts? These PDB files are literally from the PDB, superimposed using Theseus, so I don't have an MD trajectory to try pocket exploration on instead

Enable functional fpocket test

Write sample test cases executed upon code changes using azure devops.
The application should be compiled and reference tests should be run.

To be refined how to set up reference results comparison etc...

Know the location of each pocket

I would like to know how to correlate the pockets with their representations in VMD. Is there a color code?

How could I find this pocket in the VMD representation?

Pocket 1 :
Score : 0.243
Druggability Score : 0.483
Number of Alpha Spheres : 100
Total SASA : 253.390
Polar SASA : 133.835
Apolar SASA : 119.555
Volume : 835.624
Mean local hydrophobic density : 19.444
Mean alpha sphere radius : 3.816
Mean alp. sph. solvent access : 0.467
Apolar alpha sphere proportion : 0.360
Hydrophobicity score: 18.852
Volume score: 3.778
Polarity score: 14
Charge score : -2
Proportion of polar atoms: 47.541
Alpha sphere density : 7.229
Cent. of mass - Alpha Sphere max dist: 16.312
Flexibility : 0.352

Make fails on Fedora 28

Hi,

Make works for a while, then fails on my 64bit Fedora 28 machine with the following output:

...
gcc -Wall -Wextra -Wwrite-strings -Wstrict-prototypes -DM_OS_LINUX -DMNO_MEM_DEBUG -O2 -g -pg -std=c99 -Iplugins/include -Iplugins/LINUXAMD64/molfile -c src/mdparams.c -o obj/mdparams.o
gcc obj/mdpmain.o obj/mdpocket.o obj/mdpbase.o obj/mdpout.o obj/psorting.o obj/pscoring.o obj/mdparams.o obj/voronoi.o obj/sort.o obj/rpdb.o obj/descriptors.o obj/neighbor.o obj/atom.o obj/aa.o obj/pertable.o obj/calc.o obj/utils.o obj/writepdb.o obj/memhandler.o obj/pocket.o obj/refine.o obj/fparams.o obj/fpocket.o obj/fpout.o obj/writepocket.o obj/write_visu.o obj/asa.o obj/voronoi_lst.o obj/clusterlib.o src/qhull/geom2.o src/qhull/geom.o src/qhull/global.o src/qhull/io.o src/qhull/io.h src/qhull/libqhull.o src/qhull/mem.o src/qhull/merge.o src/qhull/poly2.o src/qhull/poly.o src/qhull/qset.o src/qhull/random.o src/qhull/rboxlib.o src/qhull/stat.o src/qhull/user.o src/qhull/usermem.o src/qhull/userprintf.o src/qhull/qvoronoi.o src/qhull/qconvex.o obj/energy.o obj/topology.o -o bin/mdpocket -lm -Lplugins/LINUXAMD64/molfile plugins/LINUXAMD64/molfile/libmolfile_plugin.a -lnetcdf -lstdc++
obj/mdpocket.o: In function mdpocket_detect': /home/christian/Downloads/fpocket/src/mdpocket.c:96: undefined reference to molfile_netcdfplugin_init'
/home/christian/Downloads/fpocket/src/mdpocket.c:97: undefined reference to `molfile_netcdfplugin_register'
collect2: error: ld returned 1 exit status
make: *** [makefile:145: bin/mdpocket] Error 1

gcc: 8.1.1-1
netcdf-devel: 4.4.1.1-9

Any ideas what's wrong?
Thanks,
Christian

Allow to drop chain during pocket detection

Add a command line argument that drops a chain of interest from an input structure and detects pockets on the rest of the structure.

example command line input:
fpocket -f 2p0r.pdb -c B,C,D
drops chain D from 2p0r and detects pockets on all the rest.

Long command line argument:
fpocket -f 2p0r.pdb --dropchain D

Enable explicit pocket detection considering an entire chain as a ligand

Allow users to characterize a pocket explicitly (only this particular one) using a whole protein chain or a set of chains

Context: Peptides, ARN and DNA, modified peptides are polymers and as such represented using ATOM records or a mix of HETATM and ATOM records in the PDB format.

In some cases a user might want to characterise explicitly a known peptide binding site (i.e. 2p0r chain D) using fpocket. Right now the only way to do that is to manually delete the peptide from the PDB file and do a pocket detection on the full surface.

This has some inherent issues, peptide binding sites can be large, shallow etc and thus pockets are likely to be split up, or too big etc.

This story should enable the user to define a chain in a structure to act as a ligand for fpocket defined explictely by the user (like the -r option for small molecules)

fpocket -f 2p0r.pdb -E B,C,D
fpocket -f 2p0r.pdb --explicitchain D

This will perform a voronoi vertice creation on all the structure BUT the chain input by the user. It will select only voronoi vertices overlapping with the chain of interest and then generate a single output pocket of these selected vertices.

qhull input error

dpocket from master failed with attached PDB file. Ligand resn is DIE.

Having 8433 objects in memory
<dpocket>s 282/4195 - ../RawData/pdbbind/3f33/3f33
[3f33.zip](https://github.com/Discngine/fpocket/files/4262386/3f33.zip)

_complex.pdb:Having 8433 objects in memory
QH6013 qhull input error: input is less than 3-dimensional since it has the same x coordinate

While executing: rbox D3 | qconvex FS
Options selected for Qhull 2015.2 2016/01/18:
  run-id 1496072203  FSize  _pre-merge  _zero-centrum  _max-width 1.9
  Error-roundoff 4.1e-14  _one-merge 2.9e-13  _near-inside 1.5e-12
  Visible-distance 8.3e-14  U-coplanar-distance 8.3e-14  Width-outside 1.7e-13
  _wide-facet 5e-13
QH6154 Qhull precision error: Initial simplex is flat (facet 1 is coplanar with the interior point)

While executing: rbox D3 | qconvex FS
Options selected for Qhull 2015.2 2016/01/18:
  run-id 1496072203  FSize  _pre-merge  _zero-centrum  _max-width 1.9
  Error-roundoff 4.1e-14  _one-merge 2.9e-13  _near-inside 1.5e-12
  Visible-distance 8.3e-14  U-coplanar-distance 8.3e-14  Width-outside 1.7e-13
  _wide-facet 5e-13

precision problems (corrected unless 'Q0' or an error)
      2 flipped facets
      4 degenerate hyperplanes recomputed with gaussian elimination
      8 nearly singular or axis-parallel hyperplanes
      4 zero divisors during back substitute
      4 zero divisors during gaussian elimination

The input to qhull appears to be less than 3 dimensional, or a
computation has overflowed.

Qhull could not construct a clearly convex simplex from points:
- p2(v3):   -46    -0     0
- p1(v2):   -46    -0     0
- p8(v1):   -44     0     0
- p0(v0):   -46    -0     0

The center point is coplanar with a facet, or a vertex is coplanar
with a neighboring facet.  The maximum round off error for
computing distances is 4.1e-14.  The center point, facets and distances
to the center point are as follows:

center point   -45.83        0        0

facet p1 p8 p0 distance=    0
facet p2 p8 p0 distance=    0
facet p2 p1 p0 distance= -0.28
facet p2 p1 p8 distance=    0

These points either have a maximum or minimum x-coordinate, or
they maximize the determinant for k coordinates.  Trial points
are first selected from points that maximize a coordinate.

The min and max coordinates for each dimension are:
  0:     -46.3  -2.225e-308  difference= 46.3
  1:        -0        -0  difference=    0
  2:         0         0  difference=    0

If the input should be full dimensional, you have several options that
may determine an initial simplex:
  - use 'QJ'  to joggle the input and make it full dimensional
  - use 'QbB' to scale the points to the unit cube
  - use 'QR0' to randomly rotate the input for different maximum points
  - use 'Qs'  to search all points for the initial simplex
  - use 'En'  to specify a maximum roundoff error less than 4.1e-14.
  - trace execution with 'T3' to see the determinant for each point.

If the input is lower dimensional:
  - use 'QJ' to joggle the input and make it full dimensional
  - use 'Qbk:0Bk:0' to delete coordinate k from the input.  You should
    pick the coordinate with the least range.  The hull will have the
    correct topology.
  - determine the flat containing the points, rotate the points
    into a coordinate plane, and delete the other coordinates.
  - add one or more points to make the input full dimensional.
QH6154 Qhull precision error: Initial simplex is flat (facet 1 is coplanar with the interior point)

While executing: rbox D3 | qconvex FS
Options selected for Qhull 2015.2 2016/01/18:
  run-id 1496072203  FSize  _pre-merge  _zero-centrum  _max-width 1.9
  Error-roundoff 4.1e-14  _one-merge 2.9e-13  _near-inside 1.5e-12
  Visible-distance 8.3e-14  U-coplanar-distance 8.3e-14  Width-outside 1.7e-13
  _wide-facet 5e-13

The input to qhull appears to be less than 3 dimensional, or a
computation has overflowed.

Qhull could not construct a clearly convex simplex from points:
- p2(v3):    44    -0     0
- p1(v2):    44    -0     0
- p8(v1):    46     0    -0
- p0(v0):    44    -0     0

The center point is coplanar with a facet, or a vertex is coplanar
with a neighboring facet.  The maximum round off error for
computing distances is 4.1e-14.  The center point, facets and distances
to the center point are as follows:

center point    44.87        0        0

facet p1 p8 p0 distance=    0
facet p2 p8 p0 distance=    0
facet p2 p1 p0 distance= -0.28
facet p2 p1 p8 distance=    0

These points either have a maximum or minimum x-coordinate, or
they maximize the determinant for k coordinates.  Trial points
are first selected from points that maximize a coordinate.

The min and max coordinates for each dimension are:
  0:     44.39      46.3  difference= 1.917
  1:        -0        -0  difference=    0
  2:         0         0  difference=    0

If the input should be full dimensional, you have several options that
may determine an initial simplex:
  - use 'QJ'  to joggle the input and make it full dimensional
  - use 'QbB' to scale the points to the unit cube
  - use 'QR0' to randomly rotate the input for different maximum points
  - use 'Qs'  to search all points for the initial simplex
  - use 'En'  to specify a maximum roundoff error less than 4.1e-14.
  - trace execution with 'T3' to see the determinant for each point.

If the input is lower dimensional:
  - use 'QJ' to joggle the input and make it full dimensional
  - use 'Qbk:0Bk:0' to delete coordinate k from the input.  You should
    pick the coordinate with the least range.  The hull will have the
    correct topology.
  - determine the flat containing the points, rotate the points
    into a coordinate plane, and delete the other coordinates.
  - add one or more points to make the input full dimensional.
QH6013 qhull input error: input is less than 3-dimensional since it has the same x coordinate

While executing: rbox D3 | qconvex FS
Options selected for Qhull 2015.2 2016/01/18:
  run-id 1496072203  FSize  _pre-merge  _zero-centrum  _max-width 1.9
  Error-roundoff 4.1e-14  _one-merge 2.9e-13  _near-inside 1.5e-12
  Visible-distance 8.3e-14  U-coplanar-distance 8.3e-14  Width-outside 1.7e-13
  _wide-facet 5e-13
QH6013 qhull input error: input is less than 3-dimensional since it has the same x coordinate

While executing: rbox D3 | qconvex FS
Options selected for Qhull 2015.2 2016/01/18:
  run-id 1496072203  FSize  _pre-merge  _zero-centrum  _max-width 1.9
  Error-roundoff 4.1e-14  _one-merge 2.9e-13  _near-inside 1.5e-12
  Visible-distance 8.3e-14  U-coplanar-distance 8.3e-14  Width-outside 1.7e-13
  _wide-facet 5e-13
sorting atoms and vertices or something like this 
sort finished

Generate pdb of only the ligand in the orignal pdb

Hello,

I wanted to get the binding site of pdb files in which agonist/antagonist is bound to the protein. Using fpocket, multiple pdbs are created for the mutliple binding sites which were found but I want only the single/main binding site which I can use for further analysis. dpocket generates text file and to match this file with the previous pdbs created would require a bit of work. Is there any way to only generate the main binding site using fpocket?

Compile error "void function 'assign_energies' should not return a value" in energy.c

Following #5

Make output:
make.error2.txt

src/energy.c:178:5: error: void function 'assign_energies' should not return a value [-Wreturn-type]
src/energy.c:245:17: error: void function 'set_energies_to_grid_point' should not return a value [-Wreturn-type]
src/energy.c:269:5: error: void function 'set_energies_to_grid_point' should not return a value [-Wreturn-type]

This can be fixed by changing the relevant return (NULL);s to return;s. I can PR this if it's a wider issue.

Containerized deployment option

Hi,

As part of a project for the UK Biomolecular simulation community we are developing a library of containerised popular applications, and would like to include fpocket in this. It's called pinda and you can see more here. In essence, it's a bit like Conda or pip, but based on Docker/Singularity containers.

If you would like to know more, please get in touch.

Regards, Charlie

License

The LICENSE.md file linked to in the README is missing. Could you add it please? Also, the INSTALL.txt states the license is GNU, I suppose you want to update this to MIT.

Why are the default parameters different from those published in the paper?

Hello fpocket team,

When I run fpocket from the Git repo, I found that some of the default parameters are different from those published in the paper, for example the default minimum and maximum radius values of the alpha sphere are 3.4 and 6.2 Å in the current implementation, while those values were 3.0 and 6.0 as published in the paper. Is there any specific reason for making such changes?

Thanks very much,

Best wishes.

Qi

Examples / tests / manual entry for mdpocket

Hi guys,

I wonder if it would be possible to add info for MDPocket as well. It would be especially helpful to have one or two working examples, and a 'man' entry for it.

Thanks a lot!

mdpocket druggability scores

Hi

I"m running mdpocket 3.0 with "mdpocket --trajectory_file md_skip_10.xtc --trajectory_format xtc -f ../solv_ions.pdb -S" however no apparent information on pocket druggability is generated in any of the output files. Should the "-S" flag not enable this?

A.

Segmentation fault on large dataset

Some error blocked me to continue. I'm curious about the object count not getting lower after an iteration.

Having 8457 objects in memory
<dpocket>s 990/4195 - ../RawData/pdbbind/1qji/1qji_complex.pdb:Having 8457 objects in memory
sorting atoms and vertices or something like this 
sort finished
Having 8457 objects in memory
<dpocket>s 991/4195 - ../RawData/pdbbind/1xgi/1xgi_complex.pdb:Having 8457 objects in memory
[1]    15246 segmentation fault (core dumped)  dpocket -f dpocket.txt

drug_score value is zero in dpocket output results

Hello,

I ran several samples (e.g. 1UKD.pdb) with dpocket in order to creat the descriptor. However, the drug_score values in output result are alwasys zero. would it a bug or mean anything else?

Look forward to your reply.

fpocket installation error in MacOS Mojave

Hi,

I am trying to install fpocket in my MacOS and observed following error:

Last line:
gcc-8 obj/fpmain.o obj/psorting.o obj/pscoring.o obj/utils.o obj/pertable.o obj/memhandler.o obj/voronoi.o obj/sort.o obj/calc.o obj/writepdb.o obj/rpdb.o obj/tparams.o obj/fparams.o obj/pocket.o obj/refine.o obj/descriptors.o obj/aa.o obj/fpocket.o obj/write_visu.o obj/fpout.o obj/atom.o obj/writepocket.o obj/voronoi_lst.o obj/asa.o obj/clusterlib.o obj/energy.o obj/topology.o src/qhull/src/libqhull/geom2.o src/qhull/src/libqhull/geom.o src/qhull/src/libqhull/global.o src/qhull/src/libqhull/io.o src/qhull/src/libqhull/io.h src/qhull/src/libqhull/libqhull.o src/qhull/src/libqhull/mem.o src/qhull/src/libqhull/merge.o src/qhull/src/libqhull/poly2.o src/qhull/src/libqhull/poly.o src/qhull/src/libqhull/qset.o src/qhull/src/libqhull/random.o src/qhull/src/libqhull/rboxlib.o src/qhull/src/libqhull/stat.o src/qhull/src/libqhull/user.o src/qhull/src/libqhull/usermem.o src/qhull/src/libqhull/userprintf.o src/qhull/src/libqhull/userprintf_rbox.o src/qhull/src/qvoronoi/qvoronoi.o src/qhull/src/qconvex/qconvex.o -o bin/fpocket -lm -Lplugins/MACOSX/molfile plugins/MACOSX/molfile/libmolfile_plugin.a -lnetcdf -lstdc++
ld: library not found for -lnetcdf
collect2: error: ld returned 1 exit status
make[1]: *** [bin/fpocket] Error 1
make: *** [all] Error 2

MacOS details:
MacOS 10.14.3v

gcc -v
Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/c++/4.2.1
Apple LLVM version 10.0.0 (clang-1000.11.45.5)
Target: x86_64-apple-darwin18.2.0
Thread model: posix
InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin

brew install gcc [installed gcc 8.2.0]
Using built-in specs.
COLLECT_GCC=gcc-8
COLLECT_LTO_WRAPPER=/usr/local/Cellar/gcc/8.2.0/libexec/gcc/x86_64-apple-darwin18.2.0/8.2.0/lto-wrapper
Target: x86_64-apple-darwin18.2.0
Configured with: ../configure --build=x86_64-apple-darwin18.2.0 --prefix=/usr/local/Cellar/gcc/8.2.0 --libdir=/usr/local/Cellar/gcc/8.2.0/lib/gcc/8 --disable-nls --enable-checking=release --enable-languages=c,c++,objc,obj-c++,fortran --program-suffix=-8 --with-gmp=/usr/local/opt/gmp --with-mpfr=/usr/local/opt/mpfr --with-mpc=/usr/local/opt/libmpc --with-isl=/usr/local/opt/isl --with-system-zlib --with-pkgversion='Homebrew GCC 8.2.0' --with-bugurl=https://github.com/Homebrew/homebrew-core/issues --disable-multilib --with-native-system-header-dir=/usr/include --with-sysroot=/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk
Thread model: posix
gcc version 8.2.0 (Homebrew GCC 8.2.0)

conda install libnetcdf

locate libnetcdf
/usr/local/lib/libnetcdf.13.dylib
/usr/local/lib/libnetcdf.7.dylib
/usr/local/lib/libnetcdf.dylib
/usr/local/lib/libnetcdf.la
/usr/local/lib/libnetcdf.settings
/usr/local/vmd-xplor/vmd-xplor-1.9.1-Darwin_10_x86_64/bin.MACOSXX86_64/libnetcdf.7.dylib

Output score interpretation (fpocket)

Hello!

I have some questions about how the output score numbers must be interpreted.

The overall pockets "Scores" gives me values between -0.15 - +0.208 and I don't know what they exactly mean, nor what's the minimum good reference quality score . I looked through your official documentation and supposedly the global score is a normalized value between [0,1].
P.D. Some papers used fpocket score values in units, while others in %.

Thanks!

Erroneously accusing missing file

The attached file gives output like the following. But there isn't any empty filename.

dpocket.txt

! The pdb file '' doesn't exists.
! The pdb file 'BG' doesn't exists.
! The pdb file '' doesn't exists.
! The pdb file '' doesn't exists.
! The pdb file '' doesn't exists.
! The pdb file 'O4' doesn't exists.
! The pdb file '' doesn't exists.
! The pdb file '' doesn't exists.
! The name given for the ligand is invalid or absent.

Analyze or find specific pocket by xyz coordinates

Hi !

I am using mdpocket to analyze a specific pocket in the protein but unfortunately mdpocket doesn't detect the cavity. there is a specific way to "force" md pocket analyze a xyz coordinate ?

Thank you very much.
Best Regards
David

Can I write a PKGBUILD and upload your script in AUR

AUR is a repository for arch and arch-based linux users to build package from source code automatically. I am a manjaro user and did not found a existing package in AUR. May I upload your package to it and maintain a automatically build script for the convenience of other manjaro users?

Segmentation fault running MDpocket

Hi,

Recently I used MDpocket to analyze my protein trajectory following the example you provided. The first-time mdpocket run worked out fine. However, when I proceeded to the second run, it always gave me the message:

Format of trajectory pdb 1_align_pro.pdb 0
Segmentation fault

I tried using netcdf and pdb format but it seems that format is not the problem causing this.

Could you please help me solve this problem. Thanks a lot!

Enable docker support for fpocket & mdpocket

Create a dockerfile for fpocket / mdpocket allowing to generate an fpocket docker image.
register this docker image to dockerhub as fpocket/fpocket:latest and the actual version number at that time

No output from mdpocket on ubuntu 16.04

Hi,

i've been trying the whole day but i don't manage to get any output from mdpocket. I compiled fpocket with the tweak from the other thread "Make fails on Fedora 28" by out-commenting netcdf compilation in mdpocket.c and using the molfile libraries from VMD.

Running mdpocket without arguments gives the documentation as supposed to. Though, no matter what arguments i give, i always only get the documentation. No errors and no output, it only prints the documentation. It neither works with trajectory file nor with a list of pdb files. fpocket works perfectly fine.

Any idea what causes this? Where could i have gone wrong?

Best,
Eric

How to use fpocket to generate a cubic box size by using binding site?

Hi,

I want to use fpocket to create a cubic box for running a docking program, like Autodock Vina. As a result, a cubic box size, for example:
--center_x arg X coordinate of the center
--center_y arg Y coordinate of the center
--center_z arg Z coordinate of the center
--size_x arg size in the X dimension (Angstroms)
--size_y arg size in the Y dimension (Angstroms)
--size_z arg size in the Z dimension (Angstroms)
How can i use fpocket to generate those information?

issues to compile the code with macOS Big Sur 11.1

Hello,

I am new to Mac and tried to compile the fpocket code with macOS Big Sur 11.1. I updated Xcode and MacPorts, and run the command lines as it is in the page with git and make. However, whenever I do this command: make ARCH=MACOSXX86_64, I got these messages:

1 error generated.
make[1]: *** [obj/descriptors.o] Error 1
make: *** [all] Error 2

Not sure what are the issues, I have couples of warnings as well, please help!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.