schrodinger.application.macromodel.apps module

Functions that combine macromodel.utils and macromodel.tools to create mini-applications and workflows.

While these may be useful in themselves, they also serve as examples of how to use the other modules in this package.

Copyright Schrodinger, LLC. All rights reserved.

This function runs a series of conformational searches plus multiple minimization blocks, in order to converge a search of conformational space. Convergence in this context is defined as the searches locating no new conformers. This function returns False if the blocks fail to converge on a number of conformers, else it returns True.

The function accepts optional keyword=value pairs to build the macromodel.utils.ComUtil instance so that non-default parameters can be used to run the job.

Each block consists of:

a) running ‘steps’ iterations of confsearch ‘method’ with mild minimization convergence threshold (0.05 RMSD gradient). Method values may include ‘MCMM’ (monte carlo multiple minima), ‘LMOD’ (low mode), ‘SPMC’ (systematic torsional sampling), ‘LLMD’ (large scale low mode), ‘MCMMLMOD’ (mcmm+lmod), ‘MCMMLLMD’ (mcmm+llmd), ‘CGEN’ (ConfGen) or ‘MIXED’ (a series of different methods: cgen, mcmm, spmc, lmod, mcmm+lmod, mcmm, mcmm, …).

b) running a Mult minimization with tighter convergence threshold (0.001 RMSD gradient)

  1. counting the number of minimized confs found
  2. initializing the next search with minimized confs, and a new SEED.

Blocks are repeated until a total of blocks have been performed OR the number of minimized confs found does not increase between two successive blocks and more than 3 blocks have been performed.

Depends on ComUtil for writing job files. Depends on macromodel.tools.count() for assessing convergence.

Raises Runtime exception if a task does not succeed. Raises generic exception if search method can’t be determined.

schrodinger.application.macromodel.apps.get_rep_confs(mae_file='', max_confs=5, steps=5000, **kwargs)

This function combines a series of tasks to automate the processing of non-conformers in to a smaller representative collection of conformers. Returns a list of the file names that contain representative confs, grouped by input serial number.

This method accepts the name of a mae file containing a set of non-conformers, optionally the max number of representative confs, optionally the number of search steps, optional kwargs for the ComUtil object, and then:

  1. performs a serial conformation search of non-conformers

b) groups output of conformational search by serial number into multiple files c) performs multiple minimization of each serial number d) reduces output of each serial number with cluster, to N representative confs.

The default maximum number of conformers per serial filtered by Cluster is 5. The default number steps used in the Monte Carlo Multiple Minima search is 5000. Returns the array of representative file names.

Depends on macromodel.utils.CluUtil() class for clustering. Depends on macromodel.utils.ComUtil() for writing and running com files. Depends on macromodel.tools.serial_split() for grouping output.

schrodinger.application.macromodel.apps.get_lead_confs(mae_file='', max_confs=5, steps=5000, **kwargs)

This function combines a series of tasks to automate the processing of non-conformers in to a smaller representative collection of conformers. Returns a list of the file names that contain leading (lowest energy) cluster confs, grouped by input serial number.

This method accepts the name of a mae file containing a set of non-conformers, optionally the max number of leading energy confs, optionally the number of search steps, optional kwargs for the ComUtil object, and then:

  1. performs a serial conformation search of non-conformers

b) groups output of conformational search by serial number into multiple files c) performs multiple minimization of each serial number d) reduces output of each serial number with cluster, to N leading energy confs.

The default maximum number of conformers per serial filtered by Cluster is 5. The default number steps used in the Monte Carlo Multiple Minima search is 5000. Returns the array of leading energy conf file names.

Depends on macromodel.utils.CluUtil() class for clustering. Depends on macromodel.utils.ComUtil() for writing and running com files. Depends on macromodel.tools.serial_split() for grouping output.

schrodinger.application.macromodel.apps.get_energy(structure=<class 'schrodinger.structure.structure.Structure'>, ffld='OPLS_2005', solvent=False, cleanup=True, units='')

Returns a dictionary of MacroModel’s molecular mechanics terms generated from a single point energy calculation.

The dictionary may be restricted to a collection of values with a particular unit, kJ/mol or kcal/mol. By default, the function cleans up all intermediate files created by the job.

The ‘structure’ argument must be a schrodinger.structure.Structure object.