Merge pull request #3058 from RosettaCommons/dimaio/genpot_to_merge
This PR adds several tools aimed with making the Rosetta scorefunction reasonably behaved for arbitrary ligands.
Three specific improvements have been added:
A new ligand atom typing scheme has been added. An alternate param file generation app, scripts/python/public/generic_potential/mol2genparams.py has been added to handle parameter generation with the new atom typing. NOTE that this new typing is completely separate from protein atom typing.
A generic torsional potential, 'gen_bonded' has been added using these new types. This potential is undefined (returning 0) for non-ligand residues currently. LK and LJ parameters have been fit for these new atom types using a combination of small molecule crystal data and ligand-bound protein structures.
A new ligand docking protocol has been added in 'protocols/ligand_docking/GALigandDock'. It combines fast scoring on a precomputed grid with a genetic algorithm to allow very accurate ligand docking in 3-10 CPU minutes total per target (fixed sidechain) or 10-30 CPU minutes total (flexible sidechain). It is exposed as an XML-parsible mover, GALigandDock.
To use:
generate ligand parameter files using the new app mol2genparams.py
add the flag -gen_potential (or -beta) to the command line (both load exact same corrections ... note -beta will always load the latest-and-greatest energy function variant)
if using RosettaScripts, be sure the term 'gen_bonded' is turned on (recommended weight = 1)
More detailed information at https://www.rosettacommons.org/docs/wiki/rosetta_basics/scoring/Overview-of-Seattle-Group-energy-function-optimization-project