bisection iteration wither different values than 0

How to solv the eq f(y)=0.2? instead of f(y)=0.
d=0.250; % I SUPPOSED d=1.3
f=@(y) 0.46-0.5*cos(3.14*(y/d))+0.004*cos(2*3.14*(y/d))
format long
eps_abs = 1e-5;
eps_step = 1e-5;
a = 0; % Initial Guess to your function such that f(a)>0.
b = 1; % Initial Guess to your function such that f(b)<0.
while (b - a >= eps_step || ( abs( f(a) ) >= eps_abs && abs( f(b) ) >= eps_abs ) )
c = (a + b)/2;
if ( f(c) == 0 )
break;
elseif ( f(a)*f(c) < 0 )
b = c;
else
a = c;
end
end

 Respuesta aceptada

Walter Roberson
Walter Roberson el 10 de Mzo. de 2013

0 votos

To solve f(y) = 0.2, define f1(y) = f(y) - 0.2, and then solve for f1(y) = 0.

Más respuestas (0)

Categorías

Más información sobre Numerical Integration and Differential Equations en Centro de ayuda y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by