Está en la página 1de 10

Algoritmo de mtodo de punto fijo

Para obtener una solucin a p=g (p) dada una aproximacin inicial p0
Entrada: La funcin g, aproximacin inicial p0, la tolerancia tol ,
nmero mximo de iteraciones N0.
Salida: La solucin aproximada po el mensaje de fracaso.
Paso1

tome i=1

Paso2

mientras i<=N0 haga los pasos 3-6

Paso3

tome p=g (p0)

Paso4

si |p-p0|<tol entonces
SALIDA (p, g (p))
(Procedimiento terminado satisfactoriamente)
PARE

Si no
Paso 5

tome i=i+1

Paso 6

tome p0=p;(redefina p0)

Fin_si
Fin_mientras
Paso 7
SALIDA (El mtodo fracaso despus de N0
iteraciones, N0)
(Procedimiento terminado sin xito)
PARAR

Algoritmo del mtodo de regula falsi


Para encontrar una solucin a f(x)=0 dada la funcin continua f en
el intervalo [p0,p1] donde f(p0) y f(p1) tienen signos opuestos:
ENTRADA: aproximaciones iniciales p0, p1 tolerancia tol; nmero
mximo de iteraciones N0.
SALIDA: solucin aproximada p o un mensaje de falla.
Paso 1 tome i=2
q0=f (p0);
q1=f (p1).
Paso2 mientras i<=N0 haga pasos 3-7.
Paso 3 tome p=p1-q (p1-p0)/ (q1-q0)

(calcule pi.)

Paso 4 si |p-p1| <tol entonces


SALIDA (p); (Procedimiento terminado
satisfactoriamente)
PARAR
Paso 5 tome i=i+1;
q=f (p).
Paso 6 si q.q1<0 entonces tome p0=p1;
Q0=q1.
Paso 7 tome p1=p;
Q1=q.
Paso 8
SALIDA (El mtodo fallo despus
de
iteraciones,N0=,N0); (procedimiento terminado sin xito.)
PARAR.

N0

de

Algoritmo del mtodo de la secante


Para encontrar una raz de la ecuacin f(x)=0, dada f(x)
analticamente, proporcionar la funcin F(x) y los
ENTRADA: aproximaciones iniciales p0, p1 tolerancia tol; nmero
mximo de iteraciones N0.
SALIDA: solucin aproximada p o un mensaje de falla.
Paso 1 hacer i=1.
Paso 2 mientras i<=N0 haga pasos 3-8.
Paso 3 hacer x=x0-(x1-x0)*F(x0)/(F(x1)-F(x0)).
Paso 4 si |p-p1| <tol entonces imprimir x y terminar.
Paso 5 si abs (F(x)) <p1 entonces imprimir x y terminar.
Paso 6 hacer x0=x1.
Paso 7 hacer x1=x.
Paso 8

hacer i=i+1

Paso 9 imprimir el mensaje de falla el mtodo no converge a una


raz y terminar.

Algoritmo del Mtodo de newton


Para obtener una solucin a f(x)=0 dada la funcin diferenciable
F y una aproximacin inicial p0.
Entrada: aproximacin inicial p0; tolerancia tol; nmero mximo de
iteraciones N0.
SALIDA: solucin aproximada p o un mensaje de fracaso.
Paso 1 tome i=1.
Paso 2 mientras i<=N0 haga pasos 3-6.
Paso 3 tome p=P0-f(p0)/f(p0).
Paso 4 si |p-p0| <tol entonces
SALIDA (p); (procedimiento terminado
satisfactoriamente.)
Paso 5 tome i=i+1.
Paso 6 tome p0=p.(Redefina p0)
Paso 7 SALIDA (El mtodo fracaso despus de N0 iteraciones,
N0=, N0);
(Procedimiento terminado sin xito.)

Mtodo de

Punto fijo

clear;
clc;
fun=input('Ingrese la funcion f(x)=','s');
f=inline(fun);
disp('Ingrese la funcion g(x)=x');
fun1=input('g(x)=','s');
g=inline(fun1);
p0=input('ingrese la aproximacion inicial p0=');
TOL=input('ingrese la TOL=');
N=input('Ingrese # max de iteraciones N=');
i=1;
while i<=N
p=g(p0);
if abs(p-p0)<TOL
fprintf('La raiz aproximada p=%12.7f\n',p);
break;
end
i=i+1;
p0=p;
end
if i>N
disp('numero maximo de iteraciones exedido');
end

Mtodo de regula falsi


