# pyNLControl

pyNLControl is the package for nonlinear control and estimation. It is python based package. Almost all of the module will be applicable to linear system as well. Some might be applicable only to nonlinear or linear only.

## Requirements
* python >= 3.6 (might work on older version of python3, not tested)
* casadi>=3.5.5 and jinja2>=3.0.2 `pip install casadi jinja2 `


## Installations

```
pip install pyNLControl
```

## Supported control and estimator
* Estimators: Kalman filter, Extended Kalman Filter and Unscented Kalman Filter. Partical filter, moving horizon estimator, etc will be added soon.
* Control: Nonlinear Model Predictive Control will be added soon
* Misc: Nonlinear observability analysis, Noise covariance identification will be added soon