Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x)...

110
Unidad 2 Solución de Ecuaciones No Lineales

Transcript of Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x)...

Page 1: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Unidad 2

Solución de Ecuaciones No Lineales

Page 2: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Raíces de ecuaciones 

Técnicas numéricas para encontrar:

• Raíces reales de ecuaciones algebraicas y trascendentes. Determinan sólo una raíz real. Métodos Cerrados y Métodos Abiertos

• Raíces reales y complejas de polinomios. Determinan todas las raíces. 

Page 3: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Problema del paracaidista

• Forma explícita: calcular v dadas g, m, c y t     

      Solución analítica

• Forma implícita: calcular c dadas g, m, v y t

Ecuación no lineal

            No tiene solución analítica !!!         Se resuelve numéricamente

v (t )=g m

c( 1−e

−cm

t )

f (c )=g m

c( 1−e

−cm

t ) −v=0

Page 4: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Métodos Cerrados

Métodos Cerrados: 1)Bisección 2)Falsa Posición La función cambia de signo en la vecindad de 

una raíz. Dos valores iniciales que “encierren” a la raíz.

Reducen  el  tamaño  del  intervalo  y  así convergen a la respuesta aproximada correcta.

Page 5: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Raíz de una EcuaciónDefinición: valor de x tal queEn los métodos cerrados se requieren dos valores iniciales: los extremos 

del intervalo xl y x

u (lower: inferior, upper: superior).

Generalmente si: f(x

l) y f(x

u) tienen signos opuestos: número impar de raíces

f(xl) y f(x

u) tienen el mismo signo: cero o un número par de raíces   

f (x )=0

Page 6: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Métodos Gráficos

Son útiles para: determinar los valores iniciales. visualizar propiedades de las funciones.

   Raíces múltiples                       Función discontinua

Raíz doble

Page 7: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Método de Bisección

[bisectar = dividir en dos segmentos iguales]

En general, si f(x) es real y continua en el  intervalo [xl  , x

u]  y  

f(xl)  y  f(x

u) tienen  signos  opuestos,  

es decir 

                       f(xl).f(x

u)<0      (1)  

entonces hay al menos una raíz entre 

xl  y x

u. 

Page 8: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Algoritmo del Método de Bisección

Paso 1: se elige  intervalo [xl  , x

u] donde haya cambio de signo de 

la función. Verificar con (1)

Paso 2: se aproxima la raíz 

como  el  punto  medio  del 

intervalo

                                       (2)

   fórmula de la bisección

x r=x l + x u

2 raíz verdadera

raíz aproximada

f (x )

x

f (x l)

f (xr )

f (xu)

x l xuxr xrv

Page 9: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Algoritmo del Método de Bisección

Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo

a) Si   f(xl).f(x

r)<0 ,

la raíz está en el 

subintervalo izquierdo

Hacer  xu  

        xr

y volver al Paso 2

Iteración actual

Iteración siguiente

Este subintervalo se descarta

raíz verdadera

raíz aproximada

f (x )

f (x l)

f (xr )

f (xu)

x l xu xxr

xrv

x l xu=xranterior

f (x l)⋅f (x r )<0

Page 10: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Algoritmo del Método de Bisección

 b) Si   f(xl).f(x

r)>0 ,

la raíz está en el 

subintervalo derecho

Hacer  xl          x

r

y volver al Paso 2

c) Si   f(xl).f(x

r)=0 ,

       la raíz es xr  ,

       termina el cálculo

Iteración actual

Iteración siguiente

Este subintervalo se descarta

f (x )

raíz aproximada

raíz verdadera

f (x l)

f (xr )

f (xu)

x l xu xxr xrv

x l=xranterior xu

f (x l)⋅f (x r )>0

Page 11: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Representación Gráfica del Método

Page 12: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)
Page 13: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)
Page 14: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Método de Bisección: Ejemplo 5.3

Encontrar la raíz de la función:

Elegimos el intervalo donde hay cambio de signo en la función, por ejemplo [12,16]:

Se cumple que   f(xl).f(x

u)<0     

f (x )=667.38

x( 1−e−0.146843 x )−40

Iteración xl

xu

f(xl) f(x

u)

0 12 16 6.06 ­2.26

Page 15: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Método de Bisección: Ejemplo 5.3

   

