SimulationMetaData manipulation in Simulink

7 visualizzazioni (ultimi 30 giorni)
Hello,
I am looking to manipulate the SimulationMetaData property from Simulink.SimulationOutput object.
I am interested in expanding the UserData property to add custom data.
Tried the PostSimFcn property by registering a callback that modifies the output object, and works fine, but when enabling LoggingToFile option on model settings, the modification is not preserved in the *mat file.
At the end, I would like my output mat file containing simulink results (logsout, yout, etc) and SimulationMetaData containing the modifications made.
Any suggestions?
  1 Commento
Gayathri
Gayathri il 6 Giu 2025
Can you elaborate more on what function and method you are using. I am asking as when I tried to modify the "UserData" property using "PostSimFcn", I am getting the below error.
Error executing 'PostSimFcn' on SimulationInput object.
Caused by:
Error using postsim
Setting the 'SimulationMetadata' property of class 'Simulink.SimulationOutput' is not supported.

Accedi per commentare.

Risposta accettata

Sameer
Sameer il 4 Lug 2025
When "Logging to File" is enabled in Simulink, simulation results are written to the MAT file before any modifications made by "PostSimFcn" are applied. As a result, custom data added in "PostSimFcn" does not appear in the saved file.
As a workaround you can attach custom data after the simulation and then save.
Here's how you can do it:
out = sim(mdl, 'LoggingToFile','on', 'LoggingFileName','out.mat', ...);
out = setUserData(out,myCustomData); % attach your data
save('out_with_metadata.mat','out'); % save combined data+metadata
Hope this helps!
  1 Commento
Isaac De La Cruz
Isaac De La Cruz il 4 Lug 2025
Modificato: Isaac De La Cruz il 4 Lug 2025
Hello @Sameer,
Alright! I thought that when the 'LoggingToFile' option is enabled it included also the changes made to the Simulink's output.
Thanks for the clear explanation!

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su General Applications in Help Center e File Exchange

Prodotti


Release

R2022b

Community Treasure Hunt

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

Start Hunting!

Translated by