agentsclimarketplace

Collision cross section calibration ccs

Skill HolobiomicsLab/asb-skill-collections/collections/metabolomics/v1/skills/collision-cross-section-calibration-ccs

Use when when you have acquired ion mobility–mass spectrometry data (drift time and m/z dimensions) and need to convert observed drift times into calibrated CCS values.From its SKILL.md

Install
npx -y skills add HolobiomicsLab/asb-skill-collections --skill collision-cross-section-calibration-ccs

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 15 stars15 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its file declares

Copied from the file, not written here

The file declares its own license as CC-BY-4.0. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.

SKILL.md

7.5 KB, ~1.4k tokens by cl100k_base, as published. Nobody here has run it

collision-cross-section-calibration-ccs

Summary

Calibrate ion collision cross section (CCS) values from drift-time and m/z measurements using a polynomial model fitted to tune mix reference data. This skill establishes the quantitative m/z–drift-time–CCS relationship required to convert drift times into absolute CCS values for downstream feature characterization.

When to use

When you have acquired ion mobility–mass spectrometry data (drift time and m/z dimensions) and need to convert observed drift times into calibrated CCS values. Apply this skill at the beginning of a multi-dimensional MS workflow, immediately after peak detection and before feature alignment, using publicly available tune mix reference standards (e.g., Agilent tune mix) acquired in the same ion mode and on the same instrument to establish instrument-specific calibration coefficients.

When NOT to use

  • When tune mix calibrant data is not available or was acquired on a different instrument or ion mode
  • When drift time dimension is absent from the MS data (calibration is specific to ion-mobility-equipped instruments)
  • When the tune mix calibration yields R-squared < 0.99997, indicating inadequate model fit and potential instrument drift or data quality issues

Inputs

  • tune mix reference data (HDF5 format with ms1 key containing drift time, m/z, and intensity)
  • known CCS values for tune mix reference compounds
  • experimental MS data (drift_time, mz, retention_time, intensity columns)

Outputs

  • fitted calibration model object (ccs_cal) with polynomial coefficients
  • R-squared metric quantifying model fit quality
  • calibrated feature table with CCS column populated from drift time via the fitted model

How to apply

Load tune mix reference data in positive or negative ion mode using deimos.load(), specifying the HDF5 file containing known CCS reference compounds and their corresponding drift times and m/z values. Initialize a DEIMoS calibration object with the loaded tunemix data and known CCS values, then fit a polynomial calibration model using calibration.fit() to establish the functional m/z–drift-time–CCS mapping. Extract the R-squared metric from the fitted model (ccs_cal.fit['r'] ** 2) and verify it meets or exceeds 0.99997, indicating excellent model fit. Apply the calibrated model to all experimental MS data in the same ion mode by transforming each observed drift time into a CCS value using the established polynomial coefficients. Perform separate calibrations for positive and negative ion modes, as the m/z–drift-time–CCS relationship differs between ion polarities.

Related tools

  • DEIMoS (calibration API and command-line tool for fitting polynomial CCS models to tune mix data) — https://github.com/pnnl/deimos
  • Python (runtime environment for executing deimos.load() and calibration.fit() routines)
  • numpy (numerical computation library underlying polynomial fitting and matrix operations)

Examples

tune_pos = deimos.load('example_tune_pos.h5', key='ms1'); ccs_cal_pos = deimos.calibrate.CCSCalibration(tune_pos); ccs_cal_pos.fit(); print('r-squared:\t', ccs_cal_pos.fit['r'] ** 2)

Evaluation signals

  • R-squared value of fitted calibration model ≥ 0.99997 for both positive and negative ion modes
  • Calibration coefficients are reproducible and stable when refitted on the same tune mix data
  • All experimental features in the output HDF5 table have non-null CCS values within physically plausible range (typically 50–300 Ų for peptides/metabolites)
  • Residual plot of observed vs. predicted CCS shows random scatter with no systematic bias across the m/z–drift-time space
  • Cross-validation or replicate tune mix measurements yield calibration R-squared values within ≤ 0.00001 of each other

Limitations

  • Calibration is specific to the instrument, ion source, and ion mode used during tune mix acquisition; transfer to different hardware or polarity requires new reference measurements.
  • Polynomial model assumes a smooth, monotonic m/z–drift-time–CCS relationship; nonlinear instrumental responses or compound-dependent deviations may reduce accuracy.
  • Tune mix must contain structurally diverse compounds spanning the m/z and drift-time ranges of experimental samples to ensure extrapolation reliability.
  • Instrument drift, detector sensitivity loss, or contamination over time can degrade calibration quality; periodic re-calibration with fresh tune mix is recommended for long-term studies.

Evidence

  • [readme] Functionality includes feature detection, feature alignment, collision cross section (CCS) calibration, isotope detection, and MS/MS spectral deconvolution: "Functionality includes feature detection, feature alignment, collision cross section (CCS) calibration, isotope detection, and MS/MS spectral deconvolution"
  • [results] DEIMoS tunemix calibration routine applied to positive ion mode tune mix data yields R-squared = 0.9999784552958121, and to negative ion mode yields R-squared = 0.9999784552958134, both exceeding the 0.99997 threshold.: "DEIMoS tunemix calibration routine applied to positive ion mode tune mix data yields R-squared = 0.9999784552958121, and to negative ion mode yields R-squared = 0.9999784552958134, both exceeding the"
  • [other] Initialize a DEIMoS calibration object with the loaded tunemix data, specifying known CCS values and m/z-to-CCS mapping. Fit a polynomial calibration model to the tunemix data using the calibration.fit() method to establish the m/z–drift-time–CCS relationship.: "Initialize a DEIMoS calibration object with the loaded tunemix data, specifying known CCS values and m/z-to-CCS mapping. Fit a polynomial calibration model to the tunemix data using the"
  • [other] Extract and record the R-squared value from the fitted model (ccs_cal.fit['r'] ** 2) to verify it meets the threshold of ≥0.99997. Repeat steps 1–4 for negative ion mode using the corresponding tunemix reference data.: "Extract and record the R-squared value from the fitted model (ccs_cal.fit['r'] ** 2) to verify it meets the threshold of ≥0.99997. Repeat steps 1–4 for negative ion mode using the corresponding"
  • [other] Load tunemix reference data for positive ion mode using deimos.load() specifying the example_tune_pos.h5 file and ms1 key.: "Load tunemix reference data for positive ion mode using deimos.load() specifying the example_tune_pos.h5 file and ms1 key."

What ships with it

Read from the repository

Just SKILL.md. No reference files, no scripts.

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.