Metadata-Version: 2.5
Name: sdypy-FRF
Version: 0.3.0
Summary: Frequency response function as used in structural dynamics.
Project-URL: Homepage, https://github.com/sdypy/sdypy-FRF
Project-URL: Documentation, https://pyfrf.readthedocs.io/en/latest/index.html
Project-URL: Source, https://github.com/sdypy/sdypy-FRF
Author-email: "Janko Slavič et al." <janko.slavic@fs.uni-lj.si>
Maintainer-email: "Janko Slavič et al." <janko.slavic@fs.uni-lj.si>
License: MIT
Keywords: Frequency response function,MIMO,SIMO/MISO,SISO,structural dynamics
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Scientific/Engineering
Requires-Python: >=3.10
Requires-Dist: pyfrf>=1.5
Provides-Extra: dev
Requires-Dist: build; extra == 'dev'
Requires-Dist: flake8; extra == 'dev'
Requires-Dist: pydata-sphinx-theme; extra == 'dev'
Requires-Dist: pytest; extra == 'dev'
Requires-Dist: sphinx; extra == 'dev'
Requires-Dist: sphinx-copybutton>=0.5.2; extra == 'dev'
Requires-Dist: twine; extra == 'dev'
Requires-Dist: wheel; extra == 'dev'
Provides-Extra: docs
Requires-Dist: pydata-sphinx-theme; extra == 'docs'
Requires-Dist: sphinx; extra == 'docs'
Requires-Dist: sphinx-copybutton>=0.5.2; extra == 'docs'
Description-Content-Type: text/x-rst

sdypy-FRF
=========

Frequency response function as used in structural dynamics.
-----------------------------------------------------------

The ``sdypy-FRF`` is a namespace project of the ``sdypy`` framework and is a direct link
to the ``pyFRF`` package (developed at `pyFRF <https://github.com/ladisk/pyFRF>`_).

Use the ``sdypy`` package to conveniently access the functionality of the
`pyFRF <https://github.com/ladisk/pyFRF>`_ package through its namespace (see example below). 

Other functionalities of the ``sdypy`` framework include:

- `sdypy-EMA <https://github.com/sdypy/sdypy-EMA>`_: Experimental Modal Analysis
- `sdypy-io <https://github.com/sdypy/sdypy-io>`_: Input/Output operations (LVM files, UFF files)
- `sdypy-excitation <https://github.com/sdypy/sdypy-excitation>`_: Excitation signals as used in structural dynamics and vibration fatigue


For more information check out the showcase examples and see documentation_.

Basic ``sdypy-FRF`` usage:
--------------------------

Import the module:
~~~~~~~~~~~~~~~~~~~

.. code:: python

    from sdypy import FRF

Make an instance of ``FRF`` class:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. code:: python

    a = FRF.FRF(
        sampling_freq,
        exc=None,
        resp=None,
        exc_type='f', resp_type='a',
        window='none',
        weighting='linear',
        fft_len=None,
        nperseg=None,
        noverlap=None,
        archive_time_data=False,
        frf_estimator='H1',
        copy=True
    )

Adding data:
~~~~~~~~~~~~
We can add the excitation and response data at the beginning through ``exc`` and ``resp`` arguments, otherwise, the excitation and response 
data can be added later via ``add_data()`` method:

.. code:: python

    a.add_data(exc, resp)

Computing FRF:
~~~~~~~~~~~~~~
The preferable way to get the frequency response functions is via ``get_FRF()`` method:

.. code:: python

    frf = a.get_FRF(frf_estimator="default", frf_form="receptance")

We can also directly get the requested FRF via other methods: ``get_H1()``, ``get_H2()``, ``get_Hv()`` and, ``get_ods_frf()``:

.. code:: python

    H1 = a.get_H1()
    H2 = a.get_H2()
    Hv = a.get_Hv()
    ods_frf = a.get_ods_frf()

.. _documentation: https://pyfrf.readthedocs.io/en/latest/

|pytest|

.. |pytest| image:: https://github.com/sdypy/sdypy-FRF/actions/workflows/python-package.yml/badge.svg
    :target: https://github.com/sdypy/sdypy-FRF/actions

