metodos1

8
Cap´ ıtulo 1 Introducci´ on Por lo general buscamos un modelo matem´ atico para resolver un determinado problema de ingenier´ ıa o de ciencias b´ asicas, muchas veces se buscan soluciones a estos problemas usando m´ etodos anal´ ıticos o exactos, tal como se hace en la matem´ atica; si bien es cierto estas soluciones anal´ ıticas resultan muy ´ utiles, ocurre que esto s´ olo se puede hacer para un n´ umero limitado de casos; en cambio los m´ etodos num´ ericos nos proporcionan una alternativa que ampl´ ıa considerablemente nuestra capacidad para resolver problemas mas generales. A continuaci´ on veremos mediante un ejemplo, como los m´ etodos num´ ericos resuelven un determinado problema en base a un modelo especifico. 1.1 Un modelo matem´ atico El fen´ omeno de la descomposici´on radiactiva simple cumple la siguiente ecuaci´on diferencial: x (t)= kx(t) (1.1) donde x(t) denota la cantidad de sustancia radiactiva presente en el instante t. Esta ecuaci´on nos dice que la velocidad de descomposici´on es proporcional a la cantidad de la sustancia radiactiva que permanece sin desintegrar. Soluci´ on anal´ ıtica: La soluci´ on de la ecuaci´ on diferencial (1.1) es inmediata: x(t)= x 0 e kt (1.2) donde, x 0 es la cantidad inicial cuando (t = 0). Seg´ un este modelo la sustancia se desintegra con un cierto decaimiento exponencial (k> 0), es decir, para valores grandes de t, x(t) se aproximar´ a a cero. Soluci´ on num´ erica: Reformularemos el modelo (1.1) para que podamos resolverlo mediante operaciones aritm´ eticas sencillas. Aproximaremos la raz´on de cambio de la velocidad con respecto al tiempo como sigue (vea el gr´afico): J. R. Avenda˜ no Quiroz

description

metodos numericos

