How can I define these on matlab?

2 views (last 30 days)
ilyada on 22 Apr 2018
Answered: Benjamin Großmann on 22 May 2018

I have a math function like f(x)=(x-4)* (x-6)^3 * (x-1)^2

and I define it like this;

f= @(x) (x-4)*(x-6)^3*(x-1)^2;

And I want to define f(xlow), f(xmid), and f(xhi) but I couldn't. Also I have to define these s(low), s(mid), and s(hi) but when I tried I got error warning so I failed.

s(low) = (xlow)^2;
s(mid) = (xmid)^2;
s(hi) = (xhi)^2;

I tried to define them to use in a formula which is:

xqu= f(low)*(s(mid) - s(hi))+fx(mid)*(s(hi)-s(low) +f(hi)*(s(low)-s(mid))) / 2*(f(low)*(xmid-xhi)+fx(mid)*(xhi-xlow)+f(hi)*(xlow-xmid));

but again I got warning and I couldn't do that either.

Answers (1)

Benjamin Großmann
Benjamin Großmann on 22 May 2018
When f is a function, then you can not "define" something like
f(low) = ...
because the stuff in brackets is passed to the function f as argument. You can use f(low) inside a formula because the functions return value is then used inside your formula. It is possible to define
flow = f(low);
and afterwards use flow inside the formula same for s(mid) ....:
f= @(x) (x-4)*(x-6)^3*(x-1)^2;
flow = f(xlow);
fmid = f(xmid);
fhi = f(xhi);
xqu= f(low)*(smid...

Community Treasure Hunt

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

Start Hunting!

Translated by