schrodinger.protein.annotation module

Annotations for biological sequences

Copyright Schrodinger, LLC. All rights reserved.

class schrodinger.protein.annotation.BINDING_SITE(value)

Bases: enum.Enum

An enumeration.

CloseContact = 1
FarContact = 2
NoContact = 3
class schrodinger.protein.annotation.AntibodyCDRLabel(value)

Bases: enum.Enum

An enumeration.

NotCDR = 1
L1 = 2
L2 = 3
L3 = 4
H1 = 5
H2 = 6
H3 = 7
class schrodinger.protein.annotation.AntibodyCDR(label, start, end)

Bases: tuple

__contains__(key, /)

Return key in self.

__len__()

Return len(self).

count(value, /)

Return number of occurrences of value.

end

Alias for field number 2

index(value, start=0, stop=9223372036854775807, /)

Return first index of value.

Raises ValueError if the value is not present.

label

Alias for field number 0

start

Alias for field number 1

class schrodinger.protein.annotation.AntibodyRegionLabel(value)

Bases: enum.Enum

An enumeration.

H = 1
HFR = 2
CH = 3
L = 4
LFR = 5
CL = 6
Hinge = 7
class schrodinger.protein.annotation.AntibodyRegion(label, value, start, end)

Bases: tuple

__contains__(key, /)

Return key in self.

__len__()

Return len(self).

count(value, /)

Return number of occurrences of value.

end

Alias for field number 3

index(value, start=0, stop=9223372036854775807, /)

Return first index of value.

Raises ValueError if the value is not present.

label

Alias for field number 0

start

Alias for field number 2

value

Alias for field number 1

class schrodinger.protein.annotation.GPCRSegmentLabel(value)

Bases: enum.Enum

An enumeration.

NTerm = 1
CTerm = 2
ICL = 3
ECL = 4
H8 = 5
TM = 6
Other = 7
class schrodinger.protein.annotation.GPCRSegment(label, value, start, end)

Bases: tuple

__contains__(key, /)

Return key in self.

__len__()

Return len(self).

count(value, /)

Return number of occurrences of value.

end

Alias for field number 3

index(value, start=0, stop=9223372036854775807, /)

Return first index of value.

Raises ValueError if the value is not present.

label

Alias for field number 0

start

Alias for field number 2

value

Alias for field number 1

class schrodinger.protein.annotation.Domains(value)

Bases: enum.Enum

An enumeration.

Domain = 1
NoDomain = 2
class schrodinger.protein.annotation.KinaseConservation(value)

Bases: schrodinger.models.jsonable.JsonableEnum

An enumeration.

VeryLow = 'Very Low'
Low = 'Low'
Medium = 'Medium'
High = 'High'
VeryHigh = 'Very High'
class schrodinger.protein.annotation.KinaseFeatureLabel(value)

Bases: schrodinger.models.jsonable.JsonableEnum

An enumeration.

GLYCINE_RICH_LOOP = 'Glycine Rich Loop'
ALPHA_C = 'Alpha-C'
GATE_KEEPER = 'Gate Keeper'
HINGE = 'Hinge'
LINKER = 'Linker'
HRD = 'HRD'
CATALYTIC_LOOP = 'Catalytic Loop'
DFG = 'DFG'
ACTIVATION_LOOP = 'Activation Loop'
NO_FEATURE = 'No Feature'
class schrodinger.protein.annotation.Consensus(value)

Bases: enum.Enum

An enumeration.

not_conserved = ' '
fully_conserved = '*'
strongly_conserved = ':'
weakly_conserved = '.'
property tooltip
class schrodinger.protein.annotation.TupleWithRange(iterable=(), /)

Bases: tuple

property range

The range of data contianed in this tuple. Will return a tuple of (minimum value or zero whichever is less, maximum value or zero whichever is greater). None values will be ignored. If there are no None values in this tuple, will return (0, 0). :rtype: tuple(int or float, int or float)

__contains__(key, /)

Return key in self.

__len__()

Return len(self).

count(value, /)

Return number of occurrences of value.

index(value, start=0, stop=9223372036854775807, /)

Return first index of value.

Raises ValueError if the value is not present.

class schrodinger.protein.annotation.AbstractSequenceAnnotations(seq)

Bases: PyQt6.QtCore.QObject

A base class for single-chain and combined-chain sequence annotations

Variables

titleChanged (QtCore.pyqtSignal) – A signal emitted after an annotation’s title (row header) changes.

titleChanged
__init__(seq)
Parameters

seq (sequence.Sequence) – The sequence to store annotations for.

sequence

A descriptor for an instance attribute that should be stored as a weakref. Unlike weakref.proxy, this descriptor allows the attribute to be hashed.

Note that the weakref is stored on the instance using the same name as the descriptor (which is stored on the class). Since this descriptor implements __set__, it will always take precedence over the value stored on the instance.

blockSignals(self, b: bool) bool
childEvent(self, a0: QChildEvent)
children(self) List[QObject]
connectNotify(self, signal: QMetaMethod)
customEvent(self, a0: QEvent)
deleteLater(self)
destroyed

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

disconnect(a0: QMetaObject.Connection) bool
disconnect(self) None
disconnectNotify(self, signal: QMetaMethod)
dumpObjectInfo(self)
dumpObjectTree(self)
dynamicPropertyNames(self) List[QByteArray]
event(self, a0: QEvent) bool
eventFilter(self, a0: QObject, a1: QEvent) bool
findChild(self, type: type, name: str = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) QObject
findChild(self, types: Tuple, name: str = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) QObject
findChildren(self, type: type, name: str = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) List[QObject]
findChildren(self, types: Tuple, name: str = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) List[QObject]
findChildren(self, type: type, re: QRegularExpression, options: Qt.FindChildOption = Qt.FindChildrenRecursively) List[QObject]
findChildren(self, types: Tuple, re: QRegularExpression, options: Qt.FindChildOption = Qt.FindChildrenRecursively) List[QObject]
inherits(self, classname: str) bool
installEventFilter(self, a0: QObject)
isSignalConnected(self, signal: QMetaMethod) bool
isWidgetType(self) bool
isWindowType(self) bool
killTimer(self, id: int)
metaObject(self) QMetaObject
moveToThread(self, thread: QThread)
objectName(self) str
objectNameChanged

