Calling .mat file into function

40 views (last 30 days)
fatema saba
fatema saba on 8 Dec 2014
Answered: Pablo Díez on 21 Mar 2020
Hi I have a question about calling contents of a .mat file into function. for example you save some matrices into .mat file and now you want to calling them into function.
How can do it please?

Answers (2)

Geoff Hayes
Geoff Hayes on 9 Dec 2014
Edited: Geoff Hayes on 9 Dec 2014
Fatema - see the load function for details on loading a mat file.
  2 Comments
fatema saba
fatema saba on 9 Dec 2014
Thank you, I have done that I have loaded('test.mat')like that:
function base=MyBase()
load('test.mat')
evalin('base','variable')
%my code
but for handling this function it is needed to load my .mat file from command window before. I want that I can handle or run my function without loading mat file from command window before that. thank you
Geoff Hayes
Geoff Hayes on 9 Dec 2014
Fatema - I don't understand what you mean by it is needed to load my .mat file from command window before. Why not assign, in your function, the result of the load to a structure as
data = load('test.mat');
And, what is the purpose of the evalin call?

Sign in to comment.


Pablo Díez
Pablo Díez on 21 Mar 2020
You can extract the variable which you want from the model workspace doing the following in a Matlab Function block:
coder.extrinsic('get_param','getVariable');
mdlWks = get_param('your_model.slx','ModelWorkspace');
variable= getVariable(mdlWks,'variable_name');

Categories

Find more on Manage Design Data in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!