Está en la página 1de 70

METODOS NUMERICOS

SOLUCION NUMERICA DE UNA ECUACION NO


LINEAL EN UNA VARIABLE
Realizado por:

Andrea Chica
Jos Chimborazo

Tutor:

Ing. Gerardo Arbito

Introduccin:
En muchos aspectos de las matemticas y la
ingeniera existen problemas donde es necesario
encontrar los valores de que satisfacen la ecuacin
lineal = 0 en variable real.
Este tipo de problemas representa, en la actualidad,
uno de los temas bsicos dentro del anlisis
numrico. Sin embargo, en los ltimos aos,
numerosos autores han introducido una variedad de
mtodos numricos, especialmente para el caso de
ceros simples.

METODOS ITERATIVOS PARA


ENCONTRAR CEROS DE FUNCIONES Y
RAICES DE ECUACIONES

Mtodo de la Falsa Posicin


Mtodo de la Biseccin
Mtodo de Newton Raphson

Mtodo de la Secante
Mtodo Punto Fijo

Mtodo de la Falsa Posicin


Mtodo de la Biseccin

()

Consiste en considerar un intervalo , , en el que


se garantice que la funcin tiene raz es decir
< .

(0 )

(1 )

Consiste en considerar un intervalo , en el que


se garantice que la funcin tiene raz es decir
< .
Se traza un recta que una los puntos ( , ( )) ,
( , ).


(0 )

0
(1 )

Consiste en considerar un intervalo , en el que


se garantice que la funcin tiene raz <
Se traza un recta que una los puntos ( , ( )) ,
( , ).
Se obtiene el punto de interseccin de esta recta con
el eje , se toma como aproximacin de la raz
buscada.


(0 )

(2 )
(1 )

Consiste en considerar un intervalo , en el que


se garantice que la funcin tiene raz es decir
< .
Se traza un recta que una los puntos ( , ( )) ,
( , ).
Se obtiene el punto de interseccin de esta recta con
el eje , se toma como aproximacin de la raz
buscada.
Luego identificamos en cul de los dos intervalos est
la raz, de la siguiente manera: si <
entonces = y = , caso contrario
= y = .
El proceso se repiten veces o hasta que ( ) sea
menor o igual a la tolerancia.


(0 )

(2 )
(1 )

Inicio

Diagrama de Flujo
Ingrese otro intervalo

f, p0, p1, tol, n

>

f(p0)*f(p1):0

<

p1=p2

p0=p2

p2=
f(p1)=f(p2)

f(p0)=f(p2)

()
()

>
i=1:n
<

>
f(p0)*f(p2):0

Abs(f(p2)):tol

<=

La raz es p2

Inicio

Codificacin en Matlab

elseif f0*f2<0

function [p2,k,ERX,err,f2] = Fposicion(f,p0,p1,tolx,toly,n)

ERX(1)=100;

p1=p2;
f1=f2;
else

f0=feval(f,p0);
f1=feval(f,p1);
for k=1:n
dx=(f1)*(p1-p0)/(f1-f0);
p2=p1-dx;
dist=p2-p0;
f2=feval(f,p2);
a=abs(p0-p1);
b=abs(p0);
ERX(k+1)=(a/b)*100;
if (f2==0), break

p0=p2;
f0=f2;
end

dx=min(abs(dx),dist);
if
(abs(dx)<tolx)|(abs(f2)<toly),break,end

end
p2;
err=abs(p1-p0)/2;
f2=feval(f,p2);

VENTAJAS:
Es siempre convergente.
Converge ms rpidamente que el mtodo de la biseccin.
Uno de los extremos del intervalo tiende a no modificarse.
DESVENTAJAS:

Tiene una convergencia muy lenta hacia la solucin.