objectNameChanged(self, objectName: str) [signal]

parent(self) QObject
property(self, name: 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, signal: PYQT_SIGNAL) int
removeEventFilter(self, a0: QObject)
sender(self) QObject
senderSignalIndex(self) int
setObjectName(self, name: str)
setParent(self, a0: QObject)
setProperty(self, name: str, value: Any) bool
signalsBlocked(self) bool
startTimer(self, interval: int, timerType: Qt.TimerType = Qt.CoarseTimer) int
staticMetaObject = <PyQt6.QtCore.QMetaObject object>
thread(self) QThread
timerEvent(self, a0: QTimerEvent)
tr(sourceText: str, disambiguation: typing.Optional[str] = None, n: int = - 1) str
class schrodinger.protein.annotation.AbstractProteinSequenceAnnotationsMixin(*args, **kwargs)

Bases: object

domainsChanged
invalidatedDomains
__init__(*args, **kwargs)
Parameters

seq (sequence.Sequence) – The sequence to store annotations for.

property max_b_factor
property min_b_factor
invalidateMaxMinBFactor()
getAntibodyCDR(col, scheme)

Returns the antibody CDR information of the col’th index in the sequence under a given antibody CDR numbering scheme.

Parameters
  • col (int) – index into the sequence

  • scheme (AntibodyCDRScheme) – The antibody CDR numbering scheme to use

Returns

Antibody CDR label, start, and end positions

Return type

AntibodyCDR, which is a named tuple of (AntibodyCDRLabel, int, int) if col is in a CDR, otherwise (AntibodyCDRLabel.NotCDR, None, None)

getAntibodyCDRs(scheme)

Returns a list of antibody CDR information for the entire sequence.

Parameters

scheme (AntibodyCDRScheme) – The antibody CDR numbering scheme to use

Returns

A list of Antibody CDR labels, starts, and end positions

Return type

list(AntibodyCDR)

getResID(res) str

Get the structure residue ID with the kabat numbering scheme.

Parameters

res – the residue

Returns

the residue ID

getGPCRSegment(col: int) Optional[schrodinger.protein.annotation.GPCRSegment]

Return the GPCR segment information of the col’th index in the sequence.

Parameters

col – index into the sequence

Returns

GPCR Segment label, value, start, and end positions or None if col is not in a GPCR segment

getGPCRSegments() List[schrodinger.protein.annotation.GPCRSegment]

Return a list of GPCR segment information for the entire sequence.

Returns

a list of GPCR Segments labels, values, start and end positions

getAntibodyRegion(col: int, scheme: schrodinger.infra.util.AntibodyCDRScheme) Optional[schrodinger.protein.annotation.AntibodyRegion]

Return the antibody region of the given residue based on the numbering scheme.

The regex will strip trailing numbers and get the label according to the AntibodyRegionLabel enum.

Example values: H1, CL, HINGE, LFR4, CH3

Parameters
  • col – index into the sequence

  • scheme – the antibody CDR numbering scheme to use

Returns

An AntibodyRegion with a label and value or None if there is no region

getAntibodyRegions(scheme: schrodinger.infra.util.AntibodyCDRScheme) List[schrodinger.protein.annotation.AntibodyRegion]

Return the list of all antibody regions based on the numbering scheme.

Parameters

scheme – the antibody CDR numbering scheme to use

Returns

isAntibodyChain()
Returns

Whether the sequence described is an antibody chain

Return type

bool

isAntibodyHeavyChain()
Returns

Whether the sequence described is an antibody heavy chain

Return type

bool

isAntibodyLightChain()
Returns

Whether the sequence described is an antibody light chain

Return type

bool

property binding_sites
property ligands
property ligand_asls
setLigandDistance(distance)

Updates the ligand distance and invalidates the cache

property domains
getSSBondPartner(index)

Return the residue’s intra-sequence disulfide bond partner, if any.

If the residue is not involved in a disulfide bond, its partner has been deleted, or its partner is in another sequence, it will return None.

Parameters

index (int) – Index of the residue to check

Returns

the other Residue in the disulfide bond or None

Return type

residue.Residue or None

clearAllCaching()
getNumAnnValues(ann)
class schrodinger.protein.annotation.SequenceAnnotations(seq)

Bases: schrodinger.protein.annotation.AbstractSequenceAnnotations

Knows how to annotate a single-chain sequence

Annotations can be set at the level of the sequence as a whole, or be per sequence element annotations. If an attribute is accessed on the SequenceAnnotations object, the attribute is first looked for on the object and if not found is assumed to be a per sequence element annotation. If the elements in the sequence lack the attribute, an AttributeError will be raised.

__init__(seq)
Parameters

seq (sequence.Sequence) – The sequence to store annotations for.

blockSignals(self, b: bool) bool
childEvent(self, a0: QChildEvent)
children(self) List[QObject]
connectNotify(self, signal: QMetaMethod)
customEvent(self, a0: QEvent)
deleteLater(self)
destroyed

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

disconnect(a0: QMetaObject.Connection) bool
disconnect(self) None
disconnectNotify(self, signal: QMetaMethod)
dumpObjectInfo(self)
dumpObjectTree(self)
dynamicPropertyNames(self) List[QByteArray]
event(self, a0: QEvent) bool
eventFilter(self, a0: QObject, a1: QEvent) bool
findChild(self, type: type, name: str = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) QObject
findChild(self, types: Tuple, name: str = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) QObject
findChildren(self, type: type, name: str = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) List[QObject]
findChildren(self, types: Tuple, name: str = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) List[QObject]
findChildren(self, type: type, re: QRegularExpression, options: Qt.FindChildOption = Qt.FindChildrenRecursively) List[QObject]
findChildren(self, types: Tuple, re: QRegularExpression, options: Qt.FindChildOption = Qt.FindChildrenRecursively) List[QObject]
inherits(self, classname: str) bool
installEventFilter(self, a0: QObject)
isSignalConnected(self, signal: QMetaMethod) bool
isWidgetType(self) bool
isWindowType(self) bool
killTimer(self, id: int)
metaObject(self) QMetaObject
moveToThread(self, thread: QThread)
objectName(self) str
objectNameChanged

