is there a problem with my operators???

EDU>> refine(0, 7, .1) Undefined function 'f' for input arguments of type 'double'.
Error in refine (line 3)
if abs((f(x1)+f(x2))/2-f(xm))<tol
function points=refine(x1, x2, tol)
xm = (x1+x2)/2;
if abs((f(x1)+f(x2))/2-f(xm))<tol
points=[x1,x2];
else
left=refine(x1, xm, tol);
right=refine(xm, x2, tol);
points=[left, right(2:length(right))];
end
end
function linearinterp
x=linspace(-5, 2*pi, 30);
y=exp.^(-x./2).*sin(x^.2+8);
points=refine(0, 7, 0.1);
plot(x, y, points, f(points), 'r+');
hold on
plot(points, f(points));
hold off
end

Answers (1)

What is f in your function refine?

12 Comments

the formula for Bisection. f is the y function.
And what is the y function?
the function i'm trying to interpolate and plot. on the interval 0 and 7 with tolerance 0.7
Ehi, look at the first three lines of your function refine
function points=refine(x1, x2, tol)
xm = (x1+x2)/2;
if abs((f(x1)+f(x2))/2-f(xm))<tol
In the third line f(x1) is used. How Matlab is supposed to know what f represent?
o so instead f input y(x1)+y(x2)/2-y(xm)<tol
What is the difference? y is also unknown
I wanted the function refine to receives the points and uses it to decide when to subdivide intervals. Then y helps plot the function when the points are implemented.
I am not sure if you know how functions work. Look at this simple example:
function out=example(in1,in2,in3)
out=(in1+in2+in3)/3
Save this file as example.m
In Matlab windows command, you can call the function example by providing the values for in1, in2 and in3
m=Example(10,45,25)
Wait azzi what if I did like this.
function linearinterp
x=linspace(-5, 2*pi, 30);
y=exp.^(-x./2).*sin(x.^2+8);
points=refine(0, 7, 0.1);
plot(x, y, points, f(points), 'r+');
hold on
plot(points, f(points));
hold off
end
function points=refine(x1, x2, tol)
xm = (x1+x2)/2;
y=f(x);
if abs((f(x1)+f(x2))/2-f(xm))<tol
points=[x1,x2];
else
left=refine(x1, xm, tol);
right=refine(xm, x2, tol);
points=[left, right(2:length(right))];
end
end
i'll post it for better view...

This question is closed.

Tags

Asked:

on 12 Feb 2014

Closed:

on 20 Aug 2021

Community Treasure Hunt

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

Start Hunting!