Tiene la desventaja con respecto al mtodo de la biseccin,
que la longitud del subintervalo que contiene a la raz en
general no tiende a cero, porque la mayora de las grficas
de las funciones son cncavas (hacia arriba o hacia abajo)
en la vecindad de la raz, mientras el otro permanece fijo.
Si existe ms de una raz en el intervalo, solo permite
encontrar una de ellas.

EJEMPLO:

f x e2x x
60

50

40

30

20

10

0
-2.5

-2

-1.5

-1

-0.5

0
-10

0.5

1.5

2.5

p1

p0

p2

F(p1)

F(p0)

F(p2)

error

0,53628944

-0,86466472

-0,19416436

0,53628944

0,14797559

-0,19416436

0,59584814

262,417494

0,14797559

0,53628944

0,44085208

0,59584814

-0,19416436

-0,02677542

66,4341846

0,14797559

0,44085208

0,34951892

0,59584814

-0,02677542

0,14754441

26,1311057

0,34951892

0,44085208

0,42682336

0,14754441

-0,02677542

-0,00096425

18,111577

0,34951892

0,42682336

0,41288573

0,14754441

-0,00096425

0,02501131

3,3756627

0,41288573

0,42682336

0,42630597

0,02501131

-0,00096425

-5,97E-06

3,14803075

0,41288573

0,42630597

0,42578871

0,02501131

-5,97E-06

0,00095254

0,12148348

0,42578871

0,42630597

0,42630275

0,00095254

-5,97E-06

-1,41E-09

0,1205811

10

0,42578871

0,42630275

0,42629953

0,00095254

-1,41E-09

5,97E-06

0,0007559

11

0,42629953

0,42630275

0,42630275

5,97E-06

-1,41E-09

-2,11E-15

0,00075572

12

0,42629953

0,42630275

0,42630275

5,97E-06

-2,11E-15

1,41E-09

1,79E-07

13

0,42630275

0,42630275

0,42630275

1,41E-09

-2,11E-15

1,79E-07

14

0,42630275

0,42630275

0,42630275

-2,11E-15

()

Consiste en considerar un intervalo


, en el que se garantice
que la
funcin tiene raz


(0 )

(1 )

Consiste en considerar un intervalo


, en el que se garantice
que la
funcin tiene raz.
El segmento se bisecta, tomando el
punto de biseccin como aproximacin
de la raz buscada.


(0 )

(2 )

(1 )

Consiste en considerar un intervalo ,


en el que se garantice que la funcin tiene
raz
El segmento se bisecta, tomando el
punto de biseccin como aproximacin
de la raz buscada.
Se identifica en cual de los intervalos est
la raz de la siguiente manera: si
< entonces = y = ,
caso contrario = y = .
El proceso se repite veces, o hasta que
( ) sea menor igual que la tolerancia.

(0 )

(2 )

(1 )

Inicio

Diagrama de Flujo
Ingrese otro intervalo

f, p0, p1, tol, n

>

f(p0)*f(p1):0

<

p1=p2

p0=p2

f(p1)=f(p2)

f(p0)=f(p2)

p2=(p0+p1)/2

>
i=1:n
<

>
f(p0)*f(p2):0

Abs(f(p2)):tol

<=

La raz es p2

Inicio

Codificacin en Matlab

p0=p2
p1=p2

function [p2,k,ERX,err,f2] = Mbiseccion(f,p0,p1,tolx,n)

ERX(1)=100;

elseif f0*f2<0
p1=p2;
f1=f2;

for k=1:n

f0=feval(f,p0);
f1=feval(f,p1);

else
p0=p2;
f0=f2;

if f0*f1<0

p2=(p0+p1)/2;
f2=feval(f,p2);
a=abs(p0-p1);
b=abs(p0);
ERX(k+1)=(a/b)*100;

end
if ((p0-p1)<tolx),break,end
end
end

if f2==0
p2=(p0+p1)/2;
err=abs(p0-p1);
f2=feval(f,p2);

