Matlab - Que estoy haciendo mal?

 
Vista:

Que estoy haciendo mal?

Publicado por Diego (1 intervención) el 10/09/2012 01:21:52
hola este es un programa que hice para el metodo de biseccion, el problema surge cuando les doy los valores me da cualquier cosa.

function[xn,intn,fxn,edn,een]=biseccion(fun,a,b,delta,epsilon)
fa=feval(fun,a)
fb=feval(fun,b)
ed=1000000;
ee=1000000;
int=0;c1=0;c=0;
if (fb*fa)<0
while ed>delta & ee>epsilon
int=int+1;
c=(a+b)/2
fc=feval(fun,c)
if fc*fa<0
b=c;
else if fc*fb<0
a=c;
else xn=0;
end
end
ed=abs(c-c1);
ee=abs(fc);
c1=c;
end
intn=int
edn=ed
een=ee
xn=c
fnx=fc
else
disp('Error')
end
end


esta es la funcion

function y=fun(x)
y=(x^3)-x-3;

y estos los valores

biseccion(@fun,-100,100,10^(-2),10^(-5))


Cuando c=0 me dice que fc=2 y no puede ser nunca eso!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Que estoy haciendo mal?

Publicado por el boludo (1 intervención) el 10/09/2012 01:28:13
ahi encontre el problema, soy un bolud@ gracias igual!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar