Matlab Function block(Creaed from Simulink) calling an .m script
3 次查看(过去 30 天)
显示 更早的评论
Hi,
I m trying to call a .m file from my function block so that I dont initialize the variables each time. But I get an error "This text contains non-empty top-level expressions" and it looks like a script error when I am trying to run the script. My Initialize script just contains only a line a=10; What am I doing wrong? :)
0 个评论
回答(2 个)
Zenin Easa Panthakkalakath
2018-9-25
编辑:Zenin Easa Panthakkalakath
2018-9-25
There is an easier way to write a few lines of code that needs to be run before the simulation starts. Go to Model Properties > Callbacks > InitFcn and type in your code there.
Have a look at the documentation on Model Callbacks to execute scripts at specified action points: https://www.mathworks.com/help/simulink/ug/model-callbacks.html
0 个评论
Oscar Julian Gonzalez Villarreal
2019-12-12
That solution is horrendous.
Just imagine the simplest of the scenarios where you had your code in command line using ode45 with scripts like this for a normal vehicule calculating equations of motion. This is the simplest example, and yet you cannot even apply this.
The hell with this. I am going back to ode45. Absolute garbage. 0 points to simulink.
Define_Parameters; %Script with all inertas, masses, etc
Calculate_Equations_Of_Motions; %Script calculating the equations of motion
Calculate_Kinematic_Equations; %Script calculating kinematic dynamics
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!