VENTAJAS:
Es siempre convergente.
Se usa el mtodo de biseccin para obtener un buen punto
de arranque para la aplicacin de otro mtodo.
Una de las mayores ventajas que tiene el mtodo de
biseccin es que el error de truncamiento, | | se acota

fcilmente, dado que | | 02 1.
DESVENTAJAS:
Aunque el mtodo de biseccin siempre converge, su
convergencia es muy lenta, comparada con la convergencia
de otros mtodos, por lo que se sugiere escoger el intervalo
inicial [0 , 1 ] tan pequeo como sea posible.
Si existe ms de una raz en el intervalo, el mtodo permite
encontrar solo una de ellas.

p1

p0

F(p1)

F(p0)

F(p2)

p2

error

-0,86466472

-0,13212056

0,5

0,5

-0,13212056

0,35653066

0,25

100

0,25

0,5

0,35653066

-0,13212056

0,09736655

0,375

33,3333333

0,375

0,5

0,09736655

-0,13212056

-0,02063798

0,4375

14,2857143

0,375

0,4375

0,09736655

-0,02063798

0,03749731

0,40625

7,69230769

0,40625

0,4375

0,03749731

-0,02063798

0,00821964

0,421875

3,7037037

0,421875

0,4375

0,00821964

-0,02063798

-0,00626086

0,4296875

1,81818182

0,421875

0,4296875

0,00821964

-0,00626086

0,00096637

0,42578125

0,91743119

0,42578125

0,4296875

0,00096637

-0,00626086

-0,00265049

0,42773438

0,456621

10

0,42578125

0,42773438

0,00096637

-0,00265049

-0,00084287

0,42675781

0,22883295

11

0,42578125

0,42675781

0,00096637

-0,00084287

6,15E-05

0,42626953

0,11454754

12

0,42626953

0,42675781

6,15E-05

-0,00084287

-0,00039072

0,42651367

0,05724098

13

0,42626953

0,42651367

6,15E-05

-0,00039072

-0,0001646

0,4263916

0,02862869

14

0,42626953

0,4263916

6,15E-05

-0,0001646

-5,15E-05

0,42633057

0,01431639

15

0,42626953

0,42633057

6,15E-05

-5,15E-05

5,01E-06

0,42630005

0,00715871

16

0,42630005

0,42633057

5,01E-06

-5,15E-05

-2,33E-05

0,42631531

0,00357923

17

0,42630005

0,42631531

5,01E-06

-2,33E-05

-9,13E-06

0,42630768

0,00178965

18

0,42630005

0,42630768

5,01E-06

-9,13E-06

-2,06E-06

0,42630386

0,00089483

19

0,42630005

0,42630386

5,01E-06

-2,06E-06

1,47E-06

0,42630196

0,00044742

20

0,42630196

0,42630386

1,47E-06

-2,06E-06

-2,94E-07

0,42630291

0,00022371

21

0,42630196

0,42630291

1,47E-06

-2,94E-07

5,89E-07

0,42630243

0,00011185

Mtodo de Newton Raphson


Mtodo de la Secante
Mtodo del Punto Fijo

()

Consiste en elegir un punto inicial cualquiera como


aproximacin de la raz.

(0 )

Consiste en elegir un punto inicial cualquiera


como aproximacin de la raz.
Trazar una recta tangente a la funcin por ese punto.

(0 )

Consiste en elegir un punto inicial cualquiera


como aproximacin de la raz.
Trazar una recta tangente a la funcin por ese punto.
El punto de interseccin de esta recta con el eje de
las , ( , ), constituye una segunda aproximacin
de la raz.

(0 )

(1 )

Consiste en elegir un punto inicial cualquiera


como aproximacin de la raz.
Trazar una recta tangente a la funcin por ese punto.
El punto de interseccin de esta recta con el eje de
las , , constituye una segunda aproximacin de
la raz.
El proceso se repite veces o hasta que ( ) sea
menor o igual a la tolerancia.

