Git Product home page Git Product logo

brilliant-ember / linear_systems_notes Goto Github PK

View Code? Open in Web Editor NEW
0.0 2.0 0.0 346 KB

How to solve linear system problems, how to find controlability and observability, state space analysis and other control theory problems tool box.

Jupyter Notebook 97.52% Python 2.48%
linear linear-systems linear-systems-theory linear-system state-space-model state-space state-space-systems control-systems controllable-observable controllability observability

linear_systems_notes's Introduction

A set of helper functions and code that will help solve linear systems problems

note the ipynb files are more complete than the .py files.

This repo will help you do the following and more:

  1. State transition matrix (both continuous time and discrete)
  2. Homogenous response (aka free response or zero input response) of a state space model both continuous and discrete
  3. Forced response (aka zero state response) of a state space model
  4. Output response of a state space model
  5. Determine and Contralabiltiy and Observability of a system, and find the contralabilty an
  6. Get a neat matrix inverse
  7. Misc matrix and other functions

The documented code is in the jupyter notebook file NeatStateSpaceFunctions.ipynb which I extracted that code from the notebook and put it in a Python file called state_space_functions.py for people who want to import it as a module.

The file MatrixFunctions.ipynb which is the same code as MatrixFunctions is the matrix helper function such as get_inverse() and others.

The tests.py attempts to test state_space_functions.py by making it solve state space model homogenous, forced, and output responses and checking the solution. It is incomplete but has few good tests.

The file StateSpaceModel.ipynb has more functions and examples but it is an undocumented, unorganized version unlike NeatStateSpaceFunctions.ipynb I didn't remove it because it has examples which you can see to know how to use this code. You can see the example if you scroll down to the Example usage section in the StateSpaceModel.ipynbfile

Overall, this code helped me understand and solve Linear Systems problems so I wanted to share it, by no means is this a complete package or library.

linear_systems_notes's People

Contributors

brilliant-ember avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.