Calling .mat file into function

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

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
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');

Asked:

on 8 Dec 2014

Answered:

on 21 Mar 2020

Community Treasure Hunt

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

Start Hunting!