forlilab / Meeko

Interfacing RDKit and AutoDock
GNU Lesser General Public License v2.1
192 stars 48 forks source link

PDBQT parsing for receptors removes charge sign #116

Closed bradakta closed 2 months ago

bradakta commented 5 months ago

As the title says. The _read_receptor_pdbqt_string() function excludes the field containing the sign of partial charges so that all partial charges are read as positive. It would seem that partial_charges = float(line[71:77].strip()) should instead be partial_charges = float(line[70:77].strip()).

I'm guessing this never has a tangible effect on docking, only the python data structure?

rwxayheee commented 5 months ago

Yes, this used to be [70:76] (with a size of 6) in AutoDock4

diogomart commented 5 months ago

It has been fixed in 403907eb0796b2e6c257d969c9309cbd1fcd6d7b but I just realized it also needs to be fixed in https://github.com/forlilab/Meeko/blob/71ce3e0900b839953561618357a921ec18f16101/meeko/molecule_pdbqt.py#L132

diogomart commented 5 months ago

@bradakta thanks for reporting this. It does not affect docking, these data structures are used only to process docking results, not to create input for docking.