Source code for schrodinger.application.jaguar.hydrokinetic_keywords

"""
This module documents all possible Hydrokinetic input keywords.
"""

# Contributors: Mark A. Watson

import schrodinger.application.jaguar.hydrokinetic_input_constants as constants
import schrodinger.application.jaguar.autots_input_constants as autots_constants
from schrodinger.application.jaguar.workflow_keywords import Choices, WorkflowKeyword

HYDROKINETIC_KEYWORDS = {}

#------------------------------------------------------------------------------


[docs]def keyword(name, valid_type, default, description): """ Convenience function to create a dictionary of HydrokineticKeyword's """ if name in HYDROKINETIC_KEYWORDS: raise ValueError('keyword %s is duplicated' % name) # Define all keywords in lower case HYDROKINETIC_KEYWORDS[name.lower()] = WorkflowKeyword( name=name.lower(), valid_type=valid_type, default=default, description=description)
[docs]def generate_all_keywords(): #------------------------------------------------------------------------------ # Add new "list of int" Hydrokinetic keywords here #------------------------------------------------------------------------------ keyword(name='protonatable_positions', valid_type=[int], default=[], description='A list of atom indices to protonate.') #------------------------------------------------------------------------------ # Add new "list of float" Hydrokinetic keywords here #------------------------------------------------------------------------------ keyword(name='pHs', valid_type=[float], default=[5.0, 7.0, 9.0], description= 'A list of pHs to consider for the determination of half-lives.') #------------------------------------------------------------------------------ # Add new "boolean" Hydrokinetic keywords here #------------------------------------------------------------------------------ keyword( name='optimize_inputs', valid_type=bool, default=True, description='If True, optimize initial complexes. This parameter will ' 'be automatically set to False if the parameters reactant_complex ' 'and product_complex are set.') keyword(name='debug', valid_type=bool, default=False, description='Print extra debugging information.') keyword(name='debug_autots', valid_type=bool, default=False, description='Print extra debugging information in AutoTS subjobs.') keyword(name='skip_pka', valid_type=bool, default=False, description='Do not compute pKas of structures') keyword(name='csrch', valid_type=bool, default=True, description='Run conformational search in macro-pka calculation') keyword(name='ph_aware_mechs', valid_type=bool, default=True, description='Use the requested pHs to limit mechanisms considered ' 'e.g. do not consider hydroxide catalyzed reactions at pH 3') #------------------------------------------------------------------------------ # Add new "integer" Hydrokinetic keywords here #------------------------------------------------------------------------------ keyword(name='multiplicity', valid_type=int, default=1, description='Overall spin multiplicity of reaction complex.') keyword(name='charge', valid_type=int, default=0, description='Overall charge of reaction complex.') #------------------------------------------------------------------------------ # Add new "float" Hydrokinetic keywords here #------------------------------------------------------------------------------ keyword(name='temp', valid_type=float, default=298.15, description='Temperature of reactions.') keyword(name='max_halflife', valid_type=float, default=315360000.0, description= 'Maximum half-life to allow for further reactive elaboration.') #------------------------------------------------------------------------------ # Add new "string" Hydrokinetic keywords here #------------------------------------------------------------------------------ keyword(name=constants.JOBTYPE, valid_type=Choices(*constants.JOBTYPE_CHOICES), default=constants.JOBTYPE_STD, description='Jobtype for Hydrokinetic to run.') keyword( name=constants.INPUT_MOLECULE, valid_type=str, default='', description= 'Path to Maestro structure file containing an individual reactant molecule.' ) keyword(name='pka_method', valid_type=Choices(*constants.PKA_METHODS), default=constants.MACRO_PKA, description='The pka predictor to use for LogD calculations.') keyword( name='spectator_esp', valid_type=Choices(*autots_constants.SPECTATOR_ESPS), default=autots_constants.ESP_JAGUAR, description= 'Methodology used to position spectator molecules in reactant and product complexes.' )