Transcript of metodos1

  • Captulo 1

    Introduccion

    Por lo general buscamos un modelo matematico para resolver un determinado problema de ingeniera o deciencias basicas, muchas veces se buscan soluciones a estos problemas usando metodos analticos o exactos,tal como se hace en la matematica; si bien es cierto estas soluciones analticas resultan muy utiles, ocurreque esto solo se puede hacer para un numero limitado de casos; en cambio los metodos numericos nosproporcionan una alternativa que ampla considerablemente nuestra capacidad para resolver problemasmas generales.A continuacion veremos mediante un ejemplo, como los metodos numericos resuelven un determinadoproblema en base a un modelo especico.

    1.1 Un modelo matematico

    El fenomeno de la descomposicion radiactiva simple cumple la siguiente ecuacion diferencial:

    x(t) = kx(t) (1.1)

    donde x(t) denota la cantidad de sustancia radiactiva presente en el instante t.Esta ecuacion nos dice que la velocidad de descomposicion es proporcional a la cantidad de la sustanciaradiactiva que permanece sin desintegrar.

    Solucion analtica:La solucion de la ecuacion diferencial (1.1) es inmediata:

    x(t) = x0ekt (1.2)

    donde, x0 es la cantidad inicial cuando (t = 0).Segun este modelo la sustancia se desintegra con un cierto decaimiento exponencial (k > 0), esdecir, para valores grandes de t, x(t) se aproximara a cero.

    Solucion numerica:Reformularemos el modelo (1.1) para que podamos resolverlo mediante operaciones aritmeticassencillas. Aproximaremos la razon de cambio de la velocidad con respecto al tiempo como sigue(vea el graco):

    J. R. Avendano Quiroz

  • Universidad Nacional Mayor de San MarcosFacultad de Ingeniera de Sistemas e InformaticaDepartamento Academico de Ciencias de la Computacion

    Curso de Metodos Numericos 2013 II

    tan() =dx

    dt(tj) = x

    (tj)

    dx

    dt(tj) xt =

    x(tj+1) x(tj)tj+1 tj (1.3)

    reemplazando (1.3) en (1.1), obtenemos:

    x(tj+1) x(tj)tj+1 tj = kx(tj)

    considerando tj+1 tj = h constante (estrategia computacional), tenemos:

    x(tj+1) = (1 kh)x(tj) , j 0 (1.4)

    La ecuacion (1.4) es conocida como ecuacion en diferencias nitas.Veamos ahora un caso particular para:

    x0 = 1 , k = 0.25

    La solucion exacta es:x(t) = e0.25t (1.5)

    y la solucion aproximada queda expresada como:

    x(tj+1) = 0.75x(tj) (1.6)

    haciendo calculos obtenemos:

    j = 0 : x(t1) = 0.75x(t0) = 0.75

    j = 1 : x(t2) = 0.75x(t1) = 0.75 0.75 = 0.5625

    j = 2 : x(t3) = 0.75x(t2) = 0.4219

    j = 3 : x(t4) = 0.75x(t3) = 0.3164

    j = 4 : x(t5) = 0.75x(t4) = 0.2373

    j = 5 : x(t6) = 0.75x(t5) = 0.1780

    J. R. Avendano Quiroz 2

  • Universidad Nacional Mayor de San MarcosFacultad de Ingeniera de Sistemas e InformaticaDepartamento Academico de Ciencias de la Computacion

    Curso de Metodos Numericos 2013 II

    t Sol. Exacta Sol. Aproximada0 1 11 0.75 0.56252 0.5625 0.42193 0.4219 0.31644 0.3164 0.23735 0.2373 0.1780

    Observe algunas discrepancias pequenas en los resultados que se muestra en la tabla de valores; ustedpuede minimizar esto usando un valor mas pequeno de h para acercarse un poco mas a la solucionexacta, pero esto usando calculos manuales sera un trabajo agotador, una computadora nos resolveraesta tarea satisfactoriamente, de esta manera podramos modelar la ecuacion (1.1) sin necesidad deresolverla exactamente.Es obvio que hay que pagar un precio para obtener una mejor exactitud en los resultados y esta es lacantidad de operaciones y tiempo.Esto nos lleva a enfocar a los metodos numericos como las tecnicas mediante las cuales nos es posibleformular problemas de tal manera que podamos resolverlo haciendo uso de operaciones sencillas, esto esen terminos de un algoritmo. Gracias al rapido desarrollo de las computadoras en los ultimos anos, elpapel de los metodos numericos en la ingeniera se ha tornado importante.Tenemos algunas razones por el cual puede (y debe) estudiar los metodos numericos:

    1. Son herramientas muy poderosas para la resolucion de problemas, dado que manejan grandes sis-temas de ecuaciones e informacion, muy comun en la vida practica de la ingeniera, muchos de loscuales no pueden ser resueltos analticamente.

    2. Nos proporcionan el conocimiento basico y el marco teorico de un determinado metodo numericoque podra ser encontrado en algun software, as el conocimiento previo nos ayuda a darle un usoadecuado a tales programas (Matlab, Octave, mathcad, Mathematica, Mapple, herramientas dediseno CAD, SolidWorks entre otros).

    3. Puede implementar o disenar su propio esquema para resolver un determinado problema sin lanecesidad de adquirir un software demasiado sosticado y caro.

    4. Nos permite reforzar nuestros conocimientos de las matematicas, pues una de las motivaciones delos metodos numericos es reducir operaciones complicadas a operaciones aritmeticas basicas; as nospermite aumentar la capacidad de compresion y entendimiento en la materia correspondiente.

    Una comparacion de los resultados nos motiva a comentar sobre el error de aproximacion, esto se debe aque los metodos numericos son solo aproximaciones.

    1.2 Analisis de errores

    Los errores asociados a los calculos tambien se pueden caracterizar observando su precision y exactitud.

    J. R. Avendano Quiroz 3

  • Universidad Nacional Mayor de San MarcosFacultad de Ingeniera de Sistemas e InformaticaDepartamento Academico de Ciencias de la Computacion

    Curso de Metodos Numericos 2013 II

    Precision: nos referimos al numero de cifras signicativas que representan una cantidad. Exactitud: se reere a la aproximacion de un numero o de una medida al valor verdadero que sesupone representa.

    Se exige que los metodos numericos sean lo sucientemente exactos y precisos para que puedan resolverun problema de la ingeniera.Nosotros usaremos el termino error para representar la inexactitud y la imprecision. Estos erroresocurren por que las computadoras solo pueden manipular un numero nito de cifras signicativas durantelos calculos.Los errores pueden producirse de las siguientes formas:

    1. Error por Corte: consiste en retener los k primeros terminos e ignorar los terminos restantes dela representacion decimal completa.

    Por ejemplo, considere el valor de = 3.141592654, la cual ha sido proporcionado por una cal-culadora Casio fx-570s. Si consideramos 7 cifras signicativas para la aproximacion = 3.141592,esta generara un error por corte de:

    Ec =| |= 0.000000653

    2. Error por Redondeo: es el valor mas cercano al valor verdadero.

    Por ejemplo, sea = 3.141592654, entonces hago la suma:

    = 3.141592654+ 0.0000005 = 3.141592654+ 5 107 = 3.141593154y luego le aplico el corte a 7 cifras signicativas, de esta manera sera aproximado por:

    = 3.141593

    generando el error por redondeo:

    Er =| |= 0.000000153

    3. Error por Truncamiento: son aquellos que resultan al usar un esquema de aproximacion enlugar de un procedimiento matematico exacto.

    Ahora consideremos el siguiente ejemplo, si aproximamos la derivada de x(t) en tj mediante larazon de cambio respectiva tendremos:

    dx

    dt(tj) xt =

    x(tj+1) x(tj)tj+1 tj

    Aqu se introdujo un error de truncamiento en la solucion numerica, ya que esta ecuacion es unaaproximacion al valor verdadero de la derivada.Este error se obtiene de siguiente la manera:supongamos que f C() y h 0, entonces del Teorema de Taylor tenemos que f puedeexpresarse de la siguiente forma:

    f(t+ h) = f(t) + hf (t) +h2

    2f (t) +

    f(t+ h) f(t)h

    = f (t) +h

    2f (t) +

    si denotamos:

    O(h) =h

    2f (t) +

    entonces: ft =

    df

    dt+O(h)

    As, en nuestro ejemplo el error de truncamiento sera O(h) (orden h).

    J. R. Avendano Quiroz 4

  • Universidad Nacional Mayor de San MarcosFacultad de Ingeniera de Sistemas e InformaticaDepartamento Academico de Ciencias de la Computacion

    Curso de Metodos Numericos 2013 II

    Notacion cientca: es la forma estandar de representar un numero real cualquiera, esta consiste endesplazar el punto decimal a la derecha del primer dgito no nulo sin alterar la cantidad, por ejemplo:

    123.456789 = 1.23456789 102

    0.00001234 = 1.234 105

    Notacion normalizada: se representa al numero real desplazando el punto decimal a la izquierda delprimer dgito no nulo sin alterar la cantidad, por ejemplo:

    123.456789 = 0.123456789 103

    0.00001234 = 0.1234 104

    En general un numero real x se escribe de la forma:

    x = r 10n

    donde:1

    10 r < 1 y n Z

    Denicion 1.1 Sea P el valor aproximado de P , entonces:

    1. El error absoluto se dene como:| P P |

    2. El error relativo se dene como:| P P |

    | P | , P = 0

    Ejemplo 1.1 Dados P = 0.80cm y el valor aproximado P = 0.81cm obtenga el error absoluto y el errorrelativo producido.

    Solucion 1.1 Tenemos que:

    | P P | = 0.01cm

    | P P || P | =

    0.01cm

    0.80cm=

    0.1 1010.8

    = 0.125 101

    Ejemplo 1.2 Ahora considere los datos P = 0.80 102cm y su aproximado P = 0.81 102cm,obtenga el error absoluto y el error relativo producido.

    Solucion 1.2 Se tiene:

    | P P | = 0.01 102cm

    | P P || P | =

    0.01 102cm0.80 102cm =

    0.1 1010.8

    = 0.125 101

    Denicion 1.2 Sea P el valor exacto y P su valor aproximado, diremos que P se aproxima a P cont-dgitos signicativos si t es el entero mas grande no-negativo tal que:

    | P P || P | < 5 10

    t =10t

    2

    Ejemplo 1.3 Sea P = 3000, suponiendo que P se aproxima con t = 4 cifras signicativas, encuentretodos los posibles valores que cumplan esta condicion.

    J. R. Avendano Quiroz 5

  • Universidad Nacional Mayor de San MarcosFacultad de Ingeniera de Sistemas e InformaticaDepartamento Academico de Ciencias de la Computacion

    Curso de Metodos Numericos 2013 II

    Solucion 1.3 Utilizando la denicion expuesta se tiene:

    | P 3000 |3000

    < 0.5 104

    3000 0.5 104 < P 3000 < 3000 0.5 104

    3000 0.15 < P < 3000 + 0.15De donde se obtiene que:

    3000.15 < P < 3000.15

    Ejemplo 1.4 Dados y = 106m y y = 999996m, con cuantas cifras signicativas y esta proxima a y?.

    Solucion 1.4 Primero calculemos el error relativo:

    Er =| y y |=| 106m 999996m

    106m|= 0.000004

    Observe que

    Er = 0.000004 = 0.4 105 < 105

    2

    De donde se tiene que y se aproxima a y con t = 5 cifras signicativas.

    1.3 Aritmetica en punto otante

    Un numero cualquiera:x = d1d2d3...dkdk+1... R

    representado en punto otante (por corte o por redondeo) es como sigue:

    fl(x) = 0.d1d2d3...dk 10n

    donde:1 d1 9

    0 di 9 , i = 2, 3, , krecuerde que k es el numero de cifras signicativas.

    Ejemplo 1.5 Dada la constante de euler e = 2.718281828, represente dicho numero en punto otanteempleando 5 cifras signicativas por corte.

    Solucion 1.5 De lo expuesto en los conceptos anteriores la representacion en punto otante es:

    fl(e) = 0.27182 101 Denicion 1.3 Sea el smbolo , el cual indica as 4 operaciones aritmeticas basicas {+,,,}, y seanx e y numeros en punto otante, entonces:

    fl(x y) = (x y)(1 + ) , donde | |

    donde es conocido como el epsilon de maquina.Con frecuencia usamos fl(x) para representar el numero mas cercano en punto otante a x.

    Ejemplo 1.6 Sean x = 0.31426 103 e y = 0.92577 105, efectue la cuatro operaciones descritasempleando 5 cifras signicativas.

    J. R. Avendano Quiroz 6

  • Universidad Nacional Mayor de San MarcosFacultad de Ingeniera de Sistemas e InformaticaDepartamento Academico de Ciencias de la Computacion

    Curso de Metodos Numericos 2013 II

    Solucion 1.6 Entonces:x y = 0, 29093248 108

    x+ y = 0.9289126 105

    x y = 0.92262740 105

    x y = 0.3394579647 102Si la maquina opera con 5 decimales obtendramos:

    fl(x y) = 0.29093 108

    fl(x+ y) = 0.92891 105

    fl(x y) = 0.92263 105

    fl(x y) = 0.33945 102

    Ademas los errores relativos producidos son:

    | fl(x y) (x y) || x y | = 8.52431 10

    6

    | fl(x+ y) (x+ y) || x y | = 2.79897 10

    6

    | fl(x y) (x y) || x y | = 2.81804 10

    6

    | fl(x y) (x y) || x y | = 6.816333 10

    6

    Observe que todos ellos son menores que 105.

    Ejemplo 1.7 Sea f(x) = x(x+ 1 x ), evalue f(500) y despues hagalo usando aritmetica en punto

    otante con 6 cifras signicativas por redondeo.

    Solucion 1.7 Tenemos que:

    f(500) = 500(500 + 1

    500) = 500(22.38302929 22.36067977) = 11.17476

    Ahora empleemos aritmetica en punto otante:

    fl(500) = fl(22.36067977) = 0.223607 102

    fl(500 + 1) = fl(22.38302929) = 0.223830 102

    fl(500 + 1500) = fl(0.223830 102 0.223607 102)

    = fl(0.0223) = 0.223 101

    fl(500(500 + 1500)) = fl(0.5 103 0.223 101) = fl(11.15) = 0.1115 102

    Finalmente:fl(f(500)) = 0.1115 102 0.1117476 102 = f(500)

    Que ocurrira si en vez de utilizar 6 cifras signicativas empleamos 3 cifras?, veamos:

    fl(500) = fl(22.36067977) = 0.223 102

    fl(500 + 1) = fl(22.38302929) = 0.223 102

    fl(500 + 1500) = fl(0.223 102 0.223 102) = fl(0) = 0

    fl(500(500 + 1500)) = fl(0.5 103 00) = fl(0) = 0

    J. R. Avendano Quiroz 7

  • Universidad Nacional Mayor de San MarcosFacultad de Ingeniera de Sistemas e InformaticaDepartamento Academico de Ciencias de la Computacion

    Curso de Metodos Numericos 2013 II

    De esto se desprende que no es bueno emplear pocas cifras signicativas; esto tambien esta ligado cuandose tiene diferencias o divisiones entre dos numeros muy proximos o cercanos al cero. Usualmente en estoscaso se evita la perdida de cifras signicativas levantando la indeterminacion.Comparese los resultados obtenidos mediante el calculo directo y el empleado usando aritmetica en puntootante; se observa que la segunda esta produciendo la perdida de cifras signicativas, la cual es inherentea todo calculo computacional; en el transcurso de los temas se tratara en lo posible de evitar este problema,en algunas veces de manera satisfactoria, en otras articiosamente y en los mas dramaticos tendremosque emplear algo mas sosticado.

    J. R. Avendano Quiroz 8