objectNameChanged(self, objectName: str) [signal]

parent(self) QObject
property(self, name: 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, signal: PYQT_SIGNAL) int
removeEventFilter(self, a0: QObject)
sender(self) QObject
senderSignalIndex(self) int
setObjectName(self, name: str)
setParent(self, a0: QObject)
setProperty(self, name: str, value: Any) bool
signalsBlocked(self) bool
startTimer(self, interval: int, timerType: Qt.TimerType = Qt.CoarseTimer) int
staticMetaObject = <PyQt6.QtCore.QMetaObject object>
thread(self) QThread
timerEvent(self, a0: QTimerEvent)
titleChanged
tr(sourceText: str, disambiguation: typing.Optional[str] = None, n: int = - 1) str
class schrodinger.protein.annotation.ProteinSequenceAnnotations(seq)

Bases: schrodinger.protein.annotation.AbstractProteinSequenceAnnotationsMixin, schrodinger.protein.annotation.SequenceAnnotations

Knows how to annotate a ProteinSequence

annotationInvalidated
invalidatedLigandContacts
invalidatedMaxMinBFactor
class ANNOTATION_TYPES(*args, **kwargs)

Bases: schrodinger.models.json.JsonableClassMixin

alignment_set = 2
antibody_cdr = 21
antibody_regions = 35
b_factor = 15
beta_strand_propensity = 7
binding_sites = 19
custom_annotation = 34
disulfide_bonds = 5
domains = 20
exposure_tendency = 10
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_obj)

Abstract method that must be defined by all derived classes. Takes in a dictionary and constructs an instance of the derived class.

Parameters

json_dict (dict) – A dictionary loaded from a JSON string or file.

Returns

An instance of the derived class.

Return type

cls

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.

gpcr_generic_number = 33
gpcr_segment = 32
helix_propensity = 6
helix_termination_tendency = 9
hydrophobicity = 13
isoelectric_point = 14
kinase_conservation = 31
kinase_features = 30
pairwise_constraints = 1
pfam = 23
pred_accessibility = 26
pred_disordered = 27
pred_disulfide_bonds = 24
pred_domain_arr = 28
pred_secondary_structure = 25
proximity_constraints = 29
rescode = 4
resnum = 3
sasa = 22
secondary_structure = 18
side_chain_chem = 12
steric_group = 11
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()

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

turn_propensity = 8
window_hydrophobicity = 16
window_isoelectric_point = 17
RES_PROPENSITY_ANNOTATIONS = {<ANNOTATION_TYPES.beta_strand_propensity: 7>, <ANNOTATION_TYPES.exposure_tendency: 10>, <ANNOTATION_TYPES.helix_termination_tendency: 9>, <ANNOTATION_TYPES.side_chain_chem: 12>, <ANNOTATION_TYPES.helix_propensity: 6>, <ANNOTATION_TYPES.steric_group: 11>, <ANNOTATION_TYPES.turn_propensity: 8>}
PRED_ANNOTATION_TYPES = {<ANNOTATION_TYPES.pred_disordered: 27>, <ANNOTATION_TYPES.pred_disulfide_bonds: 24>, <ANNOTATION_TYPES.pred_accessibility: 26>, <ANNOTATION_TYPES.pred_secondary_structure: 25>, <ANNOTATION_TYPES.pred_domain_arr: 28>}
__init__(seq)
Parameters

seq (sequence.Sequence) – The sequence to store annotations for.

invalidateMaxMinBFactor()
property window_hydrophobicity
property hydrophobicity_window_padding
property binding_site_residues

Binding site residues of the sequence as a map, with key being the ligand name(str) and value is the set of residues(protein.Residue).

property isoelectric_point_window_padding
invalidateWindowHydrophobicity()

Invalidate the cached window hydrophobicity data. Note that this method is also called from the sequence when the window size changes.

property window_isoelectric_point
invalidateWindowIsoelectricPoint()

Invalidate the cached window isoelectric point data. Note that this method is also called from the sequence when the window size changes.

property sasa
getAntibodyCDR(col, scheme)

Returns the antibody CDR information of the col’th index in the sequence under a given antibody CDR numbering scheme.

Parameters
  • col (int) – index into the sequence

  • scheme (AntibodyCDRScheme) – The antibody CDR numbering scheme to use

Returns

Antibody CDR label, start, and end positions

Return type

AntibodyCDR, which is a named tuple of (AntibodyCDRLabel, int, int) if col is in a CDR, otherwise (AntibodyCDRLabel.NotCDR, None, None)

getAntibodyCDRs(scheme)

Returns a list of antibody CDR information for the entire sequence.

Parameters

scheme (AntibodyCDRScheme) – The antibody CDR numbering scheme to use

Returns

A list of Antibody CDR labels, starts, and end positions

Return type

list(AntibodyCDR)

getGPCRSegment(col: int) Optional[schrodinger.protein.annotation.GPCRSegment]

Return the GPCR segment information of the col’th index in the sequence.

Parameters

col – index into the sequence

Returns

GPCR Segment label, value, start, and end positions or None if col is not in a GPCR segment

getGPCRSegments() List[schrodinger.protein.annotation.GPCRSegment]

Return a list of GPCR segment information for the entire sequence.

Returns

a list of GPCR Segments labels, values, start and end positions

isAntibodyChain()
Returns

Whether the sequence described is an antibody chain

Return type

bool

isAntibodyHeavyChain()
Returns

Whether the sequence described is an antibody heavy chain

Return type

bool