( )
( )

(0 )

(1 )

Diagrama de Flujo

Codificacin en Matlab

function [p0,k,ERX,err,y] = Nrhapson(f,df,n,p0,tolx,toly)


ERX(1)=100;

for k=1:n
fx=feval(f,p0);
dx=feval(df,p0);
p1=p0-(fx/dx);
err=abs(p0-p1);
a=abs(p0);
ERX(k+1)=(err/a)*100;

y=feval(f,p0);
if (err<=tolx)|(abs(y)<=toly),break,end
p0=p1;
end

VENTAJAS:
Converge ms rpido que cualquiera de los siguientes
mtodos: mtodo de biseccin, mtodo de la regla falsa,
mtodo grfico y el mtodo del punto fijo.
DESVENTAJAS:
No siempre es convergente depende de la naturaleza de la
funcin.
No es conveniente en el caso de races mltiples.
Puede alejarse del rea de inters si la pendiente es cercana
a cero.

Iteraciones

p0

p1

F(p0)

F(p0)

%Es

%E Total

0,3195209

-1,270671

-0,864665

0,3195209

0,4208429

-2,055596

0,2082769

24,075954

1,2807513

0,4208429

0,426289

-1,861967

0,0101405

1,2775671

0,0032254

0,426289

0,4263028

-1,852629

2,55E-05

0,0032254

1,88E-08

0,4263028

0,4263028

-1,852606

1,61E-10

2,04E-08

1,61E-09

0,4263028

0,4263028

-1,852606

1,61E-09

()

Consiste en elegir dos puntos iniciales cualquiera y


.

(0 )
(1 )

Consiste en elegir dos puntos iniciales cualquiera y


.
Se traza una recta secante a la funcin por esos dos
puntos.

(0 )
(1 )

Consiste en elegir dos puntos iniciales cualquiera y


.
Se traza una recta secante a la funcin por esos dos
puntos.
El punto de interseccin de esta recta con el eje de
las , ( , ), constituye una segunda aproximacin de
la raz.

(0 )
(1 )

Consiste en elegir dos puntos iniciales cualquiera y


.
Se traza una recta secante a la funcin por esos dos
puntos.
El punto de interseccin de esta recta con el eje de
las , ( , ), constituye una segunda aproximacin de
la raz.
El proceso se repite veces o hasta que ( ) sea
menor o igual a la tolerancia.

( )
( ) ( )

(0 )
(1 )

Diagrama de Flujo

Codificacin en Matlab

function [p1,k,ERX,err,y] = Msecante(f,n,p0,p1,tolx,toly)


ERX(1)=100;
for k=1:n
f0=feval(f,p0);
f1=feval(f,p1);
p2=(p1*f0-p0*f1)/(f0-f1);
err=abs(p0-p1);

a=abs(p0);
ERX(k+1)=(err/a)*100;
y=feval(f,p1);
if (err<=tolx)|(abs(y)<=toly),break,end
p0=p1;
p1=p2;
end
end

