| |
- netFilter(pots, potsToFilter=None, selection='not PSEUDO', failedFiltersCutoff=0, minSALikelihood=-1, numIters=5, createExceptions=True, preferIntra=True, expectDiagPAs=False, printResiduePairScores=False, initScoresFrom='degen', includeBBSeq=False, includeBB=True, minPeakScore=0.01, passFrac=0.01, minExpectedScore=0.2, knownContacts=[], bbSel='name H or name HN or name HA or name HA* or name HB or name HB* or name C or name CA or name N or name O', verbose=True, tclOutput=False)
- Network filter, implemented with residue-by-residue scoring. Arguments:
pots - a sequence of pasd.PASDPot terms
potsToFilter - PASDPot terms whose PeakAssignments are be
filtered with a contact map generated by
contact map. [pots]
selection - atomSel.AtomSel specifying which residues
are to be considered. ["not PSEUDO"]
failedFiltersCutoff - the number of failed filters allowed for
further processing of a PeakAssignment. [0]
minSALikelihood - ignore shift assignments with previous
likelihoods smaller than this. [-1]
numIters - number of network filter iterations. [5]
createExceptions - boolean specifying whether inverse exceptions
are created. [True]
preferIntra - boolean. If True, always assign intraresidue
and sequential assignments likelihood 1.
Otherwise, these these the same as any other
sort of assignment. [True]
expectDiagPAs - boolean specifying whether diagonal peaks are
present in the spectra where the from- shift
assignment is the same as the to- shift
assignment. [False]
printResiduePairScores - boolean. Whether or not to print final residue
pair score information. [False]
includeBBSeq - boolean. If True, include backbone-sequential
shift assignments to each residue's
neighborhood. [False]
includeBB - boolean deciding whether intraresidue SAs
members of each residue neighborhood consider
only sidechains. [True]
initScoresFrom - specify how to initialize peak assignment
scores. Valid values are
"previous" - initialize from previous
likelihoods
"uniform" - set all assignments to have
equal weight
"contacts" - set peak assignment score to 1,
if it corresponds to a contact
specified in knownContacts, else
0.
"degen" - set score to 1/num assignments
for each peak. This is the
default.
minPeakScore - If the largest residue pair score is smaller
than this value, all peak assignments for a
peak are given zero values. [0.01]
passFrac - A pair of residues is considered in contact if
its normalized residue pair score is greater
than this value. [0.01]
minExpectedScore - smallest expected raw intraresidue residue pair
score. R_{min} in the reference below. [0.1]
knownContacts <seq> - a sequence of pairs of AtomSels specifying
contacts known a priori.
bbSel - AtomSel specifying backbone protons. It is
used to determine whether a peak assignment
is sequential (to/from resids must be +/-1,
and both protons backbone), and for the
includeBB and includeBBseq logic.
verbose - boolean. Whether or not to print out
informational messages.
raw residue pair score between residues a,b:
R(a,b) = 1/N_R(a,b)\sum_s\sum_{m,n} \sigma(m,n;s)
where N_R is the total possible number of to-from and from-to shift
assignments for this pair of residues in all spectra. The first sum is
over all spectra s, while the second sum is over all possible shift
assignments m,n is spectrum s. \sigma(m,n;s) is an iteratively
determined connection weight.
A normalized residue pair score R'(a,b) is then computed as
R'(a,b) = R(a,b) / sqrt(R_self(a) r_self(b))
where
/ R(a,a) if R(a,a)>R_{min}
R_self(a) = |
\ 1 otherwise
\sigma(m,n;s) is initialized based on the initScoresFrom argument.
If R(a,b) > passFrac, residues a and b are considered in contact and all
peaks assignments which connect these residues are given likelihoods of
1.
If tclOutput is True, return a remarks string, else return a named tuple
with the following members:
remarks - informational string
residues - list of (segid,resid) tuples.
rawIntraresScores - raw Intraresidue score for each residue
resPairScore - 2D array of score for each pair of residues, indexed by
position in residues list.
resPairPassed - 2D array indicating whether or not the pair od residues
is in contact.
Reference:
J.J. Kuszewski, R. Augustine Thottungal, G.M. Clore, and
C.D. Schwieters, ``Automated error-tolerant macromolecular
structure determination from multidimensional nuclear
Overhauser enhancement spectra and chemical shift assignments:
improved robustness and performance of the PASD
algorithm,'' J. Biomol. NMR 41, 221-239 (2008); PMID: 18668206.
|