schrodinger.application.steps.dataclasses module¶
Data classes to be used as input/output objects for steps and their associated serializers which may be used when batching those steps.
- exception schrodinger.application.steps.dataclasses.StepsError[source]¶
Bases:
RuntimeError
- __init__(*args, **kwargs)¶
- args¶
- with_traceback()¶
Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.
- class schrodinger.application.steps.dataclasses.MolToSmilesSerializer[source]¶
Bases:
schrodinger.stepper.stepper.Serializer
A serializer using RDKit’s canonical SMILES of the Mol as the serialized form.
- DataType¶
alias of
rdkit.Chem.rdchem.Mol
- deserialize(fname)[source]¶
Read in items from
fname
. :type fname: str :rtype: iterable[self.DataType]
- serialize(items, fname)¶
Write
items
to a file namedfname
.
- class schrodinger.application.steps.dataclasses.MolInMixin[source]¶
Bases:
object
- Input¶
alias of
rdkit.Chem.rdchem.Mol
- InputSerializer¶
alias of
schrodinger.application.steps.dataclasses.MolToSmilesSerializer
- class schrodinger.application.steps.dataclasses.MolOutMixin[source]¶
Bases:
object
- Output¶
alias of
rdkit.Chem.rdchem.Mol
- OutputSerializer¶
alias of
schrodinger.application.steps.dataclasses.MolToSmilesSerializer
- class schrodinger.application.steps.dataclasses.MolMolMixin[source]¶
Bases:
schrodinger.application.steps.dataclasses.MolInMixin
,schrodinger.application.steps.dataclasses.MolOutMixin
- Input¶
alias of
rdkit.Chem.rdchem.Mol
- InputSerializer¶
alias of
schrodinger.application.steps.dataclasses.MolToSmilesSerializer
- Output¶
alias of
rdkit.Chem.rdchem.Mol
- OutputSerializer¶
alias of
schrodinger.application.steps.dataclasses.MolToSmilesSerializer
- class schrodinger.application.steps.dataclasses.ScoredMol(*args, _param_type=<object object>, **kwargs)[source]¶
Bases:
schrodinger.models.parameters.CompoundParam
- mol: rdkit.Chem.rdchem.Mol¶
Base class for all Param classes. A Param is a descriptor for storing data, which means that a single Param instance will manage the data values for multiple instances of the class that owns it. Example:
class Coord(CompoundParam): x: int y: int
An instance of the Coord class can be created normally, and Params can be accessed as normal attributes:
coord = Coord() coord.x = 4
When a Param value is set, the
valueChanged
signal is emitted. Params can be serialized and deserialized to and from JSON. Params can also be nested:class Atom(CompoundParam): coord: Coord element: str
- score: float¶
Base class for all Param classes. A Param is a descriptor for storing data, which means that a single Param instance will manage the data values for multiple instances of the class that owns it. Example:
class Coord(CompoundParam): x: int y: int
An instance of the Coord class can be created normally, and Params can be accessed as normal attributes:
coord = Coord() coord.x = 4
When a Param value is set, the
valueChanged
signal is emitted. Params can be serialized and deserialized to and from JSON. Params can also be nested:class Atom(CompoundParam): coord: Coord element: str
- DataClass¶
This class can be used to declare a public attribute on a
CompoundParam
. Declared public attributes can be used without error.Example usage:
class Coord(CompoundParam): x: int y: int note = NonParamAttribute() coord = Coord() coord.note = "hello" # No error
- __init__(default_value=<object object>, _param_type=<object object>, **kwargs)¶
- classmethod addSubParam(name, param, update_owner=True)¶
- blockSignals(self, bool) bool ¶
- block_signal_propagation()¶
- childEvent(self, QChildEvent)¶
- children(self) List[QObject] ¶
- classmethod configureParam()¶
Override this class method to set up the abstract param class (e.g. setParamReference on child params.)
- connectNotify(self, QMetaMethod)¶
- customEvent(self, QEvent)¶
- classmethod defaultValue(*args, **kwargs)¶
- deleteLater(self)¶
- destroyed¶
destroyed(self, object: QObject = None) [signal]
- disconnect(QMetaObject.Connection) bool ¶
- disconnect(self) None
- disconnectNotify(self, QMetaMethod)¶
- dumpObjectInfo(self)¶
- dumpObjectTree(self)¶
- dynamicPropertyNames(self) List[QByteArray] ¶
- event(self, QEvent) bool ¶
- eventFilter(self, QObject, QEvent) bool ¶
- findChild(self, type, name: str = '', options: Union[Qt.FindChildOptions, Qt.FindChildOption] = Qt.FindChildrenRecursively) QObject ¶
- findChild(self, Tuple, name: str = '', options: Union[Qt.FindChildOptions, Qt.FindChildOption] = Qt.FindChildrenRecursively) QObject
- findChildren(self, type, name: str = '', options: Union[Qt.FindChildOptions, Qt.FindChildOption] = Qt.FindChildrenRecursively) List[QObject] ¶
- findChildren(self, Tuple, name: str = '', options: Union[Qt.FindChildOptions, Qt.FindChildOption] = Qt.FindChildrenRecursively) List[QObject]
- findChildren(self, type, QRegExp, options: Union[Qt.FindChildOptions, Qt.FindChildOption] = Qt.FindChildrenRecursively) List[QObject]
- findChildren(self, Tuple, QRegExp, options: Union[Qt.FindChildOptions, Qt.FindChildOption] = Qt.FindChildrenRecursively) List[QObject]
- findChildren(self, type, QRegularExpression, options: Union[Qt.FindChildOptions, Qt.FindChildOption] = Qt.FindChildrenRecursively) List[QObject]
- findChildren(self, Tuple, QRegularExpression, options: Union[Qt.FindChildOptions, Qt.FindChildOption] = Qt.FindChildrenRecursively) List[QObject]
- classmethod fromJson(json_obj)¶
A factory method which constructs a new object from a given dict loaded from a json string or file.
- Parameters
json_obj (dict) – A json-loaded dictionary to create an object from.
- Returns
An instance of this class.
- Return type
cls
- classmethod fromJsonImplementation(json_dict)¶
Sets the value of this compound param value object from a JSON dict.
Warning
This should never be called directly.
- getAbstractParam(*args, **kwargs)¶
- classmethod getJsonBlacklist()¶
Override to customize what params are serialized.
Implementations should return a list of abstract params that should be omitted from serialization.
- ..NOTE
Returned abstract params must be direct child params of
cls
, e.g.cls.name
, notcls.coord.x
.
- classmethod getParamSignal(*args, **kwargs)¶
- classmethod getParamValue(*args, **kwargs)¶
- classmethod getSubParam(name)¶
Get the value of a subparam using the string name:
c = Coord() assert c.getSubParam('x') == 0
Note
Using the string name to access params is generally discouraged, but can be useful for serializing/deserializing param data.
- Parameters
name (str) – The name of the subparam to get the value for.
- classmethod getSubParams()¶
Return a dictionary mapping subparam names to their values.
- getTypeHint()¶
- get_version()¶
Method to get the version of a particular object. Defaults to the current version of mmshare. This class can be overridden for custom versioning behavior.
- inherits(self, str) bool ¶
- initAbstract()¶
- initConcrete()¶
Override to customize initialization of concrete params.
- initializeValue()¶
Override to dynamically set up the default value of the param. Useful for default values that are determined at runtime. This is called any time the param is reset.
- installEventFilter(self, QObject)¶
- classmethod isAbstract()¶
Whether the param is an “abstract” param.
- isDefault(*args, **kwargs)¶
- isSignalConnected(self, QMetaMethod) bool ¶
- isWidgetType(self) bool ¶
- isWindowType(self) bool ¶
- killTimer(self, int)¶
- metaObject(self) QMetaObject ¶
- molChanged¶
- molReplaced¶
- moveToThread(self, QThread)¶
- objectName(self) str ¶
- objectNameChanged¶
objectNameChanged(self, str) [signal]
- classmethod owner()¶
Get the owner of the param:
# Can be called on an abstract param: assert Coord.x.owner() == Coord # ...or on an instance of a CompoundParam a = Atom() assert a.coord.owner() == a
- classmethod ownerChain()¶
Returns a list of param owners starting from the toplevel param and ending with self. Examples:
foo.bar.atom.coord.ownerChain()
will return[foo, bar, atom, coord]
where every item is a concrete param.Foo.bar.atom.coord.x.ownerChain()
will return[Foo, Foo.bar, Foo.atom.coord, Foo.atom.coord.x]
where every item is an abstract params.
- classmethod paramName()¶
Get the name of the param:
# Can be called on an abstract param: print(Coord.x.paramName()) # 'x' # ...or on an instance of a CompoundParam a = Atom() a.coord.paramName() # 'coord'
- parent(self) QObject ¶
- property(self, str) Any ¶
- pyqtConfigure(...)¶
Each keyword argument is either the name of a Qt property or a Qt signal. For properties the property is set to the given value which should be of an appropriate type. For signals the signal is connected to the given value which should be a callable.
- receivers(self, PYQT_SIGNAL) int ¶
- removeEventFilter(self, QObject)¶
- reset(*args, **kwargs)¶
- scoreChanged¶
- scoreReplaced¶
- sender(self) QObject ¶
- senderSignalIndex(self) int ¶
- setObjectName(self, str)¶
- classmethod setParamValue(*args, **kwargs)¶
- setParent(self, QObject)¶
- setProperty(self, str, Any) bool ¶
- classmethod setReference(param1, param2)¶
Call this class method from configureParam to indicate that two params should be kept in sync. The initial values will start with the default value of
param1
. Example:class Square(CompoundParam): width: float = 5 height: float = 10 @classmethod def configureParam(cls): super().configureParam() cls.setReference(cls.width, cls.height) square = Square() assert square.width == square.height == 5 # Default value of width # takes priority square.height = 7 assert square.width == square.height == 7 square.width = 6 assert square.width == square.height == 6
- Parameters
param1 – The first abstract param to keep synced
param2 – The second abstract param. After instantiation, this param will take on the value of param1.
- setValue(*args, **kwargs)¶
- signalsBlocked(self) bool ¶
- skip_eq_check()¶
- startTimer(self, int, timerType: Qt.TimerType = Qt.CoarseTimer) int ¶
- staticMetaObject = <PyQt5.QtCore.QMetaObject object>¶
- thread(self) QThread ¶
- timerEvent(self, QTimerEvent)¶
- toDict(*args, **kwargs)¶
- toJson(_mark_version=True)¶
Create and returns a data structure made up of jsonable items.
- Return type
An instance of one the classes from NATIVE_JSON_DATATYPES
- toJsonImplementation(*args, **kwargs)¶
Abstract method that must be defined by all derived classes. Converts an instance of the derived class into a jsonifiable object.
- Returns
A dict made up of JSON native datatypes or Jsonable objects. See the link below for a table of such types. https://docs.python.org/2/library/json.html#encoders-and-decoders
- tr(self, str, disambiguation: str = None, n: int = - 1) str ¶
- valueChanged¶
- class schrodinger.application.steps.dataclasses.ScoredMolSerializer[source]¶
Bases:
schrodinger.stepper.stepper.Serializer
A serializer using RDKit’s canonical SMILES of the Mol and the score value string separated by a ‘,’ as the serialized form.
- DataType¶
alias of
schrodinger.application.steps.dataclasses.ScoredMol
- SEPARATOR = ','¶
- deserialize(fname)¶
Read in items from
fname
. :type fname: str :rtype: iterable[self.DataType]
- serialize(items, fname)¶
Write
items
to a file namedfname
.
- class schrodinger.application.steps.dataclasses.ScoredMolInMixin[source]¶
Bases:
object
- Input¶
alias of
schrodinger.application.steps.dataclasses.ScoredMol
- InputSerializer¶
alias of
schrodinger.application.steps.dataclasses.ScoredMolSerializer
- class schrodinger.application.steps.dataclasses.ScoredMolOutMixin[source]¶
Bases:
object
- Output¶
alias of
schrodinger.application.steps.dataclasses.ScoredMol
- OutputSerializer¶
alias of
schrodinger.application.steps.dataclasses.ScoredMolSerializer
- class schrodinger.application.steps.dataclasses.ScorerMixin[source]¶
Bases:
object
- Input¶
alias of
rdkit.Chem.rdchem.Mol
- InputSerializer¶
alias of
schrodinger.application.steps.dataclasses.MolToSmilesSerializer
- Output¶
alias of
schrodinger.application.steps.dataclasses.ScoredMol
- OutputSerializer¶
alias of
schrodinger.application.steps.dataclasses.ScoredMolSerializer
- class schrodinger.application.steps.dataclasses.ScoredSmiles(*args, _param_type=<object object>, **kwargs)[source]¶
Bases:
schrodinger.models.parameters.CompoundParam
- smiles: str¶
Base class for all Param classes. A Param is a descriptor for storing data, which means that a single Param instance will manage the data values for multiple instances of the class that owns it. Example:
class Coord(CompoundParam): x: int y: int
An instance of the Coord class can be created normally, and Params can be accessed as normal attributes:
coord = Coord() coord.x = 4
When a Param value is set, the
valueChanged
signal is emitted. Params can be serialized and deserialized to and from JSON. Params can also be nested:class Atom(CompoundParam): coord: Coord element: str
- score: float¶
Base class for all Param classes. A Param is a descriptor for storing data, which means that a single Param instance will manage the data values for multiple instances of the class that owns it. Example:
class Coord(CompoundParam): x: int y: int
An instance of the Coord class can be created normally, and Params can be accessed as normal attributes:
coord = Coord() coord.x = 4
When a Param value is set, the
valueChanged
signal is emitted. Params can be serialized and deserialized to and from JSON. Params can also be nested:class Atom(CompoundParam): coord: Coord element: str
- DataClass¶
This class can be used to declare a public attribute on a
CompoundParam
. Declared public attributes can be used without error.Example usage:
class Coord(CompoundParam): x: int y: int note = NonParamAttribute() coord = Coord() coord.note = "hello" # No error
- __init__(default_value=<object object>, _param_type=<object object>, **kwargs)¶
- classmethod addSubParam(name, param, update_owner=True)¶
- blockSignals(self, bool) bool ¶
- block_signal_propagation()¶
- childEvent(self, QChildEvent)¶
- children(self) List[QObject] ¶
- classmethod configureParam()¶
Override this class method to set up the abstract param class (e.g. setParamReference on child params.)
- connectNotify(self, QMetaMethod)¶
- customEvent(self, QEvent)¶
- classmethod defaultValue(*args, **kwargs)¶
- deleteLater(self)¶
- destroyed¶
destroyed(self, object: QObject = None) [signal]
- disconnect(QMetaObject.Connection) bool ¶
- disconnect(self) None
- disconnectNotify(self, QMetaMethod)¶
- dumpObjectInfo(self)¶
- dumpObjectTree(self)¶
- dynamicPropertyNames(self) List[QByteArray] ¶
- event(self, QEvent) bool ¶
- eventFilter(self, QObject, QEvent) bool ¶
- findChild(self, type, name: str = '', options: Union[Qt.FindChildOptions, Qt.FindChildOption] = Qt.FindChildrenRecursively) QObject ¶
- findChild(self, Tuple, name: str = '', options: Union[Qt.FindChildOptions, Qt.FindChildOption] = Qt.FindChildrenRecursively) QObject
- findChildren(self, type, name: str = '', options: Union[Qt.FindChildOptions, Qt.FindChildOption] = Qt.FindChildrenRecursively) List[QObject] ¶
- findChildren(self, Tuple, name: str = '', options: Union[Qt.FindChildOptions, Qt.FindChildOption] = Qt.FindChildrenRecursively) List[QObject]
- findChildren(self, type, QRegExp, options: Union[Qt.FindChildOptions, Qt.FindChildOption] = Qt.FindChildrenRecursively) List[QObject]
- findChildren(self, Tuple, QRegExp, options: Union[Qt.FindChildOptions, Qt.FindChildOption] = Qt.FindChildrenRecursively) List[QObject]
- findChildren(self, type, QRegularExpression, options: Union[Qt.FindChildOptions, Qt.FindChildOption] = Qt.FindChildrenRecursively) List[QObject]
- findChildren(self, Tuple, QRegularExpression, options: Union[Qt.FindChildOptions, Qt.FindChildOption] = Qt.FindChildrenRecursively) List[QObject]
- classmethod fromJson(json_obj)¶
A factory method which constructs a new object from a given dict loaded from a json string or file.
- Parameters
json_obj (dict) – A json-loaded dictionary to create an object from.
- Returns
An instance of this class.
- Return type
cls
- classmethod fromJsonImplementation(json_dict)¶
Sets the value of this compound param value object from a JSON dict.
Warning
This should never be called directly.
- getAbstractParam(*args, **kwargs)¶
- classmethod getJsonBlacklist()¶
Override to customize what params are serialized.
Implementations should return a list of abstract params that should be omitted from serialization.
- ..NOTE
Returned abstract params must be direct child params of
cls
, e.g.cls.name
, notcls.coord.x
.
- classmethod getParamSignal(*args, **kwargs)¶
- classmethod getParamValue(*args, **kwargs)¶
- classmethod getSubParam(name)¶
Get the value of a subparam using the string name:
c = Coord() assert c.getSubParam('x') == 0
Note
Using the string name to access params is generally discouraged, but can be useful for serializing/deserializing param data.
- Parameters
name (str) – The name of the subparam to get the value for.
- classmethod getSubParams()¶
Return a dictionary mapping subparam names to their values.
- getTypeHint()¶
- get_version()¶
Method to get the version of a particular object. Defaults to the current version of mmshare. This class can be overridden for custom versioning behavior.
- inherits(self, str) bool ¶
- initAbstract()¶
- initConcrete()¶
Override to customize initialization of concrete params.
- initializeValue()¶
Override to dynamically set up the default value of the param. Useful for default values that are determined at runtime. This is called any time the param is reset.
- installEventFilter(self, QObject)¶
- classmethod isAbstract()¶
Whether the param is an “abstract” param.
- isDefault(*args, **kwargs)¶
- isSignalConnected(self, QMetaMethod) bool ¶
- isWidgetType(self) bool ¶
- isWindowType(self) bool ¶
- killTimer(self, int)¶
- metaObject(self) QMetaObject ¶
- moveToThread(self, QThread)¶
- objectName(self) str ¶
- objectNameChanged¶
objectNameChanged(self, str) [signal]
- classmethod owner()¶
Get the owner of the param:
# Can be called on an abstract param: assert Coord.x.owner() == Coord # ...or on an instance of a CompoundParam a = Atom() assert a.coord.owner() == a
- classmethod ownerChain()¶
Returns a list of param owners starting from the toplevel param and ending with self. Examples:
foo.bar.atom.coord.ownerChain()
will return[foo, bar, atom, coord]
where every item is a concrete param.Foo.bar.atom.coord.x.ownerChain()
will return[Foo, Foo.bar, Foo.atom.coord, Foo.atom.coord.x]
where every item is an abstract params.
- classmethod paramName()¶
Get the name of the param:
# Can be called on an abstract param: print(Coord.x.paramName()) # 'x' # ...or on an instance of a CompoundParam a = Atom() a.coord.paramName() # 'coord'
- parent(self) QObject ¶
- property(self, str) Any ¶
- pyqtConfigure(...)¶
Each keyword argument is either the name of a Qt property or a Qt signal. For properties the property is set to the given value which should be of an appropriate type. For signals the signal is connected to the given value which should be a callable.
- receivers(self, PYQT_SIGNAL) int ¶
- removeEventFilter(self, QObject)¶
- reset(*args, **kwargs)¶
- scoreChanged¶
- scoreReplaced¶
- sender(self) QObject ¶
- senderSignalIndex(self) int ¶
- setObjectName(self, str)¶
- classmethod setParamValue(*args, **kwargs)¶
- setParent(self, QObject)¶
- setProperty(self, str, Any) bool ¶
- classmethod setReference(param1, param2)¶
Call this class method from configureParam to indicate that two params should be kept in sync. The initial values will start with the default value of
param1
. Example:class Square(CompoundParam): width: float = 5 height: float = 10 @classmethod def configureParam(cls): super().configureParam() cls.setReference(cls.width, cls.height) square = Square() assert square.width == square.height == 5 # Default value of width # takes priority square.height = 7 assert square.width == square.height == 7 square.width = 6 assert square.width == square.height == 6
- Parameters
param1 – The first abstract param to keep synced
param2 – The second abstract param. After instantiation, this param will take on the value of param1.
- setValue(*args, **kwargs)¶
- signalsBlocked(self) bool ¶
- skip_eq_check()¶
- smilesChanged¶
- smilesReplaced¶
- startTimer(self, int, timerType: Qt.TimerType = Qt.CoarseTimer) int ¶
- staticMetaObject = <PyQt5.QtCore.QMetaObject object>¶
- thread(self) QThread ¶
- timerEvent(self, QTimerEvent)¶
- toDict(*args, **kwargs)¶
- toJson(_mark_version=True)¶
Create and returns a data structure made up of jsonable items.
- Return type
An instance of one the classes from NATIVE_JSON_DATATYPES
- toJsonImplementation(*args, **kwargs)¶
Abstract method that must be defined by all derived classes. Converts an instance of the derived class into a jsonifiable object.
- Returns
A dict made up of JSON native datatypes or Jsonable objects. See the link below for a table of such types. https://docs.python.org/2/library/json.html#encoders-and-decoders
- tr(self, str, disambiguation: str = None, n: int = - 1) str ¶
- valueChanged¶
- class schrodinger.application.steps.dataclasses.ScoredSmilesSerializer[source]¶
Bases:
schrodinger.stepper.stepper.Serializer
A serializer using the smiles and score value strings separated by a ‘,’ as the serialized form
- DataType¶
alias of
schrodinger.application.steps.dataclasses.ScoredSmiles
- SEPARATOR = ','¶
- deserialize(fname)¶
Read in items from
fname
. :type fname: str :rtype: iterable[self.DataType]
- serialize(items, fname)¶
Write
items
to a file namedfname
.
- class schrodinger.application.steps.dataclasses.ScoredSmilesInMixin[source]¶
Bases:
object
- Input¶
alias of
schrodinger.application.steps.dataclasses.ScoredSmiles
- InputSerializer¶
alias of
schrodinger.application.steps.dataclasses.ScoredSmilesSerializer
- class schrodinger.application.steps.dataclasses.ScoredSmilesOutMixin[source]¶
Bases:
object
- Output¶
alias of
schrodinger.application.steps.dataclasses.ScoredSmiles
- OutputSerializer¶
alias of
schrodinger.application.steps.dataclasses.ScoredSmilesSerializer
- class schrodinger.application.steps.dataclasses.MaeMaeMixin[source]¶
Bases:
schrodinger.application.steps.dataclasses.MaeInMixin
,schrodinger.application.steps.dataclasses.MaeOutMixin
- Input¶
- Output¶
- class schrodinger.application.steps.dataclasses.ScoredSmilesIOMixin[source]¶
Bases:
object
- Input¶
alias of
schrodinger.application.steps.dataclasses.ScoredSmiles
- InputSerializer¶
alias of
schrodinger.application.steps.dataclasses.ScoredSmilesSerializer
- Output¶
alias of
schrodinger.application.steps.dataclasses.ScoredSmiles
- OutputSerializer¶
alias of
schrodinger.application.steps.dataclasses.ScoredSmilesSerializer