Page 16: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Método de Bisección: Ejemplo 5.3

Iteración xl xu f(xl) f(xu) xr f(xr) signo  f(xl) f(xr)

1 12 16 6.06 ­2.26 14 1.56 +

(cambio de signo en este intervalo)

Se hace:               xl=xr=14 Nuevo intervalo: [14 , 16]

Page 17: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Método de Bisección: Ejemplo 5.3

Iteración xl xu f(xl) f(xu) xr f(xr) signo  f(xl) f(xr)

2 14 16 1.56 ­2.26 15 ­0.42 ­

(cambio de signo en este intervalo)

Se hace:               xu=xr=15 Nuevo intervalo: [14 , 15]

Page 18: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Método de Bisección: Ejemplo 5.3

Iteración xl xu f(xl) f(xu) xr f(xr) signo  f(xl) f(xr)

3 14 15 1.56 ­0.42 14.5 0.55 +

(cambio de signo en este intervalo)

Se hace:              xl=xr=14.5 Nuevo intervalo: [14.5 , 15]

Page 19: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Ejemplo 5.3: Estimación del Error

Iteración xl xu xr a (%) t(%)

1 12 16 14 5.279

2 14 16 15 6.667 1.487

3 14 15 14.5 3.448 1.896

4 14.5 15 14.75 1.695 0.205

5 14.75 15 14.875 0.840 0.641

Valor 'verdadero' hasta 6 cifras:   x rverdadero

=14.7802

εa=|x rnuevo

−x ranterior

x rnuevo |⋅100 % εt=|x r

nuevo−x r

verdadero

x rverdadero |⋅100 %

Error relativo aproximado porcentual  Error relativo verdadero porcentual

Criterio de finalización de iteraciones:                                                                                         tolerancia 

εa <εs

(3) (4)

Page 20: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Método de Bisección: Curvas de Error

E t =|x rnuevo

−x rverd|⩽Δx /2

E a=|xrnuevo

−x rant|=Δx /2

La curva de  error  verdadero  siempre  está por debajo de la curva de error aproximado

Page 21: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Método de Bisección: Curvas de Error

     y      distantes

Iteración actual

x l xuxranteriorxr

v

x l xuxrnuevo

raíz verdadera cerca del centro del intervalo

|xrnuevo

−xrv|

|xrnuevo

−xranterior|

εa εt

     y      cercanos

Iteración anterior

Iteración actual

x l xuxranteriorxr

v

x l xuxrnuevo

raíz verdadera cerca del extremo del intervalo|xr

nuevo−xr

v|

|xrnuevo

−xranterior|

εa εt

Iteración anterior

εt=|x rnuevo

−xrverd

xrverd | εa=|x r

nuevo−xr

ant

x rnuevo |

Page 22: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Método de Bisección: Error Especificado

n=ln (Δ x 0 /E a ,d )

ln 2

Número de iteraciones para un error absoluto especificado

Sea  Ea,d

  el error  absoluto  deseado en  el cálculo y  x0 el  intervalo 

inicial de búsqueda. El número de iteraciones n que deben realizarse 

para determinar la raíz con ese error especificado es :

(5)

Page 23: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Método de Bisección: Pseudocódigo

    iniciar xl, xu                // Paso 1              iniciar iter=0, imax, es, xr = xudefinir funcion frepetir:   xv = xr                    // Para calcular ea    xr = (xl + xu)/2           // Paso 2   si xr != 0:       ea = abs((xr ­ xv)/xr)*100      iter = iter + 1           prueba = f(xl) * f(xr)     // Paso 3   si prueba < 0:      xu = xr   en caso contrario:      xl = xr   hasta que (ea<es  or  iter>=imax)mostrar xr

Page 24: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

• Código en Octave: biseccion.m• Código en Python: biseccion.py• Planilla de cálculo: biseccion.ods

Page 25: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Método de la Falsa Posición

Bisección no es muy eficiente.Se prefiere el método de la falsa posición o regula falsi.

Se aproxima la raíz como la 

intersección  de la recta con 

el eje x

Page 26: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Método de la Falsa Posición: Cálculo de xr

Triángulos semejantes , ángulos iguales:

Despejando xr: 

f (x )

f (x l)

f (xr )

f (xu)

