Need help with my function

How can I input my own function? I type function [dist,vel,acc]= free_fall(t)or anything just involving the word function and receive an error message reading "FUNCTION keyword use is invalid here. This might cause later messages about END". I save the function as the script. Can not seem to figure it out.

 Accepted Answer

Jan
Jan on 29 Jul 2013
Edited: Jan on 29 Jul 2013
Function definitions are not allowed inside the Command Window or insider an M-script file, but only inside a function-M-file. You can recognize them by the first word "function".
The functions are defined either as sub-functions, after the main function has finished, or as nested function inside another function.
function Out = MainFunction(In)
disp('I''m the main function');
Nested;
SubFunction;
Nested;
function Nested
disp('I''m nested'');
end
end
function SubFunction
disp('I''m the sub function');
end
If you use nested function or any function is closed by end, all functions in an M-file must be closed by a trailing end.

More Answers (1)

function [dist,vel,acc]= free_fall(t)
% The code of your function here
...
...
% no need of adding "end"

2 Comments

No, I didn't place the end on my code that is what the error message reads. When I run the code it also reads "Function definitions are not permitted in this context". in the command window. Thanks for trying though.
did you place your function in its own m-file, I mean, no any other code before the function declaration? Your error message is received when that is done. Functions has to be save in their own m-file.

Sign in to comment.

Asked:

on 29 Jul 2013

Commented:

on 7 Apr 2016

Community Treasure Hunt

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

Start Hunting!