23.06.2015 Views

MATLAB Programming

MATLAB Programming

MATLAB Programming

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>MATLAB</strong> Path<br />

If you then run the script, using run path/script, you will have created<br />

the handles that you need.<br />

For example,<br />

1 Create a script in this off-path directory that constructs function handles<br />

and assigns them to variables. That script might look something like this:<br />

File E:/testdir/createFhandles.m<br />

fhset = @setItems<br />

fhsort = @sortItems<br />

fhdel = @deleteItem<br />

2 Run the script from your current directory to create the function handles:<br />

run E:/testdir/createFhandles<br />

3 You can now execute one of the functions by means of its handle.<br />

fhset(item, value)<br />

Making Toolbox File Changes Visible to <strong>MATLAB</strong><br />

Unlike functions in user-supplied directories, M-files (and MEX-files) in the<br />

matlabroot/toolbox directories are not time-stamp checked, so <strong>MATLAB</strong><br />

does not automatically see changes to them. If you modify one of these<br />

files, and then rerun it, you may find that the behavior does not reflect the<br />

changes that you made. This is most likely because <strong>MATLAB</strong> is still using the<br />

previously loaded version of the file.<br />

To force <strong>MATLAB</strong> to reload a function from disk, you need to explicitly clear<br />

the function from memory using clear functionname. Note that there are<br />

rare cases where clear will not have the desired effect, (for example, if the<br />

file is locked, or if it is a class constructor and objects of the given class exist<br />

in memory).<br />

Similarly, <strong>MATLAB</strong> does not automatically detect the presence of new files<br />

in matlabroot/toolbox directories. If you add (or remove) files from these<br />

directories, use rehash toolbox to force <strong>MATLAB</strong> to see your changes. Note<br />

that if you use the <strong>MATLAB</strong> Editor to create files, these steps are unnecessary,<br />

as the Editor automatically informs <strong>MATLAB</strong> of such changes.<br />

12-37

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!