schrodinger.protein.tasks.clustal module

schrodinger.protein.tasks.clustal.get_clustal_path()

Returns a path to ClustalW executable.

This function attempts to find clustalw2 excutable in following locations:

  1. Maestro bin directory based on MAESTRO_EXEC env var.
  2. Maestro bin directory based on $SCHRODINGER/maestro-v*/bin/* path.
  3. User-defined location (CLUSTALW2 env var).
Return type:str
Returns:path to ClustalW executable file, or None if the executable could not be located.
class schrodinger.protein.tasks.clustal.AbstractAlignmentJob(aln, second_aln=None)

Bases: PyQt5.QtCore.QObject

Abstract class for defining common alignment job behavior

Cvar:progressMade: A signal emitted with the number of lines output by the clustal job.
progressMade
__init__(aln, second_aln=None)
Parameters:
setGapPenalties(gapopen, gapext)
run()

Should be implemented by subclasses.

cancel()
blockSignals(self, bool) → bool
childEvent(self, QChildEvent)
children(self) → List[QObject]
connectNotify(self, QMetaMethod)
customEvent(self, QEvent)
deleteLater(self)
destroyed

destroyed(self, object: QObject = None) [signal]

disconnect(self)
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]

inherits(self, str) → bool
installEventFilter(self, QObject)
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]

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)
sender(self) → QObject
senderSignalIndex(self) → int
setObjectName(self, str)
setParent(self, QObject)
setProperty(self, str, Any) → bool
signalsBlocked(self) → bool
startTimer(self, int, timerType: Qt.TimerType = Qt.CoarseTimer) → int
staticMetaObject = <PyQt5.QtCore.QMetaObject object>
thread(self) → QThread
timerEvent(self, QTimerEvent)
tr(self, str, disambiguation: str = None, n: int = -1) → str
class schrodinger.protein.tasks.clustal.ClustalJob(aln, second_aln=None, profile_mode='profile', matrix=None, gapopen=None, gapext=None, quicktree=True, output_fname=None)

Bases: schrodinger.protein.tasks.clustal.AbstractAlignmentJob

Class to run a clustal job:

__init__(aln, second_aln=None, profile_mode='profile', matrix=None, gapopen=None, gapext=None, quicktree=True, output_fname=None)
This class can use one of three available alignment modes:
  • regular multiple sequence alignment,
  • profile-profile alignment where two alignments are aligned to each other, but both alignments remain unchanged,
  • profile-sequence alignment where several sequences are iteratively aligned to existing alignment.
Parameters:
  • aln (ProteinAlignment) – Input sequence alignment.
  • second_aln (ProteinAlignment) – Second alignment for profile-profile and profile-sequence alignment.
  • profile_mode (str) – Determines profile alignment mode. Can be “profile” for profile-profile alignment, or “sequences” for profile-sequence alignment.
  • matrix (str or None) – substitution matrix family (“BLOSUM”, “PAM”, “GONNET”, “ID”) If None, default matrix (GONNET) is used.
  • gapopen (float or None) – Gap opening penalty. If None, default value is used.
  • gapext (float or None) – Gap extension penalty. If None, default value is used.
  • quicktree (bool) – Use fast algorithm for building guide tree.
  • output_fname (str or None) – Path of file to save clustalw2 std output to. If None, output is not saved.
run()

Run the clustal job.

Raises:RuntimeError if no clustal executable can be found
Returns:Output alignment. The sequences are output in the same order as input. Sequence attributes are preserved. The tree is in Newick format. This function returns None if the job is canceled.
Return type:ProteinAlignment or None
blockSignals(self, bool) → bool
cancel()
childEvent(self, QChildEvent)
children(self) → List[QObject]
connectNotify(self, QMetaMethod)
customEvent(self, QEvent)
deleteLater(self)
destroyed

destroyed(self, object: QObject = None) [signal]

disconnect(self)
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]

inherits(self, str) → bool
installEventFilter(self, QObject)
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]

parent(self) → QObject
progressMade
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)
sender(self) → QObject
senderSignalIndex(self) → int
setGapPenalties(gapopen, gapext)
setObjectName(self, str)
setParent(self, QObject)
setProperty(self, str, Any) → bool
signalsBlocked(self) → bool
startTimer(self, int, timerType: Qt.TimerType = Qt.CoarseTimer) → int
staticMetaObject = <PyQt5.QtCore.QMetaObject object>
thread(self) → QThread
timerEvent(self, QTimerEvent)
tr(self, str, disambiguation: str = None, n: int = -1) → str