The run_params module
These classes are were the parameters used to run the analyses are stored.
Warning
The module is designed to be used as part of the pyOMA2 package and relies on its internal data structures and algorithms.
This module provides classes for storing run parameters for various modal analysis algorithms included in the pyOMA2 module.
- class pyoma2.algorithms.data.run_params.BaseRunParams[source]
Bases:
BaseModelBase class for storing run parameters for modal analysis algorithms.
- class pyoma2.algorithms.data.run_params.EFDDRunParams(*, nxseg: int = 1024, method_SD: Literal['per', 'cor'] = 'per', pov: float = 0.5, sel_freq: ndarray[tuple[Any, ...], dtype[float64]] | None = None, DF1: float = 0.1, DF2: float = 1.0, cm: int = 1, MAClim: float = 0.95, sppk: int = 3, npmax: int = 20)[source]
Bases:
BaseRunParamsClass for storing Enhanced Frequency Domain Decomposition (EFDD) run parameters.
- method_SD
Method used for spectral density estimation, default is “per”.
- Type:
str, optional [“per”, “cor”]
- sel_freq
Array of selected frequencies for modal parameter estimation,.
- Type:
numpy.ndarray
Notes
sel_freq, DF1, DF2, cm, MAClim, sppk and npmax are used in the
mpemethod.
- class pyoma2.algorithms.data.run_params.FDDRunParams(*, nxseg: int = 1024, method_SD: Literal['per', 'cor'] = 'per', pov: float = 0.5, sel_freq: ndarray[tuple[Any, ...], dtype[float64]] | None = None, DF: float = 0.1)[source]
Bases:
BaseRunParamsClass for storing Frequency Domain Decomposition (FDD) run parameters.
- method_SD
Method used for spectral density estimation, default is “per”.
- Type:
str, optional [“per”, “cor”]
- sel_freq
Array of selected frequencies for modal parameter estimation,.
- Type:
numpy.ndarray
Notes
sel_freq and DF are used in the
mpemethod.
- class pyoma2.algorithms.data.run_params.SSIRunParams(*, br: int = 20, method: str = None, ref_ind: List[int] | None = None, ordmin: int = 0, ordmax: int | None = None, step: int = 1, sc: SCDictType = {'err_fn': 0.05, 'err_phi': 0.05, 'err_xi': 0.05}, hc: HCDictType = {'CoV_max': 0.05, 'mpc_lim': 0.5, 'mpd_lim': 0.5, 'xi_max': 0.1}, calc_unc: bool = False, nb: int = 50, sel_freq: List[float] | None = None, order_in: int | List[int] | str = 'find_min', rtol: float = 0.05)[source]
Bases:
BaseRunParamsParameters for the Stochastic Subspace Identification (SSI) method.
- method_hank
Method used in the SSI algorithm. Options are [‘data’, ‘cov’, ‘cov_R’]. Default is None.
- Type:
str or None, optional
- ref_ind
List of reference indices used for subspace identification. Default is None.
- sc
Soft criteria for the SSI analysis, including thresholds for relative frequency difference (err_fn), damping ratio difference (err_xi), and Modal Assurance Criterion (err_phi). Default values are {‘err_fn’: 0.01, ‘err_xi’: 0.05, ‘err_phi’: 0.03}.
- Type:
dict, optional
- hc
Hard criteria for the SSI analysis, including settings for presence of complex conjugates (conj), maximum damping ratio (xi_max), Modal Phase Collinearity (mpc_lim), and Mean Phase Deviation (mpd_lim) and maximum covariance (cov_max). Default values are {‘conj’: True, ‘xi_max’: 0.1, ‘mpc_lim’: 0.7, ‘mpd_lim’: 0.3, ‘cov_max’: 0.2}.
- Type:
dict, optional
- nb
Number of bootstrap samples to use for uncertainty calculations (default is 100).
- Type:
int, optional
- sel_freq
List of selected frequencies for modal parameter extraction. Default is None.
- order_in
Specified model order(s) for which the modal parameters are to be extracted. If ‘find_min’, the function attempts to find the minimum model order that provides stable poles for each mode of interest.
- rtol
Relative tolerance for comparing identified frequencies with the selected ones. Default is 5e-2.
- Type:
float, optional
Notes
sel_freq, order_in, and rtol are used in the
mpemethod to extract modal parameters.
- class pyoma2.algorithms.data.run_params.pLSCFRunParams(*, ordmax: int, ordmin: int = 0, nxseg: int = 1024, method_SD: Literal['per', 'cor'] = 'per', pov: float = 0.5, sc: SCDictType = {'err_fn': 0.05, 'err_phi': 0.05, 'err_xi': 0.05}, hc: HCDictType = {'mpc_lim': 0.7, 'mpd_lim': 0.3, 'xi_max': 0.1}, sel_freq: List[float] | None = None, order_in: int | List[int] | str = 'find_min', rtol: float = 0.05)[source]
Bases:
BaseRunParamsParameters for the poly-reference Least Square Complex Frequency (pLSCF) method.
- nxseg
Number of segments for the Power Spectral Density (PSD) estimation. Default is 1024.
- Type:
int, optional
- method_SD
Method used for spectral density estimation. Options are [‘per’, ‘cor’]. Default is ‘per’.
- Type:
str, optional
- pov
Percentage of overlap between segments for PSD estimation (only applicable for ‘per’ method). Default is 0.5.
- Type:
float, optional
- sc
Soft criteria for the SSI analysis, including thresholds for relative frequency difference (err_fn), damping ratio difference (err_xi), and Modal Assurance Criterion (err_phi). Default values are {‘err_fn’: 0.01, ‘err_xi’: 0.05, ‘err_phi’: 0.03}.
- Type:
dict, optional
- hc
Hard criteria for the SSI analysis, including settings for presence of complex conjugates (conj), maximum damping ratio (xi_max), Modal Phase Collinearity (mpc_lim), and Mean Phase Deviation (mpd_lim) and maximum covariance (cov_max). Default values are {‘conj’: True, ‘xi_max’: 0.1, ‘mpc_lim’: 0.7, ‘mpd_lim’: 0.3, ‘cov_max’: 0.2}.
- Type:
dict, optional
- sel_freq
List of selected frequencies for modal parameter extraction. Default is None.
- order_in
Specified model order for extraction. Can be an integer or ‘find_min’. Default is ‘find_min’.
- rtol
Relative tolerance for comparing identified frequencies with the selected ones. Default is 1e-2.
- Type:
float, optional
Notes
sel_freq, order_in, deltaf, and rtol are used in the
mpemethod to extract modal parameters.