Code Monkey home page Code Monkey logo

electrom's Introduction

Electromechanical Dynamic Code

ElectroM: Electromechanical Dynamic Code is a Matlab code designed to simulate the nonlinear dynamics of typical electromechanical systems. This package includes two physical-mathematical models:

  • Full-order model: Considers the mutual interaction between electrical and mechanical sub-systems, resulting in a coupled system of ODEs.
  • Reduced-order model: Considers only the influence of the mechanical sub-systems on the electrical one, resulting in a decoupled system of ODEs.

Table of Contents

Overview

ElectroM was used to generate the results reported in the following works:

  • A. Cunha Jr, M. Pereira, R. Avanço, A. M. Tusset, and J. M. Balthazar, ElectroM: ElectroMechanical dynamic code, Software Impacts, 17:100533, 2023. DOI
  • A. Cunha Jr, M. Pereira, R. Avanço, A. M. Tusset, and J. M. Balthazar, On the modeling of nonlinear electromechanical systems, Meccanica, 57:2679-2697, 2022. DOI
  • R. H. Avanço, D. A. Zanella, A. Cunha Jr, A. M. Tusset, J. M. Balthazar, A Tutorial on the Simplification of Electromechanical Dynamic Models, In: Balthazar, JM (eds), Nonlinear Vibrations Excited by Limited Power Sources. Mechanisms and Machine Science, vol 116. Springer, Cham, 2022. DOI

Preprint available here.

Features

  • Simulates nonlinear dynamics of electromechanical systems
  • Includes full-order and reduced-order models
  • Considers mutual interaction between electrical and mechanical sub-systems in the full-order model
  • Decouples electrical and mechanical sub-systems in the reduced-order model
  • Calculates dimensionless groups for electromechanical systems
  • Provides easy-to-understand, well-commented code
  • Offers educational style code implementation for intuitive use

Usage

To started with ElectroM, follow these steps:

  1. Clone the repository:
    git clone https://github.com/americocunhajr/ElectroM.git
  2. Navigate to the code directory:
    cd ElectroM/ElectroM-1.0
  3. To simulate both dynamical systems, execute:
    main_ElectroM_ivp
  4. To perform Fourier analysis, execute:
    main_ElectroM_fourier
  5. To compute dimensionless parameters value, execute:
    main_ElectroM_dimensionless
  6. To compute dimensionless groups, execute:
    main_ElectroM_pi_groups

Documentation

ElectroM routines are thoroughly commented to explain their functionality to the user. Each routine includes a short description of its purpose and a list of inputs and outputs.

Reproducibility

Simulations done with ElectroM are fully reproducible. You can access a reproducible capsule of the simulations on CodeOcean.

Authors

  • Americo Cunha Jr
  • Marcelo Pereira
  • Rafael Avanço
  • Angelo Marcelo Tusset
  • José Manoel Balthazar

Citing ElectroM

If you use ElectroM in your research, please cite the following publications:

  • A. Cunha Jr, M. Pereira, R. Avanço, A. M. Tusset, and J. M. Balthazar, ElectroM: ElectroMechanical dynamic code, Software Impacts, 17:100533, 2023 https://doi.org/10.1016/j.simpa.2023.100533
  • A. Cunha Jr, M. Pereira, R. Avanço, A. M. Tusset, and J. M. Balthazar, On the modeling of nonlinear electromechanical systems, Meccanica, 57:2679-2697, 2022 https://doi.org/10.1007/s11012-022-01542-4
  • R. H. Avanço, D. A. Zanella, A. Cunha Jr, A. M. Tusset, J. M. Balthazar, A Tutorial on the Simplification of Electromechanical Dynamic Models, In: Balthazar, JM (eds), Nonlinear Vibrations Excited by Limited Power Sources. Mechanisms and Machine Science, vol 116. Springer, Cham, 2022 https://doi.org/10.1007/978-3-030-96603-4_1
@article{CunhaJr2023ElectroM,
   author  = {A. Cunha Jr and M. Pereira and R. Avanço and A. M. Tusset and J. M. Balthazar},
   title   = "{ElectroM: Electromechanical Dynamic Code}",
   journal = {Software Impacts},
   year    = {2023},
   volume  = {17},
   pages   = {100533},
   doi     = {10.1016/j.simpa.2023.100533},
}
@article{CunhaJr2022p2679,
   author  = {A. Cunha Jr and M. Pereira and R. Avanço and A. M. Tusset and J. M. Balthazar},
   title   = {On the reduction of nonlinear electromechanical systems},
   journal = {Meccanica},
   year    = {2022},
   volume  = {57},
   pages   = {2679-2697},
   doi     = {10.1007/s11012-022-01542-4},
}
@Inbook{Avanço2022bookchap,
author    = {Avan{\c{c}}o, Rafael Henrique and Zanella, Danilo Antonio and Cunha, Americo and Tusset, Angelo Marcelo and Balthazar, Jose Manoel},
editor    = {Balthazar, Jose Manoel},
title     = "{A Tutorial on the Simplification of Electromechanical Dynamic Models}",
bookTitle = {Nonlinear Vibrations Excited by Limited Power Sources},
year      = {2022},
publisher = {Springer International Publishing},
address   = {Cham},
pages.    = {3--14},
doi       = {10.1007/978-3-030-96603-4_1},
}

License

ElectroM is released under the MIT license. See the LICENSE file for details. All new contributions must be made under the MIT license.

Institutional support

               

Funding

       

electrom's People

Contributors

americocunhajr avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  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.