isAntibodyLightChain()
Returns

Whether the sequence described is an antibody light chain

Return type

bool

getSparseRescodes(modulo)
onStructureChanged()
setLigandDistance(distance)

Updates the ligand distance and invalidates the cache

parseDomains(filename)

Parse XML file from UniProt database to get domain information.

Parameters

filename (str) – the XML file to parse for domain information

Returns

a list of the domains (names) for the sequence in order

Return type

list(str)

resetAnnotation(ann)

Force a reset of an annotation’s cache.

clearAllCaching()
property inscode
property resnum
getCDRResidueList(scheme)
Returns

List of CDR Residues.

Return type

List[str]

property binding_sites
blockSignals(self, b: bool) bool
childEvent(self, a0: QChildEvent)
children(self) List[QObject]
connectNotify(self, signal: QMetaMethod)
customEvent(self, a0: QEvent)
deleteLater(self)
destroyed

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

disconnect(a0: QMetaObject.Connection) bool
disconnect(self) None
disconnectNotify(self, signal: QMetaMethod)
property domains
domainsChanged
dumpObjectInfo(self)
dumpObjectTree(self)
dynamicPropertyNames(self) List[QByteArray]
event(self, a0: QEvent) bool
eventFilter(self, a0: QObject, a1: QEvent) bool
findChild(self, type: type, name: str = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) QObject
findChild(self, types: Tuple, name: str = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) QObject
findChildren(self, type: type, name: str = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) List[QObject]
findChildren(self, types: Tuple, name: str = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) List[QObject]
findChildren(self, type: type, re: QRegularExpression, options: Qt.FindChildOption = Qt.FindChildrenRecursively) List[QObject]
findChildren(self, types: Tuple, re: QRegularExpression, options: Qt.FindChildOption = Qt.FindChildrenRecursively) List[QObject]
getAntibodyRegion(col: int, scheme: schrodinger.infra.util.AntibodyCDRScheme) Optional[schrodinger.protein.annotation.AntibodyRegion]

Return the antibody region of the given residue based on the numbering scheme.

The regex will strip trailing numbers and get the label according to the AntibodyRegionLabel enum.

Example values: H1, CL, HINGE, LFR4, CH3

Parameters
  • col – index into the sequence

  • scheme – the antibody CDR numbering scheme to use

Returns

An AntibodyRegion with a label and value or None if there is no region

getAntibodyRegions(scheme: schrodinger.infra.util.AntibodyCDRScheme) List[schrodinger.protein.annotation.AntibodyRegion]

Return the list of all antibody regions based on the numbering scheme.

Parameters

scheme – the antibody CDR numbering scheme to use

Returns

getNumAnnValues(ann)
getResID(res) str

Get the structure residue ID with the kabat numbering scheme.

Parameters

res – the residue

Returns

the residue ID

getSSBondPartner(index)

Return the residue’s intra-sequence disulfide bond partner, if any.

If the residue is not involved in a disulfide bond, its partner has been deleted, or its partner is in another sequence, it will return None.

Parameters

index (int) – Index of the residue to check

Returns

the other Residue in the disulfide bond or None

Return type

residue.Residue or None

inherits(self, classname: str) bool
installEventFilter(self, a0: QObject)
invalidatedDomains
isSignalConnected(self, signal: QMetaMethod) bool
isWidgetType(self) bool
isWindowType(self) bool
killTimer(self, id: int)
property ligand_asls
property ligands
property max_b_factor
metaObject(self) QMetaObject
property min_b_factor
moveToThread(self, thread: QThread)
objectName(self) str
objectNameChanged

objectNameChanged(self, objectName: str) [signal]

parent(self) QObject
property(self, name: 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, signal: PYQT_SIGNAL) int
removeEventFilter(self, a0: QObject)
sender(self) QObject
senderSignalIndex(self) int
setObjectName(self, name: str)
setParent(self, a0: QObject)
setProperty(self, name: str, value: Any) bool
signalsBlocked(self) bool
startTimer(self, interval: int, timerType: Qt.TimerType = Qt.CoarseTimer) int
staticMetaObject = <PyQt6.QtCore.QMetaObject object>
thread(self) QThread
timerEvent(self, a0: QTimerEvent)
titleChanged
tr(sourceText: str, disambiguation: typing.Optional[str] = None, n: int = - 1) str
class schrodinger.protein.annotation.NucleicAcidSequenceAnnotations(seq)

Bases: schrodinger.protein.annotation.ProteinSequenceAnnotations

isAntibodyChain()
Returns

Whether the sequence described is an antibody chain

Return type

bool

class ANNOTATION_TYPES(*args, **kwargs)

Bases: schrodinger.models.json.JsonableClassMixin

alignment_set = 2
antibody_cdr = 21
antibody_regions = 35
b_factor = 15
beta_strand_propensity = 7
binding_sites = 19
custom_annotation = 34
disulfide_bonds = 5
domains = 20
exposure_tendency = 10
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_obj)

Abstract method that must be defined by all derived classes. Takes in a dictionary and constructs an instance of the derived class.

Parameters

json_dict (dict) – A dictionary loaded from a JSON string or file.

Returns

An instance of the derived class.

Return type

cls

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.

gpcr_generic_number = 33
gpcr_segment = 32
helix_propensity = 6
helix_termination_tendency = 9
hydrophobicity = 13
isoelectric_point = 14
kinase_conservation = 31
kinase_features = 30
pairwise_constraints = 1
pfam = 23
pred_accessibility = 26
pred_disordered = 27
pred_disulfide_bonds = 24
pred_domain_arr = 28
pred_secondary_structure = 25
proximity_constraints = 29
rescode = 4
resnum = 3
sasa = 22
secondary_structure = 18
side_chain_chem = 12
steric_group = 11
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()

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

