mdof.realize module#

mdof.realize.era(Y, **options)#

System realization from Markov parameters (discrete impulse response data). Ho-Kalman / Eigensystem Realization Algorithm (ERA) [1] [2].

Parameters:
  • Y (array) – Markov parameters. dimensions: \((p,q,nt)\), where \(p\) = number of outputs, \(q\) = number of inputs, and \(nt\) = number of Markov parameters.

  • horizon (int, optional) – number of block rows in Hankel matrix = order of observability matrix. default: \(min(150, (nt-1)/2)\)

  • nc (int, optional) – number of block columns in Hankel matrix = order of controllability matrix. default: \(min(150, max(nt-1-\) horizon\(, (nt-1)/2))\)

  • order (int, optional) – model order. default: \(min(20,\) horizon\(/2)\)

Returns:

realization in the form of state space coefficients (A,B,C,D)

Return type:

tuple of arrays

References#

mdof.realize.era_dc(Y, **options)#

System realization from Markov parameters (discrete impulse response data). Eigensystem Realization Algorithm with Data Correlations (ERA/DC) [3].

Parameters:
  • Y (array) – Markov parameters. dimensions: \((p,q,nt)\), where \(p\) = number of outputs, \(q\) = number of inputs, and \(nt\) = number of Markov parameters.

  • horizon (int, optional) – number of block rows in Hankel matrix = order of observability matrix. default: \(min(150, (nt-1)/2)\)

  • nc (int, optional) – number of block columns in Hankel matrix = order of controllability matrix. default: \(min(150, max(nt-1-\) horizon\(, (nt-1)/2))\)

  • order (int, optional) – model order. default: \(min(20,\) horizon\(/2)\)

  • a (int, optional) – \((\alpha)\) number of block rows in Hankel of correlation matrix. default: 0

  • b (int, optional) – \((\beta)\) number of block columns in Hankel of correlation matrix. default: 0

  • l (int, optional) – initial lag for data correlations. default: 0

  • g (int, optional) – lags (gap) between correlation matrices. default: 1

Returns:

realization in the form of state space coefficients (A,B,C,D)

Return type:

tuple of arrays

References#

mdof.realize.srim(inputs, outputs, **options)#

System realization from input and output data, with output error minimization method. System Realization Using Information Matrix (SRIM) [4].

Parameters:
  • inputs (array) – input time history. dimensions: \((q,nt)\), where \(q\) = number of inputs, and \(nt\) = number of timesteps

  • outputs (array) – output response history. dimensions: \((p,nt)\), where \(p\) = number of outputs, and \(nt\) = number of timesteps

  • horizon (int, optional) – number of steps used for identification (prediction horizon). default: \(min(300, nt)\)

  • order (int, optional) – model order. default: \(min(20,\) horizon\(/2)\)

  • full (bool, optional) – if True, full SVD. default: True

  • find (string, optional) – “ABCD” or “AC”. default: “ABCD”

  • threads (int, optional) – number of threads used during the output error minimization method. default: 6

  • chunk (int, optional) – chunk size in output error minimization method. default: 200

Returns:

realization in the form of state space coefficients (A,B,C,D)

Return type:

tuple of arrays

References#