How can I define these on matlab?
2 次查看(过去 30 天)
显示 更早的评论
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;
xlow=0;
xmid=32;
xhi=40;
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.
0 个评论
回答(1 个)
Benjamin Großmann
2018-5-22
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;
xlow=0;
xmid=32;
xhi=40;
flow = f(xlow);
fmid = f(xmid);
fhi = f(xhi);
xqu= f(low)*(smid...
0 个评论
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!