Skip to content
This repository was archived by the owner on Jun 5, 2025. It is now read-only.

Commit cc84dab

Browse files
committed
(chore) version bump
1 parent 0b581ec commit cc84dab

File tree

3 files changed

+13
-11
lines changed

3 files changed

+13
-11
lines changed

Cargo.lock

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "ionmesh"
3-
version = "0.2.0"
3+
version = "0.5.0"
44
edition = "2021"
55
license = "Apache-2.0"
66

src/aggregation/ms_denoise.rs

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ use serde::{
1515
Serialize,
1616
};
1717
use timsrust::converters::{
18+
ConvertableDomain,
1819
Scan2ImConverter,
1920
Tof2MzConverter,
2021
};
@@ -179,10 +180,8 @@ fn denoise_frame_slice_window(
179180
mz_converter: &Tof2MzConverter,
180181
min_n: usize,
181182
min_intensity: u64,
182-
_mz_scaling: f64,
183-
_max_mz_extension: f64,
184-
_ims_scaling: f32,
185-
_max_ims_extension: f32,
183+
max_mz_extension: f64,
184+
max_ims_extension: f32,
186185
) -> DenseFrameWindow {
187186
let timer = utils::ContextTimer::new("dbscan_dfs", true, utils::LogLevel::TRACE);
188187
let fsw = FrameSliceWindow::new(frameslice_window);
@@ -208,6 +207,13 @@ fn denoise_frame_slice_window(
208207
}
209208

210209
let mut i_timer = timer.start_sub_timer("dbscan");
210+
// TODO make this API better ... its kind of dumb having to "know" what each index
211+
// means in the tolerances...
212+
let max_extensions_use = [
213+
(mz_converter.invert(1000.0 + max_mz_extension) - mz_converter.convert(1000.0)).abs()
214+
as f32,
215+
(ims_converter.invert(1.0 + max_ims_extension) - ims_converter.convert(1.0)).abs() as f32,
216+
];
211217
let cluster_labels = dbscan_label_clusters(
212218
&fsw,
213219
&fsw,
@@ -217,7 +223,7 @@ fn denoise_frame_slice_window(
217223
intensity_sorted_indices,
218224
None::<&(dyn Fn(&f32) -> bool + Send + Sync)>,
219225
false,
220-
&[10., 100.],
226+
&max_extensions_use,
221227
);
222228
i_timer.stop(true);
223229

@@ -449,8 +455,6 @@ impl<'a> Denoiser<'a, Frame, Vec<DenseFrameWindow>, Converters, Option<usize>>
449455
// to have them be not hard-coded I need a way to convert
450456
// m/z space ranges to tof indices ... which is not exposed
451457
// by timsrust ...
452-
warn!("Using prototype function for denoising, scalings are hard-coded");
453-
454458
let num_windows = break_points.len() - 1;
455459
let mut out = Vec::with_capacity(num_windows);
456460
let frame_window_slices: Vec<(usize, &[FrameSlice])> = (0..num_windows)
@@ -468,9 +472,7 @@ impl<'a> Denoiser<'a, Frame, Vec<DenseFrameWindow>, Converters, Option<usize>>
468472
&self.mz_converter,
469473
self.min_n,
470474
self.min_intensity,
471-
self.mz_scaling,
472475
self.max_mz_extension,
473-
self.ims_scaling,
474476
self.max_ims_extension,
475477
)
476478
};

0 commit comments

Comments
 (0)