pyUserCalc: A revised Jupyter notebook calculator for uranium-series
disequilibria in basalts
Abstract
Meaningful analysis of uranium-series isotopic disequilibria in basaltic
lavas relies on the use of complex forward numerical models like dynamic
melting (McKenzie, 1985) and equilibrium porous flow (Spiegelman and
Elliott, 1993). Historically, such models have either been solved
analytically for simplified scenarios, such as constant melting rate or
constant solid/melt trace element partitioning throughout the melting
process, or have relied on incremental or numerical calculators with
limited power to solve problems and/or restricted availability. The most
public numerical solution to reactive porous flow, UserCalc (Spiegelman,
2000) was maintained on a private institutional server for nearly two
decades, but that approach has been unsustainable in light of modern
security concerns. Here we present a more long-lasting solution to the
problems of availability, model sophistication and flexibility, and
long-term access in the form of a cloud-hosted, publicly available
Jupyter notebook. Similar to UserCalc, the new notebook calculates
U-series disequilibria during time-dependent, equilibrium partial
melting in a one-dimensional porous flow regime where mass is conserved.
In addition, we also provide a new disequilibrium transport model which
has the same melt transport model as UserCalc, but approximates
rate-limited diffusive exchange of nuclides between solid and melt using
linear kinetics. The degree of disequilibrium during transport is
controlled by a Damköhler number, allowing the full spectrum of
equilibration models from complete fractional melting (Da = 0) to
equilibrium transport (Da = ∞).