agentsclimarketplace

Collision cross section prediction

Skill HolobiomicsLab/asb-skill-collections/collections/metabolomics/v2/skills/collision-cross-section-prediction

Use when you have molecular structures (SMILES or SDF format) and need to predict their collision cross sections for ion mobility mass spectrometry workflows, particularly when generating large-scale searchable CCS databases for compound identification and characterization.From its SKILL.md

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

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

8.7 KB, ~1.5k tokens by cl100k_base, as published. Nobody here has run it

collision-cross-section-prediction

Summary

Predict collision cross section (CCS) values for molecular ions using a voxel projected area-based deep learning method (PACCS) applied to 3D molecular conformers. This skill enables rapid CCS database generation for mass spectrometry applications without experimental measurement.

When to use

Use this skill when you have molecular structures (SMILES or SDF format) and need to predict their collision cross sections for ion mobility mass spectrometry workflows, particularly when generating large-scale searchable CCS databases for compound identification and characterization.

When NOT to use

  • Input is already experimental CCS measurements—use this for prediction only, not validation
  • Molecular structures contain unparameterized elements or unusual bonding not covered by MMFF force field
  • You need site-specific or conformer-dependent CCS predictions for multiple rotamers (PACCS generates one CCS per conformer; averaging across multiple conformers is required for comparison to experimental drift tube mobility data)

Inputs

  • SMILES strings or SDF molecular structures
  • Adduct type annotations (e.g., [M+H]+, [M+Na]+)
  • Pre-trained PACCS model weights (PyTorch checkpoint)

Outputs

  • Predicted CCS values (numeric, in units of Ų or Ų)
  • Searchable CCS database (CSV or HDF5 format with molecular ID, CCS value, conformer metadata)
  • Validation report confirming expected columns and numeric population

How to apply

First, generate 3D conformers for input molecules using RDKit's ETKDGv3 embedding and MMFF optimization. Compute voxel-projected areas by distributing Fibonacci grid points over atomic spheres and projecting onto three coordinate planes (xy, xz, yz), then average the projections. Construct molecular graphs and one-hot encode adduct type. Feed the voxel projected area, molecular graph representation, adduct encoding, and computed m/z values into the pre-trained PACCS deep learning model (PyTorch/PyG) to obtain predicted CCS values. Aggregate predictions with molecular identifiers into a pandas DataFrame and export as CSV or HDF5 for rapid retrieval and validation.

Related tools

  • RDKit (Generate 3D molecular conformers using ETKDGv3 and MMFF optimization; construct molecular graphs) — https://rdkit.org/
  • PyTorch (Backend for PACCS deep learning model inference) — https://pytorch.org/
  • PyG (PyTorch Geometric) (Graph neural network representation for molecular structure encoding) — https://pytorch-geometric.readthedocs.io/en/latest/
  • pandas (Aggregate and organize predicted CCS values with molecular identifiers into searchable table structure) — https://pandas.pydata.org/
  • NumPy (Numerical computation for voxel projection and averaging) — https://numpy.org/
  • Jupyter Notebook (Interactive execution environment for model training, CCS prediction, and database generation workflows) — https://jupyter.org/
  • PACCS (github.com/yuxuanliao/PACCS) (Implements projected area-based CCS prediction method with VoxelProjectedArea.py, MZ.py, MolecularRepresentations.py, and Prediction.py modules) — https://github.com/yuxuanliao/PACCS

Examples

from PACCS.Prediction import PACCS_predict; PACCS_predict(input_path='molecules.csv', model_path='PACCS_model.pt', output_path='predicted_CCS.csv')

Evaluation signals

  • Output CCS database file exists and contains expected columns: molecular ID, CCS value (numeric), conformer metadata, adduct type
  • All rows in output table are populated with numeric CCS predictions; no NaN or null values in CCS column
  • CCS values fall within expected physical range for the molecular weight and charge state (typically 100–300 Ų for small molecules in positive-ion mode)
  • Predicted CCS values for test molecules show correlation with external experimental CCS datasets when available (e.g., compare against the provided external test set)
  • Reproducibility check: re-running prediction on same input with same random seed produces identical CCS values

Limitations

  • PACCS relies on MMFF force field parameterization; molecules with non-standard or missing atom types may fail conformer generation or optimization
  • Single conformer per input SMILES is generated by default; aggregation across multiple conformers needed to match experimental data from drift tube instruments that measure conformer ensembles
  • Model predictions are only as good as the training dataset; external test set performance may degrade for adduct types or chemical families not well-represented in training data
  • No changelog available in the repository to track model version changes or retraining history

Evidence

  • [readme] We developed a Projected Area-based CCS prediction method (PACCS) directly from molecular conformers: "We developed a Projected Area-based CCS prediction method (PACCS) directly from molecular conformers"
  • [readme] PACCS supports users to generate large-scale and searchable CCS databases using the open-source Jupyter Notebook: "PACCS supports users to generate large-scale and searchable CCS databases using the open-source Jupyter Notebook"
  • [readme] Using the Fibonacci grids approach to distribute points evenly over the surfaces of 3D atomic spheres. Projected on three coordinate planes (xy, xz, yz). Averaging.: "Using the Fibonacci grids approach to distribute points evenly over the surfaces of 3D atomic spheres. Projected on three coordinate planes (xy, xz, yz). Averaging."
  • [readme] EmbedMultipleConfs generates the 3D conformers of molecules. MMFFOptimizeMoleculeConfs optimizes the 3D conformers of molecules.: "EmbedMultipleConfs generates the 3D conformers of molecules. MMFFOptimizeMoleculeConfs optimizes the 3D conformers of molecules."
  • [readme] The predicted CCS values of molecules are obtained by feeding the voxel projected area, molecular graph, one-hot encoding of adduct type, and m/z into the already trained PACCS model: "The predicted CCS values of molecules are obtained by feeding the voxel projected area, molecular graph, one-hot encoding of adduct type, and m/z into the already trained PACCS model"
  • [other] Prepare input molecular structures in a supported format (e.g., SMILES or SDF) as a pandas DataFrame: "Prepare input molecular structures in a supported format (e.g., SMILES or SDF) as a pandas DataFrame"
  • [other] Aggregate and organize predictions with molecular identifiers using pandas into a searchable table structure. Export the CCS database as a structured file (CSV or HDF5 format): "Aggregate and organize predictions with molecular identifiers using pandas into a searchable table structure. Export the CCS database as a structured file (CSV or HDF5 format)"
  • [other] verify database file exists, contains expected columns (molecular ID, CCS value, conformer metadata), and all rows are populated with numeric CCS predictions: "verify database file exists, contains expected columns (molecular ID, CCS value, conformer metadata), and all rows are populated with numeric CCS predictions"

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.