Asked by Joe
on 19 Nov 2012

Calling a function inside of a another function.

what I would like to do is take

function x = fgIntersect(f, df, g, dg, x0, tol, maxIter)

and calculate the output x using another function,

function [r,rHist,N,fRoot] = newtonRaph(fHan,dfHan,x0,fTol,iterMax)

replacing fHan with h ( h = @ (x) f(x) - g(x)), and dfHan with dh ( dh = @ (x) df(x) - dg(x)).

so I would have:

function [r,rHist,N,fRoot] = newtonRaph(h,dfh,x0, tol,maxIter)

and the output of this function (newtonRaph), r is equal to the output of the previous function (fgIntersect), x.

*No products are associated with this question.*

Answer by Image Analyst
on 19 Nov 2012

So just calculate fHan by calling h(), and calculate dfHan by calling dh(), in advance of you calling newtonRaph(), then pass them in to newtonRaph(). It's a simple process.

Opportunities for recent engineering grads.

## 1 Comment

## Matt J (view profile)

Direct link to this comment:http://www.mathworks.com/matlabcentral/answers/54167#comment_112049

The GettingStarted section of the documentation should make it pretty clear how to make function calls inside other functions. It's no different than calling any old stock MATLAB command like SIN, COS, or SUM