using a function in another m file

1 view (last 30 days)
Altug
Altug on 9 Jul 2012
Hello,
I would like to know how you can use a function in another function.
e.g // function [ gam, alfa, beta] = att(L) should make use of the funciton s2abcd.m
abcd=s2abcd(data,50);
A= abcd(1,1,:);
I need to use that A matrix in another m file gam= cosh(A)/L; alfa=real(gam);
In C++ it can be done easily with include function but I dont know how you can do that in Matlab
Thanks in advance
  1 Comment
Jan
Jan on 9 Jul 2012
Your comment to Luffy's answer shows, that your problem does not concern the access of the function at all. Therefore I strongly recommen to follow the standard procedure:
  1. Post the relevant code by copy&paste, such that even typos are replicated. Pseudo-code in the forum reduces the chance to find the error.
  2. Copy the complete error message including the line, which causes the error.

Sign in to comment.

Answers (2)

Luffy
Luffy on 9 Jul 2012
Just make sure the m-files in which both function & subfunction are in same directory.
  1 Comment
Altug
Altug on 9 Jul 2012
Edited: Altug on 9 Jul 2012
Actually both of them are in the same directory but still I get the following error message
***Undefined function or variable "abcd".
Error in att (line 4)
A= abcd(1,1,:); ***

Sign in to comment.


Jan
Jan on 9 Jul 2012
As long as the other M-function is stored in a folder, which belongs to the Matlab PATH, or in the current folder (see cd command), you can calling the function works by using its name - as expected.
For adding a user-defined folder to the path type pathtool to the command window, or open the corresponding menu.

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!