How otwin-core/otwin-hybrid works
This repository is a battery end-of-life forecasting tutorial and reproducible experiment, not a general digital-twin platform. Its Python workflow loads battery capacity data, derives state of health, fits physics-only, Gaussian-process, and residual-hybrid forecasts, evaluates held-out predictions and end-of-life estimates, then saves result tables for plotting. The notebooks extend the worked example to Julia and R. Relationships below are limited to the excerpts, source index, and README; notebook internals were not sampled.
Main entry points: comparison.py Experiment runner · figures.py Figure generator · _paths.py Path resolver · results Result tables
Components 16
Forecast analysis
- Battery data
data/battery_soh.csv - Path resolver
src/otwin_hybrid/_paths.py - Experiment runner
src/otwin_hybrid/comparison.py - SoH preparation
src/otwin_hybrid/comparison.py - Physics model
src/otwin_hybrid/comparison.py - Gaussian process
src/otwin_hybrid/comparison.py - Residual hybrid
src/otwin_hybrid/comparison.py - Forecast baselines
src/otwin_hybrid/comparison.py
Evaluation outputs
- Forecast evaluation
src/otwin_hybrid/comparison.py - Result tables
results - Figure generator
src/otwin_hybrid/figures.py - Figures
figures
Tutorial interfaces
- Python tutorial
notebooks/hybrid_digital_twin_python.ipynb - Julia tutorial
notebooks/hybrid_digital_twin_julia.ipynb - R tutorial
notebooks/hybrid_digital_twin_r.ipynb
Other components
- Researcher
Connections 16
- Researcher → Python tutorial: runs example
README.md - Researcher → Julia tutorial: opens example
README.md - Researcher → R tutorial: opens example
README.md - Researcher → Experiment runner: runs analysis
README.md - Experiment runner → Path resolver: resolves paths
src/otwin_hybrid/comparison.py - Experiment runner → Battery data: loads data
src/otwin_hybrid/comparison.py - Experiment runner → SoH preparation: prepares SoH
src/otwin_hybrid/comparison.py - Experiment runner → Physics model: fits and forecasts
src/otwin_hybrid/comparison.py - Experiment runner → Gaussian process: fits and forecasts
src/otwin_hybrid/comparison.py - Experiment runner → Residual hybrid: fits and forecasts
src/otwin_hybrid/comparison.py - Experiment runner → Forecast baselines: computes baselines
src/otwin_hybrid/comparison.py - Experiment runner → Forecast evaluation: evaluates forecasts
src/otwin_hybrid/comparison.py - Experiment runner → Result tables: writes tables
src/otwin_hybrid/comparison.py - Figure generator → Path resolver: resolves paths
src/otwin_hybrid/figures.py - Figure generator → Result tables: reads tables
src/otwin_hybrid/figures.py - Figure generator → Figures: writes plots
src/otwin_hybrid/figures.py