x l xu xxr xrv

tanα=f (x l)

x r−x l

=f (xu)

x r−x u

x r=x u−f (x u)(x l−x u)

f (x l )− f (x u)fórmula de la falsa posición (6)

Page 27: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Algoritmo del Método de la Falsa Posición

Paso 1: idéntico al Paso 1 del método de bisección.Paso 2: se aproxima la raíz con la fórmula de la             falsa posición (6).Paso 3: idéntico al Paso 3 a) o b) del método de bisección.

Además, se introducen: cambios para reducir evaluaciones de la función  (ver pseudocódigo Método de Regula Falsi).

 contadores para evitar estancamiento  (ver pseudocódigo Método de Regula Falsi Modificado).

Page 28: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Representación Gráfica del Método

Page 29: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)
Page 30: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Representación Gráfica del Método

f (x )

raíz verdadera

f (x l)

f (xr1)

f (xu)

x l xu xxr1xr

v xr2

punto estancado

f (x )

raíz verdadera

f (x l)

f (xr1)

f (xu)

x l xu xxr1xr

v xr2

punto estancado

   f(x) no tiene un punto de inflexión en [xl  , x

u]

a)   f(xl).f(x

r)<0    

Page 31: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Representación Gráfica del Método

f (x )

raíz verdadera

f (x l)

f (xr1)

f (xu)

x l xu xxr1 xr

vxr2

punto estancado

f (x )

raíz verdadera

f (x l)

f (xr1)

f (xu)

x l xux

xr1

xrv

xr2

punto estancado

   f(x) no tiene un punto de inflexión en [xl  , x

u]

b)   f(xl).f(x

r)>0    

Page 32: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Representación Gráfica del Métodof (x )

f (x l1)

f (xr1)

f (xu1)

x l1 xu

1 xx l2=xr

1

xrv

f (x l)⋅f (x r )>0

xu3=xr

2 xu2

f (xr2)

x l3

xr3

Los superíndices denotan el número de iteración

Iteración 1: 

Iteración 2: 

Iteración 3: 

f (x l)⋅f (x r )<0

f (x l)⋅f (x r )>0

f(x) tiene un punto de inflexión en [x

l  , x

u]

Caso General:

Page 33: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Método de la Falsa Posición: Pseudocódigo

    iniciar xl, xu                            // Paso 1           iniciar iter=0, imax, es, xr = xudefinir funcion ffl = f(xl), fu = f(xu)    //cambios para reducir evaluaciones de la funciónrepetir:   xv = xr                                // Para calcular ea    xr = xu ­ fu*(xl­xu)/(fl­fu)           // Paso 2    si xr != 0:       ea = abs((xr ­ xv)/xr)*100      iter = iter + 1     fr = f(xr)      prueba = fl * fr                       // Paso 3   si prueba < 0:      xu = xr      fu = fr   en caso contrario:      xl = xr      fl = fr  hasta que (ea<es  or  iter>=imax)mostrar xr

Page 34: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Método de la Falsa Posición: Ejemplo 5.5

Resolver, por el método de la Falsa Posición, con      g = 9.8, m = 68.1, t = 10:

f (c )=g m

c( 1−e

−cm

t ) −v=0

• Planilla de cálculo: regula_falsi.ods

• Código en Octave (opción 1): regula_falsi.m 

• Código en Octave (opción 2): regula_falsi2.m

• Código en Python: regula_falsi.py

Page 35: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Método de la Falsa Posición: Curva de Error

Page 36: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Método de la Falsa Posición Modificado

    Existen problemas si la función es casi constante: el avance hacia la raíz es lento, ya que uno de los  puntos se estanca si la función no tiene un punto de inflexión .

Modificación de la falsa posición: cuando la función se estanca, se divide por  dos el valor de la misma en el punto estancado.

Se detecta el estancamiento a través de contadores.

Page 37: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Método de la Falsa Posición Modificado

    f (x )

raíz verdadera

f (x l1)

f (x l2)

f (xu1)

x l1 xu

1 xxr1 xr

vxr2

punto estancado en las tresprimeras iteraciones

xr3

f (x l3)

f (xu2)

f ( xu2)

2

3º iteración:          Regula Falsi          Regula Falsi Modificada

 1º iteración

  2º iteración3º iteración

