pub struct ProteinConfig {
pub rt_window: f64,
pub im_window: f64,
pub mass_z_window: f64,
pub fdr: f64,
pub optimize_thresholds: bool,
pub max_feature_isotopes_gate: f64,
pub ml_rescore: bool,
}Fields§
§rt_window: f64A peptide counts as “observed” if its winning feature match has |rt_diff| within this window (minutes). Applied equally to targets and decoys, so the decoy-estimated hit rate stays calibrated.
im_window: f64Additional ion-mobility consistency window (1/K0). When the data has IM, an observed peptide must also have |im_diff| within this window. IM is orthogonal to RT, so this cuts random coincidences sharply — the main reason ion mobility boosts MS1 depth. Ignored on non-IM data.
mass_z_window: f64Recalibrated-mass window in sigma units. An observed peptide must match within this many sigma of the per-run mass error. Tight mass is the dominant background suppressor (ms1searchpy’s mass recalibration).
fdr: f64Target protein FDR the threshold optimization maximizes proteins at.
optimize_thresholds: boolOptimize the RT/mass thresholds to maximize proteins at fdr (ms1searchpy’s
worker grid scan). When true, rt_window/mass_z_window are upper bounds for
the scan; when false they are used as fixed cutoffs.
max_feature_isotopes_gate: f64Minimum feature shape quality (n_isotopes) for a peptide to count as observed. Real peptides sit on well-formed features; random matches scatter onto junk features, so this gate drops the random-match background asymmetrically. The scan tries [0, this] — 0 disables it. Inert when the input has no shape descriptors (feat_quality == 0 everywhere).
ml_rescore: boolRescore proteins with a cross-validated Fisher LDA over protein-level features (binomial score, log#peptides, coverage, RT/mass consistency, mean peptide discriminant). Deterministic (closed-form, 3-fold CV by accession hash) so it does not reintroduce ms1searchpy-style ML variance.
Trait Implementations§
Source§impl Clone for ProteinConfig
impl Clone for ProteinConfig
Source§impl Debug for ProteinConfig
impl Debug for ProteinConfig
Source§impl Default for ProteinConfig
impl Default for ProteinConfig
Source§impl<'de> Deserialize<'de> for ProteinConfigwhere
ProteinConfig: Default,
impl<'de> Deserialize<'de> for ProteinConfigwhere
ProteinConfig: Default,
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Auto Trait Implementations§
impl Freeze for ProteinConfig
impl RefUnwindSafe for ProteinConfig
impl Send for ProteinConfig
impl Sync for ProteinConfig
impl Unpin for ProteinConfig
impl UnsafeUnpin for ProteinConfig
impl UnwindSafe for ProteinConfig
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
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 moreSource§impl<T> Pointable for T
impl<T> Pointable for T
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self to the equivalent element of its superset.