Companion preprint: https://doi.org/10.5281/zenodo.20085703
This project proposes a data-driven way to correct a nominal linear controlled model using an explicit geometric structure.
The main idea is to treat the linear predictor as a local approximation of the true nonlinear dynamics and to learn the mismatch as a closure term split into two parts:
- a tangential correction, acting along the dominant local directions of motion;
- a normal correction, acting orthogonally to the learned tangent subspace.
Given a nominal model
[ x_{k+1} = A x_k + B u_k ]
the corrected normalized dynamics are written as
[ z_{k+1} = z_{k+1}_lin + V g_t(V^T z_k, u_k) + W g_n(V^T z_k, u_k) ]
where V spans the tangent subspace, W spans the normal subspace, and g_t, g_n are learned from data, based on nonlinear dictiornaly functions.
The goal is to preserve the interpretability of the nominal linear model while capturing nonlinear effects in a geometrically meaningful way.
Clone the repository and install dependencies using pip, The file user_guide.py provides a ready-to-run example demonstrating how to use TaNor in a Python environment. It shows how to define the model and using the framework.
git clone https://github.com/GirolamoOddo/TaNor_Closure.git
cd TaNor_Closure
pip install -r requirements.txt