dagghe / pyOMA2

Python module for conducting operational modal analysis
MIT License
14 stars 4 forks source link
operational-modal-analysis structural-dynamics

pyOMA2

pyoma2_logo_v2_COMPACT

python pre-commit Test Pyoma2 downloads docs


This is the new and updated version of pyOMA module, a Python module designed for conducting operational modal analysis. With this update, we've transformed pyOMA from a basic collection of functions into a more sophisticated module that fully leverages the capabilities of Python classes.

The module now supports analysis of both single and multi-setup data measurements, which includes handling multiple acquisitions with a mix of reference and roving sensors. We've also introduced interactive plots, allowing users to select desired modes for extraction directly from the plots generated by the algorithms. Additionally, a new feature enables users to define the geometry of the structures being tested, facilitating the visualization of mode shapes after modal results are obtained. The underlying functions of these classes have been rigorously revised, resulting in significant enhancements and optimizations.

03/09/2024: We have introduced uncertainty calculations for the SSIcov algorithm. Currently, this feature is supported only by the "cov_mm" method and provides covariances for natural frequencies and damping ratios only. We are actively working to extend this functionality to include uncertainties in mode shapes, and to make it available for the "cov_R" method and the SSIdat class (contributions from the community are welcome). Please note that these calculations can significantly increase computation time due to the extensive operations required on large matrices.

Documentation

You can check the documentation at the following link:

https://pyoma.readthedocs.io/en/main/

Quick start

Install the library

pip install pyOMA-2

You'll probably need to install tk for the GUI on your system, here some instructions:

Windows:

https://www.pythonguis.com/installation/install-tkinter-windows/

Linux:

https://www.pythonguis.com/installation/install-tkinter-linux/

Mac:

https://www.pythonguis.com/installation/install-tkinter-mac/


Examples

To see how the module works please take a look at the jupyter notebook provided:

Schematic organisation of the module showing inheritance between classes.