pub struct AlignScoring<'a> {
pub mismatch: i8,
pub mass_mismatch: i8,
pub mass_base: i8,
pub rotated: i8,
pub isobaric: i8,
pub gap_start: i8,
pub gap_extend: i8,
pub matrix: &'a [[i8; 26]; 26],
pub tolerance: Tolerance<OrderedMass>,
pub mass_mode: MassMode,
pub pair: PairMode,
}Expand description
The scoring parameters for the mass alignment.
Design parameters for the scoring systems are as follows:
- A positive
mass_baseis needed to ensure breaking up of adjecent isobaric/rotated parts. For exampleIGGvsLNshould be1i2:1inot3:2i. - A higher score for
rotatedis needed to ensure rotation preference overisobaric. - The
matrixshould be chosen to have higher scores than the rotated score to prevent spurious rotations from being added.
Fields§
§mismatch: i8The score for a mismatch, this is used as the full score of that step.
Default: -1.
mass_mismatch: i8The additional score for a step if the amino acids are identical but the mass of the sequence
elements are not the same. This is the case if the pair mode is PairMode::DatabaseToPeptidoform
or PairMode::PeptidoformToDatabase and the peptidoform has a modification at this location
that does not occur in the database. The local score for the step is calculated as follows:
matrix_score + mass_mismatch.
Default: 0.
mass_base: i8The base score for mass based steps, added to both rotated and isobaric steps.
Default: 1.
rotated: i8The per position score for a rotated step match. The full score is calculated as follows
mass_base + rotated * len_a.
Default: 3.
isobaric: i8The per position score for an isobaric step match. The full score is calculated as follows
mass_base + isobaric * (len_a + len_b) / 2.
Default: 2.
gap_start: i8The gap start score for affine gaps, this is the score for starting any gap. The total score
for a full gap will be gap_start + gap_extend * len.
Default: -4.
gap_extend: i8The gap extend for affine gaps.
Default: -1.
matrix: &'a [[i8; 26]; 26]The matrix to find the score for matching any amino acid to any other aminoacid. It is indexed by the amino acid.
Default: BLOSUM62.
tolerance: Tolerance<OrderedMass>The tolerance of mass equality.
Default: 10ppm.
mass_mode: MassModeThe mass mode for the alignment.
Default: Monoisotopic.
pair: PairModeThe pair mode for the alignment.
Default: Same.
Trait Implementations§
Source§impl<'a> Clone for AlignScoring<'a>
impl<'a> Clone for AlignScoring<'a>
Source§fn clone(&self) -> AlignScoring<'a>
fn clone(&self) -> AlignScoring<'a>
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl<'a> Debug for AlignScoring<'a>
impl<'a> Debug for AlignScoring<'a>
Source§impl Default for AlignScoring<'static>
impl Default for AlignScoring<'static>
Source§impl<'a> Hash for AlignScoring<'a>
impl<'a> Hash for AlignScoring<'a>
Source§impl<'a> Ord for AlignScoring<'a>
impl<'a> Ord for AlignScoring<'a>
Source§fn cmp(&self, other: &AlignScoring<'a>) -> Ordering
fn cmp(&self, other: &AlignScoring<'a>) -> Ordering
1.21.0 · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Source§impl<'a> PartialEq for AlignScoring<'a>
impl<'a> PartialEq for AlignScoring<'a>
Source§impl<'a> PartialOrd for AlignScoring<'a>
impl<'a> PartialOrd for AlignScoring<'a>
impl<'a> Copy for AlignScoring<'a>
impl<'a> Eq for AlignScoring<'a>
impl<'a> StructuralPartialEq for AlignScoring<'a>
Auto Trait Implementations§
impl<'a> Freeze for AlignScoring<'a>
impl<'a> !RefUnwindSafe for AlignScoring<'a>
impl<'a> Send for AlignScoring<'a>
impl<'a> Sync for AlignScoring<'a>
impl<'a> Unpin for AlignScoring<'a>
impl<'a> !UnwindSafe for AlignScoring<'a>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> HighestOf<T> for T
impl<T> HighestOf<T> for T
Source§type HighestLevel = T
type HighestLevel = T
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more