Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

Capability index: GeoModels

Layers: GeoStack · GeoNumerics · GeoML · GeoModels.

Every public name in the libraries geostack builds on, each listed once under the shortest module path that exports it, with the first sentence of its docstring. Search this page before writing a loader, a model, a training step or a helper in a script or a notebook: if what you need is here, use it; if it is almost here, extend it where it lives. Regenerate with make capabilities after changing a public API (tests/test_capabilities.py checks it is current).

This page is the GeoModels layer. It may import GeoML, GeoNumerics, GeoStack.

Listed at plumax 0.1.2, somax 0.0.15, radtrax 0.0.0.

Upstream: plumax

Plume transport: Gaussian plume and puff, Lagrangian and LES.

plumax.gauss_plume

NameKindWhat it does
BRIGGS_DISPERSION_PARAMSconstant{'A': Array([ 2.2e-01, 1.0e-04, -5.0e-01, 2.0e-01, 0.0...
MIN_WIND_SPEEDconstant0.5
STABILITY_CLASSESconstant('A', 'B', 'C', 'D', 'E', 'F')
calculate_briggs_dispersionfunctionEvaluate σ_y(x), σ_z(x) from Briggs parameters.
gaussian_plume_modelfunctionNumPyro model for the steady-state Gaussian plume.
get_dispersion_paramsfunctionReturn the Briggs parameter vector for a stability class.
infer_emission_ratefunctionInfer the plume emission rate via NUTS.
plume_concentrationfunctionEvaluate the steady-state Gaussian plume concentration.
plume_concentration_vmapfunctionVectorized version of plume_concentration.
rotate_to_wind_framefunctionRotate fixed-frame coordinates into the wind-aligned frame.
simulate_plumefunctionSimulate a steady-state Gaussian plume on a 3-D grid.

plumax.gauss_puff

NameKindWhat it does
DISPERSION_SCHEMESconstant{'pg': ({'A': Array([-1.104 , 0.9878, -0.0076, 4.679 , ...
OUTurbulenceclassOrnstein-Uhlenbeck turbulence for puff-release position disturbances.
PG_DISPERSION_PARAMSconstant{'A': Array([-1.104 , 0.9878, -0.0076, 4.679 , -1.7172,...
PuffStateclassContainer for the Lagrangian state of a puff ensemble at a single time.
STABILITY_CLASSESconstant('A', 'B', 'C', 'D', 'E', 'F')
WindScheduleclassPiecewise-linear time-varying wind field.
calculate_briggs_dispersion_xyzfunctionEvaluate σ_x(s), σ_y(s), σ_z(s) from Briggs parameters.
calculate_pg_dispersionfunctionEvaluate σ_x(s), σ_y(s), σ_z(s) from Pasquill-Gifford parameters.
cumulative_wind_integralsfunctionCompute cumulative wind integrals via a single diffrax ODE solve.
evolve_puffsfunctionAdvance a puff ensemble to current_time under a time-varying wind.
frequency_to_release_intervalfunctionConvert a release frequency f [Hz] into a release interval Δt [s].
gaussian_puff_modelfunctionNumPyro model for the Gaussian puff forward with a constant Q prior.
gaussian_puff_rw_modelfunctionRandom-walk state-space model for a time-varying emission rate Q_i.
get_dispersion_schemefunctionReturn (params_dict, calculator_fn) for a named dispersion scheme.
get_pg_paramsfunctionReturn the Pasquill-Gifford parameter vector for a stability class.
infer_emission_ratefunctionNUTS inference of a constant emission rate from puff observations.
infer_emission_timeseriesfunctionNUTS inference of a time-varying emission rate series Q_i.
make_release_timesfunctionEvenly spaced puff release times in [t_start, t_end).
puff_concentrationfunctionEvaluate the concentration from a single Gaussian puff (JIT).
puff_concentration_vmapfunctionVectorized version of puff_concentration.
release_durationsfunctionPer-puff emission-interval durations [s] for a continuous source.
release_interval_to_frequencyfunctionConvert a release interval Δt [s] into a release frequency f [Hz].
sample_ou_offsetsfunctionDraw per-puff (Δx, Δy) offsets from a 2-D OU process at release times.
simulate_pufffunctionSimulate a time-resolved Gaussian-puff dispersion field on a 3-D grid.
simulate_puff_fieldfunctionSum the contributions of all puffs at each receptor.

plumax.lagrangian

NameKindWhat it does
GaussianPosteriorclassClosed-form Gaussian posterior over the source vector.
HannaTurbulenceclassHeight-dependent Hanna (1982) turbulence as a TurbulenceModel.
HomogeneousTurbulenceclassSpatially uniform, well-mixed-exact turbulence statistics.
LognormalPosteriorclassLinearised lognormal posterior over a non-negative source vector.
ParticleStateclassState of an ensemble of Lagrangian particles.
bin_positionsfunctionHistogram particle positions (n, 3) onto a 3-D grid (counts).
compute_footprintfunctionCompute a single receptor’s surface footprint by backward integration.
hanna_profilesfunctionHanna (1982) Monin–Obukhov-similarity turbulence profiles.
integrate_particlesfunctionIntegrate the ensemble from t0 to t1 with fixed step dt.
langevin_stepfunctionAdvance the ensemble one step dt with the Markov-1 update.
linear_gaussian_inversionfunctionClosed-form Gaussian–Gaussian (BLUE) inversion of the source vector.
lognormal_inversionfunctionSign-constrained inversion via a lognormal prior linearised in log-space.
matern32_covariancefunctionBuild a Matérn-3/2 prior covariance over grid-cell coordinates.
n_steps_for_horizonfunctionNumber of fixed-dt steps covering horizon (ceil, float-robust).
observation_covariancefunctionAssemble the diagonal observation-error covariance R.
simulate_lagrangianfunctionSimulate a steady Lagrangian concentration field on a 3-D grid.
step_durationsfunctionPer-step durations summing to horizon; the final step takes the rest.
uniform_windfunctionReturn a constant mean-wind field t -> (u, v, w).
wind_from_speed_directionfunctionConstant wind from speed + meteorological direction (degrees from North).

plumax.les_fvm

NameKindWhat it does
ColumnObservationOperatorclassSample the column-integrated field at fixed receptor cells.
EddyDiffusivityclassScalar or field-valued (K_h, K_z) eddy diffusivity.
EulerianDispersionRHSclassFull tracer-transport tendency for diffrax.
EulerianForward4DVarclassDifferentiable map from an emission time series to column observations.
FourDVarProblemclassA strong-constraint 4D-Var problem over a scalar emission time series.
FourDVarResultclassOutcome of a 4D-Var minimisation.
GaussianSourceclassGaussian point source with constant or time-varying emission rate.
HorizontalBCclassApply a :class:BoundaryConditionSet to every z-slice of a 3-D field.
PlumeGrid3DclassArakawa C-grid + cached interior coordinate arrays.
PosteriorCovarianceclassLaplace (Gauss-Newton) posterior covariance of a 4D-Var solution.
PrescribedWindFieldclassWind velocity evaluator on the full [Nz, Ny, Nx] field layout.
VerticalBCclassTop/bottom ghost-slice update for a 3-D field.
advection_tendencyfunctionFlux-form advective tendency -∇·(u C) at interior T-points.
apply_boundary_conditionsfunctionApply horizontal then vertical BCs to a 3-D tracer field.
build_default_concentration_bcfunctionBuild (HorizontalBC, VerticalBC) from user-facing BC specs.
build_forwardfunctionAssemble a differentiable :class:EulerianForward4DVar.
build_problemfunctionAssemble a :class:FourDVarProblem, factorising the prior covariance.
diffusion_tendencyfunctionFull 3-D eddy diffusion tendency ∇·(K ∇C) at interior T-points.
laplace_samplefunctionDraw source-space samples from the Laplace posterior N(S*, P_S).
make_gaussian_sourcefunctionBuild a :class:GaussianSource on plume_grid.
make_gridfunctionBuild a :class:PlumeGrid3D from (x_min, x_max, nx_interior) triples.
pg_eddy_diffusivityfunctionRough K-theory calibration from Pasquill-Gifford σ curves.
posterior_covariancefunctionGauss-Newton Laplace posterior covariance around a 4D-Var MAP.
simulate_eulerian_dispersionfunctionSimulate 3-D Eulerian tracer transport under a prescribed wind.
solve_4dvarfunctionMinimise the 4D-Var cost with L-BFGS in whitened space.
stable_step_boundfunctionMaximum stable step for an explicit fixed-step transport solve.
uniform_wind_fieldfunctionSpace- and time-constant wind field.
wind_field_from_callablefunctionGeneral-purpose wind field from a user-supplied (t, X, Y, Z) function.
wind_field_from_schedulefunctionTime-varying but spatially uniform wind field.

plumax.met

NameKindWhat it does
MetFieldclassMeteorological forcing on an analysis grid with a time axis.
load_wrffunctionLoad a wrfout file onto an analysis grid.
to_prescribed_windfunctionExpose a :class:MetField as the wind object the Eulerian solver takes.

plumax.population

NameKindWhat it does
AdditiveMultiCovariatePODclassAdditive GLM with separate coefficients for each covariate.
CloglogPODclassComplementary log-log GLM for asymmetric detection tails.
CoalMineVentilationIntensityclassMulti-scale operational intensity for underground coal mines.
ConcentrationProxyPODclassGLM on the log-concentration proxy ln(Q/(U·p)).
ConstantIntensityclassConstant intensity for passive, continuously leaking infrastructure.
DiurnalSeasonalIntensityclassAdditive diurnal + seasonal intensity for thermally active biogenic sources.
DiurnalSinusoidalIntensityclassDiurnal sinusoidal intensity for thermally driven infrastructure.
EmissionCatalogclassA population of detected emission events.
EmissionEventclassA single detected emission event with its per-event posterior summary.
FacilityConfigclassImmutable physical configuration of a single leaking facility.
FullVaryingCoefficientPODclassFull varying-coefficient GLM with spectral and radiometric controls.
INTENSITY_REGISTRYconstant{'constant': <class 'plumax.population.intensity.Constant...
InhomogeneousIntensityPosteriorclassPosterior over a log-linear inhomogeneous intensity model.
LandfillIntensityclassMulti-component intensity for municipal solid waste landfills.
LivestockFeedlotIntensityclassBimodal diurnal + seasonal intensity for concentrated livestock operations.
LogLogisticPODclassLogistic POD on log-flux: the lognormal CDF approximation.
LogisticPODclassSingle-covariate logistic POD: the classic S-curve.
OffshorePlatformIntensityclassCombined tidal and operational intensity for offshore oil & gas platforms.
OperationalScheduleIntensityclassStep-function intensity for facilities with fixed shift schedules.
POD_REGISTRYconstant{'logistic': <class 'plumax.population.pod.LogisticPOD'>,...
ParadoxResultclassContainer for a single Monte Carlo paradox simulation.
PerEventPosteriorclassStructural type for a scalar per-event Q posterior summary.
PeriodicBatchIntensityclassPeriodic narrow-pulse intensity for scheduled batch venting.
PoissonRatePosteriorclassGamma posterior over a homogeneous Poisson rate lambda.
ProbitPODclassProbit GLM on the concentration proxy.
SNRBasedPODclassGLM on log-SNR: radiometric first-principles detection model.
SeasonalSinusoidalIntensityclassAnnual sinusoidal intensity for biogenic / climate-driven sources.
SeasonallyModulatedDiurnalIntensityclassDiurnal intensity whose amplitude is seasonally modulated.
SizeDistributionPosteriorclassPosterior over the lognormal population size-distribution parameters.
SpectralAwarePODclassGLM with spectral band count and resolution as covariates.
VaryingCoefficientPODclassVarying coefficient GLM: sensitivity β₁ depends on environment.
WeibullRenewalIntensityclassWeibull hazard function for pressure-driven, recharging sources.
WetlandPermafrostIntensityclassSigmoid-gated seasonal intensity for high-latitude wetland/permafrost.
X_MAX_DEFAULTconstant1000000.0
X_MIN_DEFAULTconstant10.0
build_canonical_scenariosfunctionSix canonical test scenarios spanning the paradox regime.
compute_E_PdfunctionCompute E[P_d] = ∫₀^∞ P_d(Q) · f(Q) dQ by log-space quadrature.
event_from_posteriorfunctionBuild an :class:EmissionEvent from any Tier II-IV posterior.
fit_inhomogeneous_intensityfunctionLog-linear inhomogeneous Poisson-process intensity fit via NUTS.
fit_lognormal_size_distributionfunctionHierarchical-Bayes fit of the lognormal population size distribution.
fit_poisson_ratefunctionClosed-form Gamma-Poisson posterior for a homogeneous event rate.
logistic_podfunctionParametric probability of detection (logistic sigmoid).
lognorm_cdffunctionLognormal CDF used as the probability-of-detection curve.
lognormal_pdffunctionEvaluate the Lognormal probability density function.
pod_powerlaw_modelfunctionNumPyro model for a POD-modified power law on observed fluxes.
power_lawfunctionUn-normalised power-law PDF: x⁻ᵅ.
run_mcmcfunctionRun NumPyro NUTS on the POD-modified power-law model.
run_scenario_gridfunctionRun the paradox simulation across multiple scenarios.
simulate_paradoxfunctionRun a single Monte Carlo realisation of the Missing Mass Paradox.

plumax.coupled

NameKindWhat it does
CoupledForwardclassMulti-instrument coupled forward: a list of per-instrument observations.
FusionPosteriorclassClosed-form joint posterior over (Q, bias₁ … bias_M).
InstrumentclassFixed observation geometry + error budget for one satellite instrument.
LinearisedRadianceOperatorclassTangent-linear radiance operator — the linearised counterpart of the RTM.
PlumeSourceclassStatic source + meteorology for the Tier I coupled forward.
RadianceObservationOperatorclassMap a per-receptor column-enhancement field to band radiances via the RTM.
build_coupled_forwardfunctionAssemble a :class:CoupledForward, precomputing unit-Q responses.
column_mass_to_delta_vmrfunctionConvert a plume column mass enhancement [kg/m²] to a gas ΔVMR.
column_responsefunctionPer-receptor column enhancement at unit emission for one instrument.
default_priorfunctionBuild a diagonal prior (θ_b, B) for (Q, bias₁ … bias_M).
fuse_observationsfunctionClosed-form joint posterior over (Q, bias_inst) from fused observations.
linearisefunctionBuild the :class:LinearisedRadianceOperator tangent to operator at 0.
predict_observationfunctionPredict one instrument’s observation vector y_inst.
radiance_responsefunctionPer-receptor band radiances for one instrument under the RTM operator.
radiance_response_linearfunctionPer-receptor linearised radiances for one instrument (differentiable).

plumax.operators

NameKindWhat it does
EulerianDispersionclassEulerian finite-volume dispersion runner as a pipekit operator.
GaussianPlumeclassSteady-state Gaussian plume forward model as a pipekit operator.
GaussianPuffclassTime-resolved Gaussian puff forward model as a pipekit operator.
LagrangianDispersionclassMarkov-1 Lagrangian dispersion forward model as a pipekit operator.

plumax.adapters

NameKindWhat it does
EulerianForwardModelclassExpose an Eulerian dispersion RHS as a pipekit_cycle.ForwardModel.
RadtranObservationOperatorclassExpose the normalised Beer–Lambert forward as an ObservationOperator.

plumax.radtran

NameKindWhat it does
ATM_TO_PAconstant101325.0
BOLTZMANN_J_PER_Kconstant1.380649e-23
CM3_PER_M3constant1000000.0
ForwardResultclassBundle of (radiance, Jacobian, transmittance) returned by the forward models.
GroundSamplingDistanceclassBlock-mean down-sampling operator for a fixed integer factor.
InstrumentSpecclassMultispectral instrument description.
NBLookupclassPre-computed normalised-brightness table, indexed by band and ΔX.
ObservationGeometryclassViewing geometry for a single pixel.
PointSpreadFunctionclass2D PSF blur applied independently per spectral channel.
SpectralResponseFunctionclassBand-integration operator for a multispectral / hyperspectral instrument.
build_lowrank_covariance_operatorfunctionBuild a :class:gaussx.LowRankUpdate covariance operator from a scene.
build_nb_lutfunctionPre-tabulate band-integrated nB over a column-enhancement grid.
forward_maclaurinfunctionMaclaurin-series forward model: expand exp(-τ(VMR)) around VMR = 0.
forward_maclaurin_normalizedfunctionMaclaurin expansion of exp(-Δτ) around ΔVMR = 0.
forward_nonlinearfunctionExact Beer-Lambert forward model.
forward_nonlinear_normalizedfunctionExact Beer-Lambert normalised by the background radiance.
forward_taylorfunctionFirst-order Taylor expansion around vmr_background.
forward_taylor_normalizedfunctionTaylor expansion of L_norm around ΔVMR = 0.
inject_plumefunctionMultiplicative plume injection: scene_plume = scene · nB(ΔX).
lookup_nbfunctionLook up per-band nB for every pixel of a 2-D column map.
matched_filter_imagefunctionMatched-filter abundance map, vectorised over spatial axes.
matched_filter_image_opfunctionVectorised matched filter using a structured covariance operator.
matched_filter_pixelfunctionMatched-filter abundance for a single pixel.
matched_filter_pixel_opfunctionScalar matched filter using a structured covariance operator.
matched_filter_snrfunctionDetection SNR for a matched-filter abundance map.
matched_filter_snr_opfunctionDetection SNR when the covariance is a gaussx operator.
number_density_cm3functionIdeal-gas total number density [molecules / cm³].
robust_lowrank_covariancefunctionRobust low-rank covariance + inverse (Σ, Σ⁻¹).
target_bandsfunctionBand-integrate a hi-res target spectrum through an SRF.
target_spectrum_normalized_linearfunctionFirst-order linearised target t(ν) = -σ · N · ΔVMR · L · AMF.
target_spectrum_normalized_nonlinearfunctionExact normalised-radiance target t(ν) = exp(-Δτ(ν)) − 1.
trimmed_mean_spectrumfunctionPer-channel trimmed mean μ_b.

plumax.hapi_lut

NameKindWhat it does
ATMOSPHERIC_GASESconstant{'CH4': GasConfig(CH4, M6, I1), 'CO2': GasConfig(CO2, M2,...
DEFAULT_VMR_NOMINALconstant{'CH4': 2e-06, 'CO2': 0.0004, 'H2O': 0.01, 'O2': 0.21, 'N...
GasConfigclassConfiguration for a single HITRAN gas species.
HAPI_CACHE_ENVconstant'HAPI_CACHE_DIR'
LUTGridConfigclassGrid configuration shared across gases for a single LUT build.
absorption_coefficientfunctionα(ν) = σ(ν) · N_gas [1/cm].
air_mass_factorfunctionPlane-parallel two-way AMF for sun → surface → sensor.
beers_law_from_lutfunctionEnd-to-end: σ-from-LUT → α → τ(ν) for a single homogeneous layer.
build_lut_datasetfunctionWrap the raw LUT arrays in a CF-conformant xarray.Dataset.
compute_absorption_lutfunctionEvaluate σ(ν, T, P) on the full LUT grid.
create_combined_lutfunctionBuild a single NetCDF with one cross-section variable per gas.
create_multi_gas_lutsfunctionBuild one separate <gas>_absorption_lut.nc per gas.
default_cache_dirfunctionReturn the HITRAN line-data cache directory.
fetch_hitran_datafunctionFetch HITRAN line parameters for gas_config into cache_dir.
generate_single_gas_lutfunctionEnd-to-end single-gas pipeline: fetch → compute → wrap → (optionally) save.
interpolate_cross_sectionfunctionReturn σ(ν) at a given (T, p) via bilinear LUT interpolation.
number_densityfunctionReturn total number density [molecules / cm³] from the ideal-gas law.
plume_ratio_spectrumfunctionDifferential-Beer-Lambert ratio τ_total(ν) / τ_bg(ν).
save_lutfunctionPersist ds to <output_dir>/<gas_name>_absorption_lut.nc (zlib).
transmittancefunctionτ(ν) = exp(-α · L_vert · AMF).

plumax.assimilation

NameKindWhat it does
CostclassBundle of (value, gradient, Hessian-vector product) for an optimiser.
IdentityTransformclassPass-through transform.
RadianceObservationModelclassBundle of precomputed pieces that defines the forward operator H.
SolveResultclassCommon result type for all three solvers.
WhiteningTransformclassδx = U ξ where B = U Uᵀ.
build_cost_xfunctionBuild J(δx) = ½ δxᵀ B⁻¹ δx + ½ (y − H(x_b + δx))ᵀ R⁻¹ (y − H(x_b + δx)).
build_cost_xifunctionBuild J(ξ) = ½ ξᵀ ξ + ½ (y − H(x_b + U ξ))ᵀ R⁻¹ (…).
build_diagonal_backgroundfunctionBuild B = diag(σ²) as a :class:lineax.DiagonalLinearOperator.
build_kronecker_backgroundfunctionBuild B = σ² · (ρ_y ⊗ ρ_x) using :class:gaussx.Kronecker.
build_lowrank_backgroundfunctionEstimate B from a stack of state samples and wrap as λI + U D Uᵀ.
degrees_of_freedom_for_signalfunctionEstimate DFS = trace(I − Bₐ B⁻¹) (Rodgers 2000, §2.5).
finite_difference_gradfunctionCentral finite differences — used only by tests to validate jax.grad.
posterior_covariance_proxyfunctionReturn a callable v → Bₐ v (model-space posterior covariance) via CG.
reduced_chi_squaredfunctionχ²_red = (y - H(x̂))ᵀ R⁻¹ (y - H(x̂)) / dim(y).
run_dual_psasfunctionSolve the dual 3D-Var system in observation space.
run_gauss_newtonfunctionRun :class:optimistix.GaussNewton for min ½ ‖r(y)‖².
run_lbfgsfunctionMinimise cost.value via :class:optimistix.LBFGS.

plumax.matched_filter

NameKindWhat it does
WelfordAccumulatorclassOnline mean and covariance for (n_samples, n_bands) streams.
adaptive_window_backgroundfunctionPer-pixel local mean and per-band variance over a square window.
apply_imagefunctionMatched-filter score map for a hyperspectral cube.
apply_image_xarrayfunctionApply the matched filter to an xarray DataArray.
apply_pixelfunctionMatched-filter score for a single pixel spectrum.
detection_thresholdfunctionGaussian detection threshold on the MF score for a given FAR.
estimate_cov_empiricalfunctionEmpirical covariance via :class:sklearn.covariance.EmpiricalCovariance.
estimate_cov_lowrankfunctionLow-rank + Tikhonov covariance: Σ = λI + V D Vᵀ.
estimate_cov_shrunkfunctionShrinkage covariance estimator.
estimate_meanfunctionEstimate the per-band background mean μ from a scene.
gmm_cluster_backgroundfunctionFit a Gaussian mixture and build per-cluster background models.
linear_target_from_obsfunctionMatched-filter target via the tangent-linear of the forward operator.
matched_filter_snrfunctionTheoretical SNR of the matched filter at a given plume amplitude.
nonlinear_target_from_obsfunctionMatched-filter target via a finite-amplitude difference.
open_multi_scenefunctionYield (n_pixels, n_bands) batches from a sequence of scene files.
streaming_backgroundfunctionStreamed (μ, Σ) from an iterable of batches.
validate_mf_inputsfunctionPublic fail-fast check for (Σ, t) compatibility.

Upstream: somax

Simple ocean and atmosphere models in JAX.

somax.core

NameKindWhat it does
BasisForcingclassReduced-order forcing: a fixed space-time frame driven by a coefficient vector.
ComposeclassOperator composition: Compose(outer, inner)(state) = outer(inner(state)).
ConstantForcingclassTime-independent forcing field.
ConstantInTimeclassTime-independent gate: b(t) = ones(m) (the Phi_t = I case).
DiagnosticsclassBase class for on-demand diagnostic quantities.
DirichletHelmholtzCacheclassHelmholtz cache for Dirichlet (DST-based) domains.
ForcingProtocolclassBase class for forcing terms.
ForcingTermclassLift a :class:ForcingProtocol field into the term algebra as a tendency.
FourierInTimeclassCosine temporal gate b_a(t) = cos(omega_a t + phase_a).
GaussianWindowsInTimeclassLocalized temporal gate b_a(t) = exp(-(t - tau_a)^2 / (2 T_a^2)).
HelmholtzCacheclassCached Helmholtz solver for repeated (lap - lambda) psi = f solves.
InterpolatedForcingclassData-driven forcing via diffrax path interpolation.
ModalTransformclassPrecomputed layer-to-mode and mode-to-layer transforms.
MultimodalHelmholtzCacheclassBatched Helmholtz cache for multilayer modal solves.
NeumannHelmholtzCacheclassHelmholtz cache for Neumann (DCT-based) domains.
NoForcingclassZero forcing (free evolution).
ParamsclassBase class for differentiable model parameters.
PeriodicHelmholtzCacheclassHelmholtz cache for periodic (FFT-based) domains.
PhysConstsclassBase class for frozen physical constants.
ScaledclassA term multiplied by a scalar coefficient.
ScaledModelclassIntegrate inner in transformed coordinates.
ScalesclassCharacteristic scales of a run.
SeasonalWindForcingclassSinusoidal wind forcing with learnable amplitude.
SimulationCheckpointerclassManages periodic checkpointing during long simulations.
SomaxModelclassAbstract base class defining the somax model contract.
SpatialBasisclassA precomputed spatial dictionary plus the per-mode prior std.
StateclassBase class for model state vectors.
StateAffineclassPer-leaf affine map on a State pytree: y = (x - loc) / scale.
StratificationProfileclassDiscrete vertical stratification for a layered ocean model.
SumclassAdditive composition of terms: sum_i terms[i](t, state, args).
TemporalBasisclassMaps a scalar time to per-atom temporal weights b(t).
TermclassA single additive contribution to a model right-hand side.
TermFnclassAdapt a plain callable into a :class:Term.
TermModelclassA :class:SomaxModel whose RHS is an assembled :class:Term tree.
TransformedForcingclassApply a pointwise transform to a base forcing (e.g. log-space synthesis).
VectorBasisForcingclassReduced-order vector forcing: a fixed vector frame driven by coeffs.
VectorSpatialBasisclassA precomputed vector dictionary plus the per-mode prior std.
add_tofunctionBuild a placement that adds a field onto one named state component.
add_vector_tofunctionBuild a placement that adds a component-major field onto named components.
as_parameterfunctionCoerce a factory argument into a Params leaf.
build_diffrax_termsfunctionBuild the diffrax term object for term, IMEX-aware.
control_filterfunctionBoolean filter selecting only coeffs for gradient updates.
explicitfunctionTag term for the explicit stage of an IMEX integrator.
frozenfunctionHide a parameter from gradients while keeping it a runtime value.
geostrophic_currentsfunctionVector preset: incompressible (u, v) current-error forcing.
implicitfunctionTag term for the implicit stage of an IMEX integrator.
intervalfunctionConstrain a parameter to the open interval (lower, upper).
matern_spectral_densityfunctionMatérn power spectral density S(omega) at omega = sqrt_lambda.
partitionfunctionSplit term into (explicit, implicit) sub-terms by kind.
positivefunctionConstrain a parameter to be strictly positive.
spatial_from_divfreefunctionBuild a :class:VectorSpatialBasis of divergence-free velocity atoms.
spatial_from_eoffunctionBuild a :class:SpatialBasis from empirical orthogonal functions (PCA).
spatial_from_fourierfunctionBuild a :class:SpatialBasis from the box-Laplacian (HSGP) eigenbasis.
spatial_from_gaborfunctionBuild a :class:SpatialBasis from a geonnax dyadic radial-Gabor frame.
spatial_from_graph_laplacianfunctionBuild a :class:SpatialBasis from graph-Laplacian eigenvectors.
spatial_from_rbffunctionBuild a :class:SpatialBasis from a geonnax placeable radial basis.
spatial_from_spherical_rbffunctionBuild a :class:SpatialBasis from a geodesic (on-sphere) radial basis.
spatial_from_waveletfunctionBuild a :class:SpatialBasis from the orthonormal 2D wavelet basis.
ssh_geostrophicfunctionSSH geostrophic preset: a radial-Gabor frame with a wavenumber-law prior.
sss_coastalfunctionCoastal SSS preset: placeable radial atoms with a prescribed prior.
sst_frontalfunctionSST preset: a smooth Matérn (HSGP) field over the box-Laplacian eigenbasis.
tile_in_timefunctionLift a spatial dictionary into a separable space-time frame.
trainable_maskfunctionBoolean pytree marking which leaves an optimiser may update.

somax.domain

NameKindWhat it does
DomainclassDomain class for a rectangular domain
TimeDomainclassTimeDomain(tmin, tmax, dt)

somax.operators

NameKindWhat it does
Burgers2DOpclassSerializable pipekit Operator for the term-based 2D Burgers model.
SomaxModelOpclassA pipekit Operator wrapping any built somax forward model.

somax.solvers

NameKindWhat it does
imex_solverfunctionBuild a KenCarp3 IMEX solver with a matrix-free implicit stage.
imex_stepsize_controllerfunctionBuild an adaptive PID controller for an IMEX solve.

somax.da

NameKindWhat it does
SomaxDynamicsclassAdapt a somax forward model to filterax’s flat-vector dynamics.
SomaxForwardModelclassAdapt a somax model to vardax’s flat-vector ForwardModel.
SubsampleObsclassLinear sub-sampling observation operator H(x) = x[indices].
make_ensemblefunctionBuild a Gaussian-perturbed flat ensemble around a base state.
state_to_vectorfunctionFlatten a state pytree to a 1-D vector plus its inverse.

somax.flows

NameKindWhat it does
StateAffineBijectionclassA :class:StateAffine as a flat flowjax bijection.
learned_priorfunctionCompose a fixed physical scaling with a learned flow into a prior.
to_flowjaxfunctionAdapt a :class:StateAffine to the flowjax bijection interface.

somax.eval

NameKindWhat it does
compute_eval_metricsfunctionCompute every applicable reference-free metric for (model, state).
geostrophic_imbalancefunctionDimensionless ageostrophic fraction of a shallow-water-type state.
kinetic_energyfunctionDomain-integrated kinetic energy 0.5 ∫ (u² + v²) dA.
qg_balance_residualfunctionDimensionless PV-inversion residual for a barotropic QG model.
rms_divergencefunctionRoot-mean-square horizontal divergence sqrt(<(∇·u)²>).
total_enstrophyfunctionDomain-integrated enstrophy 0.5 ∫ ζ² dA with ζ = ∂v/∂x - ∂u/∂y.

somax.io

NameKindWhat it does
append_to_datasetfunctionAppend a Dataset to an existing zarr store along a dimension.
apply_scale_metadatafunctionAttach scale / transform metadata to an exported Dataset.
dataset_to_statefunctionReconstruct a single State from an xarray Dataset.
load_datasetfunctionOpen a zarr store as an xarray Dataset.
save_datasetfunctionPersist a Dataset to a zarr store.
scales_attrsfunctionFlat Dataset attrs describing the scale set a run used.
snapshots_to_datasetfunctionConvert a time-stacked PyTree of states to an xarray Dataset.
state_to_datasetfunctionConvert a single model State to an xarray Dataset.
transform_attrsfunctionPer-variable loc / scale attrs for an affine transform.

somax.monitor

NameKindWhat it does
BaseMonitorclassInert base monitor — override only the hooks you care about.
ChunkInfoclassContext handed to a monitor at a diagnostic-chunk boundary.
ConservationDriftMonitorclassMONITOR (optionally FAIL-HARD): track drift of conserved invariants.
EnergyGrowthMonitorclassMONITOR (optionally FAIL-HARD): flag large energy jumps between chunks.
MonitorclassStructural protocol for a simulation monitor.
MonitorVerdictclassA monitor’s response to a chunk.
NonFiniteMonitorclassFAIL-HARD: terminate the run if any state field holds NaN/Inf.
SolverHealthMonitorclassMONITOR: surface diffrax per-chunk solver statistics.
ThroughputMonitorclassMONITOR: report simulated seconds per wallclock second per chunk.
WatchdogMonitorclassFAIL-HARD: terminate if cumulative wallclock exceeds a ceiling.
default_monitorsfunctionThe runner’s default monitor set — preserves legacy behavior.

Upstream: radtrax

Differentiable radiative transfer for methane remote sensing.

radtrax

NameKindWhat it does
RadtraxErrorclassBase class for every exception raised by radtrax.

radtrax.atmosphere

NameKindWhat it does
ATM_TO_PAconstant101325.0
BOLTZMANN_J_PER_Kconstant1.380649e-23
CM3_PER_M3constant1000000.0
air_mass_factorfunctionPlane-parallel two-way air-mass factor, sun → surface → sensor.
number_densityfunctionTotal number density from the ideal-gas law [molecules / cm³].

radtrax.spectroscopy

NameKindWhat it does
absorption_coefficientfunctionα(ν) = σ(ν) · N_gas [1/cm].
beers_law_from_lutfunctionEnd-to-end: σ-from-LUT → α → τ(ν) for a single homogeneous layer.
interpolate_cross_sectionfunctionReturn σ(ν) at a given (T, p) via bilinear LUT interpolation.
plume_ratio_spectrumfunctionDifferential-Beer-Lambert ratio τ_total(ν) / τ_bg(ν).
transmittancefunctionτ(ν) = exp(-α · L_vert · AMF).

radtrax.instrument

NameKindWhat it does
GroundSamplingDistanceclassBlock-mean down-sampling operator for a fixed integer factor.
PointSpreadFunctionclass2D PSF blur applied independently per spectral channel.
SpectralResponseFunctionclassBand-integration operator for a multispectral / hyperspectral instrument.

radtrax.slab

NameKindWhat it does
ATM_TO_PAconstant101325.0
BOLTZMANN_J_PER_Kconstant1.380649e-23
CM3_PER_M3constant1000000.0
ForwardResultclassBundle of (radiance, Jacobian, transmittance) returned by the forward models.
InstrumentSpecclassMultispectral instrument description.
NBLookupclassPre-computed normalised-brightness table, indexed by band and ΔX.
ObservationGeometryclassViewing geometry for a single pixel.
build_nb_lutfunctionPre-tabulate band-integrated nB over a column-enhancement grid.
forward_maclaurinfunctionMaclaurin-series forward model: expand exp(-τ(VMR)) around VMR = 0.
forward_maclaurin_normalizedfunctionMaclaurin expansion of exp(-Δτ) around ΔVMR = 0.
forward_nonlinearfunctionExact Beer-Lambert forward model.
forward_nonlinear_normalizedfunctionExact Beer-Lambert normalised by the background radiance.
forward_taylorfunctionFirst-order Taylor expansion around vmr_background.
forward_taylor_normalizedfunctionTaylor expansion of L_norm around ΔVMR = 0.
inject_plumefunctionMultiplicative plume injection: scene_plume = scene · nB(ΔX).
lookup_nbfunctionLook up per-band nB for every pixel of a 2-D column map.
number_density_cm3functionIdeal-gas total number density [molecules / cm³].

radtrax.geo

NameKindWhat it does
sentinel2_srffunctionBuild a Sentinel-2 SRF from the agency table georeader bundles.