turn_propensity = 8
window_hydrophobicity = 16
window_isoelectric_point = 17
PRED_ANNOTATION_TYPES = {<ANNOTATION_TYPES.pred_disordered: 27>, <ANNOTATION_TYPES.pred_disulfide_bonds: 24>, <ANNOTATION_TYPES.pred_accessibility: 26>, <ANNOTATION_TYPES.pred_secondary_structure: 25>, <ANNOTATION_TYPES.pred_domain_arr: 28>}
RES_PROPENSITY_ANNOTATIONS = {<ANNOTATION_TYPES.beta_strand_propensity: 7>, <ANNOTATION_TYPES.exposure_tendency: 10>, <ANNOTATION_TYPES.helix_termination_tendency: 9>, <ANNOTATION_TYPES.side_chain_chem: 12>, <ANNOTATION_TYPES.helix_propensity: 6>, <ANNOTATION_TYPES.steric_group: 11>, <ANNOTATION_TYPES.turn_propensity: 8>}
__init__(seq)
Parameters

seq (sequence.Sequence) – The sequence to store annotations for.

annotationInvalidated
property binding_site_residues

Binding site residues of the sequence as a map, with key being the ligand name(str) and value is the set of residues(protein.Residue).

property binding_sites
blockSignals(self, b: bool) bool
childEvent(self, a0: QChildEvent)
children(self) List[QObject]
clearAllCaching()
connectNotify(self, signal: QMetaMethod)
customEvent(self, a0: QEvent)
deleteLater(self)
destroyed

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

disconnect(a0: QMetaObject.Connection) bool
disconnect(self) None
disconnectNotify(self, signal: QMetaMethod)
property domains
domainsChanged
dumpObjectInfo(self)
dumpObjectTree(self)
dynamicPropertyNames(self) List[QByteArray]
event(self, a0: QEvent) bool
eventFilter(self, a0: QObject, a1: QEvent) bool
findChild(self, type: type, name: str = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) QObject
findChild(self, types: Tuple, name: str = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) QObject
findChildren(self, type: type, name: str = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) List[QObject]
findChildren(self, types: Tuple, name: str = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) List[QObject]
findChildren(self, type: type, re: QRegularExpression, options: Qt.FindChildOption = Qt.FindChildrenRecursively) List[QObject]
findChildren(self, types: Tuple, re: QRegularExpression, options: Qt.FindChildOption = Qt.FindChildrenRecursively) List[QObject]
getAntibodyCDR(col, scheme)

Returns the antibody CDR information of the col’th index in the sequence under a given antibody CDR numbering scheme.

Parameters
  • col (int) – index into the sequence

  • scheme (AntibodyCDRScheme) – The antibody CDR numbering scheme to use

Returns

Antibody CDR label, start, and end positions

Return type

AntibodyCDR, which is a named tuple of (AntibodyCDRLabel, int, int) if col is in a CDR, otherwise (AntibodyCDRLabel.NotCDR, None, None)

getAntibodyCDRs(scheme)

Returns a list of antibody CDR information for the entire sequence.

Parameters

scheme (AntibodyCDRScheme) – The antibody CDR numbering scheme to use

Returns

A list of Antibody CDR labels, starts, and end positions

Return type

list(AntibodyCDR)

getAntibodyRegion(col: int, scheme: schrodinger.infra.util.AntibodyCDRScheme) Optional[schrodinger.protein.annotation.AntibodyRegion]

Return the antibody region of the given residue based on the numbering scheme.

The regex will strip trailing numbers and get the label according to the AntibodyRegionLabel enum.

Example values: H1, CL, HINGE, LFR4, CH3

Parameters
  • col – index into the sequence

  • scheme – the antibody CDR numbering scheme to use

Returns

An AntibodyRegion with a label and value or None if there is no region

getAntibodyRegions(scheme: schrodinger.infra.util.AntibodyCDRScheme) List[schrodinger.protein.annotation.AntibodyRegion]

Return the list of all antibody regions based on the numbering scheme.

Parameters

scheme – the antibody CDR numbering scheme to use

Returns

getCDRResidueList(scheme)
Returns

List of CDR Residues.

Return type

List[str]

getGPCRSegment(col: int) Optional[schrodinger.protein.annotation.GPCRSegment]

Return the GPCR segment information of the col’th index in the sequence.

Parameters

col – index into the sequence

Returns

GPCR Segment label, value, start, and end positions or None if col is not in a GPCR segment

getGPCRSegments() List[schrodinger.protein.annotation.GPCRSegment]

Return a list of GPCR segment information for the entire sequence.

Returns

a list of GPCR Segments labels, values, start and end positions

getNumAnnValues(ann)
getResID(res) str

Get the structure residue ID with the kabat numbering scheme.

Parameters

res – the residue

Returns

the residue ID

getSSBondPartner(index)

Return the residue’s intra-sequence disulfide bond partner, if any.

If the residue is not involved in a disulfide bond, its partner has been deleted, or its partner is in another sequence, it will return None.

Parameters

index (int) – Index of the residue to check

Returns

the other Residue in the disulfide bond or None

Return type

residue.Residue or None

getSparseRescodes(modulo)
property hydrophobicity_window_padding
inherits(self, classname: str) bool
property inscode
installEventFilter(self, a0: QObject)
invalidateMaxMinBFactor()
invalidateWindowHydrophobicity()

Invalidate the cached window hydrophobicity data. Note that this method is also called from the sequence when the window size changes.

invalidateWindowIsoelectricPoint()

Invalidate the cached window isoelectric point data. Note that this method is also called from the sequence when the window size changes.

invalidatedDomains
invalidatedLigandContacts
invalidatedMaxMinBFactor
isAntibodyHeavyChain()
Returns

Whether the sequence described is an antibody heavy chain

Return type

bool

isAntibodyLightChain()
Returns

Whether the sequence described is an antibody light chain

Return type

bool

isSignalConnected(self, signal: QMetaMethod) bool
isWidgetType(self) bool
isWindowType(self) bool
property isoelectric_point_window_padding
killTimer(self, id: int)
property ligand_asls
property ligands
property max_b_factor
metaObject(self) QMetaObject
property min_b_factor
moveToThread(self, thread: QThread)
objectName(self) str
objectNameChanged

