Function reference

Core

Base Classes

Base classes underlying all models.

core.CCModel The overarching model structure for ClimateCritters.
core.CCOutput Container for the results of one call to CCModel.integrate().
core.Forcing Unified time-varying signal consumed by models.

Forcing

Forcing elements.

core.forcing.ForcingElement A bounded forcing segment backed by an arbitrary callable.
core.forcing.ResolvedSegment Immutable record describing one compiled segment of a ForcingSequence.
core.forcing.ForcingSequence Composable sequence of ForcingElement parts.
core.forcing.Hold Constant-valued segment.
core.forcing.Ramp Monotonic transition between two values with linear or cosine easing.
core.forcing.Harmonic Sinusoidal segment with automatic phase continuity.

Models

EBMs

Energy balance models.

EBMBase Shared energy balance physics for all EBM variants.
EBM0D Zero-dimensional energy balance model for global-mean surface temperature.
EBM1DLat Diffusive annual-mean latitudinal energy balance model (Budyko-Sellers type).

Box Models

Composable framework for building custom multi-reservoir models.

BoxModelSpec Declarative specification for simple ODE box models.
TwoBoxCarbon Two-box carbon exchange model with explicit box volumes.

Lorenz & Roessler

Single-scale & two-scale Lorenz atmospheric models + Roessler system.

Lorenz63 Lorenz (1963) system.
Lorenz96 Lorenz (1996) single-scale and two-scale atmospheric model.
Roessler Roessler chaotic oscillator.

Pendulums & Oscillators

Mechanical oscillators ranging from simple SHM to chaotic driven pendulums.

SimplePendulum Nonlinear pendulum with optional linear damping.
DoublePendulum Double pendulum — a conservative chaotic system.
DampedSpring Damped (and optionally driven) spring-mass oscillator.

Individual Models

Standalone paleoclimate and dynamical systems models.

ENSORechargeOscillator Jin-style ENSO recharge oscillator.
Model3 Model 3 from Ganopolski (2024) describing glacial cycle evolution under orbital forcing.
Stocker2003BipolarSeesaw Minimum thermodynamic model for the thermal bipolar seesaw.
Stocker2003ExtendedSeaIceSeesaw Extended Stocker-style model with reservoir, Southern Ocean, sea-ice, and Antarctic states.
Stommel Minimal two-box Stommel thermohaline circulation model.

Utils

Noise

Post-hoc observation noise and stochastic process noise generation.

utils.noise.from_series Generate surrogate series matched to a target Pyleoclim series.
utils.noise.from_param Generate surrogate series from a parametric noise model.

Resampling

Irregular downsampling utilities for paleoclimate time series.

utils.resample.downsample Downsample a Pyleoclim series by drawing random time increments.

Forcing

Factory functions for common Forcing patterns.

utils.forcing.create_periodic_forcing Build a composite periodic forcing from normalised sine components.
utils.forcing.create_constant_forcing Build a constant forcing.
utils.forcing.create_sinusoid_forcing Build a sinusoidal forcing: f(t) = y0 + A * sin(2π t / period).
utils.forcing.create_piecewise_forcing Build a piecewise forcing from a sequence of :class:~climatecritters.core.ForcingElement parts.

Solvers

Numerical integration backends and solver helpers.

utils.solver.Solution Minimal container for the output of a fixed-step integrator.
utils.solver.rk4_method Fixed-step 4th-order Runge-Kutta integrator.
utils.solver.euler_method Fixed-step forward Euler integrator.
utils.solver.euler_maruyama_method Fixed-step Euler-Maruyama integrator for stochastic differential equations.
utils.solver.heun_maruyama_method Fixed-step Heun-Maruyama integrator for stochastic differential equations.
utils.solver.milstein_method Fixed-step Milstein integrator for stochastic differential equations.
utils.solver.define_t_eval Build a t_eval array for use with :func:scipy.integrate.solve_ivp.
utils.solver.validate_monotonic_grid Validate a strictly increasing 1-D coordinate array.
utils.solver.validate_layer_thicknesses Validate positive layer thicknesses.
utils.solver.flux_divergence Compute finite-volume tendency from face fluxes and layer thicknesses.
utils.solver.validate_initial_state Validate and normalize the initial state vector.
utils.solver.build_state_from_history Build a structured state array from a solved trajectory.

Functions

Signal processing and interpolation utilities.

utils.func.make_derivative_func Return a callable that evaluates the derivative of a forcing at arbitrary times.
utils.func.smooth_and_interpolate Apply a centered moving-average and interpolate onto a target time axis.