Skip to main content

PyIRoGlass

Project description

PyIRoGlass

PyPI Build Status Documentation Status codecov

PyIRoGlass is a Bayesian MCMC-founded Python algorithm for determining volatile concentrations and speciation for $\mathrm{H_2O_{t, 3550}}$, $\mathrm{H_2O_{m, 1635}}$, $\mathrm{CO_{3, 1515}^{2-}}$, $\mathrm{CO_{3, 1430}^{2-}}$, $\mathrm{H_2O_{m, 5200}}$, and $\mathrm{OH_{4500}}$ from basaltic to andesitic transmission FTIR spectra. PyIRoGlass is written in the open-source language Python3 with the $\mathrm{MC^3}$ package, allowing for the proper sampling of parameter space and the determination of volatile concentrations with uncertainties.

Quantifying concentrations of volatiles in magmas is critical for estimating the conditions of magma storage, assessing phase equilibria, and understanding eruption. We develop and present PyIRoGlass, a new open-source Python package implementing a Bayesian method with Markov Chain Monte Carlo sampling, to process the transmission FTIR spectra of basaltic to andesitic glasses and to quantify volatile concentrations with uncertainties for all $\mathrm{H_2O}$ and $\mathrm{CO_2}$ species in basaltic to andesitic glasses, when devolatilized baselines are not readily available. We utilize spectra of natural, devolatilized melt inclusions from the Aleutians to determine the fundamental shapes and variability of the baseline in the mid-IR region, in which the $\mathrm{CO_3^{2-}}$ doublets and $\mathrm{H_2O_{m, 1635}}$ peaks are found. The shape of the baseline and that of the peaks varies across samples, dependent on the chemistry of samples and concentration of volatiles. All parameters within the Beer-Lambert Law — including the baseline, molar absorptivity, thickness, and density — are closely examined to quantify the associated uncertainties. Molar absorptivity is recalibrated as a function of compositional parameters by applying a Newtonian inversion, allowing for the quantification of the uncertainty of the inversion and of the uncertainty in composition. PyIRoGlass further provides functions for processing reflectance FTIR spectra to determine sample wafer thickness. Development of this Bayesian method with MCMC sampling allows for the sampling of all possible baselines and peaks to iteratively solve for the best-fit parameters, presenting a promising method forward for robustly estimating uncertainty and accounting for covariance within fit parameters within a unified framework to confidently process transmission FTIR spectra to determine volatile concentrations with uncertainties. The open-source nature of the Python package allows for continuous evolution as more data become available.

Open In Colab

Binder

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

PyIRoGlass-0.1.0.tar.gz (60.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

PyIRoGlass-0.1.0-py3-none-any.whl (60.6 kB view details)

Uploaded Python 3

File details

Details for the file PyIRoGlass-0.1.0.tar.gz.

File metadata

  • Download URL: PyIRoGlass-0.1.0.tar.gz
  • Upload date:
  • Size: 60.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.11.3

File hashes

Hashes for PyIRoGlass-0.1.0.tar.gz
Algorithm Hash digest
SHA256 7ee68fd1cd8a1ab11bfadd90b357864c285ee0a8bc61552969b46471a8635420
MD5 85bec06bf2cbeec4f1e4d63f6f38198a
BLAKE2b-256 5c5a259060df207680d7ec3c29bd4807e08867c662716f8482a2b0416c8a6c4f

See more details on using hashes here.

File details

Details for the file PyIRoGlass-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: PyIRoGlass-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 60.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.11.3

File hashes

Hashes for PyIRoGlass-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 bc5269b8dfdbb98597882c9ba73e748f09e1573ffd2ed9cbd9bf89ffd8182ae0
MD5 16575ad79e7cd7f7cdb34ff0312efb74
BLAKE2b-256 98204930e0adf3f8c7f4b020710bb7dda539d4f748728dbfbf245972a8f735c8

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page