objectNameChanged(self, objectName: str) [signal]

onStructureChanged()
parent(self) QObject
parseDomains(filename)

Parse XML file from UniProt database to get domain information.

Parameters

filename (str) – the XML file to parse for domain information

Returns

a list of the domains (names) for the sequence in order

Return type

list(str)

property(self, name: 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, signal: PYQT_SIGNAL) int
removeEventFilter(self, a0: QObject)
resetAnnotation(ann)

Force a reset of an annotation’s cache.

property resnum
property sasa
sender(self) QObject
senderSignalIndex(self) int
setLigandDistance(distance)

Updates the ligand distance and invalidates the cache

setObjectName(self, name: str)
setParent(self, a0: QObject)
setProperty(self, name: str, value: Any) bool
signalsBlocked(self) bool
startTimer(self, interval: int, timerType: Qt.TimerType = Qt.CoarseTimer) int
staticMetaObject = <PyQt6.QtCore.QMetaObject object>
thread(self) QThread
timerEvent(self, a0: QTimerEvent)
titleChanged
tr(sourceText: str, disambiguation: typing.Optional[str] = None, n: int = - 1) str
property window_hydrophobicity
property window_isoelectric_point
class schrodinger.protein.annotation.ProteinAlignmentAnnotations(aln)

Bases: object

Knows how to annotate an alignment (a collection of aligned sequences)

class ANNOTATION_TYPES(*args, **kwargs)

Bases: schrodinger.models.json.JsonableClassMixin

consensus_freq = 6
consensus_seq = 5
consensus_symbols = 4
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_obj)

Abstract method that must be defined by all derived classes. Takes in a dictionary and constructs an instance of the derived class.

Parameters

json_dict (dict) – A dictionary loaded from a JSON string or file.

Returns

An instance of the derived class.

Return type

cls

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.

indices = 1
mean_hydrophobicity = 2
mean_isoelectric_point = 3
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()

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

__init__(aln)
Parameters

alnalignment.Alignment

alignment

A descriptor for an instance attribute that should be stored as a weakref. Unlike weakref.proxy, this descriptor allows the attribute to be hashed.

Note that the weakref is stored on the instance using the same name as the descriptor (which is stored on the class). Since this descriptor implements __set__, it will always take precedence over the value stored on the instance.

property indices

A numbering of all the column indices in an alignment

property mean_hydrophobicity

returns: A list of floats representing per-column averages of the hydrophobicity of residues in the alignment

property mean_isoelectric_point

returns: A list of floats representing per-column averages of the isoelectric point of residues in the alignment

property consensus_seq

Consensus sequence in the alignment. If there is more than one highest freq. residue in the column, save all of them.

Returns

consensus sequence

Return type

list(list(Residue))

property consensus_freq

Returns the frequency of the consensus residue in each alignment column as a list. Gaps are not used for calculation.

Returns

consensus residue frequencies

Return type

TupleWithRange(float)

property consensus_symbols

Consensus symbols in the alignment based on pre-defined residue sets, same as in ClustalW

Returns

consensus symbols for each alignment position

Type

A list of ConsensusSymbol enums.

Calculates normalized frequencies of individual amino acids per alignment position, and overall estimate of column composition diversity (‘bits’). Bit values are weighted by the number of gaps in the column.

Schneider TD, Stephens RM (1990). “Sequence Logos: A New Way to Display Consensus Sequences”. Nucleic Acids Res 18 (20): 6097–6100. doi:10.1093/nar/18.20.6097

Returns

the list of bits and frequencies (in decreasing order) of the residues in each column of the alignment.

Return type

list(tuple(float, tuple(tuple(str, float))))

clearAllCaching()
class schrodinger.protein.annotation.AntibodyRegionsFinder(seq)

Bases: object

Class to help with finding antibody regions from the sequence. Values should be cached to reduce load on multiple requests from the table helpers and annotation requests.

__init__(seq)
Parameters

seq (schrodinger.protein.sequence.ProteinSequence) – The sequence to find the GPCRs on

seq

A descriptor for an instance attribute that should be stored as a weakref. Unlike weakref.proxy, this descriptor allows the attribute to be hashed.

Note that the weakref is stored on the instance using the same name as the descriptor (which is stored on the class). Since this descriptor implements __set__, it will always take precedence over the value stored on the instance.

getAntibodyRegions()
setScheme(scheme: schrodinger.infra.util.AntibodyCDRScheme)

Set the scheme before extracting the antibody regions. Setting a new scheme will invalidate the cache.

Parameters

scheme – scheme to get the region properties from

forceIndexReassignment()

Force a recalculation of the antibody regions start and end indices. This is required when gaps are inserted/removed.

This will always do a full recalcuation, but is here to match _AntibodyCDRFinder’s API.

class schrodinger.protein.annotation.GPCRSegmentFinder(seq)

Bases: object

Class to help with finding GPCR Segments from the sequence. Values should be cached to reduce load on multiple requests from the table helpers and annotation requests.

GPCR_VALUE_MAP = {'C-term': GPCRSegmentLabel.CTerm, 'ECL1': GPCRSegmentLabel.ECL, 'ECL2': GPCRSegmentLabel.ECL, 'ECL3': GPCRSegmentLabel.ECL, 'H8': GPCRSegmentLabel.H8, 'ICL1': GPCRSegmentLabel.ICL, 'ICL2': GPCRSegmentLabel.ICL, 'ICL3': GPCRSegmentLabel.ICL, 'N-term': GPCRSegmentLabel.NTerm, 'TM1': GPCRSegmentLabel.TM, 'TM2': GPCRSegmentLabel.TM, 'TM3': GPCRSegmentLabel.TM, 'TM4': GPCRSegmentLabel.TM, 'TM5': GPCRSegmentLabel.TM, 'TM6': GPCRSegmentLabel.TM, 'TM7': GPCRSegmentLabel.TM, 'TM8': GPCRSegmentLabel.TM}
__init__(seq)
Parameters

