Skip to content

ihmstefanini/dynamic-modeling-pysindy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Pysindy Validation

Repo that aims to validate the power and usefullness of PySindy library

Getting started

We used the original PySindy repo published by Professor Steven Brunton team link

Objective

The goal of use PySindy is to identify the process dynamics of a SISO (single input, single output) system, so that we can have a better understanding of the dynamics that govern the process. Althoug we usually model a flow loop as a FOPDT (first order plus dead time) model, we wanna use PySindy to further understand the full dynamic behavior of the system.

We also have to remember that in real cases like this, the full dynamical system is governed by the process dynamics (air volumetric flow) + actuator dynamics (which is the control valve, typically a butterfly type of valve) + instrument dynamics (which is the flow sensor that uses differential pressure to measure flow) and finnally the closed loop PID controller dynamics.

Latter, we wanna try to use PySindy to model a MIMO (multiple input, multiple output) system, so that we can use a data-driven model identification approach and use the discovered model with a MPC controller.

How to run the repo

Clone the repo and run the jupter notebook pysindy_flowloop_example.ipynb

The src folder contains all the necessary python code to run the example.

Main referrences used to inspire us and also to guide us in order to use PySindy propperly.

  1. PySINDy: A Python package for the Sparse Identification of Nonlinear Dynamics from Data
  2. Youtube channel with System Identification lectures from the Brazillian Professor Luis Aguirre
  3. State space modeling example using python
  4. Kalman filter book and repo
  5. Cool Pysindy example found in the internet
  6. Amazing example and code inspiration that used PySindy

About

Dynamic model of industrial process control loop using PySindy

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published