Solución de Ecuaciones de una variable F(x) = 0 · Secante Sustitución ... Pseudocódigo...

22
Ing. Deny González Msc. SIMULACION NUMERICA / METODOS NUMERICOS Ultima modificacion 15 / 04 / 08 *Rev 3 Solución de Ecuaciones de una variable F(x) = 0 -3 -2 -1 0 1 2 3 -5 0 5 10 15 20 25 30 35 40 45 Grafica de la funcion x. 3 + 3*x. 2 -3*x -1

Transcript of Solución de Ecuaciones de una variable F(x) = 0 · Secante Sustitución ... Pseudocódigo...

Page 1: Solución de Ecuaciones de una variable F(x) = 0 · Secante Sustitución ... Pseudocódigo Bisección en Matlab %Metodo Grafica de la funcion ... El método de Falsa Posición Modificada

Ing. Deny González Msc.

SIMULACION NUMERICA / METODOS NUMERICOS

Ultima modificacion 15 / 04 / 08 *Rev 3

Solución de Ecuaciones de una variableF(x) = 0

- 3 - 2 - 1 0 1 2 3- 5

0

5

1 0

1 5

2 0

2 5

3 0

3 5

4 0

4 5G r a fi c a d e l a fu n c i o n x . 3 + 3 * x . 2 - 3 * x - 1

Page 2: Solución de Ecuaciones de una variable F(x) = 0 · Secante Sustitución ... Pseudocódigo Bisección en Matlab %Metodo Grafica de la funcion ... El método de Falsa Posición Modificada

Ing. Deny González Msc.

SIMULACION NUMERICA / METODOS NUMERICOS

Ultima modificacion 15 / 04 / 08 *Rev 3

Contenido

Introducción.

Método Grafico

Métodos Cerrados

Bisección, Falsa Posición Falsa Posición Modificada.

Métodos Abiertos

Newton RaphsonSecanteSustitución SucesivaBairstow.

Page 3: Solución de Ecuaciones de una variable F(x) = 0 · Secante Sustitución ... Pseudocódigo Bisección en Matlab %Metodo Grafica de la funcion ... El método de Falsa Posición Modificada

Ing. Deny González Msc.

SIMULACION NUMERICA / METODOS NUMERICOS

Ultima modificacion 15 / 04 / 08 *Rev 3

Método Grafico

Aplicación de y desarrollo de las técnicas de construcción de graficas de una función dada.

De manera tal de observar las raíces de la función (si posee). La precisión de la raíz dependerá de la construcción y precisión de la escala de grafica

- 3 - 2 - 1 0 1 2 3- 5

0

5

1 0

1 5

2 0

2 5

3 0

3 5

4 0

4 5G r a fi c a d e l a fu n c i o n x . 3 + 3 * x . 2 - 3 * x - 1

Instrucciones en Matlab

% f(x)= x3 + 3x2 - 3x - 1 -3 < x < 3

%Grafica de la funcion.

clear allf=inline('x.^3+3*x.^2-3*x-1','x');x=-3:0.1:3;y=f(x);plot(x,y,'k-')gridtitle('Grafica de la funcion x.^3 + 3*x.^2 -3*x -1')

Raíz exacta 0.996094

Page 4: Solución de Ecuaciones de una variable F(x) = 0 · Secante Sustitución ... Pseudocódigo Bisección en Matlab %Metodo Grafica de la funcion ... El método de Falsa Posición Modificada

Ing. Deny González Msc.

SIMULACION NUMERICA / METODOS NUMERICOS

Ultima modificacion 15 / 04 / 08 *Rev 3

Método Bisección

El método de bisección, también conocido como corte binario o método de bolzano, establece que:

Sea ( f ) una función continua en cada punto del intervalo cerrado [ a , b ] y se comprueba que f(a) y f(b) tiene signos distintos, se evaluara el valor de la función en el punto medio del intervalo.

2bac +

=

Page 5: Solución de Ecuaciones de una variable F(x) = 0 · Secante Sustitución ... Pseudocódigo Bisección en Matlab %Metodo Grafica de la funcion ... El método de Falsa Posición Modificada

Ing. Deny González Msc.

