schrodinger.application.jaguar.workflow_input module¶
Functions and classes for defining the input to a Workflow workflow.
-
class
schrodinger.application.jaguar.workflow_input.
WorkflowInput
(inputfile=None, keywords=None, jaguar_keywords=None, jobname=None)¶ Bases:
abc.ABC
A Base class for specifying parameters in workflow calculations.
- The following functions must be defined in the inheriting class:
- validate(self)
- generate_keywords(self)
-
__init__
(inputfile=None, keywords=None, jaguar_keywords=None, jobname=None)¶ Create a WorkflowInput instance. If a keyword is specified in both ‘inputfile’ and ‘keywords’, then the values in ‘keywords’ will be set preferrentially. This also applies to ‘jaguar_keywords’.
Parameters: - inputfile (str) – Path to a Workflow input file
- keywords (dict) – Workflow keyword/value pairs
- jaguar_keywords (dict) – Jaguar &gen section keyword/value pairs
- jobname (string) – Name of job, if it is not None it will be set to the basename of the input file name.
-
keywords
¶
-
values
¶ Support access to WorkflowKeyword values via attribute syntax. e.g.
wi = WorkflowInput() print wi.values.optimize # print ‘optimize’ keyword value
-
generate_keywords
()¶ Initialize the list of possible keywords
Return type: dictionary (keys are lowercase string, values are WorkflowKeyword) Return param: key, WorkflowKeyword pairs specific to this job’s input file
-
getValue
(keyword)¶ Return the value for Workflow keyword. The return type depends on the keyword.
Parameters: keyword (string) – name of keyword :raise WorkflowKeywordError if no keyword found
-
setValue
(keyword, value)¶ Set the Workflow keyword ‘keyword’ to value ‘value’. Note that there may be type-checking and conversion by the WorkflowKeyword class.
If ‘value’ is None, the keyword will be reset.
Parameters: - keyword (string) – name of keyword
- value (anytype) – value of keyword
:raise WorkflowKeywordError if no keyword found
-
setValues
(keywords)¶ Set multiple Workflow keywords.
Parameters: keywords (dict of string/anytype pairs) – keyword/value pairs
-
getJaguarValue
(key)¶ Return the value for Jaguar keyword ‘key’. The return type depends on the keyword.
Parameters: key (string) – name of keyword
-
setJaguarValue
(key, value)¶ Set the Jaguar &gen section keyword ‘key’ to value ‘value’.
Parameters: - key (string) – name of keyword
- value (anytype) – value of keyword
:raise JaguarKeywordException if keyword is invalid
-
setJaguarValues
(keywords)¶ Set multiple Jaguar &gen section keywords.
Parameters: keywords (dict of string/anytype pairs) – Jaguar &gen section keyword/value pairs
-
getJaguarNonDefault
()¶ Return a dictionary of all non-default Jaguar keys except ‘multip’ and ‘molchg’, which must be retrieved explicitly.
-
resetKey
(keyword)¶ Reset keyword to default state.
Parameters: keyword (string) – name of keyword
-
resetAll
()¶ Reset all keywords to their default states.
-
getDefault
(keyword)¶ Return the default value for Workflow keyword ‘keyword’. The return type depends on the keyword.
Parameters: keyword (string) – name of keyword :raise WorkflowKeywordError if no keyword found
-
getNonDefaultKeys
()¶ Return a dictionary of all non-default-value WorkflowKeyword instances indexed by name.
-
isNonDefault
(keyword)¶ Has the specified keyword been set to a non-default value?
Parameters: keyword (str) – The key to check Returns: True if the specified keyword is set to a non-default value. False otherwise.
-
setConstraints
(constraints)¶ Set the constraints.
Parameters: constraints (dict) – dictionary relating structure title to a list of Coordinate instances which define the constraints
-
getConstraints
()¶ Return the constraints defined in the input file
Returns: a dict relating structure titles to constraints the constraints are given as a list of Coordinate instances and the titles refer to the titles of the input molecules.
-
validate
()¶ Perform a self-consistency check of all currently set keywords.
write for inheriting class :return param: Whether or no input passes workflow-specific
validation checksReturn type: bool
-
validate_jaguar_keywords
(sts)¶ Perform a check to ensure that Jaguar keywords are not set in a way that cannot be handled.
Parameters: sts (list of Structure objects) – Structures whose basis needs validating
-
save
(name)¶ Create a Workflow input file called ‘name’ in the current working directory based on this class instance. Only write the non-default keyword values.
Parameters: name (str) – Path to a Workflow input file
-
setJobname
(jobname)¶ Set the attribute jobname.
Parameters: jobname (string) – input name of job. If jobname is None we try to use self._inputfile. If that is also None we assign a unique name.
-
read
(inputfile)¶ Read an existing Workflow input file. Any keywords specified in the input file will override existing values in this WorkflowInput instance.
- Jaguar &gen section keywords are defined like:
- &JaguarKeywords
- key=val key=val …
&
- Constraints can be defined with
- &Constraints
- st_title atom_index1 atom_index2… value
&
Parameters: inputfile (str) – Path to a Workflow input file
-
get_input_files
()¶ Return set of expected input files.