pyOMA.core.SSIData.SSIData#

class pyOMA.core.SSIData.SSIData(*args, **kwargs)[source]#

Bases: SSIDataMC

__init__(*args, **kwargs)#

channel definition: channels start at 0

Methods

__init__(*args, **kwargs)

channel definition: channels start at 0

build_block_hankel([num_block_rows, ...])

Builds a Block-Hankel Matrix of the measured time series with varying time lags and estimates the subspace matrix from its LQ decomposition.

compute_modal_params(max_model_order)

Perform a multi-order computation of modal parameters.

estimate_state(order[, max_modes, algo])

Compute the state matrix A and output matrix C from the singular values and vectors of the projection matrix, truncated at the requested order.

init_from_config(conf_file, prep_signals)

A method for initializing a modal object from configuration data bypassing common operations in explicit code for semi-automated analyses

integrate_quantities(vector, accel_channels, ...)

Rescales mode shapes from modal accelerations / velocities to modal displacements, by multiplication of the relevant modal coordinates (where accelerometers, or velocimeters were used, with $-1 omega^2$ or $i omega$, respectively,

load_state(fname, prep_signals)

Loads the state of the object from a compressed numpy archive file and returns the object This is only a stub for reimplementing the method in a derived class

modal_analysis(A, C[, rescale_fun])

Computes the modal parameters from a given state space model as described by Peeters 1999 and Döhler 2012.

remove_conjugates(eigval[, eigvec_r, ...])

This method finds complex conjugate modes, and removes unstable and overdamped poles.

rescale_mode_shape(modeshape[, rotate_only])

Rescales and rotates modeshapes in the complex plane.

save_state(fname)

Saves the state of the object to a compressed numpy archive file This is only a stub for reimplementing the method in a derived class

synthesize_signals(A, C, Q, R, S[, j])

Computes the modal response signals and the contribution of each mode.

compute_modal_params(max_model_order)[source]#

Perform a multi-order computation of modal parameters. Successively calls

  • estimate_state(order,)

  • modal_analysis(A,C)

at ascending model orders, up to max_model_order. See the explanations in the the respective methods, for a detailed explanation of parameters.

Parameters:

max_model_order (integer, optional) – Maximum model order, where to interrupt the algorithm. If not given, it is determined from the previously computed subspace matrix.

estimate_state(order, max_modes=None, algo='svd')[source]#

Compute the state matrix A and output matrix C from the singular values and vectors of the projection matrix, truncated at the requested order. Estimation of the state matrix can be performed by QR decomposition or Singular Value decomposition of the shifted observability matrix. If max_modes is specified, the singular value decomposition is truncated additionally, also known as Crystal Clear SSI.

Parameters:
  • order (integer, required) – Model order, at which the state matrices should be estimated

  • max_modes (integer, optional) – Maximum number of modes, that are known to be present in the signal, to suppress noise modes

  • algo (str, optional) – Algorithm to use for estimation of A. Either ‘svd’ or ‘qr’.

Returns:

  • A (numpy.ndarray) – State matrix: Array of shape (order, order)

  • C (numpy.ndarray) – Output matrix: Array of shape (num_analised_channels, order)