SIMULACION NUMERICA / METODOS NUMERICOS

Ultima modificacion 15 / 04 / 08 *Rev 3

Método Bisección

Flujograma del Método de Bisección

Dado, f(x), a,b

c = (a + b) / 2

Calcular f(c)

f(c)*f(a) > 0f(c) < Errorc = ab = b

c = ba = a

fin

si

no sino

Tabla Características de Bisección

        

        

        

Errorf ( c )f ( b )f ( a )cbaIter

Page 6: Solución de Ecuaciones de una variable F(x) = 0 · Secante Sustitución ... Pseudocódigo Bisección en Matlab %Metodo Grafica de la funcion ... El método de Falsa Posición Modificada

Ing. Deny González Msc.

SIMULACION NUMERICA / METODOS NUMERICOS

Ultima modificacion 15 / 04 / 08 *Rev 3

Método BisecciónPseudocódigo Bisección en Matlab

%Metodo Grafica de la funcion Biseccionclear allf=inline('x.^3+3*x.^2-3*x-1','x');x=[-5:0.5:5];y=f(x);figure('name','Grafica de funcion')plot(x,y)grid%Metodo de Biseccionclear ally=inline('x.^3+3*x.^2-3*x-1','x');x(1)=-4;x(2)=4;f(1)=y(x(1));f(2)=y(x(2));n=0;error=1;if (f(1)*f(2))>=0 fprintf('No existen raices dentro del intervalo \n') breakend

while error>=0.005 & n<=100 f(1)=y(x(1)); f(2)=y(x(2)); x(3)=(x(1)+x(2))/2; f(3)=y(x(3)); if (f(1)*f(3))<=0 x(1)=x(1); x(2)=x(3); else x(1)=x(2); x(2)=x(3); end n=n+1; error=(abs(x(1)-x(3)));endfprintf(' \n')fprintf('La raiz de la ecuacion por bisección es %f \n',x(3))fprintf(' \n')fprintf('Encontrada en %3.0f iteraciones \n',n)fprintf(' \n')fprintf('El error es %f \n',error)fprintf(' \n')

Continuación Pseudocodigo

Page 7: Solución de Ecuaciones de una variable F(x) = 0 · Secante Sustitución ... Pseudocódigo Bisección en Matlab %Metodo Grafica de la funcion ... El método de Falsa Posición Modificada

Ing. Deny González Msc.

SIMULACION NUMERICA / METODOS NUMERICOS

Ultima modificacion 15 / 04 / 08 *Rev 3

Método Bisección

