Heart Rate Variability Models

HeartRateLab provides four models for synthesizing and analyzing inter-beat interval (IBI) time series. Two are mechanistic (grounded in physiology or physics), one is chaotic (deterministic but sensitive to initial conditions), and one is purely data-driven.

ModelTypeFit Methods
LIFMechanistic ODE: cardiac pacemaker:analytical, :gradient, :bayesian
Van der PolMechanistic ODE: nonlinear oscillator:gradient, :bayesian
LorenzChaotic ODE: butterfly attractor:bayesian
DMDData-driven: spectral decompositionSVD (no fitting methods)

Shared Interface

All models implement a common interface via AbstractHRVModel:

# Create a model
model = LIF()           # or VanDerPol(), Lorenz(), DMD()

# Fit to IBI data (milliseconds)
result = fit(model, ibis; method=:gradient)

# Generate synthetic IBIs
synthetic = simulate(result.model, result.params, 500)

See Framework for the full interface specification, including how ModelFitResult stores fitted parameters, posteriors, and diagnostics.

API Reference

See Framework for the full AbstractHRVModel and ModelFitResult API.