How to put a function in another function?

For instance, if there are two functions which are with respect to x: f(x) = x^2 and g(x) = 4*x, I want to make another function using them: h(x) = (f(x)+5*g(x))/(2*f(x)*g(x))
But,
f = @(x) x^2;
g = @(x) 4*x;
h = @(x) (f+5*g)/(2*f*g);
doesn't work.
Is there any way to do this?

 採用された回答

Geoff Hayes
Geoff Hayes 2016 年 3 月 21 日

1 投票

Yusuke - if x is the input parameter to your function h, then you must pass this into f and g as well. So instead of
h = @(x) (f+5*g)/(2*f*g);
you would write
h = @(x) (f(x)+5*g(x))/(2*f(x)*g(x));
Try the above and see what happens!

その他の回答 (1 件)

the cyclist
the cyclist 2016 年 3 月 21 日

1 投票

You have to supply the function arguments:
h = @(x) (f(x)+5*g(x))/(2*f(x)*g(x));

カテゴリ

ヘルプ センター および File ExchangeIntroduction to Installation and Licensing についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by