VENTAJAS:
La ventaja es que no hay que calcular la derivada de (esto
es de gran ayuda en un caso de que sea difcil de calcular
DESVENTAJAS:
La convergencia de la solucin es ms lenta que la que
produce el mtodo de Newton Raphson.

p1

p0

p2

F(p1)

F(p0)

-0,377468 -0,453403

F(p2)

error

0,65

0,7

0,4014525

0,4014525

0,65

0,4287508

0,046573

-0,377468

-0,00453

6,3669391

0,4287508

0,4014525

0,4263309

-0,00453

0,046573

-5,21E-05

0,567622

0,4263309

0,4287508

0,4263027

-5,21E-05

-0,00453

5,87E-08

0,0066051

0,4263027

0,4263309

0,4263028

5,87E-08

-5,21E-05

-7,60E-13

7,43E-06

0,4263028

0,4263027

0,4263028

-7,6E-13

5,868E-08

0,00E+00

9,616E-11

0,4263028

0,4263028

0,4263028

0 -7,6E-13

0,046573

()

Considere la descomposicin en una funcin () en


una diferencia de dos funciones: una primera
= () y la segunda, siempre la funcin = .

(0 , (0 ))

(1 , 1 )

()

Considere la descomposicin en una funcin () en


una diferencia de dos funciones: una primera
= () y la segunda, siempre la funcin = .
La raz de la funcin () se da cuando = , es
decir, cuando = , por lo que = .
El punto de interseccin de las dos funciones da
entonces el valor exacto de la raz.

Considere la descomposicin en una funcin () en


una diferencia de dos funciones: una primera
= () y la segunda, siempre la funcin = .
La raz de la funcin () se da cuando = , es
decir, cuando = , por lo que = .
El punto de interseccin de las dos funciones da
entonces el valor exacto de la raz.
El mtodo consiste en considerar un valor inicial ,
como aproximacin a la raz, evaluar el valor de esta
funcin ( ) considerando
ste
como una
aproximacin de la raz.

= ( )

Considere la descomposicin en una funcin () en


una diferencia de dos funciones: una primera
= () y la segunda, siempre la funcin = .
La raz de la funcin () se da cuando = , es
decir, cuando = , por lo que = .
El punto de interseccin de las dos funciones da
entonces el valor exacto de la raz.
El mtodo consiste en considerar un valor inicial ,
como aproximacin a la raz, evaluar el valor de esta
funcin ( ) considerando
ste
como una
aproximacin de la raz.
El proceso se repite veces o hasta que ( ) sea
menor o igual a la tolerancia.

Diagrama de Flujo

Codificacin en Matlab
function [p,k,ERX,err,P] = Pfijo(g,p0,tolx,n)
ERX(1)=100;
P(1)=p0;

for k=2:n
P(k)=feval(g,P(k-1));
err=abs(P(k)-P(k-1));
ERX(k)=(err/abs(P(k-1)))*100;
p=P(k);
if (err<tolx),break,end
end
P=P';

VENTAJAS:
El mtodo es simple,
Es flexible
DESVENTAJAS:
No siempre es convergente, depende de la forma de la
funcin ().

p0

F(p0)

p1

error

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18

0,4662
0,39360792
0,45511014
0,40243557
0,44714554
0,40889737
0,44140399
0,41361984
0,43725458
0,41706668
0,43425066
0,4195799
0,4320734
0,42141094
0,430494
0,4227442
0,42934761
0,42371458

0,39360792
0,45511014
0,40243557
0,44714554
0,40889737
0,44140399
0,41361984
0,43725458
0,41706668
0,43425066
0,4195799
0,4320734
0,42141095
0,430494
0,4227442
0,42934761
0,42371458
0,42851517

0,39360792
0,45511014
0,40243557
0,44714554
0,40889737
0,44140399
0,41361984
0,43725458
0,41706668
0,43425066
0,4195799
0,4320734
0,42141094
0,430494
0,4227442
0,42934761
0,42371458
0,42851516

-18,4427396
13,5137
13,0889438
9,99897542
9,35397873
7,36437007
6,71731613
5,4052591
4,84045018
3,95715669
3,49653604
2,89152415
2,53018054
2,10991471
1,83321201
1,53800945
1,32944088
1,1202845

19

0,42851516

0,4244206

0,4244206

0,96474171

300

250

200
Bisection Method
150
False Position Method
100

Fixed Point Method


Newton-Raphson Method

50

Secant Method
0
0
-50

10

15

20

25

Steven C. Chapra, Methods Numeric's for Engineering Quinta


Edition. Mac Graw Hill
Stewart, James. "Calculus, Early Transcendent." 4 ed. Tr.
Andrew
Sesti. Mexico, Ed Thomson, 2002. p. 1151

También podría gustarte