luancarvalhomartins / PyAutoFEP

PyAutoFEP: an automated FEP workflow for GROMACS integrating enhanced sampling methods
159 stars 74 forks source link

errors about prepare_dual_topology.py #123

Open zh2417 opened 11 months ago

zh2417 commented 11 months ago

error.txt Sorry to trouble you again.When I tried to use the tutorial 01 manual method to deal with receptors other than 5q17, I encountered some problems. The first three problems were reported when running prepare_dual_topology.py, and the last one was reported when running bash runall.sh. Please tell me. What causes this and how to solve it. Thank you so much.

luancarvalhomartins commented 11 months ago

Thank you very much for your message.

Would you mind posting the error messages (with any sensitive info redacted, if needed), so I can help you solve the issue? Running with debug mode -vvvv helps a lot to track what is going on.

Thank you!

Things to double check:

zh2417 commented 11 months ago

Thank you very much for your reply. I have already written the error information in the error.txt file, but perhaps you did not see it? I will now copy the error content below. Once again, thank you very much. image

1zgy =================== STACK INFO =================== File "/PyAutoFEP/prepare_dual_topology.py", line 4446, in build_data = prepare_complex_system(structure_file=arguments.structure, File "/PyAutoFEP/os_util.py", line 558, in wrap_trace return f(*args, **kwargs) File "/PyAutoFEP/prepare_dual_topology.py", line 579, in prepare_complex_system os_util.run_gmx(gmx_bin, pdb2gmx_list, communicate_str, build_files_dict['pdb2gmx_log'], verbosity=verbosity) File "/PyAutoFEP/os_util.py", line 160, in run_gmx local_print('Failed to run {} {}. Error code {}.\nCommand line was: {}\n\nstdout:\n{}\n\nstderr:\n{}' File "/PyAutoFEP/os_util.py", line 313, in local_print formatted_string = '\n{:=^50}\n{}{:=^50}\n'.format(' STACK INFO ', ''.join(traceback.format_stack()), =================== STACK INFO =================== [ERROR] Failed to run /opt/gromacs_mpi/bin/gmx_mpi pdb2gmx. Error code 1. [ERROR] Command line was: ['/opt/gromacs_mpi/bin/gmx_mpi', 'pdb2gmx', '-f', 'receptor_data/1zgy_processed.pdb', '-p', '/PyAutoFEP/tutorial/FXR_12-FXR_76/protein/build_system_221418_21092023/protein_step1_221418_21092023.top', '-o', '/PyAutoFEP/tutorial/FXR_12-FXR_76/protein/build_system_221418_21092023/protein_step1_221418_21092023.pdb'] [ERROR] [ERROR] stdout: [ERROR] Select the Force Field: [ERROR] [ERROR] From current directory: [ERROR] [ERROR] 1: OPLS-AA/M all-atom force field (2015 aminoacid dihedrals) [ERROR] [ERROR] From '/opt/gromacs_mpi/share/gromacs/top': [ERROR] [ERROR] 2: AMBER03 protein, nucleic AMBER94 (Duan et al., J. Comp. Chem. 24, 1999-2012, 2003) [ERROR] [ERROR] 3: AMBER94 force field (Cornell et al., JACS 117, 5179-5197, 1995) [ERROR] [ERROR] 4: AMBER96 protein, nucleic AMBER94 (Kollman et al., Acc. Chem. Res. 29, 461-469, 1996) [ERROR] [ERROR] 5: AMBER99 protein, nucleic AMBER94 (Wang et al., J. Comp. Chem. 21, 1049-1074, 2000) [ERROR] [ERROR] 6: AMBER99SB protein, nucleic AMBER94 (Hornak et al., Proteins 65, 712-725, 2006) [ERROR] [ERROR] 7: AMBER99SB-ILDN protein, nucleic AMBER94 (Lindorff-Larsen et al., Proteins 78, 1950-58, 2010) [ERROR] [ERROR] 8: AMBERGS force field (Garcia & Sanbonmatsu, PNAS 99, 2782-2787, 2002) [ERROR] [ERROR] 9: CHARMM27 all-atom force field (CHARM22 plus CMAP for proteins) [ERROR] [ERROR] 10: GROMOS96 43a1 force field [ERROR] [ERROR] 11: GROMOS96 43a2 force field (improved alkane dihedrals) [ERROR] [ERROR] 12: GROMOS96 45a3 force field (Schuler JCC 2001 22 1205) [ERROR] [ERROR] 13: GROMOS96 53a5 force field (JCC 2004 vol 25 pag 1656) [ERROR] [ERROR] 14: GROMOS96 53a6 force field (JCC 2004 vol 25 pag 1656) [ERROR] [ERROR] 15: GROMOS96 54a7 force field (Eur. Biophys. J. (2011), 40,, 843-856, DOI: 10.1007/s00249-011-0700-9) [ERROR] [ERROR] 16: OPLS-AA/L all-atom force field (2001 aminoacid dihedrals) [ERROR] [ERROR] Using the Oplsaam force field in directory ./oplsaam.ff [ERROR] [ERROR] Select the Water Model: [ERROR] [ERROR] 1: TIP4P TIP 4-point, recommended [ERROR] [ERROR] 2: TIP3P TIP 3-point [ERROR] [ERROR] 3: TIP5P TIP 5-point (see http://redmine.gromacs.org/issues/1348 for issues) [ERROR] [ERROR] 4: TIP5P TIP 5-point improved for Ewald sums [ERROR] [ERROR] 5: SPC simple point charge [ERROR] [ERROR] 6: SPC/E extended simple point charge [ERROR] [ERROR] 7: None [ERROR] [ERROR] going to rename ./oplsaam.ff/aminoacids.r2b [ERROR] Reading receptor_data/1zgy_processed.pdb... [ERROR] Read '', 4646 atoms [ERROR] [ERROR] Analyzing pdb file [ERROR] Splitting chemical chains based on TER records or chain id changing. [ERROR] [ERROR] There are 2 chains and 0 blocks of water and 284 residues with 4646 atoms [ERROR] [ERROR] chain #res #atoms [ERROR] [ERROR] 1 ' ' 272 4435
[ERROR] [ERROR] 2 ' ' 12 211
[ERROR] [ERROR] there were 2619 atoms with zero occupancy and 2027 atoms with occupancy unequal to one (out of 4646 atoms). Check your pdb file. [ERROR] [ERROR] Reading residue database... (Oplsaam) [ERROR] [ERROR] Processing chain 1 (4435 atoms, 272 residues) [ERROR] [ERROR] Identified residue PRO206 as a starting terminus. [ERROR] [ERROR] Identified residue TYR477 as a ending terminus. [ERROR] Start terminus PRO-206: PRO-NH2+ [ERROR] End terminus TYR-477: COO- [ERROR] [ERROR] [ERROR] stderr: [ERROR] :-) GROMACS - gmx pdb2gmx, 2021 (-: [ERROR] [ERROR] GROMACS is written by: [ERROR] Andrey Alekseenko Emile Apol Rossen Apostolov
[ERROR] Paul Bauer Herman J.C. Berendsen Par Bjelkmar
[ERROR] Christian Blau Viacheslav Bolnykh Kevin Boyd
[ERROR] Aldert van Buuren Rudi van Drunen Anton Feenstra
[ERROR] Gilles Gouaillardet Alan Gray Gerrit Groenhof
[ERROR] Anca Hamuraru Vincent Hindriksen M. Eric Irrgang
[ERROR] Aleksei Iupinov Christoph Junghans Joe Jordan
[ERROR] Dimitrios Karkoulis Peter Kasson Jiri Kraus
[ERROR] Carsten Kutzner Per Larsson Justin A. Lemkul
[ERROR] Viveca Lindahl Magnus Lundborg Erik Marklund
[ERROR] Pascal Merz Pieter Meulenhoff Teemu Murtola
[ERROR] Szilard Pall Sander Pronk Roland Schulz
[ERROR] Michael Shirts Alexey Shvetsov Alfons Sijbers
[ERROR] Peter Tieleman Jon Vincent Teemu Virolainen
[ERROR] Christian Wennberg Maarten Wolf Artem Zhmurov
[ERROR] and the project leaders: [ERROR] Mark Abraham, Berk Hess, Erik Lindahl, and David van der Spoel [ERROR] [ERROR] Copyright (c) 1991-2000, University of Groningen, The Netherlands. [ERROR] Copyright (c) 2001-2019, The GROMACS development team at [ERROR] Uppsala University, Stockholm University and [ERROR] the Royal Institute of Technology, Sweden. [ERROR] check out http://www.gromacs.org for more information. [ERROR] [ERROR] GROMACS is free software; you can redistribute it and/or modify it [ERROR] under the terms of the GNU Lesser General Public License [ERROR] as published by the Free Software Foundation; either version 2.1 [ERROR] of the License, or (at your option) any later version. [ERROR] [ERROR] GROMACS: gmx pdb2gmx, version 2021 [ERROR] Executable: /opt/gromacs_mpi/bin/gmx_mpi [ERROR] Data prefix: /opt/gromacs_mpi [ERROR] Working dir: /PyAutoFEP [ERROR] Command line: [ERROR] gmx_mpi pdb2gmx -f receptor_data/1zgy_processed.pdb -p /PyAutoFEP/tutorial/FXR_12-FXR_76/protein/build_system_221418_21092023/protein_step1_221418_21092023.top -o /PyAutoFEP/tutorial/FXR_12-FXR_76/protein/build_system_221418_21092023/protein_step1_221418_21092023.pdb [ERROR] [ERROR] Opening force field file ./oplsaam.ff/watermodels.dat [ERROR] Opening force field file ./oplsaam.ff/aminoacids.r2b [ERROR] there were 2619 atoms with zero occupancy and 2027 atoms with occupancy unequal to one (out of 4646 atoms). Check your pdb file. [ERROR] Opening force field file ./oplsaam.ff/atomtypes.atp [ERROR] Opening force field file ./oplsaam.ff/aminoacids.rtp [ERROR] Opening force field file ./oplsaam.ff/aminoacids.hdb [ERROR] Opening force field file ./oplsaam.ff/aminoacids.n.tdb [ERROR] Opening force field file ./oplsaam.ff/aminoacids.c.tdb [ERROR] 8 out of 8 lines of specbond.dat converted successfully [ERROR] Special Atom Distance matrix: [ERROR] HISE217 MET252 MET256 MET257 HISD266 CYS285 HISD323 [ERROR] NE2182 SD749 SD810 SD827 NE2990 SG1294 NE21903 [ERROR] MET252 SD749 4.360 [ERROR] MET256 SD810 4.668 0.951 [ERROR] MET257 SD827 4.542 1.245 0.550 [ERROR] HISD266 NE2990 3.233 1.841 1.777 1.877 [ERROR] CYS285 SG1294 3.041 1.393 1.990 2.097 1.346 [ERROR] HISD323 NE21903 2.476 2.403 3.017 3.147 1.907 1.075 [ERROR] MET329 SD2001 1.570 2.842 3.269 3.181 2.124 1.540 1.268 [ERROR] MET334 SD2077 2.778 1.982 2.610 2.539 2.198 1.055 1.458 [ERROR] MET348 SD2280 3.463 0.936 1.504 1.531 1.499 0.684 1.743 [ERROR] MET364 SD2560 3.071 1.514 2.236 2.303 1.820 0.490 1.142 [ERROR] HISE425 NE23547 2.052 3.817 4.283 4.060 3.572 2.791 2.657 [ERROR] MET439 SD3773 1.883 3.650 4.295 4.256 3.326 2.386 1.742 [ERROR] HISD449 NE23947 3.026 1.953 2.696 2.874 1.967 0.831 0.625 [ERROR] MET463 SD4179 3.877 1.498 2.143 2.507 1.718 1.168 1.503 [ERROR] HISD466 NE24229 2.717 2.508 2.812 2.993 1.255 1.446 1.148 [ERROR] MET329 MET334 MET348 MET364 HISE425 MET439 HISD449 [ERROR] SD2001 SD2077 SD2280 SD2560 NE23547 SD3773 NE23947 [ERROR] MET334 SD2077 1.246 [ERROR] MET348 SD2280 1.931 1.127 [ERROR] MET364 SD2560 1.516 0.691 0.773 [ERROR] HISE425 NE23547 1.621 1.888 2.918 2.528 [ERROR] MET439 SD3773 1.350 1.799 2.811 2.138 1.469 [ERROR] HISD449 NE23947 1.648 1.301 1.422 0.783 2.853 2.034 [ERROR] MET463 SD4179 2.528 2.101 1.520 1.413 3.853 3.136 1.111 [ERROR] HISD466 NE24229 1.825 2.251 2.030 1.833 3.437 2.711 1.480 [ERROR] MET463 [ERROR] SD4179 [ERROR] HISD466 NE24229 1.539 [ERROR] [ERROR] ------------------------------------------------------- [ERROR] Program: gmx pdb2gmx, version 2021 [ERROR] Source file: src/gromacs/gmxpreprocess/pdb2gmx.cpp (line 790) [ERROR] [ERROR] Fatal error: [ERROR] Atom H3 in residue PRO 206 was not found in rtp entry PRO with 16 atoms [ERROR] while sorting atoms. [ERROR] [ERROR] For a hydrogen, this can be a different protonation state, or it [ERROR] might have had a different number in the PDB file and was rebuilt [ERROR] (it might for instance have been H3, and we only expected H1 & H2). [ERROR] Note that hydrogens might have been added to the entry for the N-terminus. [ERROR] Remove this hydrogen or choose a different protonation state to solve it. [ERROR] Option -ignh will ignore all hydrogens in the input. [ERROR] [ERROR] For more information and tips for troubleshooting, please check the GROMACS [ERROR] website at http://www.gromacs.org/Documentation/Errors [ERROR] ------------------------------------------------------- [ERROR] -------------------------------------------------------------------------- [ERROR] MPI_ABORT was invoked on rank 0 in communicator MPI_COMM_WORLD [ERROR] with errorcode 1. [ERROR] [ERROR] NOTE: invoking MPI_ABORT causes Open MPI to kill all MPI processes. [ERROR] You may or may not see output from other processes, depending on [ERROR] exactly when Open MPI kills them. [ERROR] ------------

2p4y Traceback (most recent call last): File "/PyAutoFEP/prepare_dual_topology.py", line 4229, in poses_mol_data = align_ligands( ^^^^^^^^^^^^^^ File "/PyAutoFEP/os_util.py", line 558, in wrap_trace return f(*args, **kwargs) ^^^^^^^^^^^^^^^^^^ File "/PyAutoFEP/prepare_dual_topology.py", line 3463, in align_ligands docking_mol_local = superimpose_poses(superimpose_loader_ligands, reference_pose_superimpose, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/PyAutoFEP/docking_readers/superimpose_loader.py", line 79, in superimpose_poses rdkit_reference_pose = extract_docking_poses({'reference': {'molecule': reference_pose_mol}}, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/PyAutoFEP/docking_readers/generic_loader.py", line 76, in extract_docking_poses docking_mol_rd = mol_util.process_dummy_atoms(docking_mol_rd, verbosity=verbosity) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/PyAutoFEP/mol_util.py", line 588, in process_dummy_atoms ''.format(molecule, rdkit.Chem.MolToSmiles(molecule), verbosity), ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Boost.Python.ArgumentError: Python argument types in rdkit.Chem.rdmolfiles.MolToSmiles(bool) did not match C++ signature: MolToSmiles(RDKit::ROMol mol, bool isomericSmiles=True, bool kekuleSmiles=False, int rootedAtAtom=-1, bool canonical=True, bool allBondsExplicit=False, bool allHsExplicit=False, bool doRandom=False) MolToSmiles(RDKit::ROMol mol, RDKit::SmilesWriteParams params)

1l2i =================== STACK INFO =================== File "/PyAutoFEP/prepare_dual_topology.py", line 4229, in poses_mol_data = align_ligands( File "/PyAutoFEP/os_util.py", line 558, in wrap_trace return f(*args, *kwargs) File "/PyAutoFEP/prepare_dual_topology.py", line 3488, in align_ligands align_data = align_protein(docking_receptor_mol, receptor_structure, seq_align_mat=kwargs['seq_align_mat'], File "/PyAutoFEP/os_util.py", line 558, in wrap_trace return f(args, **kwargs) File "/PyAutoFEP/align_utils.py", line 196, in align_protein ref_atom_vec = get_position_matrix(reference_mol, ref_align_str) File "/PyAutoFEP/align_utils.py", line 101, in get_position_matrix os_util.local_print('Atom {} found twice in your protein {}. Cannot handle multiple ' File "/PyAutoFEP/os_util.py", line 313, in local_print formatted_string = '\n{:=^50}\n{}{:=^50}\n'.format(' STACK INFO ', ''.join(traceback.format_stack()), =================== STACK INFO =================== [ERROR] Atom CA SER0 found twice in your protein receptor_data/1l2i_processed.pdb. Cannot handle multiple occupancies.

=================== STACK INFO =================== File "/PyAutoFEP/prepare_dual_topology.py", line 4229, in poses_mol_data = align_ligands( File "/PyAutoFEP/os_util.py", line 558, in wrap_trace return f(*args, *kwargs) File "/PyAutoFEP/prepare_dual_topology.py", line 3488, in align_ligands align_data = align_protein(docking_receptor_mol, receptor_structure, seq_align_mat=kwargs['seq_align_mat'], File "/PyAutoFEP/os_util.py", line 558, in wrap_trace return f(args, **kwargs) File "/PyAutoFEP/align_utils.py", line 196, in align_protein ref_atom_vec = get_position_matrix(reference_mol, ref_align_str) File "/PyAutoFEP/align_utils.py", line 101, in get_position_matrix os_util.local_print('Atom {} found twice in your protein {}. Cannot handle multiple ' File "/PyAutoFEP/os_util.py", line 313, in local_print formatted_string = '\n{:=^50}\n{}{:=^50}\n'.format(' STACK INFO ', ''.join(traceback.format_stack()), =================== STACK INFO =================== [ERROR] Atom CA LEU1 found twice in your protein receptor_data/1l2i_processed.pdb. Cannot handle multiple occupancies.

3l1b Program: gmx mdrun, version 2021 Source file: src/gromacs/mdlib/sim_util.cpp (line 526)

Fatal error: Step 0: The total potential energy is 5.53954e+11, which is extremely high. The LJ and electrostatic contributions to the energy are 5.53954e+11 and -35062.9, respectively. A very high potential energy can be caused by overlapping interactions in bonded interactions or very large coordinate values. Usually this is caused by a badly- or non-equilibrated initial configuration, incorrect interactions or parameters in the topology.

For more information and tips for troubleshooting, please check the GROMACS website at http://www.gromacs.org/Documentation/Errors

zh2417 commented 10 months ago

I also meet the error "Residue 'CYX' not found in residue topology database". Is this caused by the naming conflict between the amber force field and the oplsaam.ff force field residues? ‘pdb2pqr30 --ffout=AMBER --titration-state-method=propka --with-ph=7.4 --protonate-all --drop-water’ This command makes the naming of proteins use the naming scheme of amber force field. I also want to know if the naming of amber force field and oplsaam.ff will not conflict. Why are you using the oplsaam.ff force field but the naming scheme of the anber stance? I look forward to your answer.