seq (schrodinger.protein.sequence.ProteinSequence) – The sequence to find the GPCRs on

seq

A descriptor for an instance attribute that should be stored as a weakref. Unlike weakref.proxy, this descriptor allows the attribute to be hashed.

Note that the weakref is stored on the instance using the same name as the descriptor (which is stored on the class). Since this descriptor implements __set__, it will always take precedence over the value stored on the instance.

getGPCRs()
forceIndexReassignment()

Force a recalculation of the GPCR start and end indices. This is required when gaps are inserted/removed.

This will always do a full recalcuation, but is here to match _AntibodyCDRFinder’s API.

class schrodinger.protein.annotation.SeqTypeMixin(seq, *args, **kwargs)

Bases: object

Mixin to customize antibody.SeqType for MSV2. See _delayed_antibody_import for class declaration.

__init__(seq, *args, **kwargs)
isHeavyChain()
isLightChain()
class schrodinger.protein.annotation.CombinedChainSequenceAnnotationMeta(cls, bases, classdict, *, wraps=None, cached_annotations=(), wrapped_properties=())

Bases: schrodinger.application.msv.utils.QtDocstringWrapperMetaClass

The metaclass for CombinedChainSequenceAnnotations. This metaclass automatically wraps getters for all sequence annotations.

__init__(*args, **kwargs)
mro()

Return a type’s method resolution order.

class schrodinger.protein.annotation.CombinedChainProteinSequenceAnnotations(seq)

Bases: schrodinger.protein.annotation.AbstractProteinSequenceAnnotationsMixin, schrodinger.protein.annotation.AbstractSequenceAnnotations

Sequence annotations for a sequence.CombinedChainProteinSequence. Annotations will be fetched from the ProteinSequenceAnnotations objects for each split-chain sequence.

sequence

A descriptor for an instance attribute that should be stored as a weakref. Unlike weakref.proxy, this descriptor allows the attribute to be hashed.

Note that the weakref is stored on the instance using the same name as the descriptor (which is stored on the class). Since this descriptor implements __set__, it will always take precedence over the value stored on the instance.

__init__(seq)
Parameters

seq (sequence.CombinedChainProteinSequence) – The sequence to store annotations for.

class ANNOTATION_TYPES(*args, **kwargs)

Bases: schrodinger.models.json.JsonableClassMixin

alignment_set = 2
antibody_cdr = 21
antibody_regions = 35
b_factor = 15
beta_strand_propensity = 7
binding_sites = 19
custom_annotation = 34
disulfide_bonds = 5
domains = 20
exposure_tendency = 10
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_obj)

Abstract method that must be defined by all derived classes. Takes in a dictionary and constructs an instance of the derived class.

Parameters

json_dict (dict) – A dictionary loaded from a JSON string or file.

Returns

An instance of the derived class.

Return type

cls

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.

gpcr_generic_number = 33
gpcr_segment = 32
helix_propensity = 6
helix_termination_tendency = 9
hydrophobicity = 13
isoelectric_point = 14
kinase_conservation = 31
kinase_features = 30
pairwise_constraints = 1
pfam = 23
pred_accessibility = 26
pred_disordered = 27
pred_disulfide_bonds = 24
pred_domain_arr = 28
pred_secondary_structure = 25
proximity_constraints = 29
rescode = 4
resnum = 3
sasa = 22
secondary_structure = 18
side_chain_chem = 12
steric_group = 11
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()

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

turn_propensity = 8
window_hydrophobicity = 16
window_isoelectric_point = 17
PRED_ANNOTATION_TYPES = {<ANNOTATION_TYPES.pred_disordered: 27>, <ANNOTATION_TYPES.pred_disulfide_bonds: 24>, <ANNOTATION_TYPES.pred_accessibility: 26>, <ANNOTATION_TYPES.pred_secondary_structure: 25>, <ANNOTATION_TYPES.pred_domain_arr: 28>}
RES_PROPENSITY_ANNOTATIONS = {<ANNOTATION_TYPES.beta_strand_propensity: 7>, <ANNOTATION_TYPES.exposure_tendency: 10>, <ANNOTATION_TYPES.helix_termination_tendency: 9>, <ANNOTATION_TYPES.side_chain_chem: 12>, <ANNOTATION_TYPES.helix_propensity: 6>, <ANNOTATION_TYPES.steric_group: 11>, <ANNOTATION_TYPES.turn_propensity: 8>}
property alignment_set
property antibody_cdr
property antibody_regions
property b_factor
property beta_strand_propensity
property binding_sites
blockSignals(self, b: bool) bool
childEvent(self, a0: QChildEvent)
children(self) List[QObject]
connectNotify(self, signal: QMetaMethod)
customEvent(self, a0: QEvent)
property custom_annotation
deleteLater(self)
destroyed

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

disconnect(a0: QMetaObject.Connection) bool
disconnect(self) None
disconnectNotify(self, signal: QMetaMethod)
property disulfide_bonds
property domains
domainsChanged
dumpObjectInfo(self)
dumpObjectTree(self)
dynamicPropertyNames(self) List[QByteArray]
event(self, a0: QEvent) bool
eventFilter(self, a0: QObject, a1: QEvent) bool
property exposure_tendency
findChild(self, type: type, name: str = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) QObject
findChild(self, types: Tuple, name: str = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) QObject
findChildren(self, type: type, name: str = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) List[QObject]
findChildren(self, types: Tuple, name: str = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) List[QObject]
findChildren(self, type: type, re: QRegularExpression, options: Qt.FindChildOption = Qt.FindChildrenRecursively) List[QObject]
findChildren(self, types: Tuple, re: QRegularExpression, options: Qt.FindChildOption = Qt.FindChildrenRecursively) List[QObject]
getAntibodyRegion(col: int, scheme: schrodinger.infra.util.AntibodyCDRScheme) Optional[schrodinger.protein.annotation.AntibodyRegion]

Return the antibody region of the given residue based on the numbering scheme.

