mz range for ims features calculated on mobilogram basis
@@ -50,6 +50,19 @@ public class FeatureDataUtils {
double min = Double.MAX_VALUE;
double max = Double.MIN_VALUE;
+ if (series instanceof IonMobilogramTimeSeries ionTrace) {
+ for (IonMobilitySeries mobilogram : ionTrace.getMobilograms()) {
+ for (int i = 0; i < mobilogram.getNumberOfValues(); i++) {
+ final double mz = mobilogram.getMZ(i);
+ if (mz < min) {
+ min = mz;
+ }
+ if (mz > max) {
+ max = mz;
+ }
+ }
+ }
+ } else {
for (int i = 0; i < series.getNumberOfValues(); i++) {
final double mz = series.getMZ(i);
if (mz < min) {
@@ -59,6 +72,7 @@ public class FeatureDataUtils {
max = mz;
}
}
+ }
return Range.closed(min, max);
}
