pub struct CalibratedIndexConverter {
pub tof_intercept: f64,
pub tof_slope: f64,
pub scan_intercept: f64,
pub scan_slope: f64,
}Expand description
M/z calibrated index converter using regression-derived coefficients.
This provides accurate TOF to m/z conversion without requiring the Bruker SDK by using linear regression coefficients derived from known precursor m/z values.
The calibration formula is: sqrt(mz) = tof_intercept + tof_slope * tof_index
This is similar to SimpleIndexConverter but uses externally-provided coefficients (e.g., from regression on precursor data) rather than boundary-derived values.
Fields§
§tof_intercept: f64§tof_slope: f64§scan_intercept: f64§scan_slope: f64Implementations§
Source§impl CalibratedIndexConverter
impl CalibratedIndexConverter
Sourcepub fn new(
tof_intercept: f64,
tof_slope: f64,
im_min: f64,
im_max: f64,
scan_max_index: u32,
) -> Self
pub fn new( tof_intercept: f64, tof_slope: f64, im_min: f64, im_max: f64, scan_max_index: u32, ) -> Self
Create a new calibrated converter with regression-derived coefficients.
§Arguments
tof_intercept- Intercept for sqrt(mz) = intercept + slope * toftof_slope- Slope for sqrt(mz) = intercept + slope * tofim_min- Minimum 1/K0 valueim_max- Maximum 1/K0 valuescan_max_index- Maximum scan index
Trait Implementations§
Source§impl IndexConverter for CalibratedIndexConverter
impl IndexConverter for CalibratedIndexConverter
fn tof_to_mz(&self, _frame_id: u32, tof_values: &Vec<u32>) -> Vec<f64>
fn mz_to_tof(&self, _frame_id: u32, mz_values: &Vec<f64>) -> Vec<u32>
fn scan_to_inverse_mobility( &self, _frame_id: u32, scan_values: &Vec<u32>, ) -> Vec<f64>
fn inverse_mobility_to_scan( &self, _frame_id: u32, inverse_mobility_values: &Vec<f64>, ) -> Vec<u32>
Auto Trait Implementations§
impl Freeze for CalibratedIndexConverter
impl RefUnwindSafe for CalibratedIndexConverter
impl Send for CalibratedIndexConverter
impl Sync for CalibratedIndexConverter
impl Unpin for CalibratedIndexConverter
impl UnsafeUnpin for CalibratedIndexConverter
impl UnwindSafe for CalibratedIndexConverter
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
Mutably borrows from an owned value. Read more
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>
Converts
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>
Converts
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§impl<T> Pointable for T
impl<T> Pointable for T
§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read more§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self is actually part of its subset T (and can be converted to it).§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.