********>mmpbsa.patch Author: Jason Swails Date: 4, Oct. 2013 Program: MMPBSA.py Description: Fix QM/MM-GBSA when there is a net charge in at least one of the components -------------------------------------------------------------------------------- AmberTools/src/mmpbsa_py/MMPBSA_mods/createinput.py | 6 ++++-- AmberTools/src/mmpbsa_py/MMPBSA_mods/utils.py | 4 +++- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git AmberTools/src/mmpbsa_py/MMPBSA_mods/createinput.py AmberTools/src/mmpbsa_py/MMPBSA_mods/createinput.py index e9b0554..315fd03 100644 --- AmberTools/src/mmpbsa_py/MMPBSA_mods/createinput.py +++ AmberTools/src/mmpbsa_py/MMPBSA_mods/createinput.py @@ -122,23 +122,25 @@ def create_inputs(INPUT, prmtop_system, pre): raise CreateInputError('No valid QM residues chosen!') com_input['qm_theory'] = "'%s'" % com_input['qm_theory'] com_input['qmmask'] = "'%s'" % com_input['qmmask'] + com_input['qmcharge'] = com_input['qmcharge_com'] gb_mdin = SanderGBInput(com_input) gb_mdin.write_input(pre + 'gb_qmmm_com.mdin') if not stability: if not rec_input['qmmask']: rec_input['ifqnt'] = 0 else: rec_input['qmmask'] = "'%s'" % rec_input['qmmask'] rec_input['qm_theory'] = "'%s'" % rec_input['qm_theory'] + rec_input['qmcharge'] = rec_input['qmcharge_rec'] gb_mdin = SanderGBInput(rec_input) gb_mdin.write_input(pre + 'gb_qmmm_rec.mdin') if not lig_input['qmmask']: lig_input['ifqnt'] = 0 else: lig_input['qmmask'] = "'%s'" % lig_input['qmmask'] lig_input['qm_theory'] = "'%s'" % lig_input['qm_theory'] + lig_input['qmcharge'] = lig_input['qmcharge_lig'] gb_mdin = SanderGBInput(lig_input) gb_mdin.write_input(pre + 'gb_qmmm_lig.mdin') else: gb_mdin = SanderGBInput(INPUT) - - gb_mdin.write_input(pre + 'gb.mdin') + gb_mdin.write_input(pre + 'gb.mdin') if INPUT['pbrun']: pb_prog = 'mmpbsa_py_energy' diff --git AmberTools/src/mmpbsa_py/MMPBSA_mods/utils.py AmberTools/src/mmpbsa_py/MMPBSA_mods/utils.py index f6d3804..75f82f4 100644 --- AmberTools/src/mmpbsa_py/MMPBSA_mods/utils.py +++ AmberTools/src/mmpbsa_py/MMPBSA_mods/utils.py @@ -46,7 +46,9 @@ def remove(flag, mpi_size=0, fnpre='_MMPBSA_'): fnpre + 'gb_decomp_com.mdin', fnpre + 'gb_decomp_rec.mdin', fnpre + 'gb_decomp_lig.mdin', fnpre + 'pb_decomp_com.mdin', fnpre + 'pb_decomp_rec.mdin', fnpre + 'pb_decomp_lig.mdin', - fnpre + 'ptrajentropy.in', fnpre + 'mutant_ptrajentropy.in'] + fnpre + 'ptrajentropy.in', fnpre + 'mutant_ptrajentropy.in', + fnpre + 'gb_qmmm_com.mdin', fnpre + 'gb_qmmm_rec.mdin', + fnpre + 'gb_qmmm_lig.mdin'] # All the extra files we keep for keep_files = 1 keep_files_1=[fnpre + 'ligand.mdcrd', fnpre + 'ligand.nc',