25)( xexf x −=

Ejemplo:

Iter a b c f (a) f (b) f ( c ) Error1 0 1 0,5 1 -2,28171817 0,3987212712 0,5 1 0,75 0,398721271 -2,28171817 -0,69549998 0,253 0,5 0,75 0,625 0,398721271 -0,69549998 -0,08487904 0,1254 0,5 0,625 0,5625 0,398721271 -0,08487904 0,173023407 0,0625

Solución:

- 1 - 0 . 8 - 0 . 6 - 0 . 4 - 0 . 2 0 0 . 2 0 . 4 0 . 6 0 . 8 1- 5

- 4

- 3

- 2

- 1

0

1

2G r a f i c a d e l a fu n c i o n e x p ( x ) - ( 5 * x 2 )

Solución Exacta

x = 0.60526

Page 8: Solución de Ecuaciones de una variable F(x) = 0 · Secante Sustitución ... Pseudocódigo Bisección en Matlab %Metodo Grafica de la funcion ... El método de Falsa Posición Modificada

Ing. Deny González Msc.

SIMULACION NUMERICA / METODOS NUMERICOS

Ultima modificacion 15 / 04 / 08 *Rev 3

Método Bisección

LIMITANTES

El método de bisección no puede encontrar una pareja de raíces dobles, ya que la función toca de manera tangencial el eje x.

El método de bisección no reconoce la diferencia entre una raíz y una singularidad. Un punto singular es aquel valor donde la función tiende a infinito.

- 2 - 1 . 5 - 1 - 0 . 5 0 0 . 5 1 1 . 5 2- 2 . 5

- 2

- 1 . 5

- 1

- 0 . 5

0

0 . 5

1G r a fi c a d e l a fu n c i o n l n ( x )

- 2 - 1 . 5 - 1 - 0 . 5 0 0 . 5 1 1 . 5 2- 1 0

- 8

- 6

- 4

- 2

0

2

4

6

8G r a f i c a d e l a fu n c i o n x 3 - 1

Page 9: Solución de Ecuaciones de una variable F(x) = 0 · Secante Sustitución ... Pseudocódigo Bisección en Matlab %Metodo Grafica de la funcion ... El método de Falsa Posición Modificada

Ing. Deny González Msc.

SIMULACION NUMERICA / METODOS NUMERICOS

Ultima modificacion 15 / 04 / 08 *Rev 3

Método de Falsa Posición

Es un método basado en la interpolación lineal, en lugar de bisectar en forma monótona el intervalo, se utiliza una interpolación lineal ajustada a dos puntos extremos para encontrar una aproximación a la raíz.

Este método, como en el método de la bisección, parte de dos puntos que rodean a la raíz f(x) = 0, es decir, dos puntos a y b tales que f(a)*f(b) < 0. La siguiente aproximación, c, se calcula como la intersección con el eje X de la recta que une ambos puntos. La asignación del nuevo intervalo de búsqueda se realiza como en el método de la bisección: entre ambos intervalos, [a,c] y [c,b], se toma aquel que cumpla f(x)*f(c) < 0

Page 10: Solución de Ecuaciones de una variable F(x) = 0 · Secante Sustitución ... Pseudocódigo Bisección en Matlab %Metodo Grafica de la funcion ... El método de Falsa Posición Modificada

Ing. Deny González Msc.

SIMULACION NUMERICA / METODOS NUMERICOS

Ultima modificacion 15 / 04 / 08 *Rev 3

Método de Falsa Posición y Falsa Posición Modificada

De esta forma se converge mas rápido y se obtiene buena precisión, de manera tal que:

Una desventaja del método es cuando aparecen extremos fijos como lo muestra la grafica anterior, dicha condición desacelera la convergencia cuando los extremos del intervalo inicial es grande.

El método de Falsa Posición Modificada evalúa la existencia de un punto fijo, el cual lo divide a la mitad si este se ha repetido mas de dos veces.

)(*)()(

afafcf

acab

−−−=

Page 11: Solución de Ecuaciones de una variable F(x) = 0 · Secante Sustitución ... Pseudocódigo Bisección en Matlab %Metodo Grafica de la funcion ... El método de Falsa Posición Modificada

Ing. Deny González Msc.

SIMULACION NUMERICA / METODOS NUMERICOS

Ultima modificacion 15 / 04 / 08 *Rev 3

Método de Falsa Posición y Falsa Posición Modificada

Tabla Características del método

        

        

        

Errorf ( c )f ( b )f ( a )cbaIter

Dado f (x), a, c

f(a) * f(c) < 0

Iter = 0

Iter = Iter + 1

No existe raíz

Iter > Itermaxo

b-a < tol

b= a – c – a * f(a) f(c) - f(a)

f(a) * f(b) < 0

a = b , c = cf(a) = f(b) , f(c) = f(c)Kl = 1 , kr = kr + 1

Si kr > 1 ; f(c) = f(c)/2

a = a , c = bf(a) = f(a) , f(c) = f(b)

Kr = 0 , kl = kl + 1Si kl > 1 ; f(a) = f(a)/2

Flujograma

SiNo

Si

No

Page 12: Solución de Ecuaciones de una variable F(x) = 0 · Secante Sustitución ... Pseudocódigo Bisección en Matlab %Metodo Grafica de la funcion ... El método de Falsa Posición Modificada

Ing. Deny González Msc.

SIMULACION NUMERICA / METODOS NUMERICOS

Ultima modificacion 15 / 04 / 08 *Rev 3

Método de Falsa Posición y Falsa Posición Modificada

25)( xexf x −=

Ejemplo:

Solución:

- 1 - 0 . 8 - 0 . 6 - 0 . 4 - 0 . 2 0 0 . 2 0 . 4 0 . 6 0 . 8 1- 5

- 4

- 3

- 2

- 1

0

1

2G r a f i c a d e l a fu n c i o n e x p ( x ) - ( 5 * x 2 )

Solución Exacta

x = 0.60526

Iter a b c f (a) f (b) f ( c ) Error1 0 1 0,30471843 1 -2,28171817 0,891976472 0,30471843 1 0,50012941 0,891976469 -2,28171817 0,3982875 0,195410993 0,50012941 1 0,57441739 0,398287498 -2,28171817 0,12631875 0,074287984 0,57441739 1 0,59674224 0,126318752 -2,28171817 0,03568591 0,02232485

Falsa P. ModificadaIter a b c f (a) f (b) f ( c ) Error

1 0 1 0,30471843 1 -2,28171817 0,891976472 0,30471843 1 0,60979711 0,891976469 -1,14085909 -0,01920456 0,305078693 0,30471843 0,60979711 0,59720254 0,445988234 -0,01920456 0,03377423 0,012594574 0,59720254 0,60979711 0,60700905 0,033774231 -0,00960228 -0,00736494 0,0098065

Page 13: Solución de Ecuaciones de una variable F(x) = 0 · Secante Sustitución ... Pseudocódigo Bisección en Matlab %Metodo Grafica de la funcion ... El método de Falsa Posición Modificada

Ing. Deny González Msc.

SIMULACION NUMERICA / METODOS NUMERICOS

Ultima modificacion 15 / 04 / 08 *Rev 3

Método Newton Raphson

Si f(x) es continua y diferenciable dos veces, siendo Xo una aproximación inicial a la raíz buscada p de la función mediante el uso de la serie de Taylor de segundo orden alrededor de la estimación Xo. Tomando un polinomio de dicha aproximación se tiene

ooo

ooo xxxxxfxxxfxfxf <<−+−+= ξξ ;!2

)(*))(()(*)(')()(2''

Supongamos que tenemos la aproximación a la raíz de ixrx )(xf

La recta tangente que pasa por (xi , f(xi)) es

)(*)(')()( 1 ooo xxxfxfxG −+=

La raiz de G(x) = 0 denotada por x1 satisface

Page 14: Solución de Ecuaciones de una variable F(x) = 0 · Secante Sustitución ... Pseudocódigo Bisección en Matlab %Metodo Grafica de la funcion ... El método de Falsa Posición Modificada

Ing. Deny González Msc.

SIMULACION NUMERICA / METODOS NUMERICOS

Ultima modificacion 15 / 04 / 08 *Rev 3

Método Newton Raphson

La raiz de G(x) = 0 denotada por x1 satisface

)(')(

1 o

oxfxf

oxx −= y sucesivamente

Formula Newton R.

El método de Newton Raphson no trabaja con intervalos donde nos asegure que encontraremos la raíz, por lo que no hay ninguna garantía de que nos aproximaremos a dicha raíz. Desde luego, existen ejemplos donde este método no converge a la raíz, en cuyo caso se dice que el método diverge. Sin embargo, en los casos donde si converge a la raíz lo hace con una rapidez impresionante, por lo cual es uno de los métodos preferidos por excelencia.

Page 15: Solución de Ecuaciones de una variable F(x) = 0 · Secante Sustitución ... Pseudocódigo Bisección en Matlab %Metodo Grafica de la funcion ... El método de Falsa Posición Modificada

Ing. Deny González Msc.

SIMULACION NUMERICA / METODOS NUMERICOS

Ultima modificacion 15 / 04 / 08 *Rev 3

Método Newton Raphson

hxfhxfxf ii

i)()()( −+=

La derivada de la función se puede evaluar por aproximación por diferencias en vez de la forma analítica, de forma tal que f’(xi+1) mediante la aproximación por diferencias hacia adelante

El método de Newton Raphson puede utilizarse para hallar raíces complejas si el programa utilizado lo permite.

ibaf +=

Page 16: Solución de Ecuaciones de una variable F(x) = 0 · Secante Sustitución ... Pseudocódigo Bisección en Matlab %Metodo Grafica de la funcion ... El método de Falsa Posición Modificada

Ing. Deny González Msc.

SIMULACION NUMERICA / METODOS NUMERICOS

Ultima modificacion 15 / 04 / 08 *Rev 3

Método Newton Rapshon

25)( xexf x −=Ejemplo:

Solución:

- 1 - 0 . 8 - 0 . 6 - 0 . 4 - 0 . 2 0 0 . 2 0 . 4 0 . 6 0 . 8 1- 5

- 4

- 3

- 2

- 1

0

1

2G r a fi c a d e l a fu n c i o n e x p ( x ) - ( 5 * x 2 )

Solución Exacta

x = 0.60526

xexf x 10)(' −=

Iter x i f(x i) f ' (x i) x i+1 Error1 0,5 0,39872127 -3,35127873 0,6189758612 0,61897586 -0,05863036 -4,33273339 0,605443903 0,013531963 0,6054439 -0,00074631 -4,22237374 0,605267152 0,000176754 0,60526715 -1,2759E-07 -4,22093002 0,605267121 3,0228E-085 0,60526712 -3,5527E-15 -4,22092977 0,605267121 8,8818E-16

Tabla de Datos

Page 17: Solución de Ecuaciones de una variable F(x) = 0 · Secante Sustitución ... Pseudocódigo Bisección en Matlab %Metodo Grafica de la funcion ... El método de Falsa Posición Modificada

Ing. Deny González Msc.

SIMULACION NUMERICA / METODOS NUMERICOS

Ultima modificacion 15 / 04 / 08 *Rev 3

Método Secante

Método parecido al Newton Raphson, la diferencia radica en la evaluación de f’ la cual es evaluada con dos valores de iteraciones consecutivas de f.

El método de la Secante se basa en la formula de interpolación lineal al igual que el de Falsa Posición, diferenciando que este utiliza las extrapolaciones

Representación Geométrica

Sustituyendo en la fórmula de Newton-Raphson, obtenemos:

y

.

Sustituyendo en la formula de Newton Raphson, obtenemos:

Notese que para calcular el valor , necesitamos conocer los dos valores anteriores y

Ec. Secante

Page 18: Solución de Ecuaciones de una variable F(x) = 0 · Secante Sustitución ... Pseudocódigo Bisección en Matlab %Metodo Grafica de la funcion ... El método de Falsa Posición Modificada

Ing. Deny González Msc.

SIMULACION NUMERICA / METODOS NUMERICOS

Ultima modificacion 15 / 04 / 08 *Rev 3

Método Secante Sustituyendo en la fórmula de Newton-Raphson, obtenemos:

25)( xexf x −=

Ejemplo:

Solución:

Solución Exacta

x = 0.60526

Iter Xi -1 X i f ( Xi -1 ) f ( Xi ) Xi +1 Error1 0,5 1 0,39872127 -2,281718172 0,5743761012 1 0,5743761 -2,28171817 0,126482595 0,596730556 0,0223544553 0,5743761 0,59673056 0,12648259 0,035734431 0,605533199 0,0088026434 0,59673056 0,6055332 0,03573443 -0,001123385 0,605264904 0,000268295

Page 19: Solución de Ecuaciones de una variable F(x) = 0 · Secante Sustitución ... Pseudocódigo Bisección en Matlab %Metodo Grafica de la funcion ... El método de Falsa Posición Modificada

Ing. Deny González Msc.

SIMULACION NUMERICA / METODOS NUMERICOS

Ultima modificacion 15 / 04 / 08 *Rev 3

Ejercicios Resueltos

−⋅

−+

−= 2

2

22

2

4*05,0

44*05,0cos)(

mc

mksen

ckmc

mc

mkkf

Ejemplo 1.

Solución:

C = (a + b) / 2 = 1.5E9

El diseño del sistema de suspension del automovil comprende una solucion intermedia entre comodidad y estabilidad para todas las condiciones de manejo y velocidad. Se pide determinar la estabilidad del carro (k). Si la masa es de m = 1.2x106 gramos y tiene un sistema de amortiguamiento c= 1x107 g/s.

Datos: Aplicar el metodo de biseccion si con un intervalo inicial k es, a= 1x109, b=2x109

Si evaluamos con k=1E9

ra = 28.565227501671

rb = 68556546.0040104

F(1E9) = 0.286438599625321

Si evaluamos con k= 2E9

ra = 40.6116431033707

rb = 97467943.4480896

F(2E9) = -0.351813388279876

ra rarb

Page 20: Solución de Ecuaciones de una variable F(x) = 0 · Secante Sustitución ... Pseudocódigo Bisección en Matlab %Metodo Grafica de la funcion ... El método de Falsa Posición Modificada

Ing. Deny González Msc.

SIMULACION NUMERICA / METODOS NUMERICOS

Ultima modificacion 15 / 04 / 08 *Rev 3

Ejercicios ResueltosEjemplo 1.

Solución:

Solución Exacta = 1.397x109

El diseño del sistema de suspension del automovil comprende una solucion intermedia entre comodidad y estabilidad para todas las condiciones de manejo y velocidad. Se pide determinar la estabilidad del carro (k). Si la masa es de m = 1.2x106 gramos y tiene un sistema de amortiguamiento c= 1x107 g/s.

n= 1, c= 1.5e+009, f(a) = 0.28644, f(b) = -0.35181, f(c) =-0.066943, error = 5e+008 n= 2, c=1.25e+009, f(a) = 0.28644, f(b) =-0.066943, f(c) = 0.10069, error = 2.5e+008 n= 3, c=1.375e+009, f(a) = 0.10069, f(b) =-0.066943, f(c) = 0.014675, error =1.25e+008 n= 4, c=1.4375e+009, f(a) = 0.014675, f(b) =-0.066943, f(c) =-0.026677, error =6.25e+007 n= 5, c=1.4063e+009, f(a) = 0.014675, f(b) =-0.026677, f(c) =-0.0061375, error =3.13e+007 n= 6, c=1.3906e+009, f(a) = 0.014675, f(b) =-0.0061375, f(c) =0.0042344, error =1.56e+007 n= 7, c=1.3984e+009, f(a) =0.0042344, f(b) =-0.0061375, f(c) =-0.0009601, error =7.81e+006 n= 8, c=1.3945e+009, f(a) =0.0042344, f(b) =-0.0009601, f(c) = 0.001635, error =3.91e+006

En 37 iteraciones …

n=37, c=1.397e+009, f(a) =9.6551e-012, f(b) =-1.0436e-014, f(c) =4.8221e-012, error = 0.00728

Respuesta final =1.39699e+009

Page 21: Solución de Ecuaciones de una variable F(x) = 0 · Secante Sustitución ... Pseudocódigo Bisección en Matlab %Metodo Grafica de la funcion ... El método de Falsa Posición Modificada

Ing. Deny González Msc.

SIMULACION NUMERICA / METODOS NUMERICOS

Ultima modificacion 15 / 04 / 08 *Rev 3

Ejercicios ResueltosEjemplo 2.

Solución:

Solución Exacta = 63,62 kg

Estime la masa del paracaidista, en funcion a la siguiente ecuacion,

( ))1(** *tm

ce

cmgv

−−

=

( ) )*(*)(' *

+

−= −

mtg

cge

cgmf tm

c

Datos

g = 9,8c = 14v = 35t = 7

Derivada =

Iter xi f(xi) f ' (xi) xi+1 Error1 2,000000 -33,600000 0,700000 50,0000002 50,000000 -4,930045 0,408141 62,079258 12,0792583 62,079258 -0,507563 0,327696 63,628141 1,548883

Condicion Inicial, mo = 2 kg

Page 22: Solución de Ecuaciones de una variable F(x) = 0 · Secante Sustitución ... Pseudocódigo Bisección en Matlab %Metodo Grafica de la funcion ... El método de Falsa Posición Modificada

Ing. Deny González Msc.

SIMULACION NUMERICA / METODOS NUMERICOS

Ultima modificacion 15 / 04 / 08 *Rev 3

Ejercicios Propuestos

Chapra – Canale “Metodos Numericos para Ingenieros”, Cuarta edicion

Pag. 137-138

Ejer: 5.1, 5.3, 5.7, 5.12 (fp y nm)

Pag. 165

Ejer: 6.1, 6.6, 6.9 (a, b y c)