External changes in script files not updated when run

I have experienced an undesired behavior when a MATLAB script "function.m" calls a different script "parameter_file.m" which is edited between calls: 
If a value in the "parameter_file.m" file is edited in MATLAB, then the changed value will be used when running the "script.m" the next time. 
However, if a different text editor is used (outside of MATLAB) to change the file, then MATLAB loads the previous version with the old value for "my_parameter". 
How can this be adapted, so that always the current version is interpreted? 
You can test the behavior by running the attached script.m file and changing the value in the "parameter_file.m" file from within and outside of MATLAB. 

 Accepted Answer

This is due to the way the "run" function caches files. From the documentation for the "run" function:
If a script is not on the MATLAB path, executing the run command caches the script. In the same session and after calling run, you can edit the script using an external editor. Call clear scriptname before calling run again to use the changed version of the script rather than the cached version. If you edit the script with the MATLAB editor, run executes the changed version and there is no need to call clear scriptname.
Please run the following command in the command window of MATLAB R2020a to access the release-specific documentation:
>> web(fullfile(docroot, 'matlab/ref/run.html'))
The specific workaround to the attached script is to put this code on the first line of "script.m":
>> clear parameter_file
Please follow the below link to search for the required information regarding the current release:

More Answers (0)

Categories

Products

Release

R2016a

Tags

No tags entered yet.

Community Treasure Hunt

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

Start Hunting!