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
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
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!
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 General Applications 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!