neoVULCAN¶
neoVULCAN is a one-dimensional photochemical kinetics code for planetary and exoplanetary atmospheres. It is a refactored, JAX-accelerated descendant of the original VULCAN code [Tsai2017], [Tsai2021] (upstream repository: shami-EEG/VULCAN), designed to integrate the stiff transport–reaction system
forward in time until a numerical steady state is reached. Compared to the original VULCAN, neoVULCAN
uses JAX for automatic differentiation of the chemistry Jacobian and for vectorised rate evaluations,
exposes a library API (
vulcan_api.VulcanChemistry) for embedding in three-dimensional general-circulation models,supports both the second-order Rosenbrock (
Ros2) and a third-order, L-stable Rosenbrock–Wanner (Rodas3) integrator,implements photochemistry, condensation with particle settling, advection, molecular diffusion with thermal-diffusion drift, and a flexible C–H–N–O–S reaction network.
This documentation collects the mathematical background, the numerical schemes used inside neoVULCAN, a complete reference for the configuration file, and a tour of the code architecture.
Getting started
Appendix