pyOMA.core.StabilDiagram.StabilCalc#

class pyOMA.core.StabilDiagram.StabilCalc(modal_data, prep_signals=None, **kwargs)[source]#

Bases: object

Stabilisation diagram computation and pole selection.

Computes stabilisation masks by comparing modal parameters between successive model orders, applies physical criteria (frequency, damping, MPC, MPD, MAC), and manages pole selection for export. Optionally delegates automatic clearing and clustering to StabilCluster.

Parameters:
  • modal_data (ModalBase) – Any pyOMA system-identification result object (must be a subclass of ModalBase).

  • prep_signals (PreProcessSignals, optional) – Deprecated — ignored; modal_data.prep_signals is used instead.

  • TODO:: (..) –

    • scale markers right on every platform

    • frequency range as argument or from ssi params, sampling freq

    • add switch to choose between “unstable only in …” or “stable in …”

    • distinguish between stabilization criteria and filtering criteria

    • rework mask logic (currently it is very difficult to understand)

    • Merge DataCursor and JupyterGUI.SnappingCursor

__init__(modal_data, prep_signals=None, **kwargs)[source]#

Methods

__init__(modal_data[, prep_signals])

add_callback(name, func)

add_mode(mode_ind)

calculate_soft_critera_matrices()

calculate_stabilization_masks([criteria])

Compute all stabilization masks from scratch.

export_results(fname[, binary])

get_frequencies()

get_max_f()

get_modal_values(i)

get_mode_shape(i)

get_selected_modal_values()

get_stabilization_mask(name)

load_state(fname, modal_data)

remove_mode(mode_ind)

save_state(fname)

update_stabilization_masks([criteria])

Update the stabilization masks with new threshold values.

calculate_stabilization_masks(criteria=None, **kwargs)[source]#

Compute all stabilization masks from scratch.

Parameters:
  • criteria (StabCriteria, optional) – Threshold bundle. Pass this or the individual keyword arguments below (old call style, deprecated).

  • **kwargs (optional) – Individual threshold values (deprecated — use criteria instead). Accepted keys: order_range, d_range, stdf_max, stdd_max, mpc_min, mpd_max, mtn_min, df_max, dd_max, dmac_max, dev_min, dmtn_min, MC_min.

get_frequencies()[source]#
Returns:

frequencies – Identified frequencies of all currently selected modes.

Return type:

list

get_selected_modal_values()[source]#
Returns:

frequencies – Identified frequencies of all currently selected modes.

Return type:

list

update_stabilization_masks(criteria=None, **kwargs)[source]#

Update the stabilization masks with new threshold values.

Parameters:
  • criteria (StabCriteria, optional) – Threshold bundle. Pass this or the individual keyword arguments below (old call style, deprecated).

  • **kwargs (optional) – Individual threshold values (deprecated — use criteria instead). Accepted keys: order_range, d_range, stdf_max, stdd_max, mpc_min, mpd_max, mtn_min, df_max, dd_max, dmac_max, dev_min, dmtn_min, MC_min.