How to update MIMO Transfer Function from "tfest" with new data

5 visualizzazioni (ultimi 30 giorni)
How do I update my MIMO transfer function with new data? I have an existing transfer function created with "tfest" and I don't want to create a new transfer function by concatenating the data.

Risposta accettata

MathWorks Support Team
MathWorks Support Team il 24 Lug 2019
MathWorks defines MIMO transfer functions as either a concatenation of SISO transfer functions, or a cell array of SISO transfer functions:
Assuming you have the input and output for each pair of input and output ports for this system, you can create new transfer functions with "tfest" using the old transfer function as an initialization point. The "init_sys" input parameter for the "tfest" function will accept idtf models, such as existing transfer functions:
You can create a loop to update each SISO transfer function individually using this method to update your previously trained "tfest" model with new training data for offline estimation.

Più risposte (1)

Rajiv Singh
Rajiv Singh il 29 Lug 2019
Well, MIMO transfer function can't be split into a collection of SISO models for identification using input/output signals. You can perform one-output-at-a-time identification and concatenate results later, but inputs can't be split (unless you have a diagonal system where input-output relationships are decoupled).
That said, tfest can indeed work with MIMO transfer functions directly, no need to split anything. As said before, the syntax is new_model = tfest(data, old_model). This will update the free coefficients of old_model and return the result in new_model.

Prodotti


Release

R2019a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by