MATLAB: Is simulink model called with an invalid flag

MATLAB

I made a simulink model with four variables in it.
The code
var1 = 0.14
var2 = 0.35
var3 = 1000000
var4 = 1000
I = sim('modelname.slx')
works properly, but when I wrap this up in the function like
function I = mdlname(var1, var2, var3, var4)
I = sim('modelname.slx')
end
mdlname(0.14, 0.35, 1000000, 1000)
It says that the model was called with an invalid flag.
Why is this happening?

Best Answer

Hello Seunguk,
If you call a function, you need to use variables in the function workspace.
ret = mdlname(0.14, 0.35, 1000000, 1000);
function I = mdlname(var1, var2, var3, var4) %#ok<INUSD>
I = sim('modelname.slx','SrcWorkspace','current');
end
document : Input Arguments section of sim.
Regards,
stozaki
Related Question