How to update MIMO Transfer Function from "tfest" with new data
10 views (last 30 days)
Show older comments
MathWorks Support Team
on 24 Jul 2019
Edited: MathWorks Support Team
on 29 Aug 2024
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.
Accepted Answer
MathWorks Support Team
on 29 Jul 2024
Edited: MathWorks Support Team
on 29 Aug 2024
MathWorks defines MIMO transfer functions as either a concatenation of SISO transfer functions, or a cell array of SISO transfer functions, as mentioned in the documentation.
Please run the below command in the command window of installed MATLAB R2019a version to get release specific documentation
>> web(fullfile(docroot, 'control/ug/mimo-transfer-function-models.html'))
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.
Please run the below command in the command window of installed MATLAB R2019a version to get release specific documentation about "tfest":
>> web(fullfile(docroot, 'ident/ref/tfest.html'))
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.
Please follow the below link to search for the required information regarding the current release:
0 Comments
More Answers (1)
Rajiv Singh
on 29 Jul 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.
0 Comments
See Also
Categories
Find more on Transfer Function Models in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!