Skip to main content

project_time_legacy

Function project_time_legacy 

Source
pub fn project_time_legacy(
    rt_mus: &[f64],
    rt_sigmas: &[f64],
    rt_lambdas: &[f64],
    frame_ids: &[u32],
    frame_times: &[f64],
    rt_cycle_length: f64,
    target_p: f64,
    step_size: f64,
    n_steps: Option<usize>,
    remove_epsilon: f64,
    num_threads: usize,
) -> Vec<Vec<(u32, f64)>>
Expand description

LegacyCompat time projection: reproduce frame_occurrence/frame_abundance over the full frames table, exactly as simulate_frame_distributions_emg did. Inputs are taken at f64 (the precision the legacy pipeline used) — NOT the f32 trunk entities — so the result is bit-faithful: rt_mus, rt_sigmas, rt_lambdas are per-peptide EMG params (rt_mu, not the GRU apex); frame_ids/frame_times are the whole frames table ascending by id. Occurrence positions (1-indexed into frame_times) are translated to frame ids via frame_ids[pos-1]; the remove_epsilon filter drops frames whose abundance is <= remove_epsilon (matching the legacy job). Returns (frame_id, abundance) per peptide.