How ahwillia/affinewarp works
affinewarp is a research library for aligning repeated multivariate time series with linear shifts or piecewise-linear time warps, chiefly for neural recordings. The user workflow is to provide trial data, fit an alignment model that alternates template and warp estimation, then predict or transform aligned data; spike-event data has a specialized representation and transform path. The package also provides model selection, evaluation metrics, synthetic data generation, multi-template shift models, and visualization. Arrows are limited to relationships visible in excerpts, the source index, or README; unsampled implementation details are not inferred.
Main entry points: shiftwarp.py Shift Warping · piecewisewarp.py Piecewise Warping · crossval.py Cross Validation · datasets.py Synthetic Data
Components 13
Warp Models
- Shift Warping
affinewarp/shiftwarp.py - Piecewise Warping
affinewarp/piecewisewarp.py - Multi-Shift Model
affinewarp/multiwarp.py
Fit Internals
- Warp Optimizers
affinewarp/_optimizers.py - Banded Solver
affinewarp/bmat.py
Data Handling
- Spike Data
affinewarp/spikedata.py - Input Utilities
affinewarp/utils.py
Analysis Tools
- Cross Validation
affinewarp/crossval.py - Warp Metrics
affinewarp/metrics.py - Synthetic Data
affinewarp/datasets.py - Visualization
affinewarp/visualization.py
Other components
- Analyst
- Trial Data
Connections 17
- Analyst → Trial Data: provides
README.md - Trial Data → Shift Warping: fit input
affinewarp/shiftwarp.py - Trial Data → Piecewise Warping: fit input
affinewarp/piecewisewarp.py - Shift Warping → Warp Optimizers: uses optimizers
affinewarp/shiftwarp.py - Piecewise Warping → Warp Optimizers: uses optimizers
affinewarp/piecewisewarp.py - Shift Warping → Banded Solver: solves templates
affinewarp/shiftwarp.py - Shift Warping → Input Utilities: checks inputs
affinewarp/shiftwarp.py - Piecewise Warping → Input Utilities: checks inputs
affinewarp/piecewisewarp.py - Shift Warping → Spike Data: transforms spikes
affinewarp/shiftwarp.py - Multi-Shift Model → Shift Warping: builds models
affinewarp/multiwarp.py - Analyst → Cross Validation: selects models
README.md - Cross Validation → Piecewise Warping: fits candidates
affinewarp/crossval.py - Cross Validation → Shift Warping: fits shift candidate
affinewarp/crossval.py - Analyst → Warp Metrics: evaluates warps
README.md - Analyst → Synthetic Data: generates examples
affinewarp/datasets.py - Synthetic Data → Piecewise Warping: predicts data
affinewarp/datasets.py - Analyst → Visualization: visualizes results