Calling function from within embedded matlab function

1 view (last 30 days)
I was wondering if someone could help me with a very basic question about matlab programming (I have spent too much time trying to find the answer online with no luck). I have an embedded matlab function I am calling from simulink. Within that function I want to call another function (just trying to modularize the code a little). I can't nest the function within a function as I get an error so I tried to put the function definition after my "end" to the original function (i.e. in the same file), but I get function undefined. Does matlab not allow calling a function from within an embedded matlab function or am I just doing something wrong? Below is what I am trying to do:
function f1 = fcn(x)
%some code here
y = f2(z);
end
function f2 = fcn (xval)
%code
end
  1 Comment
amin nzh
amin nzh on 18 Jun 2019
Hello. Did you find the answer? I have a same problem. Could you please explain the answer if you have solved it?

Sign in to comment.

Accepted Answer

Walter Roberson
Walter Roberson on 7 Sep 2011
The name of a function is the first name to the right of the '=', not the name to the left of the '='. You have named both of your functions as "fcn". You probably want something like
function y = f1(x)
%some code here
y = f2(z);
end
function result = f2(xval)
%code
result = ... %something
end

More Answers (0)

Categories

Find more on Startup and Shutdown 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!