You are reading the documentation for version 3.0 of ProMod3.
You may also want to read the documentation for:
1.3
2.0
2.1
3.1
3.2
Disulfid Bond Evaluation
When calculating the pairwise interaction energy between two rotamers building
a disulfid bond, one would get an unfavourable energy due to “clashes” between
the sulfur atoms. It is possible to improve performance in sidechain
reconstruction regarding cysteins when finding and separately handle
disulfid bonds. The scoring module implements an empirically derived disulfid
score (promod3.scoring.SCWRL3DisulfidScore() ) as defined in
[canutescu2003b]. The paper proposes two rotamers to be in a disulfid
bonded state, if the resulting disulfid score plus the self energies of the
involved rotamers is below 45. If there are several cysteines close together,
this problem gets another layer of complexity. One has to assure, that
every cysteine only participates in one disulfid bond but the network
of disulfid bonds is geometrically optimal. SCWRL4 proposes an approach,
that has also been implemented here.
-
promod3.sidechain. DisulfidScore (rotamer_one, rotamer_two, ca_pos_one, cb_pos_one, ca_pos_two, cb_pos_two)
Directly extracts the positions of the gamma sulfurs from the rotamers by
searching for particles with the name “SG”.
The found positions are then passed to
promod3.scoring.SCWRL3DisulfidScore() .
In case of RRMRotamer it expects exactly one gamma sulfur per
rotamer. In case of FRMRotamer there can be an arbitrary number
of gamma sulfurs per rotamer (at least one), it then evaluates the score
for all possible combinations of gamma sulfurs and takes the minimum score.
To get a final DisulfidScore, it finally adds the self energies of the
rotamers to the result of the geometric expression.
Parameters: |
|
Raises: | RuntimeError if given rotamers do not contain
exactly (in case of RRMRotamer ) or at least (in case of
FRMRotamer ) one particle representing the gamma sulfur.
|
Returns: | The result of the raw score plus the average
self energies of the input rotamers
|
-
promod3.sidechain. ResolveCysteins (rotamer_groups, ca_positions, cb_positions[, score_threshold=45.0, optimize_subrotamers=False])
Tries to optimize disulfid bond network. In a first step, all disulfid bonds
get detected using DisulfidScore() . If the value between two rotamers is
below score_threshold, they’re assumed to be bonded. The function then
tries to detect the largest possible set of disulfide bonds, with no
cysteine being part of more than one bond. If several largest sets are
possible, the one with the optimal sum of scores gets estimated.
Parameters: |
- rotamer_groups (
list of
FRMRotamerGroup /RRMRotamerGroup ) – Every group represents a cysteine
- ca_positions (
list of ost.geom.Vec3 ) – The CA positions of the according rotamers
- cb_positions (
list of ost.geom.Vec3 ) – The CB positions of the according rotamers
- score_threshold (
float ) – The score two rotamers must have to be considered
as a disulfid bond
- optimize_subrotamers (
bool ) – If set to true and the input consists of flexible
rotamer groups, the active subrotamers get
optimized. For every pair of rotamers
participating in a disulfid bond, the subrotamers
with best DisulfidScore() get activated in
the input rotamer_groups. This has an effect
when the rotamers get applied on residues.
|
Returns: | A tuple containing two list objects with equal
length. Both lists contain tuple objects with two elements.
The tuples in the first list describe the indices of cysteins
participating in disulfid bonds. The tuples in the second list
describe the optimal rotamers in the according rotamer groups.
|
|
Contents
Search
Enter search terms or a module, class or function name.
Previous topic
Rotamer Graph
Next topic
Loading Rotamer Libraries
You are here
|