The regex will strip trailing numbers and get the label according to the AntibodyRegionLabel enum.

Example values: H1, CL, HINGE, LFR4, CH3

Parameters
  • col – index into the sequence

  • scheme – the antibody CDR numbering scheme to use

Returns

An AntibodyRegion with a label and value or None if there is no region

getAntibodyRegions(scheme: schrodinger.infra.util.AntibodyCDRScheme) List[schrodinger.protein.annotation.AntibodyRegion]

Return the list of all antibody regions based on the numbering scheme.

Parameters

scheme – the antibody CDR numbering scheme to use

Returns

getNumAnnValues(ann)
getResID(res) str

Get the structure residue ID with the kabat numbering scheme.

Parameters

res – the residue

Returns

the residue ID

getSSBondPartner(index)

Return the residue’s intra-sequence disulfide bond partner, if any.

If the residue is not involved in a disulfide bond, its partner has been deleted, or its partner is in another sequence, it will return None.

Parameters

index (int) – Index of the residue to check

Returns

the other Residue in the disulfide bond or None

Return type

residue.Residue or None

property gpcr_generic_number
property gpcr_segment
property helix_propensity
property helix_termination_tendency
property hydrophobicity
property hydrophobicity_window_padding
inherits(self, classname: str) bool
installEventFilter(self, a0: QObject)
invalidateMaxMinBFactor()
invalidatedDomains
isAntibodyHeavyChain()
Returns

Whether the sequence described is an antibody heavy chain

Return type

bool

isAntibodyLightChain()
Returns

Whether the sequence described is an antibody light chain

Return type

bool

isSignalConnected(self, signal: QMetaMethod) bool
isWidgetType(self) bool
isWindowType(self) bool
property isoelectric_point
property isoelectric_point_window_padding
killTimer(self, id: int)
property kinase_conservation
property kinase_features
property ligand_asls
property ligands
property max_b_factor
metaObject(self) QMetaObject
property min_b_factor
moveToThread(self, thread: QThread)
objectName(self) str
objectNameChanged

objectNameChanged(self, objectName: str) [signal]

property pairwise_constraints
parent(self) QObject
property pfam
property pred_accessibility
property pred_disordered
property pred_disulfide_bonds
property pred_domain_arr
property pred_secondary_structure
property(self, name: str) Any
property proximity_constraints
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, signal: PYQT_SIGNAL) int
removeEventFilter(self, a0: QObject)
property rescode
property resnum
property sasa
property secondary_structure
sender(self) QObject
senderSignalIndex(self) int
setObjectName(self, name: str)
setParent(self, a0: QObject)
setProperty(self, name: str, value: Any) bool
property side_chain_chem
signalsBlocked(self) bool
startTimer(self, interval: int, timerType: Qt.TimerType = Qt.CoarseTimer) int
staticMetaObject = <PyQt6.QtCore.QMetaObject object>
property steric_group
thread(self) QThread
timerEvent(self, a0: QTimerEvent)
titleChanged
tr(sourceText: str, disambiguation: typing.Optional[str] = None, n: int = - 1) str
property turn_propensity
property window_hydrophobicity
property window_isoelectric_point
chainAdded(chain)

Respond to a new chain being added to the sequence. The sequence is responsible for calling this method whenever a chain is added.

Parameters

chain (sequence.ProteinSequence) – The newly added chain.

chainRemoved(chain)

Respond to a chain being removed from the sequence. The sequence is responsible for calling this method whenever a chain is removed.

Parameters

chain (sequence.ProteinSequence) – The removed chain.

getAntibodyCDR(col, scheme)

Returns the antibody CDR information of the col’th index in the sequence under a given antibody CDR numbering scheme.

Parameters
  • col (int) – index into the sequence

  • scheme (AntibodyCDRScheme) – The antibody CDR numbering scheme to use

Returns

Antibody CDR label, start, and end positions

Return type

AntibodyCDR, which is a named tuple of (AntibodyCDRLabel, int, int) if col is in a CDR, otherwise (AntibodyCDRLabel.NotCDR, None, None)

getAntibodyCDRs(scheme)

Returns a list of antibody CDR information for the entire sequence.

Parameters

scheme (AntibodyCDRScheme) – The antibody CDR numbering scheme to use

Returns

A list of Antibody CDR labels, starts, and end positions

Return type

list(AntibodyCDR)

getGPCRSegment(col: int) Optional[schrodinger.protein.annotation.GPCRSegment]

Return the GPCR segment information of the col’th index in the sequence.

Parameters

col – index into the sequence

Returns

GPCR Segment label, value, start, and end positions or None if col is not in a GPCR segment

getGPCRSegments() List[schrodinger.protein.annotation.GPCRSegment]

Return a list of GPCR segment information for the entire sequence.

Returns

a list of GPCR Segments labels, values, start and end positions

isAntibodyChain()
Returns

Whether the sequence described is an antibody chain

Return type

bool

setLigandDistance(distance)

Updates the ligand distance and invalidates the cache

clearAllCaching()
schrodinger.protein.annotation.make_ligand_name_atom(ct, atom_index)

Make a unique, human-readable name for a ligand identified by atom index.

Parameters
Returns

The name for the ligand

Return type

str

schrodinger.protein.annotation.make_ligand_name(ct, ligand)

Make a unique, human-readable name for a ligand. This name matches the ligand name in the structure hierarchy.

Parameters
Returns

The name for the ligand

Return type

str

schrodinger.protein.annotation.parse_antibody_rescode(newcode)

Extract the resnum and inscode from residue number as per the scheme. If the inscode is a number it will be converted to alphabet. eg: ‘H101.1’ -> ‘101A’. Residues that are outside of the numbering scheme catalog (FV) or can not be assigned properly, will have residue number as ‘-1’. eg: ‘H-1’

Parameters

newcode (str) – Residue code by the Antibody CDR numbering scheme.

Returns

new residue number and insertion code.

Return type

tuple

Raises

KeyError – if newcode doesn’t follow the expected pattern.