SimulationMetaData manipulation in Simulink

8 次查看(过去 30 天)
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 个评论
Gayathri
Gayathri 2025-6-6
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.

请先登录,再进行评论。

采纳的回答

Sameer
Sameer 2025-7-4
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 个评论
Isaac De La Cruz
Isaac De La Cruz 2025-7-4
编辑:Isaac De La Cruz 2025-7-4
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!

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 General Applications 的更多信息

产品


版本

R2022b

Community Treasure Hunt

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

Start Hunting!

Translated by