Page 38: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Método de la Falsa Posición Modificado: Pseudocódigo

    iniciar xl, xu                            // Paso 1              iniciar iter=0, imax, es, xr = xudefinir funcion ffl = f(xl), fu = f(xu)          //cambios para reducir evaluaciones de la funciónrepetir:   xv = xr                                   // Para calcular ea    xr = xu ­ fu*(xl­xu)/(fl­fu)           // Paso 2    si xr != 0:       ea = abs((xr ­ xv)/xr)*100      iter = iter + 1     fr = f(xr)      prueba = fl * fr                       // Paso 3   si prueba < 0:      xu = xr      fu = fr      iu = 0  ,  il = il + 1    // contadores para evitar estancamiento       si (il>=2): fl = fl/2   en caso contrario:      xl = xr      fl = fr        il = 0  ,  iu = iu + 1    // contadores para evitar estancamiento      si (iu>=2): fu = fu/2 hasta que (ea<es  or  iter>=imax)mostrar xr

Page 39: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Falsa Posición Modificado: Ejemplo 5.5

Resolver por el método de la Falsa Posición Modificado, con  g = 9.8, m = 68.1, t = 10:

f (c )=g m

c( 1−e

−cm

t ) −v=0

• Código en Python: ejemplo5_5_RFM.py  • Planilla de cálculo: ejemplo5_5_RFM.ods 

                                                

Page 40: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Falsa Posición Modificado: Ejemplo 5.6

Resolver, por el método de la Falsa Posición Modificado, con  x

l = 0 , x

u = 1.3:

f (x )=x 10−1=0

• Código en Python (regula falsi):ejemplo5_6_RF.py  • Código en Octave: regFalsiMod.m• Código en Python:regFalsiMod.py  • Planilla de cálculo:  regFalsiMod.ods

                                               Problemas 5.1 a 5.19, pag. 139

Page 41: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Métodos Abiertos 

• También emplean iteraciones sucesivas.• No requieren que el intervalo inicial encierre a la 

raíz.• En general, son más eficientes que los cerrados, 

aunque no siempre funcionan.• Se extienden para sistemas de ecuaciones no 

lineales.

Page 42: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Métodos Cerrados y Abiertos 

Page 43: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

• Idea: reescribir la ecuación

                                  como

– Despejando x– Sumando x miembro a miembro

• Ejemplos:

Iteración de Punto Fijo 

f (x )=0

x=g (x )

x 2−2 x +3=0⇒x=

x 2+32

sin x=0⇒ x=sin x + x

Page 44: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

• Esquema iterativo:                                   (7)  

• Error aproximado:                                          (8)

Iteración de Punto Fijo: Cálculo de xr 

x i+1=g (x i )

fórmula de iteración de punto fijo

εa=|x i +1−x i

x i +1|⋅100%

Page 45: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Iteración de Punto Fijo: Ejemplo 6.1 Hallar, mediante iteración de punto fijo, la raíz de:

f (x )=e−x−x

Se reescribe como: x i+1=e−x i

Valor inicial: x 0=0

x 1=e−x 0=e−0=1

x 2=e−x 1=e−1=0.367879...

1º iteración:

2º iteración:

• Planilla de cálculo: punto_fijo.ods• Código en Python: punto_fijo.py• Código en Octave: punto_fijo.m

Page 46: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Resolver  x  =  g(x)  equivale  a encontrar  la  intersección  de  las gráficas de las funciones:

Esta intersección se denomina punto fijo de la función g(x)

f 1(x )=x

f 2(x )=e−x

Iteración de Punto Fijo: Interpretación Geométrica 

Page 47: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Representación Gráfica del Método

CONVERGE

DIVERGE

COMPORTAMIENTOMONÓTONO

COMPORTAMIENTOOSCILATORIO

Page 48: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Ecuación iterativa:

Solución exacta:

Restando m. a m.:

Por TVM:

                                       con:

Condición de Convergenciax i+1=g (x i )

x r=g (x r )

x r−x i +1=g (x r )−g (x i)

g ' (ξ)=g (x r )−g (x i )

x r−x i

x i≤ξ≤x r

Page 49: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Como          es proporcional a        , el método eslinealmente convergente o divergente.

Reemplazando:                                              (9)    

