Metadata-Version: 2.1
Name: pyOMA_2
Version: 1.1.2
Summary: Python module for conducting Operational Modal Analysis
Author-Email: Dag Pasca <dpa@treteknisk.no>, Angelo Aloisio <angelo.aloisio1@univaq.it>, Marco Martino Rosso <marco.rosso@polito.it>, Diego Federico Margoni <diegofederico.margoni@studenti.polito.it>
License: MIT
Project-URL: Homepage, https://github.com/dagghe/pyOMA2
Project-URL: Documentation, https://pyoma.readthedocs.io/en/main/
Project-URL: Repository, https://github.com/dagghe/pyOMA2
Project-URL: Changelog, https://github.com/dagghe/pyOMA2/blob/main/CHANGELOG.md
Project-URL: Contributing, https://github.com/dagghe/pyOMA2/blob/main/CONTRIBUTING.md
Requires-Python: <3.13,>=3.8
Requires-Dist: numpy<1.25,>=1.20; python_version < "3.9"
Requires-Dist: numpy>=1.25; python_version >= "3.9"
Requires-Dist: pandas>=2.0.3
Requires-Dist: scipy>=1.9.3
Requires-Dist: pydantic>=2.5.1
Requires-Dist: tqdm>=4.66.1
Requires-Dist: matplotlib>=3.7.4
Provides-Extra: pyvista
Requires-Dist: pyvista[all]; extra == "pyvista"
Requires-Dist: pyvistaqt; extra == "pyvista"
Requires-Dist: PyQt5==5.15.10; extra == "pyvista"
Requires-Dist: PyQt5-Qt5==5.15.2; sys_platform != "darwin" and extra == "pyvista"
Requires-Dist: PyQt5-Qt5==5.15.14; sys_platform == "darwin" and extra == "pyvista"
Requires-Dist: PyQt5-sip==12.15.0; extra == "pyvista"
Requires-Dist: vtk==9.3.1; (python_version != "3.8" or sys_platform != "darwin") and extra == "pyvista"
Provides-Extra: openpyxl
Requires-Dist: openpyxl>=3.1.3; extra == "openpyxl"
Description-Content-Type: text/markdown

# pyOMA2
![pyoma2_logo_v2_COMPACT](https://github.com/dagghe/pyOMA2/assets/64746269/aa19bc05-d452-4749-a404-b702e6fe685d)

[![python](https://img.shields.io/badge/python-3.8%20%7C%203.9%20%7C%203.10%20%7C%203.11%20%7C%203.12-blue.svg?style=flat&logo=python&logoColor=white)](https://www.python.org)
[![pre-commit](https://img.shields.io/badge/pre--commit-enabled-brightgreen?logo=pre-commit&logoColor=white)](https://github.com/pre-commit/pre-commit)
[![Test Pyoma2](https://github.com/dagghe/pyOMA2/actions/workflows/main.yml/badge.svg?branch=main&event=push)](https://github.com/dagghe/pyOMA2/actions/workflows/main.yml)
![downloads](https://img.shields.io/pepy/dt/pyOMA-2)
[![docs](https://readthedocs.org/projects/pyoma/badge/?version=main)](https://pyoma.readthedocs.io/en/main/)
_______________________

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.
Since version 1.0.1, the uncertainty bounds of the modal properties can also be estimated for the SSI family of algorithms.

## Documentation

You can check the documentation at the following link:

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

## Quick start

Install the library with pip:

```shell
pip install pyOMA-2
```

or with conda/mamba:

```shell
conda 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:

- [Example1 - Getting started.ipynb](Examples/Example1.ipynb)
- [Example2 - Real dataset.ipynb](Examples/Example2.ipynb)
- [Example3 - Multisetup PoSER.ipynb](Examples/Example3.ipynb)
- [Example4 - MultiSetup PreGER.ipynb](Examples/Example4.ipynb)
____

# Schematic organisation of the module showing inheritance between classes.

![](docs/img/info.svg "")

____
