MATLAB Answers

How to remove Sfunction from memory

17 views (last 30 days)
Hello everyone,
I have a level 2 sfunction in Simulink that calls a FORTRAN based simulation. That FORTRAN simulation writes an output file. What I have always struggled with is the inability to access the output file even after the simulation has been killed using the "close_system 'simulink_mdl_name' ,0" command. It also seems apparrent that the Sfunction hangs on in memory even though the workspace memory is clear. This is particularly bothersome when attempting to call the simulink model in a batch mode.
Is there a way to "flush" the sfunction from memory completely?
Thanks,
Pat Sullivan
  1 Comment
Patrick Sullivan
Patrick Sullivan on 26 Feb 2015
Additionally, I don't want to shut down the Matlab session in order to release the grip on the sfunction and output files.
V/r,
Pat Sullivan

Sign in to comment.

Accepted Answer

Jason Moore
Jason Moore on 26 Feb 2015
The clear command should accomplish what you are looking for. If you call the following:
>>clear mex
This will clear all mex items. You can also provide the name of the specific mex function. There are additional clear commands that clear all of a certain object type such as classes and functions. See the following documentation for all of the details
  1 Comment
Patrick Sullivan
Patrick Sullivan on 26 Feb 2015
Jason,
I was wondering if that would do it....thanks.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!