i2bc / SURFMAP

Other
20 stars 3 forks source link

[Bug]: findBHcloseAtomsInNode: result array too small error #19

Open vcsuja opened 2 months ago

vcsuja commented 2 months ago

Operating System

Windows

Version

2.1.0

Python Version (optional)

3.10.12

Python Virtual Environment

Not using a virtual environment

Execution Environment

Local environment after installation of all external dependencies

Bug Description

Hi team,

First of all hats off for putting together such an useful program. It was great for most proteins however I'm encountering issues when working with certain small proteins. Eg.

Unable to use surfmap for hydrophobins. For example the code fails with an error for the attached protein when running the command below.
2fmc.zip

The same pdb file can be accessed here - https://www.rcsb.org/structure/2fmc

Is there a workaround for this?

Best, Vinny

Steps to Reproduce

Command: surfmap -pdb 2fmc.pdb -tomap kyte_doolittle --keep

Relevant Log Output

findBHcloseAtomsInNode: result array too small\nERROR:(Multiple times) followed by

findBHcloseAtomsInNo', stderr=b'third atom not found\n'

Additional context (optional)

No response

Confirmation

nchenche commented 2 months ago

Dear vcsuja,

First of all, thank you for using SURFMAP and we are glad you find it useful for your research. Thanks also for the clear description of the issue which is very helpful. After downloading your input file, I have been able to reproduce your error.

I have noticed that your pdb file is actually a NMR pdb file with multiple models, which is the cause of the encountered error.

To resolve this issue, all you have to do is to split each models (20) into individual pdb files from your original 2fmc.pdb, and then run surfmap on each file of your interest.

How to split models into individual pdb file

To split a multi-model pdb file, you can use pymol or the following script: split_pdb_models.zip

In order to use the script provided to split multi-model pdb files, you must:

The above command will generate a default 2fmc_models directory where all individual models will be generated.

Hope this will help,

The SURFMAP team.