pyisotopomer: A Python package for obtaining nitrous oxide isotopocules from isotope ratio mass spectrometry

This is a Preprint and has not been peer reviewed. This is version 2 of this Preprint.


Download Preprint

Supplementary Files

Colette LaMonica Kelly , Cara Manning, Claudia Frey, Noah Noah Gluschankoff, Karen Casciotti


Obtaining nitrous oxide isotopocule measurements with isotope ratio mass spectrometry (IRMS) requires measuring the m/z ratios of the nitrous oxide (N2O) molecule as well as those of the NO+ fragment ion. This measurement depends on correcting for a phenomenon referred to as “scrambling” in the ion source, whereby the NO+ fragment ion contains the outer N atom from the N2O molecule. While descriptions of the scrambling correction exist in the literature, there has yet to be published a unified software package and method for performing this correction. We developed a user-friendly Python package (pyisotopomer), with a MATLAB alternative, to determine two coefficients that describe scrambling in the ion source of a given IRMS, and then to use this calibration to obtain N2O isotopocule measurements. We assess the sensitivity of pyisotopomer to its input parameters and discuss the relevant assumptions. We show that the scrambling behavior of an IRMS can vary with time, necessitating regular calibrations. We show that to obtain a relative uncertainty in site preference of <1‰, the relative uncertainty in each scrambling coefficient should be <0.2%. Finally, we present an intercalibration between two IRMS laboratories, using pyisotopomer to calculate scrambling and obtain N2O isotopocule data. Given these considerations, we discuss how to use this software package to obtain high-quality N2O isotopocule data from IRMS systems, including the use of appropriate reference materials and frequency of calibration.



Physical Sciences and Mathematics


nitrous oxide, isotopomers, nitrogen stable isotopes, scrambling, Python


Published: 2021-12-24 11:25

Last Updated: 2021-12-24 19:25

Older Versions

CC BY Attribution 4.0 International

Additional Metadata

Conflict of interest statement:

Data Availability (Reason not available):
The latest version of pyisotopomer is available for installation via the Python Package index ( The first release of pyisotopomer is also available via Zenodo for both Python ( and MATLAB ( This research was supported by U.S.-NSF grant OCE-1657868 to K. L. Casciotti. C. L. Kelly is supported by an NSF Graduate Research Fellowship. The authors declare no competing financial interests.

Add a Comment

You must log in to post a comment.


There are no comments or no comments have been made public for this article.