Por lo tanto:                                    (10)            

Condición de Convergencia

E t , i +1=g ' (ξ )E t , i

|g ' ( ξ)|<1

∀ξ∈[x i , x r ]

Esto significa que se asegura la convergencia si                  en todo el intervalo             . |g ' (x )|<1 [x 0 ,x r ]

E t ,i +1 E t ,i

Page 50: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

g 1(x )

x 0

Verificar la condición de convergencia de las funciones de iteración de punto fijo de:

CONVERGE

Condición de Convergencia: Ejemplo

x 2−2 x−2=0 , x 0=2

g 1(x )=√ 2 x +2

g ' 1(x )=1

√ 2 x +2

|g ' 1(2)|<1

Función de iteración g1(x):

Page 51: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

DIVERGE  de la raíz cercana a x

0=2

Condición de Convergencia: Ejemplo

g 2(x )=x 2

−22g ' 2(x )=x

|g ' 2(2)|>1

Otra función de iteración g2(x):

CONVERGE a otra raíz !! 

Cuidado:

g 2 (x )

x 0

Page 52: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Iteración de Punto Fijo: Pseudocódigo

    iniciar xv, iter=0, imax, es definir funcion grepetir:   xr = g(xv)   si xr != 0:       ea = abs((xr ­ xv)/xr)*100      iter = iter + 1           xv = xr  hasta que (ea<es  or  iter>=imax)mostrar xr

Page 53: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Igualando la pendiente a f '(x):

f ' (x i)=f (x i)−0

x i−x i +1

Despejando (...):

x i+1=x i−f (x i )

f ' (x i )

Método de Newton­Raphson

(11)fórmula de Newton­Raphson

Page 54: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)
Page 55: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)
Page 56: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)
Page 57: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Encontrar, por el método de Newton­Raphson, la 

raíz de: f (x )=e−x−x

f ' (x )=−e−x−1

f (x 0)=e−0−0=1

f ' (x 0)=−e−0−1=−2

x 1=x 0−f (x 0)

f ' (x 0)=0−

1−2

=0.5 ...

Método de Newton­Raphson: Ejemplo 6.3

La derivada de la función es :

Valor inicial: x 0=0

1º iteración:

Page 58: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Método de Newton­Raphson: Ejemplo 6.3

• Planilla de cálculo: newton_raphson.ods• Código en Python: newton_raphson.py• Código en Octave: newton_raphson.m

Page 59: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

La ecuación iterativa de NR:

Es  una  ecuación  de iteración de punto fijo:

Siendo:

Condición de Convergencia

x i+1=g (x i)

x i +1=x i−f (x i)

f ' (x i)

g (x i )=x i−f (x i )

f ' (x i )

g ' (x i )=f (x i ) f ' ' (x i)

[ f ' (x i)]2Si existe: ∀ x i∈[x 0 , x r ]

Page 60: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Condición de Convergencia

El Teorema de Newton­Raphson demuestra que se asegura la convergencia si                  en todo el intervalo             . 

|g ' (x )|<1[x 0 ,x r ]

Page 61: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Como           es proporcional a         , el método escuadráticamente convergente o divergente.

Análisis de Error ­ Newton Raphson

Partiendo de la serie de Taylor se puede demostrar que: 

E t ,i +1 E t ,i2

E t , i +1=−f ' ' (x r )

2 f ' (x r )E t , i

2

Esto  significa  que  el número de cifras  correctas aproximadamente  se  duplica  en  cada   iteración cuando  el  método  converge.

(12)

Page 62: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Desventajas del método de Newton­Raphson

Page 63: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Desventajas del método de Newton­Raphson

Page 64: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)
Page 65: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)
Page 66: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)
Page 67: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Newton­Raphson: Pseudocódigo

    iniciar xv, iter=0, imax, es definir funcion fdefinir funcion dfrepetir:   xr = xv ­ f(xv)/df(xv)      si xr != 0:       ea = abs((xr ­ xv)/xr)*100      iter = iter + 1           xv = xr  hasta que (ea<es  or  iter>=imax)mostrar xr

Page 68: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

x i−1x i

xx i+1x r

f (x )línea 

secante

Se aproxima la derivada f '(x) de Newton­Raphson con una diferencia finita  hacia  atrás:

Método de la Secante

f ' (x i)=f (x i−1)− f (x i)

x i−1−x i

Page 69: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Sustituyendo en la fórmula de Newton­Raphson y despejando xi+1:

Si bien necesita 2 puntos, no se clasifica como un método cerrado.

Método de la Secante

x i+1=x i−f (x i ) ( x i−1−x i )

f (x i−1)− f (x i )(13)

fórmula de la secante

Page 70: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)
Page 71: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)
Page 72: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)
Page 73: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)
Page 74: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)
Page 75: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Encontrar, por el método de la secante, la raíz de:f (x )=e−x

−x

Método de la Secante: Ejemplo 6.6

La raíz verdadera es:

Valores iniciales:1º iteración:

x=0.56714329 ...

x−1=0.0 , x 0=1.0

x−1=0 , f (x−1)=1.00000

x 0=1 , f (x 0)=−0.63212

x 1=1−−0.63212 (0−1)

1−(−0.63212)=0.61270 , ε t=8.0 %

Page 76: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Método de la Secante: Ejemplo 6.6

• Planilla de cálculo: secante.ods• Código en Python: secante.py• Código en Octave: secante.m

Page 77: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Como            es proporcional a         ,  el método tiene convergencia o divergencia superlineal, ya que                              .

Análisis de Error ­ Secante

Se puede demostrar que: 

E t ,i +1 E t ,i1.618

E t , i +1=| f ' ' (x r )

2 f ' (x r )|0.618

E t , i1.618 (14)

Lo que significa que:  E t , i +1=cte E t , i1.618

1< p=1.618 <2

Page 78: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Falsa Posición ­ Secante: Diferencias

Page 79: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Método de la Secante: Pseudocódigo

    iniciar x0, x1, iter=0, imax, es definir funcion frepetir:   x2 = x1 ­ (f(x1)*(x0­x1))/(f(x0)­f(x1))      si x2 != 0:       ea = abs((x2 ­ x1)/x2)*100      iter = iter + 1           x0 = x1; x1 = x2  hasta que (ea<es  or  iter>=imax)mostrar x2

Page 80: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Considera un cambio fraccionario para estimar la derivada:

f ' (x i)=f (x i+δx i)− f (x i)

δx i

Reemplazando en la ecuación de N­R:

x i+1=x i−δ x i f (x i )

f (x i +δ x i )− f (x i )

Método de la Secante Modificado

fórmula de la secante modificada

(15)

Page 81: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

No se pueden usar métodos cerradospara raíces múltiples pares.

Los métodos de Newton­Raphson y de la secante tienen  convergencia lineal cuando hay raíces múltiples. 

Raíces Múltiples

Page 82: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Se  puede  demostrar  que  u(x) tiene las mismas raíces que f(x):

u (x )=f (x )

f ' (x )

Planteando N­R para u(x): x i +1=x i−u (x )

u ' (x )Desarrollando (...),

x i +1=x i−f (x i) f ' (x i)