clear all;
clc;
fun=input('Ingrese la funcion f=','s');
f=inline(fun);
disp('ingrese el intervalo I=[a b]');
I=input('I=');
a=I(1);
b=I(2);
TOL=input('ingrese la TOL=');
N=input('Ingrese # max de iteraciones N=');
i=1;
while i<=N
x=(a*f(b)-b*f(a))/(f(b)-f(a));
if abs(x-a)<TOL
fprintf('la raiz aproximada es= %5.7f\n',x);
break
end
i=i+1;
if f(a)*f(x)>0
a=x;
else
b=x;
end
end
if i>N
disp('Numero de iteraciones excedido');
end

Mtodo de secante
clear all;
clc;
fun=input('Ingrese la funcion f=','s');
f=inline(fun);
x0=input('Ingrese la aproximacion inicial X0=');
x1=input('Ingrese la aproximacion inicial X1=');
TOL=input('Ingrese la TOL=');
N=input('Ingrese # max de iteraciones N=');
i=2;
while i<=N
x=x1-f(x1)*(x1-x0)/(f(x1)-f(x0));
if abs(x-x1)<TOL
fprintf('La raiz aproximada es x=%12.7f\n',x);
return;
end
i=i+1;
x0=x1;
x1=x;
end
if i>N
disp('numero maximo de iteraciones excedido');
end

Mtodo newton
clear;
clc;
fun=input('ingrese la funcion f=','s');
f=inline(fun);
disp('ingrese la derivada de la funcion f');
der=input('df=','s');
df=inline(der);
x0=input('Ingrese la aproximacion inicial P0=');
TOL=input('Ingrese la tolerancia TOL=');
N=input('Ingrese el numero maximo de iteraciones N=');
i=1;
while i<=N
x=x0-(f(x0)/df(x0));
if abs(x-x0)<TOL;
fprintf('La raiz aproximada p= %7.8f\n',x);
return;
else
i=i+1;
x0=x;
end
end
if i>N
fprintf('Numero de maximo de iteraciones excedido')
end

Para visualizar mejor la ejecucin vamos a tomar ejercicios de la


practica 5.
METODO DE PUNTO FIJO

Ingrese la funcion f(x):sin(x)+x-1


Ingrese la funcion asociada
al punto fijo g(x) = 1-sin(x)
Ingrese el valor inicial : 0.52
Ingresar la tolerancia: 0.01
Ingrese el numero maximo de iteraciones:10
it
1
2
3
4
5
6
7
8
9

x0
0.52000000
0.50311986
0.51783886
0.50499650
0.51619562
0.50642496
0.51494596
0.50751218
0.51399549

g(x)
0.50311986
0.51783886
0.50499650
0.51619562
0.50642496
0.51494596
0.50751218
0.51399549
0.50833961

error
0.03355093
0.02842390
0.02543060
0.02169551
0.01929341
0.01654737
0.01464750
0.01261356
0.01112618

La funcion evaluada f(0.5083396144)= 0.51327252


La raiz aproximada g(x) = 0.5132725178
El error es = 0.0096106908

METODO DE NEWTON

Ingrese
Ingrese
Ingrese
Ingrese

la
la
la
el

funcion f(x):1-x^2-atan(x)
aproximacion inicial p0:0.5
tolerancia:0.01
numero maximo de iteraciones:2

it

x0

error

1 0.50000000 0.65908466 0.15908466


La raiz aproximada de f( 0.65908466) es = 0.65058593
El error de la aproximacin es = 0.0084987285

METODO DE LA REGULA FALSI


Ingrese
Ingrese
Ingrese
Ingrese
Ingrese
Ingrese
it

la funcion f(x):log(x)+x^2-4
p0,p1 tal que f(p0)*f(p1)<0.
p0:1
p1:2
la tolerancia:0.01
el numero max de iteraciones:5
x0

error

1 2.00000000 1.81231531 0.18768469


2 1.81231531 1.84019129 0.02787597
La raiz aprox de f( 1.84019129) es = 1.84106866
El error es = 0.0008773774

METODO DE LA SECANTE
Ingrese la funcion f(x):asin(x)-exp(-2*x)
Ingrese p0, p1 tal que f(p0)*f(p1)<0.

Ingrese
Ingrese
Ingrese
Ingrese
it

p0:0
p1:0.5
la tolerancia:0.01
el numero max de iteraciones:5
x1

error

1 0.50000000 0.43263099 0.06736901


2 0.43263099 0.41883539 0.01379560
La raiz aprox de f(x) es 0.41911864
El error es = 0.0002832480

También podría gustarte