mdof.realize module#

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

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

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#

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

System realization from Markov parameters (discrete impulse response data). Ho-Kalman / Eigensystem Realization Algorithm (ERA) [2] [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)\)

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) [4].

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#