Code Monkey home page Code Monkey logo

identpy's Introduction

identPy

IdentPy is a framework for estimation of parameters of mathematical models used for describing dynamic nonlinear systems.

Estimation methods

The following estimation methods are implemented on identPy and can be used to estimate the model parameters. The corresponding classes can be found inside the methods subfolder.

  • Mean-Variance Mapping Optimization (MVMO)
  • Trajectory Sensitivity

Implemented systems

The following systems have mathematical models implemented and can be estimated using on identPy. The corresponding classes can be found inside the models subfolder.

  • Spring-Mass
  • Simple Pendulum
  • Linearized Z-IM Load Model
  • DFIG Model (2 mathematical models)

Requirements

IdentPy requires Python 3.6 or higher as weel as blinker, numpy, scipy and matplotlib packages.

Installation

Installation of identPy can be done by following the instructions below.

Using pip

Users can install identPy by downloading the project from its GitHub page and running the following command on terminal.

$ git clone https://github.com/gnegrelli/identPy.git
$ pip install <path/to/identPy>

Contributing

In order to contribute to this package, the user must install the package in develop mode. When contributing to identPy, it is generally recommended to install packages in a virtual environment to avoid modifying system state:

$ git clone https://github.com/gnegrelli/identPy.git
$ cd identPy
$ python -m venv venv
$ source venv/bin/activate
(venv)$ pip install -e .

Running estimations

Inside the scripts folder, users can look at examples on how to perform parameter estimation using identPy.

On run_estimation.py, MVMO and TSM are used to estimate the parameters of an improved DFIG model with measurements imported from a file. The output behaviour are plotted throughout the estimation process and, at the its end, the error evolution is also presented.

The population_size_analysis.py script was developed to evaluate the effects of population size on the estimation performance. For every size given in a list, 35 estimations are performed and their results, as well as the time duration, are saved into a file.

License

This project is licensed under the MIT License - see the LICENSE file for details.

identpy's People

Contributors

gnegrelli avatar

Watchers

 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.