[ f ' (x i ) ]2− f (x i ) f ' ' (x i)

Método de Newton­Raphson Modificado

fórmula de Newton­Raphson modificada

(16)

Tiene convergencia  cuadrática para raíces múltiples.

Page 83: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Newton­Raphson Modificado: Pseudocódigo

iniciar xv, iter=0, imax, es definir funcion fdefinir funcion dfdefinir funcion d2frepetir:   xr = xv ­ (f(xv)*df(xv)) / (df(xv)**2­f(xv)*d2f(xvt))     si xr != 0:       ea = abs((xr ­ xv)/xr)*100      iter = iter + 1           xv = xr  hasta que (ea<es  or  iter>=imax)mostrar xr

Page 84: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Newton­Raphson Modificado: Ejemplo 6.9

Calcular, por los métodos de Newton­Raphson estándar y modificado, la raíz múltiple de:

f (x )=x 3−5 x 2

+7 x −3

• Código en Python: newton_ej6_9.py  • Código en Octave: newton_ej6_9.m• Código en Python: newtonRaphsonMod.py  • Código en Octave: newtonRaphsonMod.m

                                               Problemas 6.1 a 6.25, pag. 167

Valor inicial: x 0=0

Page 85: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Raíces de Polinomios 

• Deflación polinomial

• Método de Müller

Page 86: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

• Permite encontrar sucesivamente las raíces de un polinomio P(x).

• Una  vez  encontrada  una  raíz  x1,  para  no 

volver  a  la  misma  raíz  se  divide  a  P(x) por  (x  –  x

1).  El  nuevo  polinomio  ya  no 

posee la raíz x1.

Deflación Polinomial 

Page 87: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Encontrar las raíces de:P (x )=x 3−2 x 2

−x +2

Aplicando  el método  de Newton­Raphson  con  x0 = 0:

Primera raíz:  2.00000 ( 2 iteraciones)

Nuevo polinomio: 

g (x )=x 2−1

Deflación Polinomial: Ejemplo 

g (x )=P (x )

x−2

Page 88: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Nuevo polinomio:

Tercera raíz:  ­1.00000 (1 iteración)

Para realizar P(x)/(x­2), se puede utilizar Octave: >> P=[1 ­2 ­1 2];>> p1=[1 ­2];>> [g,r]=deconv(P,p1)g =   1   0  ­1r =   0   0   0   0

P (x )=1 x 3−2 x 2−1 x +2

p 1(x )=1 x −2

resto del cociente

Deflación Polinomial: Ejemplo 

Aplicando  el método de  N­R   con  x0 = 1:

h (x )=g (x )

x−1=x +1

Segunda raíz:   1.00000 ( 1 iteración)

Page 89: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Deflación Polinomial: Ejemplo 

Page 90: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Método de la secante:

2 puntos   función lineal→

Método de Müller:

3 puntos   función cuadrática→

Método de Müller 

Page 91: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Método de Müller 

Page 92: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Se escribe la función cuadrática de la forma:f (x )=a (x−x 2)

2+b (x−x 2)+c

Evaluando en los puntos x0, x1 y x2 (…) se tiene que:  c = f (x 2)

f (x 0)− f (x 2)=a (x 0−x 2)2+b (x 0−x 2)

f (x 1)− f (x 2)=a (x 1−x 2)2+b (x 1−x 2)

Método de Müller 

Reemplazando,

Page 93: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Haciendo: h0=x 1−x 0

Reemplazando en las anteriores y resolviendo para a y b (...), se tiene: 

a=δ1−δ0

h1+h 0

h1=x 2−x 1

δ0=f (x 1)− f (x 0)

x 1−x 0

δ1=f (x 2)− f (x 1)

x 2−x 1

b=a h1+δ1 c = f (x 2)

Método de Müller 

Page 94: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Para encontrar la raíz, x 3−x 2=−2 c

b±√b 2−4 a c

Se elige el signo central de modo que coincida con el signo de b.Se descarta un valor (x0, x1 ó x2):

– Raíces reales: el más alejado de x3

– Raíces complejas: (x0, x1, x2) = (x1, x2, x3)

Método de Müller 

x 3=x 2−2 c

b±√b 2−4 a c

(17)

fórmula de Müller

Page 95: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Encontrar una raíz de la función:

f (x )=x 3−13 x−12

Partiendo de (x0, x1, x2) = (4.5, 5.5, 5.0)

f (4.5)=20.625 , f (5.5)=82,875 , f (5.0)=48

h 0=5.5−4.5=1 h1=5.0−5.5=−0.5

δ0=f (x 1)− f ( x 0)

x 1−x 0

=62.25 δ1=f (x 2)− f (x 1)

x 2−x 1

=69.75

Método de Müller: Ejemplo 7.2 

Page 96: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

a=...=15 , b=62.25 , c =48

√b 2−4 a c =...=31.54461

x 3=x 2+−2 c

b+√ b 2−4 a c

=...=3.976487

εa=| 3.976487−53.976487 |=25.74 %

Planilla de cálculo: muller.ods

Método de Müller: Ejemplo 7.2 

Page 97: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

iniciar x0, x1, x2, iter=0, imax, es definir funcion ff0 = f(x0) ; f1 = f(x1) ; f2 = f(x2)

repetir:  h0 = x1 – x0            ; h1 = x2 ­ x1delta0 = (f1­f0) / h0   ; delta1 = (f2­f1) / h1 

a = (delta1­delta0) / (h1+h0)b = a*h1 + delta1    c = f2   

D = sqrt(b*b­4*a*c)     E = b + D       si abs(b­D) > abs(E):  E = b­D  

x3 = x2 – 2*c / E       f3 = f(x3) si x3 != 0: 

ea = abs((x3 ­ x2)/x3)*100   iter = iter + 1        x0 = x1; x1 = x2; x2 = x3f0 = f1; f1 = f2; f2 = f3 

hasta que (ea<es  or  iter>=imax)mostrar x3

Método de Müller: Pseudocódigo 

Page 98: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Encontrar las raíces de: f (x )=x 3−x−1

Método de Müller: Ejemplo  

f(x)  tiene  una  raíz real  y  dos  raíces complejas.

Page 99: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Método de Müller: Ejemplo  

• Planilla de cálculo: muller2.ods• Código en Python: muller2.py• Código en Octave: muller2.mPartiendo de: 

(x0, x1, x2) = (0, 1, 2), se encuentra 

(x0, x1, x2) = (0, 4, 7), se encuentra 

 

(x0, x1, x2) = (0, ­4, ­7), se encuentra 

x r 1=1.3247

x r 2=−0.66236+0.56228 i

x r 3=−0.66236−0.56228 i

Page 100: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

• Octave: Raíz de una función: fzero(funcion, valorInicial) >> f = inline('exp(­x)­x','x');

 >> xr = fzero(f,0.0)

 xr =  0.56714

Raíces de un polinomio: roots(vectorCoefPol) >> P = [1 0 ­1 ­1];     % x^3­x­1

 >> r = roots(P)

 r =

    1.32472 + 0.00000i

   ­0.66236 + 0.56228i

   ­0.66236 ­ 0.56228i

Herramientas disponibles  

Page 101: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

• Planilla de cálculo: búsqueda de valor destino,  destino.ods

• Python: librerías Numpy y Scipy

Raíz de una función: fsolve(funcion, valorInicial)>>> from scipy.optimize import fsolve

>>> def f(x): return exp(­x)­x

... 

>>> xr = fsolve(f,0.0)

>>> xr

0.56714329040978384

Herramientas disponibles  

Page 102: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Raíces de un polinomio:  

    roots(poly1d(vectorCoefPol))

 >>> from numpy import poly1d, roots

 >>> p=poly1d([1,0,­1,­1])     # x^3­x­1

 >>> p

 poly1d([ 1,  0, ­1, ­1])

 >>> r=roots(p)

 >>> r

 array([ 1.32471796+0.j, ­0.66235898+0.56227951j,

       ­0.66235898­0.56227951j])

 >>> xr2=r[1]          # se extrae la segunda raiz de r

 >>> xr2

 (­0.66235897862237292+0.56227951206230109j)

Herramientas disponibles  

Page 103: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Problemas 7.1 a 7.25, pag. 197

Page 104: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Estudio de casos (Cap. 8)

Page 105: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Ley de los gases no ideales

• Ley de los gases ideales

pV=n RT

• Ecuación de Van der Waals

p a

v2 v−b=RT , v=Vn

Volumen molar

Page 106: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Ley de los gases no ideales

• Calcular el volumen molar para el dióxido de carbono y el oxígeno

• Solucion en Octave: caso_81.m

R=0,082054l atmmol K

a b

CO2

3,592 0,04267

O2

1,360 0,03183

Page 107: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Flujo en canales abiertos

• Ecuación de continuidad Q=U A=U B H

Page 108: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Flujo en canales abiertos

• Ecuación de Manning U=

1nR2 / 3 S1 / 2

R=AP

Radio hidráulico

P=B2H Perímetro mojado

• Reemplazando (...),

Q=S1 / 2

nB H 5 / 3

B2H 2 / 3

Page 109: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Flujo en canales abiertos

• Datos*: Q = 4 m³/s, B = 2 m, S = 0.001, n = 0.015

• Incógnita = H• Resolver

• Resuelto por iteración de punto fijo en canales.ods

f H =S1 / 2

nBH 5 / 3

B2H 2 / 3−Q=0

Page 110: Unidad 2 - ayudasingenieria 2 - Raices... · Paso 3: seleccionar aquel subintervalo en que f(x) cambie de signo a) Si f(x l).f(x r)

Problemas 8.1 a 8.46, pag. 216