Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Cdigo: 9108
Profesor : Ing. Maria PRAMPARO
Apuntes de clase
Errores
ERRORES
Los mtodos numricos son tcnicas mediante las cuales es posible formular problemas de tal forma que sean resueltas con operaciones aritmticas. Los mismos nos vuelven aptos para entender esquemas numricos a fin de resolver problemas matemticos, de ingeniera y cientficos en una computadora. A pesar de que utilizando una tcnica numrica se obtienen resultados cercanos a la solucin exacta obtenida usando una tcnica analtica, hay una discrepancia, o error, porque el mtodo numrico involucra una aproximacin. Por este motivo la comprensin del concepto de error es muy importante para el uso efectivo de los mtodos numricos Hay casos en los que se dispone de solucin analtica lo cual nos permite computar el error con exactitud. En muchos problemas de la ingeniera aplicada no podemos obtener soluciones analticas. Por lo tanto, no podemos computar exactamente los errores asociados con nuestros mtodos numricos. En estos casos debemos conformarnos con aproximaciones o estimaciones de los errores. Las dos principales fuentes de error numrico son: el error por redondeo y el error de truncamiento. El error por redondeo se origina porque las computadoras pueden representar solamente un nmero finito de dgitos. El error de truncamiento es la discrepancia introducida por el hecho de que los mtodos numricos pueden emplear aproximaciones para representar operaciones matemticas y cantidades exactas. 1. Dgitos significativos Antes de discutir los errores asociados con los mtodos numricos, es til repasar conceptos relacionados con la representacin aproximada de los nmeros mismos.
Errores
Siempre que empleamos un nmero en una operacin, debemos asegurarnos de que puede ser usado con certeza. Por ejemplo, la Fig. 1 muestra el velocmetro y el odmetro de un vehculo. La inspeccin visual del velocmetro indica que el vehculo est viajando a una velocidad de entre 48 y 49 km/h. Debido a que el indicador est ms arriba que el punto medio entre los marcadores del medidor, podemos decir con seguridad que el vehculo est viajando a aproximadamente 49 km/h. Confiamos en este resultado porque dos o ms personas leyendo este medidor llegaran a la misma conclusin. Sin embargo, supongamos que insistimos en que la velocidad debe ser estimada con decimales. En este caso, una persona podra decir 48,8 mientras que otra podra decir 48,9 km/h. Por lo tanto, debido a las limitaciones de este instrumento, solamente los primeros dos dgitos pueden ser usados con certeza.
Los estimados para el tercer dgito (o los dgitos sucesivos) deben ser vistos como aproximaciones. Sera absurdo decir que en base a lo que marca este velocmetro, el vehculo est viajando a 48,8642138 km/h. Sin embargo, el odmetro provee hasta seis de tales dgitos. De la Fig.1 podemos concluir que este vehculo ha viajado a un poco menos de 87324,5 km durante su vida til. En este caso, el sptimo dgito (o los dgitos sucesivos) es incierto. El concepto de nmero, o dgito, significativo ha sido desarrollado para designar formalmente la confiabilidad del valor numrico. Los dgitos significativos de un nmero son aquellos que pueden ser utilizados con certeza. Corresponden al nmero de 2
Errores
ciertos dgitos ms un dgito estimativo. Por ejemplo, el velocmetro y el odmetro en la Fig. 1 nos muestran lecturas de tres y siete nmeros significativos respectivamente. Para el velocmetro, los dos nmeros verdaderos son 48. Es convencional fijar el dgito estimativo en la mitad de la divisin menor en el instrumento de medicin. Por lo tanto, la lectura del velocmetro consistira en los tres nmeros significativos: 48,5. De manera similar, la lectura del odmetro nos brindara un nmero significativo de siete dgitos: 87324,45. A pesar de que determinar los dgitos significativos de un nmero es usualmente un procedimiento simple, algunos casos pueden originar confusin. Por ejemplo, los ceros no son siempre dgitos significativos porque pueden ser necesarios solamente para ubicar un punto decimal. Los nmeros 0,00001845, 0,0001845 y 0,001845 tienen todos cuatro dgitos significativos. De manera similar, cuando se usan ceros sucesivos en nmeros grandes, no est claro cuntos, si es que hay alguno, de los ceros son significativos. Por ejemplo, a primera vista, el nmero 45300 puede tener tres, cuatro o cinco dgitos significativos dependiendo de si se conocen los ceros con certeza. Tal incertidumbre puede ser resuelta utilizando notacin cientfica, donde 4,53 x 104, 4,530 x 104 y 4,5300 x 104 designan que el nmero tiene tres, cuatro y cinco valores significativos respectivamente. El concepto de dgitos significativos tiene dos implicancias importantes para nuestro estudio de mtodos numricos: 1. Los mtodos numricos brindan resultados aproximados. Debemos por lo tanto desarrollar criterios para especificar qu nivel de certeza tenemos en nuestro resultado aproximado. Una manera de hacerlo es en trmino de dgitos significativos. Por ejemplo, podemos decidir que nuestra aproximacin es aceptable si es correcta en cuatro dgitos significativos. 2. A pesar de que cantidades como , o 7 representan cantidades especficas, no pueden ser expresadas exactamente por un nmero limitado de dgitos. Por ejemplo, = 3,141592653589793238462643 ad infinitum. Debido a que las computadoras retienen solo un nmero finito de 3
Errores
dgitos significativos, tales valores nunca pueden ser representados con exactitud.
2. Exactitud y precisin Los errores asociados con los clculos y mediciones pueden ser caracterizados con respecto a su exactitud y precisin. El trmino exactitud se refiere a cun cercano un valor computado o medido est del valor real. La precisin se refiere a cun cercano estn unos de otros, los valores individuales computados o medidos. Estos conceptos pueden ser ilustrados grficamente por medio de la analoga de la prctica de tiro al blanco. Los impactos de las balas en cada blanco en la Fig. 2 pueden ser considerados como las predicciones de una tcnica numrica, donde el centro del blanco representa la verdad. La inexactitud (tambin llamada desviacin) se define como una desviacin sistemtica de la verdad. Por lo tanto, a pesar de que los disparos en la Fig. 2.c estn agrupados ms cercanamente que los de la Fig. 2.a, los dos casos estn igualmente desviados porque estn centrados en el cuadrante superior izquierdo del blanco. La imprecisin (tambin llamada incertidumbre), por otro lado, se refiere a la magnitud de la dispersin. Sin embargo, a pesar de que las Fig. 2.b y 2.d son igualmente exactas (ambas estn centradas en el blanco) la ltima es la ms precisa porque los disparos estn agrupados ms cerca del centro. Los mtodos numricos deben ser los suficientemente exactos como para satisfacer los requerimientos de un problema de ingeniera. Tambin deben ser lo suficientemente precisos para un adecuado diseo en ingeniera. Utilizaremos el trmino error para representar inexactitud e imprecisin en nuestras predicciones.
Errores
+ precisa
+ precisa
punto objetivo
a)
c)
b) + exactas
d)
Figura 2. Un ejemplo que ilustra los conceptos de exactitud y precisin. (a) inexacto e impreciso; (b) exacto e impreciso; (c) inexacto y preciso; (d) exacto y preciso
3. Definiciones de error Los errores numricos surgen del uso de aproximaciones para representar operaciones matemticas y cantidades exactas. Estos incluyen: errores por truncacin, que surgen cuando se usan aproximaciones para representar procedimientos matemticos exactos; y errores por redondeo que resultan cuando se utilizan nmeros con limitados dgitos significativos para representar nmeros exactos. Para ambos tipos de errores, la relacin entre el resultado exacto, o verdadero, y la aproximacin puede ser formulada de la siguiente manera: Valor verdadero = Aproximacin + Error (1)
Reacomodando la ecuacin (1), podemos decir que el error numrico es igual a la diferencia entre la verdad y la aproximacin:
(2)
donde Et se usa para designar el valor exacto del error. El subndice t se usa para designar que ese es el error verdadero (por el vocablo en ingls), en contraste con otros casos que ya explicaremos, donde un valor estimativo aproximado del error debe ser empleado. Un defecto de esta definicin es que no tiene en cuenta el orden de magnitud del valor que se est examinando. Por ejemplo, un error de un centmetro es mucho ms significativo si estamos midiendo un remache que si estamos midiendo un puente. Una 5
Errores
forma de considerar la magnitud de las cantidades en evaluacin es normalizar el error con respecto al valor verdadero: Error relativo fraccional verdadero = error verdadero valor verdadero
El error relativo puede ser multiplicado por el 100% para expresarlo como:
(3)
Ejemplo 1: Clculo de errores Planteo: Suponga que tiene la tarea de medir el largo de un puente y de un remache y obtiene 9999 y 9 cm., respectivamente. Si los valores verdaderos son 10000 y 10 cm. respectivamente, calcule (a) el error verdadero y (b) el porcentaje de error relativo verdadero para cada caso. Solucin (a) el error de medicin del puente es [Ecuacin (2)] Et = 10000 9999 = 1 cm. y el del remache es Et = 10 9 = 1 cm. (b) el porcentaje de error relativo del puente es [Ecuacin (3)] t = 1 100% = 0,01% 6
Errores
10000 y el del remache es t = 1 10 Por lo tanto, a pesar de que ambas mediciones tienen un error de 1 cm., el error relativo del remache es mucho mayor. Podemos concluir que hemos hecho un trabajo adecuado en la medicin del puente, mientras que nuestro estimativo para el remache deja mucho que desear. Observe que para las ecuaciones (2) y (3) E y estn sub-indicadas con una t para significar que el error est normalizado al valor verdadero. En el ejemplo 1 se nos provey este valor. Sin embargo, en situaciones reales, tal informacin est raramente a disposicin. En los mtodos numricos, el valor verdadero ser conocido solamente cuando tratemos con funciones que pueden ser resueltas analticamente. Este es el caso tpico en que investigamos el comportamiento terico de una tcnica particular para sistemas simples. Sin embargo, en las aplicaciones del mundo real, es obvio que no conoceremos la respuesta de antemano. En estas situaciones, una alternativa es normalizar el error utilizando el mejor estimativo del valor real disponible, es decir, la aproximacin en s misma, como: 100% = 10%
(4)
donde el subndice a significa que el error est normalizado a un valor aproximado. Uno de los desafos de los mtodos numricos es estimar el error en ausencia de conocimiento acerca del valor verdadero. Por ejemplo, ciertos mtodos numricos utilizan un enfoque iterativo para calcular las respuestas. En este enfoque, una aproximacin actual se realiza sobre la base de una aproximacin previa. Este proceso se realiza reiteradamente para calcular sucesivamente mejores y mejores aproximaciones. En tales casos, el error se estima como la diferencia entre 7
Errores
aproximaciones previas y actuales. Por lo tanto, el porcentaje de error relativo se determina de acuerdo a
(5)
Los signos desde las ecuaciones (3) hasta la (5) pueden ser positivos o negativos. Si la aproximacin es mayor que el valor real (o la aproximacin previa es mayor que la aproximacin actual), el error es negativo; si la aproximacin es menor que el valor real, el error es positivo. Tambin, para las ecuaciones (3) hasta la (5), el denominador puede ser menor que cero, lo que puede conducir a un error negativo. A menudo, cuando se realizan clculos, podemos no preocuparnos por el signo del error pero podemos estar interesados en si el porcentaje de error absoluto es menor que el porcentaje de tolerancia especificado previamente s. Por lo tanto, es til emplear el valor absoluto de las ecuaciones (2) a la (5). En tales casos, el clculo se repite hasta que
a <s
(6)
Si esta relacin se mantiene, se asume que nuestro resultado estar dentro del nivel aceptable especificado previamente s. Tambin es conveniente relacionar estos errores al nmero de dgitos significativos en la aproximacin. Se puede demostrar (Scarborough, 1966) que si se satisface el siguiente criterio podemos asegurar que el resultado es correcto a por lo menos n valores significativos.
s = (0,5 x 10 2-n) %
Ejemplo 2: Estimacin del error para mtodos iterativos
(7)
Errores
Planteo: en matemtica, las funciones pueden ser representadas a menudo por series infinitas. Por ejemplo, la funcin exponencial puede ser calculada usando
ex = 1 + x +
x 2 x3 xn + + ..... + n! 2 3!
Por lo tanto, a medida que se agregan ms trminos a la secuencia, la aproximacin se transforma en un acercamiento cada vez mejor del valor verdadero de ex. Esta ecuacin se llama expansin de series Maclaurin. Comenzando con la versin ms simple, ex =1, agregue trminos de a uno por vez para estimar e0,5. Despus de que cada trmino es agregado, compute el porcentaje relativo verdadero y aproximado de errores con las ecuaciones (3) y (5) respectivamente. Observe que el valor verdadero es e0,5=1,648721.. Agregue trminos hasta que el valor absoluto de la estimacin de error aproximada a sea menor que el criterio de error especificado previamente s llegando a tres cifras significativas. Solucin: Primero, la ecuacin (7) puede ser empleada para determinar el criterio de error que asegure que el resultado es correcto para, al menos, tres cifras significativas: s = (0,5 x 10 2-3) % = 0,05% As, agregaremos trminos a la serie hasta que a quede por debajo de este nivel. La primera estimacin es simplemente igual a la ecuacin (E.2.1) con un solo trmino. As, la primera estimacin es igual a 1. La segunda estimacin es luego generada agregando el segundo trmino: ex = 1 + x O para: x = 0,5
9
Errores
e0,5 = 1 + 0,5 Esto representa un porcentaje del error relativo verdadero de [Ec.(3)] 1, 648721 1,5 100% = 9, 02% 1, 648721
t =
La ecuacin (5) puede ser usada para determinar una estimacin aproximada de error, como:
Como a no es menor que el valor requerido de s, continuaremos el clculo agregando otro trmino, x2/2! y repitiendo los clculos de error; el proceso continua hasta que a < s. El clculo completo puede resumirse como N de Trminos Resultado 1 2 3 4 5 6 1 1,5 1,625 1,645833333 1,648437500 1,648697917 t (%) 39,3 9,02 1,44 0,175 0,0172 0,00142 33,3 7,69 1,27 0,158 0,0158 a (%)
As, despus de que seis trminos han sido incluidos, la aproximacin de error cae debajo de s = 0,05% y el clculo termina. Sin embargo, observe que el resultado no es exacto en tres cifras significativas sino que es exacto en cinco. Esto es porque la ecuacion (7) es conservadora.
10
Errores
Esto significa que aseguran que el resultado es al menos tan bueno como se especifica.
4. Errores de Redondeo
Como ha sido mencionado previamente, los errores de redondeo se originan por el hecho que las computadoras retienen slo un nmero fijo de cifras significativas durante el clculo. Nmeros como , 7 no se pueden expresar con un nmero fijo de cifras significativas. Por lo tanto no pueden ser representados exactamente por la computadora. Adems, como las computadoras usan una representacin base-2, no pueden representar de manera precisa ciertos nmeros exactos de base-10. La discrepancia presentada por esta omisin de cifras significativas es llamada error de redondeo.
4.1. Representacin de nmeros en computadoras
Los errores de redondeo numricos estn directamente relacionados con la manera en que los nmeros son almacenados en la computadora. La unidad fundamental por la cual la informacin es representada se llama palabra. Esta es una entidad que consiste en una cadena de dgitos binarios o bits. Los nmeros se almacenan en una o ms palabras. Para entender como se consigue esto, debemos primero revisar material relacionado a sistemas numricos. Sistemas Numricos. Un sistema numrico es simplemente una convencin para representar cantidades. Como tenemos 10 dedos en las manos y los pies, el sistema numrico con el que estamos ms familiarizados es el sistema decimal, o de base 10. La base es el nmero usado como referencia para construir el sistema. El sistema de base 10 usa los 10 dgitos -0,1,2,3,4,5,6,7,8,9- para representar nmeros. Estos dgitos son suficientes por si mismos para contar de 0 a 9. Pero para cantidades mayores se usan combinaciones diferentes de estos dgitos bsicos, con la posicin o el valor de ubicacin especificando la magnitud. El ltimo dgito a la derecha en un nmero entero representa un nmero del 0 al 9. El segundo dgito desde la derecha representa un mltiplo de 10. El tercer dgito desde la derecha 11
Errores
representa un mltiplo de 100 y as sucesivamente. Por ejemplo, si tenemos el nmero 86.409, tenemos ocho grupos de 10.000, seis grupos de 1000, cuatro grupos de 100, cero grupo de 10, y nueve unidades. Podemos escribirlo de la siguiente forma: (8 x 104) + (6 x 103) + (4 x 102) + (0 x 101) + (9 x 100) = 86.409 La Fig. 3a provee una representacin visual de cmo un nmero se formula en el sistema base-10. Este tipo de representacin se llama notacin por posicin. Como el sistema decimal es tan comn a menudo no se consideran otras alternativas. Por ejemplo, si los seres humanos hubiramos tenido ocho dedos en las manos y los pies, hubiramos sin dudas desarrollado un sistema de representacin de base- 8 u octal. Como las unidades lgicas primarias de las computadoras digitales son componentes electrnicos de encendido/apagado, los nmeros en informtica se representan por el sistema binario o base-2. As como en el sistema decimal, las cantidades se pueden representar usando la notacin por posicin. Por ejemplo, el nmero binario 11 es equivalente a (1x 21) + (1 x 20) = 2 +1 = 3 en el sistema decimal. La Fig.3b ilustra un ejemplo ms complicado.
Figura 3. Sistemas decimales de base 10 (a) y binario (b). En (b), el nmero binario 10101101 es equivalente al nmero decimal 173.
12
Errores
Representacin de enteros. Ahora que hemos repasado cmo los nmeros de base-10 pueden representarse de forma binaria, es simple entender cmo los enteros se representan en la computadora. El abordaje ms directo, llamado mtodo de magnitud con signo, emplea el primer bit de una palabra para indicar un signo, con cero para positivo y uno para negativo. Los bits restantes se usan para almacenar el nmero. Por ejemplo, el valor entero de -173 se almacenar en una computadora de 16-bits, como en la Fig. 4.
Figura 4. Representacin del decimal entero -173 en una computadora de 16 bits utilizando el mtodo de magnitud con signo.
Planteo. Determine el rango de enteros de base-10 que pueden ser representados en una computadora de 16-bits. Solucin. De los 16 bits, el primero lleva el signo. Los restantes 15 bits pueden contener nmeros binarios de 0 a 111111111111111. El lmite superior se puede convertir a un entero decimal, de la siguiente manera: (1 x 214) + (1 x 213) + (1 x 212) + . + (1 x 21) + (1 x 20) el cual equivale a 32.767 (observe que esta expresin puede ser evaluada como 215-1 ). Por lo tanto una palabra de computadora de 16-bits puede almacenar enteros decimales comprendidos entre -32.767 a 32.767. Adems, como el cero es definido como 0000000000000000, es 13
Errores
redundante usar el nmero 1000000000000000 para definirlo como menos cero. Por lo tanto se lo utiliza para representar un nmero negativo adicional -32.768 y el rango es desde -32.768 a 32.767.
El ejemplo 3 sirve para ilustrar cmo todas las computadoras digitales estn limitadas en su capacidad de representar enteros. Esto significa que nmeros por arriba o debajo del rango no se pueden representar. Una limitacin ms se presenta en el almacenamiento y la manipulacin de cantidades fraccionales como se describe a continuacin Representacin de punto flotante. Las cantidades fraccionales son tpicamente representadas en las computadoras usando el punto flotante. Desde este enfoque, el nmero se representa como una parte fraccionaria, llamada mantisa y una parte entera llamada exponente: m . be Donde m = mantisa, b = la base del sistema numrico usado, y e=el exponente. Por ejemplo, el nmero 156,78 puede representarse como 0,15678 x 103 en un punto flotante de base 10. La Fig.5 muestra una manera en que el punto flotante puede ser almacenado en una palabra. El primer bit se reserva para el signo, la siguiente serie de bits para el exponente sealado y los ltimos bits para la mantisa.
14
Errores
Observe que la mantisa generalmente se normaliza si tiene como dgito inicial a un cero. Por ejemplo, suponiendo que la cantidad 1/34 = 0,029411765 se almacena en punto flotante de base-10 que permite almacenar slo cuatro posiciones decimales. Por lo tanto, 1/34 se almacenara como: 0,0294 x 100 Sin embargo, en este proceso, la inclusin de un cero sin finalidad a la derecha de la coma decimal nos obliga a dejar caer el dgito 1 en la quinta posicin decimal. El nmero puede ser normalizado para quitar el cero inicial multiplicando la mantisa por 10 y bajando el exponente en uno para dar: 0,2941 x 10-1 Por lo tanto, retenemos una cifra adicional significativa cuando el nmero es almacenado. La consecuencia de la normalizacin es que el valor absoluto de m es limitado. Esto es,
1 m 1 b
(8)
Donde b es la base. Por ejemplo, para un sistema base-10 , m variara entre 0,1 y 1 , y para un sistema base-2, entre 0,5 y 1. La representacin del punto flotante permite que fracciones y nmeros muy grandes puedan ser expresados en la computadora. Sin embargo, tiene algunas desventajas. Por ejemplo, los nmeros de punto flotante ocupan ms espacio y llevan ms tiempo de procesamiento que los nmeros enteros. Otro aspecto ms importante es que su uso presenta una fuente de error porque la mantisa considera solamente un nmero limitado de cifras significativas. Por lo tanto, se introduce un error de redondeo.
15
Errores
Planteo. Crear un conjunto de nmeros de punto flotante para mquinas que almacenan informacin usando palabras de 7-bits. Emplear el primer bit para el signo del nmero, los siguientes tres para el signo y la magnitud del exponente, y los ltimos tres para la magnitud de la mantisa. (Fig. 6) Solucin. El nmero positivo ms pequeo se muestra en la Fig. 6. El 0 inicial indica que la cantidad es positiva. El 1 en la segunda posicin indica que el exponente tiene signo negativo. Los 1 en la tercera y cuarta posicin dan un valor mximo al exponente de 1 x 21 + 1 x 20 = 3 Por lo tanto el exponente ser -3. Finalmente la mantisa se especifica por el 100 en los ltimos tres lugares, lo cual se ajusta a 1 x 2-1 + 0 x 2-2 + 0 x 2-3 = 0,5
A pesar de que una mantisa menor es posible (ej. 000, 001, 010, 011), se usa el valor de 100 debido al lmite impuesto por la normalizacin [Eq. (8)]. As, el menor nmero positivo posible para este sistema es +0,5 2-3 16
Errores
que equivale a 0,0625 en el sistema base-10. Los mayores nmeros siguientes progresan aumentando la mantisa, como:
0 1 11 101= (1 x 2-1 + 0 x 2-2 + 1 x 2-3) x 2-3 = (0,078125)10 0 1 11 110= (1 x 2-1 + 1 x 2-2 + 0 x 2-3) x 2-3 = (0,093750)10 0 1 11 111= (1 x 2-1 + 1 x 2-2 + 1 x 2-3) x 2-3 = (0,109375)10 Observe que los equivalentes de base-10 estn espaciados de manera constante con intervalos de 0,015625. En este punto, para continuar aumentando, debemos disminuir el exponente a 10, lo cual da un valor de: 1 x 21 + 0 x 20 = 2 La mantisa es reducida hasta el menor valor de 100. Por lo tanto, el siguiente nmero es: 0 1 10 100= (1 x 2-1 + 0 x 2-2 + 0 x 2-3) x 2-2 = (0,125000)10 Esto an representa una diferencia de 0,125000 0,109375 = 0,015625. Sin embargo, ahora que los nmeros mayores son generados aumentando la mantisa, la diferencia se agranda a 0,03125: 0 1 10 101= (1 x 2-1 + 0 x 2-2 + 1 x 2-3) x 2-3 = (0,156250)10 0 1 10 110= (1 x 2-1 + 1 x 2-2 + 0 x 2-3) x 2-3 = (0,187500)10 0 1 10 111= (1 x 2-1 + 1 x 2-2 + 1 x 2-3) x 2-3 = (0,218750)10 Este patrn se repite a medida que aumentamos cada unidad, hasta que se alcanza el nmero mximo: 17
Errores
0 0 11 111= (1 x 2-1 + 1 x 2-2 + 1 x 2-3) x 23 = (7)10 El conjunto de nmeros finales se muestra grficamente en la Fig. 7
Figura 7. Sistema hipottico de nmeros desarrollado en el Ejemplo 4. Se indica cada valor con una marca. Se muestran nicamente los nmeros positivos. Un conjunto idntico se mostrara para los nmeros negativos
La Fig.7 manifiesta varios aspectos de la representacin de punto flotante que tiene importancia en lo referente a error de redondeo por computadora:
18
Errores
1.Un rango limitado de cantidades pueden ser representadas. As como para el caso de enteros, hay nmeros positivos y negativos grandes que no pueden ser representados. El intento por usar nmeros que exceden el rango aceptable resultar en lo que se llama error de desbordamiento (overflow). Sin embargo, adems de grandes cantidades, la representacin de punto flotante tiene la limitacin agregada de que nmeros muy chicos no pueden ser representados. Esto se ilustra como el hueco (underflow) entre cero y el primer nmero positivo en la Fig. 7. Debe notarse que este agujero se agranda debido a la limitacin de normalizacin de la ecuacin (8). 2.Un nmero limitado de cantidades pueden ser representadas dentro del rango. De esta manera el grado de precisin es limitado. Obviamente, los nmeros irracionales no pueden representarse con exactitud. Adems, los nmeros racionales que no se ajustan a uno de los valores en el conjunto no pueden representarse con precisin. Los errores introducidos por la aproximacin de estos dos casos son llamados errores de cuantificacin. La aproximacin real se logra de alguna de estas dos maneras, recortando (chopping) o redondeando (rounding). Por ejemplo, supongamos que el valor de = 3,14159265358 ser almacenado en un sistema de base-10 llevando siete cifras significativas. Un mtodo de aproximacin sera simplemente omitir o recortar los trminos octavo y los mayores, como en = 3,141592, con la introduccin de un error asociado de [Ec.(2)] Et = 0,00000065 Esta tcnica de retener solo los trminos significativos se llama recorte (chopping). Observe que para el sistema numrico base-2 en la Fig.7, recortar significa que cualquier cantidad entre un intervalo de largo x ser almacenada como la cantidad en el extremo menor del intervalo. De este modo, el lmite de error superior para el recorte o corte es x. Adems se introduce una desviacin debido a que todos los errores son positivos. Los defectos de recortar son atribuibles al hecho de que los trminos mayores en la representacin decimal no tienen impacto en la versin reducida. Por ejemplo, en nuestro ejemplo de , el primer dgito desechado es 6. As el
19
Errores
ltimo dgito retenido debera ser redondeado para obtener 3,141593. Tal redondeo reduce el error a Et = - 0,00000035 Consecuentemente, el redondeo da un error absoluto menor que el de recorte. Observe que para el sistema numrico base-2 en la Fig. 7 redondear significa que cualquier cantidad entre un intervalo de largo x ser representada como el nmero ms cercano posible. As el lmite de error superior para redondear es x/2. Adems, ninguna desviacin se introduce porque algunos errores son positivos y otros negativos. Algunas computadoras emplean redondeo. Sin embargo esto aumenta la estructura computacional, y en consecuencia, muchas computadoras usan simplemente el recorte. Este enfoque se justifica bajo la suposicin de que el nmero de cifras significativas es lo suficientemente grande como para que el error de redondeo sea suficientemente insignificante.
3. El intervalo entre nmeros, x, aumenta a medida que los nmeros crecen en magnitud. Es esta caracterstica, por supuesto, la que le permite a la representacin de punto flotante preservar dgitos significativos. Sin embargo, esto tambin significa que la cuantificacin de errores ser proporcional a la magnitud del nmero representado. Para nmeros de punto flotante normalizados, esta proporcionalidad puede ser expresada, para casos donde se realiza recorte como:
x x
(9)
(10)
20
Errores
Donde se usa para referirse al epsilon de la mquina, el cual puede ser computado como
= b1t
(11)
Donde b es la base numrica y t es el nmero de dgitos significativos en la mantisa. Las desigualdades en Ecuaciones (9) y (10) representan los lmites de los errores. Es decir, ellas especifican los peores casos.
Planteo. Determine el epsilon de la mquina y verifique su efectividad en la caracterizacin de errores del sistema numrico del Ejemplo 4. Asuma que se usa recorte. Solucin. El sistema de punto flotante hipottico del Ejemplo 4 utiliz valores de base b = 2, y el nmero de bits de mantisa t = 3. Por lo tanto, el epsilon de la mquina sera [Ec. (11)]:
= 213 = 0, 25
Consecuentemente, el error de cuantificacin relativo debera ser limitado por 0,25 para cuando se realiza recorte. Los errores relativos ms grandes deberan ocurrir en aquellas cantidades que estn apenas por debajo del lmite superior del primer intervalo entre nmeros sucesivos equidistantes (Fig. 8). Aquellos nmeros que se ubiquen en los intervalos posteriores ms altos tendran el mismo valor de x pero un valor de x mayor y, por lo tanto, tendran un error relativo menor. Un ejemplo de error mximo sera un valor ubicado apenas por debajo del lmite 21
Errores
superior del intervalo entre (0,125000)10 y (0,156250)10. Para este caso, el error sera menor que 0,03125 0,125000 As, el error resulta como lo expresado por la Ec. (9). = 0,25
Figura 8. El mayor error de cuantificacin ocurrir con aquellos valores que estn apenas por debajo del lmite superior del primero de una serie de intervalos equidistantes
Cuantificar errores tiene un nmero de aplicaciones prcticas en mtodos numricos. La mayora de stos se relacionan con la operacin comnmente empleada para chequear si dos nmeros son iguales. Esto ocurre cuando se chequea la convergencia de cantidades como as tambin en el mecanismo de detencin (stopping) para procesos iterativos (recuerde el Ejemplo 2.). Para estos casos, debe quedar claro que, en lugar de chequear la igualdad de dos cantidades, es aconsejable chequear si su diferencia es menor que la menor tolerancia aceptable. Adems, debera ser evidente que se deben comparar las diferencias relativas ms que las diferencias absolutas, particularmente cuando se trata de nmeros de gran magnitud. Adems, el epsilon de la mquina puede ser utilizado en la formulacin de criterios de detencin o convergencia. Esto asegura que los programas sean porttiles, es decir, que no son dependientes de la computadora en la que los mismos se 22
Errores
implementan. La Fig. 9 muestra una lista de pseudo-cdigos para determinar de manera automtica el epsilon de una computadora binaria.
Epsilon=1
IF ( Epsilon + 1 1) EXIT Epsilon Epsilon = 2 End Epsilon = Epsilon 2
Figura 9. Pseudo-cdigo Para determinar epsilon para computadora binaria
Precisin extendida. A esta altura se debe observar que, aunque los errores
redondeados pueden ser importantes en contextos tales como el chequeo de convergencia, el nmero de dgitos significativos que tienen la mayora de las computadoras permite que los clculos de ingeniera se realicen con una precisin ms que aceptable. Por ejemplo, el sistema de nmeros hipotticos en la Fig. 7 es una exageracin que se utiliz con propsitos ilustrativos. Las computadoras comerciales usan palabras mucho ms largas y, consecuentemente, permiten que los nmeros sean expresados con precisin ms que adecuada. Por ejemplo, las computadoras que usan el formato IEEE (Institute Electric and Electronic Engineering) permiten el uso de 24 bits para la mantisa, que se traduce en aproximadamente siete dgitos de precisin significativos 1 en base-10 con un rango de aproximadamente 10 -38 a 10 39. Hay an casos donde el error de redondeo es crtico. Por esta razn la mayora de las computadoras permiten la especificacin de precisin extendida. La ms comn de stas es la precisin doble, en la cual el nmero de palabras usadas para guardar nmeros de punto flotante se duplica. Proporciona aproximadamente de 15 a 16 decimales de precisin y un rango de aproximadamente 10 -308 a 10 308. En muchos casos, el uso de cantidades de precisin doble puede atenuar considerablemente el efecto de errores de redondeo. Pero hay que tener en cuenta que ellos requieren ms memoria y tiempo de ejecucin. La diferencia en tiempo de ejecucin para clculos pequeos puede parecer insignificante. Sin embargo, a medida que los programas se hacen ms grandes y complicados, ms tiempo de ejecucin 23
Errores
podra tener un impacto negativo en la efectividad para solucionar problemas. Por lo tanto, no se debe utilizar la precisin extendida en vano. Ms bien, debera ser utilizada de manera selectiva cuando se considere que proporcionar el mximo beneficio al menor costo en trminos de tiempo de ejecucin. Se debe tener en cuenta que algunos de los paquetes de software comnmente usados (ej. Excel, Mathcad) usan rutinariamente la precisin doble para representar cantidades numricas. De esta manera, los diseadores de estos paquetes decidieron que mitigar los errores de redondeo tiene prioridad sobre cualquier prdida de velocidad debida al uso de precisin extendida. Otros, como MATLAB, le permiten al usuario decidir si quiere usar la precisin extendida.
1
MANTISA. Sin embargo, debido a la normalizacin, el primer bit de la MANTISA es siempre 1 y, consecuentemente, no se guarda. De esta manera, el primer bit junto a los 23 bits guardados da un total de 24 bits de precisin para la MANTISA.
Dejando de lado las limitaciones del sistema de nmeros de una computadora, las manipulaciones aritmticas reales que involucran estos nmeros pueden resultar tambin en errores de redondeo. En la siguiente seccin, ilustraremos como las operaciones aritmticas comunes afectan los errores de redondeo. Luego investigaremos un nmero de manipulaciones particulares que son especialmente propensas a errores de redondeo.
Operaciones aritmticas comunes. Debido a su familiaridad, se utilizarn
nmeros de base 10 normalizados para ilustrar el efecto de los errores de redondeo en operaciones simples como suma, resta, multiplicacin y divisin. Nmeros con otras bases se comportarn de manera similar. Para simplificar la discusin, emplearemos una computadora decimal hipottica con una mantisa de 4 dgitos y un exponente de 1 dgito. Adems, se utilizar recorte. El redondeo nos llevara a errores similares pero menos dramticos. 24
Errores
Cuando se suman dos nmeros de punto flotante, la mantisa del nmero con el menor exponente es modificada para igualar a los exponentes. Esto tiene como efecto la alineacin de los puntos decimales. Por ejemplo, supongamos que queremos sumar 0,1557 10 1 + 0,4381 10 -1. El decimal de la mantisa del segundo nmero es movido hacia la izquierda el nmero de lugares igual a la diferencia de los exponentes [1- (-1) = 2], como en 0,4381 10 -1 0,004381 * 10 1
y el resultado recortado a 0,1600 x 101. Los ltimos dos dgitos del segundo nmero que se pas a la derecha han sido esencialmente descartados del clculo. La sustraccin se realiza de manera idntica a la suma excepto que el signo del sustraendo se invierte. Por ejemplo, imaginemos que estamos sustrayendo 26,86 de 36,41. Esto es,
Para este caso el resultado no est normalizado, y es por eso que nosotros debemos cambiar el decimal un lugar hacia la derecha para lograr 0,9550 x 101 = 9,550. Tenga en cuenta que el cero que se agrega al final de la mantisa no es significativo, que simplemente se agrega para llenar el espacio vaco que se crea con el cambio. Resultados an ms llamativos se obtendran en casos en que los nmeros estn mucho ms cerca, como en el siguiente caso:
25
Errores
El cual sera convertido a 0,1000 x 100 = 0,1000. De esta manera, para este caso, se agregan tres ceros que no son significativos. Esto introduce un error de computacin sustancial porque las manipulaciones que se realicen a posteriori actuarn como si estos ceros fueran significativos. La prdida de cifras significativas durante la sustraccin de nmeros casi iguales es una de las fuentes ms grandes de error por redondeo en mtodos numricos. La multiplicacin y la divisin son, de alguna manera, ms directas que la adicin y la sustraccin. Se suman los exponentes y se multiplican las mantisas. Debido a que la multiplicacin de dos mantisas de n dgitos dar un resultado de 2n dgitos, la mayora de las computadoras guardan los resultados intermedios en un registro de dos extensiones. Por ejemplo,
extremadamente grandes para obtener los resultados finales. Adems, estos clculos son a menudo interdependientes. Esto es, los clculos finales dependen de los resultados obtenidos de clculos anteriores. Consecuentemente, an con un error de redondeo pequeo, el efecto acumulativo en el curso de un gran clculo puede ser significativo. 26
Errores
sustraen dos nmeros de punto flotante que son casi iguales. Una instancia donde esto puede ocurrir comnmente es cuando se quiere encontrar la raz de una ecuacin cuadrtica o parbola con una frmula cuadrtica,
x1 , x2 =
b b 2 4ac 2a
(12)
Para los casos donde b2>> 4ac, la diferencia en el numerador puede ser muy pequea. En tales casos, la precisin doble puede mitigar el problema. Adems, una formulacin alternativa puede ser usada para minimizar la cancelacin sustractiva,
x1 , x2 =
2c b b 2 4ac
(13)
Smearing. Smearing ocurre cuando los trminos individuales en una suma son
ms grandes que la suma misma. Como en el siguiente ejemplo, un caso donde esto ocurre es en la serie de signos mezclados.
y = 1+ x +
Evale esta funcin para x = 10 y x = -10, y preste atencin a los problemas de error de redondeo. Solucin. Para x = 10 el resultado es completamente satisfactorio. La Para x = -10 los resultados de los clculos de la serie ni siquiera son del mismo signo que el resultado verdadero! En realidad, los resultados que son negativos son cuestionados seriamente porque ex no puede ser nunca 27
Errores
menor que cero. El problema aqu es causado por el error de redondeo. Observe que muchos de los trminos que se usan en la suma son mucho mayores que el resultado final de la suma. Adems, y a diferencia con el caso anterior, hay variacin en los signos de los trminos individuales. De esta manera, estamos sumando y sustrayendo nmeros grandes (cada uno de los mismos con pequeos errores) y dndole mucha significancia a las diferencias es decir, cancelacin sustractiva. Para tales casos es apropiado buscar algn otro tipo de estrategia de clculo. Por ejemplo, uno podra tratar de calcular y = e10 como y = (e-1)10. Una alternativa a esta reformulacin es recurrir a la precisin extendida.
anteriores, algunas series infinitas son particularmente propensas a los errores de redondeo. Afortunadamente, el clculo de series no es una de las operaciones ms comunes en mtodos numricos. Una manipulacin an ms conocida es el clculo de los productos internos, como en el siguiente caso:
x y
i =1 i
= x1 y1 + x2 y2 + ......... + xn yn
Esta operacin es muy comn, particularmente en la solucin simultnea de ecuaciones algebraicas lineales. Tales sumas son propensas a errores de redondeo, Consecuentemente, a menudo es mejor calcular tales sumas en precisin extendida.
28
Errores-Taylor
Serie de Taylor
La serie de Taylor constituye uno de los fundamentos de los mtodos numricos. En esencia, proporciona un medio para predecir el valor de la funcin en un punto, en trminos de la funcin y de sus derivadas, evaluadas en otro punto. Muchas de las tcnicas utilizadas son derivadas directamente de esta serie (principalmente en la determinacin de los errores involucrados al utilizar las tcnicas). Segn el teorema de Taylor, el valor de una funcin de x, f(x), puede ser expresado en una regin de x cerca de x = a (de modo que la serie converja) como:
(1)
Pn (x ) = f
n k =0
(k )
(x - a )k (a )
k!
(2)
R n (x ) = f n +1 (c )
(x - a )n +1 (n + 1)!
(3)
Donde el subndice n indica que este es el residuo para la aproximacin de orden n. Definiendo a h= x-a:
Pn (x ) = f (k ) (a )
n k =0
(h )k
k!
(4)
Rn (x ) = f n +1 (c )
(h )n +1 (n + 1)!
(5)
29
Errores-Taylor
Como c es desconocido, no se puede evaluar el error real. Por tal motivo se utiliza la Cota de Error (mximo valor del residuo en el intervalo considerado):
Cota Error = f
n +1
( )
(x - a )
n +1
(n + 1)!
(6)
donde es un valor que se encuentra entre x y a, y maximiza el valor absoluto de la derivada n+1. Tambin podemos escribir a la cota de la forma:
Cota Error = f
n +1
( )
(x - a )
n +1
(n + 1)!
M .( x a ) n +1
(7)
Dado que no tenemos control sobre la funcin o sus derivadas, podemos manejar el error actuando sobre la distancia (x-a) y sobre el orden del polinomio. En general, la serie de grado n de Taylor ser exacta para aproximar un polinomio de grado n. Sin embargo, para otras funciones diferenciables y continuas, como la exponencial y la sinusoide, un numero finito de trminos no construye una estimacin exacta.
Orden del error = Es una estimacin de la magnitud del error cometido. Podemos escribir al
orden de error como (h)n+1. Esto significa que el error de truncacin es de orden h n+1. Sin embargo esta aproximacin no indica nada respecto a la magnitud de la derivada que multiplica a hn+1, pero es muy til para juzgar el error comparativo de los mtodos numricos basado en la expansin de la serie de Taylor. Por ejemplo, si el error es (h), reduciendo a la mitad el tamao del paso, se reduce a la mitad el error. Por otra parte, si el error es como (h)2, reduciendo a la mitad el tamao del paso ser reducido un cuarto el error. Un incremento del orden de la serie y una disminucin de la distancia (x-a) disminuyen el error cometido. En muchos casos, si h es lo suficientemente pequeo, solo unos pocos trminos son requeridos para obtener una adecuada estimacin.
Ejemplo N 1:
Planteo del problema: Utilice la expansin en serie de Taylor de orden 0 a 2, en a=0 para
aproximar la funcin f (x) = 3x + (x-1)2. a) Graficar cada una de las aproximaciones. b) Calcular el error al aproximar la funcin en x=1 a partir de dicha expansin.
30
Errores-Taylor
Solucin:
f (x) = 3x + (x-1)2 f(x) = 3 + 2 (x-1) f(x) = 2 f(x) = 0 f (1) = 3 Serie de Taylor: La aproximacin de orden cero es:
0x1
f (x ) f (0 ) = 1
La aproximacin de orden uno es:
f (x ) f (0 ) + f' (0)(x - 0 )
f (x ) = 1 + x
La aproximacin de orden dos es: f (x ) = f (0) + f' (0)(x - 0 ) + f' ' ' (0) f (0) = 1; f (0) = 1; f (0) = 2
(x - 0 )2
2!
f (x ) = 1 + x +
2 2 x =1+ x + x 2 2!
1) Utilizando slo el primer trmino de la serie: f (x) = 1 2) Utilizando dos trminos: f (x) = 1 + x
(una constante) (lineal)
3 trminos
2 trminos
1 trmino
Errores-Taylor
Ejemplo N 2:
Planteo del problema: Utilice la expansin en serie de Taylor con n= 0 a n= 6 para aproximar
f(x)= cos(x) en x= /3 a partir de f(x) y sus derivadas en a= /4. Tenga en cuenta que esto significa que h = /3-/4=/12
Se puede observar que al incluir trminos proporciona mejoras a la estimacin. Continuando el proceso se obtienen los resultados de la Tabla N 1. Note que las derivadas
32
Errores-Taylor
nunca son cero como en el caso de la funcin polinomial del ejemplo 1. Por lo tanto, cada termino adicional provee alguna mejora en la estimacin. Tambin hay que notar que los trminos iniciales son los que tienen mayor peso sobre la estimacin. Para este caso, cuando agregamos el trmino de tercer orden, el error es reducido a 2,62.10-2 %, lo cual significa que hemos alcanzado 99,9738% del valor verdadero. Consecuentemente, aunque adicionemos mas trminos para reducir el error, la mejora se vuelve insignificante. Orden n f n(x) 0 1 2 3 4 5 6 cos(x)
f 3
t
-41,4 -4,4 0,449 2,62.10-2 -1,51.10-3 -6,08.10-5 2,40.10-6
0,707106781
ejemplo a sen(x) f = sym (sin(x)) p = taylor (f, n + 1, a) fprintf (... % s, char (p)) x = x0 r = eval (p) %=================== de = diff (f, n+1) x = a: 0.001: x0 de = vectorize (de) [ce, k] = max (abs (eval (de))) cota = ce* (x0 a)^n+1 / prod (1:n+1)
33
Errores-Taylor
El error total, dejando de lado los errores de entrada, se calcula a partir de el error de truncacin y el error de redondeo como:
ET = Ered + Etrun
(8)
- Para disminuir Ered hay que aumentar el nmero de cifras significativas de trabajo de la computadora. El Etrun disminuye al aumentar el nmero de pasos, lo que implica un aumento en el
nmero de operaciones. (ej. la aproximacin de funciones mejora con el aumento del nmero de pasos u operaciones) - A medida que el nmero de clculos u operaciones aumenta, aumenta el error de redondeo. El punto ptimo de trabajo es aqul donde el error total tiene un mnimo. En la mayora de los casos prcticos, sin embargo, la realidad es que las computadoras manejan suficientes cifras significativas de forma tal que los errores de redondeo no influyen.
error truncam.
N Operac.
Figura 2. Representacin grafica de la variacin del error de redondeo, truncamiento y total que entran en juego en el transcurso de un mtodo numrico.
Estabilidad y Condicin
La condicin de un problema matemtico hace referencia a la sensibilidad que este presenta al cambiar las variables de entrada. Podemos decir que un clculo es numricamente inestable si la incertidumbre de la variable de entrada es bruscamente magnificada por el mtodo
34
Errores-Taylor
numrico. El error de redondeo siempre crece con el nmero de operaciones. Si su crecimiento es lineal, el mtodo es estable y los resultados suelen ser aceptables. Si el crecimiento es exponencial, el mtodo es inestable ya que se vuelve difcil de acotar. El nmero de condicin puede ser determinado utilizando la serie de Taylor de primer orden
% % % f ( x) = f ( x) + f '( x) ( x x)
(9)
Esta relacin puede ser empleada para estimar el error relativo de f ( x ) como:
% % % f ( x) f ( x) f '( x) ( x x) = f ( x) f ( x)
(10)
(11)
El nmero de condicin puede ser definido como la relacin entre dichos errores relativos
Nmero decondicin = % x f '( x) % f ( x)
(12)
El nmero de condicin proporciona una medida de la magnitud en la que una incertidumbre en x es magnificada por f(x). Un valor de 1 nos dice que el error relativo de la funcin es idntico al error relativo en x. Un valor ms grande que 1 nos dice que el error relativo es incrementado, mientras que un valor menor que 1 nos dice que ste es atenuado. Funciones con grandes valores de nmero de condicin, se dice que son mal-condicionadas. Cualquier combinacin de factores en la ecuacin (12) que incrementa el valor numrico del nmero de condicin, tender a magnificar la incertidumbre en el clculo de f(x).
Ahora vamos a analizar como los errores numricos se propagan a travs de funciones matemticas. Por ejemplo, si multiplicamos dos nmeros que tienen error, nos gustara estimar el error en el producto.
Supongamos que tenemos una funcin f(x) que depende de una sola variable x. Asumimos que ~ es una aproximacin de x. Por lo tanto nos gustara evaluar el efecto de la discrepancia x entre x y ~ al evaluar la funcin. Esto es: x
35
Errores-Taylor
f ( x ) = f ( x ) f (~ ) x
(13)
f (~ ) x f ( x ) = f (~ ) + f (~ ) ( x ~ ) + x x x x ( x ~ )2 + 2
Eliminando el trmino de segundo orden y los superiores: f ( x ) f (~ ) + f (~ ) ( x ~ ) x x x o
(14)
(15)
f (~ ) = f (~ ) ( x ~ ) x x x
Donde f (~ ) = f ( x ) f (~ ) x x
(16)
Puede ser generalizada para funciones de ms de una variable independiente. Esto es realizado con una adaptacin de la serie de Taylor para ms de una variable. Por ejemplo si la funcin tiene dos variables independientes u y v, la serie de Taylor puede ser escrita como:
f f (ui +1 ui ) + (vi +1 vi ) u v
f (ui +1 , vi +1 ) = f (ui , vi ) +
+
(17)
donde las derivadas parciales son evaluadas en el punto i. Si el termino de segundo orden y los superiores son despreciados, la ecuacin (17) puede ser resuelta como:
~~ f (u , v ) = f ~ f v ~ u + u v
(18)
Errores-Taylor
Para
variables
dependientes
~ , ~ , ~ .....~ x1 x 2 x3 x n
con
los
correspondientes
errores
f f f f (~1 , ~2 , ~3 .....~n ) = ~ ~1 + ~ ~2 + + ~ ~n x x x x x x x x1 x 2 x n
(19)
la ecuacin (19) puede ser empleada para definir la relacin del error de propagacin para operaciones matemticas comunes. Los resultados se resumen en la tabla 2:
Error estimado
~ ~ u + v ~ ~ u + v ~ ~ ~ ~ u u + v v
~ ~ ~ ~ u u + v v ~ v 2
Tabla 2
Ejercicio:
Planteo: Hallar el error de la suma y el producto de p y q Solucin:
Se concluye que el error en una suma es la suma de los errores de los sumandos.
37
Errores-Taylor
) ) Si p y q son > 1 en valor absoluto, los trminos (1) indican que hay una posibilidad de que
Ejemplo numrico de propagacin del error: Planteo: Un paraleleppedo rectangular tiene por longitud de sus lados: 3, 4 y 5 cm, medidos solamente al centmetro ms cercano. a) Cules son las mejores cotas superior e inferior para el volumen de este paraleleppedo? b) Cules son las mejores cotas superior e inferior para el rea de su superficie? Solucin: a) Volumen = b x a x h = V V = (3 0,5) x (4 0,5) x (5 0,5) = (12 0,5 x 0,5 4 x 0,5 3 x 0,5) x (5 0,5) = (12 0,25 2 1,5) x (5 0,5) = (12 3,75) x (5 0,5) = 60 5 x 3,75 12 x 0,5 0,5 x 3,75 V = 60 26,625 (Vmin, Vmax) = (34,86) b) rea = A = 2 [(a x b) + (a x h) + (b x h)] A = 2 x [(3 0,5) x (4 0,5) + (4 0,5) x (5 0,5) + (3 0,5) x (5 0,5)] A = 2 x [(12 3,75) + (20 4 x 0,5 5 x 0,5 0,25) + (15 3 x 0,5 5 x 0,5 0,25)] A = 2 [(12 3,75) + (20 4,75) + (15 4,25)] A = 2 x [47 12,75] = 94 25,5 (Amin, Amax) = (69,119)
38
Mtodos numricos disponibles para determinar races reales: 1. Mtodo grfico 2. Biseccin 3. Iteraciones sucesivas (punto fijo) 4. Newton 5. Secante
MTODO DE LA BISECCIN Permite encontrar una raz en un intervalo donde se tiene certeza de su existencia. Este mtodo trabaja an con funciones no analticas, pero debe usarse el mtodo grfico. Sup: f(x) = 0 con raz en [a, c] f (a) . f (c) < 0
a+c 2
2) Verificar signos:
f (a ) f (b ) f (b ) f (c )
3) Bisecar intervalo que contiene raz. 4) Repetir hasta que el error sea < tolerancia. 5) Tomar el punto medio del intervalo como la ltima aproximacin.
Cota de error
a b n=1 c
e1 =
c-a 21
39
b n=2
e2 =
c-a 22 c-a 2n
en =
c-a tol 2n
c-a c-a 2 n log n log 2 tol tol c-a log tol n log 2
Convergencia: como todos los mtodos que usan intervalos, siempre converge (siendo f (x) continua). Adems, siempre converge a la misma velocidad, ya que el proceso es independiente del tipo de funcin f (x), y en general, es ms lento que los otros mtodos.
Dada la ecuacin: f(x) = 0 la podemos escribir de la forma: x = g (x) para una cierta eleccin de g (x) (generalmente no nica). La funcin g (x) se llama funcin de iteracin y se utiliza para determinar una serie de valores x1, ..., xn comenzando por una estimacin inicial de x0. La ecuacin de iteracin queda: xn+1 = g (xn)
Como todos los mtodos abiertos (buscan puntos que aproximen a la funcin y no intervalos) puede no converger.
40
y=x
g (x)
converge
diverge
x0
x0
Punto fijo: un punto fijo de una funcin g (x) es un nmero real p tal que p = g (p)
y=x g (x)
Condiciones para la existencia de un punto fijo 1) Si la imagen de g (x) [a, b] para cada punto x [a, b], entonces g tiene un punto fijo en [a, b]. 2) Si g (x) est definida en (a, b), y | g (x) | < 1 para todo x (a, b), entonces g tiene un nico punto fijo p en [a, b]. Convergencia de la iteracin de punto fijo Si p = punto fijo de g(x) (p=g(p)) en [a, b] (y es nico), el mtodo es convergente. Si p0 = estimacin inicial de p, por el teorema del valor medio: |p p1| = |g (p) g (p0)| = |g (c) (p p0)| = |g (c)| | p p0| K |p p0| < |p p0| donde K = |g (c)|max = constante positiva < 1, c=punto intermedio desconocido |p p1| < |p p0| se achic el error.
41
Velocidad de convergencia Supongamos la serie: p n que converge a p n = 1 Si existen dos constantes positivas A y R tales que:
Lim
p - p n +1
R
n p - pn
Lim
e n +1
R
n en
=A
se dice que la sucesin converge a p con orden de convergencia R, y el nmero A se llama constante asinttica del error. Ej: R = 1 convergencia lineal R = 2 convergencia cuadrtica Para n suficientemente grande |en+1| A | en|R Biseccin: e n +1 = 1 en 2
conv. lineal conv. lineal
s - xn
Kn x x (1 - K ) 1 0
42
ALGORITMOS
Grfica previa Paso 1: ENTRADA nombre funcin Paso 2: Inicializar p = SI Paso 3: Mientras p = SI hacer pasos 4-6 Paso 4: ENTRADA x1 x2 Paso 5: Graficar funcin entre x1 x2, pausa Paso 6: ENTRADA Desea continuar con otro intervalo? SI/NO
43
Mtodo biseccin Paso 1: ENTRADA a, c, tol, N Paso 2: it = 1 Paso 3: Evaluar f (a) Paso 4: Mientras it N seguir pasos 5-9 Paso 5: Tomar b = a+c 2
a = b; f (a) = f (b)
c=b
44
Iteraciones sucesivas Grfica previa (no es tan necesario como en el mtodo anterior).
Mtodo Paso 1: ENTRADA x0, tol, N, g, f Paso 2: it = 1 Paso 3: Mientras i N hacer pasos 4-5 Paso 4: x = g (x0) Paso 5: Si |x x0| < tol y f (x) < tol entonces SALIDA (x)
PARAR SI NO
x0 = x it = it + 1
-------------------------------
45
Grficamente:
f ' (x 0 ) =
f (x 0 ) (x 1 x 0 )
x0 x2 x1
f (xn + h ) f (xn ) h
Orden del error Haciendo: errorn+1 = en+1 = xn+1 s = g (xn) g (s) con s = solucin Por Taylor:
(x n s )2 ()
2!
2
+K
[f ' (x n )]2 [f ' ' (x n )] [f (x n )] [f ' (x n )]2 [f ' ' (x n )] [f (x n )] g ' (x n ) = [f ' (x n )]2
2!
por consiguiente: |en+1| = D |en|2 ; Convergencia cuadrtica. cte. asinttica del error D = g' ' (s ) 1 2
MTODO DE LA SECANTE
x n 1 = x n f (x n )
x n x n 1 f (x n ) f (x n 1 )
Grficamente:
(x )
(x ) =
f ( x1 ) f ( x0 ) x1 x 0
x0
x2
x3 x4 x1
e n +1 = e n D
p
donde
P 1,62
fzero.
ALGORITMOS
Grfica previa Paso 1: ENTRADA nombre funcin Paso 2: inicializar p = SI Paso 3: mientras p = SI hacer pasos 4-6 Paso 4: ENTRADA x1 x2 Paso 5: Graficar funcin entre x1 x2, pausa Paso 6: ENTRADA Desea continuar con otro intervalo? SI/NO
48
Algoritmo de Newton
ENTRADA
Paso 1: Tomar i = 1. Paso 2: Mientras que i N0. seguir pasos 3-6. Paso 3: Tomar p = p0 f (p0) / f (p0). (Calcular p). Paso 4: SI |p p0| < TOL entonces
SALIDA PARAR.
Paso 5: Tomar i = i + 1. Paso 6: Tomar p0 = p. (Redefinir p0). Paso 7: SALIDA (El mtodo fracas despus de N0 iteraciones, N0 = , N0); (Procedimiento completado sin xito).
PARAR.
Algoritmo de la secante
ENTRADA
Paso 1: Tomar i = 2. q0 = f(p0); q1 = f(p1); Paso 2: Mientras que i N0. seguir pasos 3-6. Paso 3: Tomar p = p1 q1 (p1-p0) / (q1-q0). (Calcular p). Paso 4: SI |p p1| < TOL entonces
SALIDA PARAR.
Paso 5: Tomar i = i + 1. Paso 6: Tomar p0 = p1. (Redefinir p0, q0, p1, q1). q0 =q1; p1=p; q1 = f(p); Paso 7: SALIDA (El mtodo fracas despus de N0 iteraciones, N0 = , N0); (Procedimiento completado sin xito).
PARAR.
49
Problema a resolver:
a.x=b
donde:
Esta ecuacin representa a un sistema de ecuaciones lineales. Para su resolucin se tienen distintos mtodos:
ELIMINACIN GAUSSIANA
s/pivoteo
x=a\b
ELIMINACIN
- mejora exactitud - procede an cuando algn aii(coef. diag.) = 0 a.x=b con a=LU
Mtodos de resolucin
GAUSSIANA c/pivoteo
DESCOMPOSICION . LU
U x = z ( LU ) x = b L z = b - til para cambios en b (n op. = f (n3)) - Programacin sencilla - N op. = f (n iter y de n2)
Los tres primeros mtodos son llamados mtodos directos, por ser mtodos donde el nmero de operaciones queda prefijado para un problema determinado. En estos mtodos el tipo de error predominante es el de redondeo. En los mtodos iterativos, en cambio, si bien hay error por redondeo, el error predominante puede ser el de truncamiento.
50
Problemas en la resolucin
Ejemplos:
1)
2)
superpuestas
inf. soluc.
sin solucin
3) Problemas mal condicionados: cuando pequeas variaciones del problema provocan grandes variaciones en la solucin. Solucin x = 14,7403 y = 0,23942
incrementando (*) artificialmente en 0,001 ver caso Aen la figura siguiente, la solucin es: solucin: x = 17,9756 y = -0,15928 (muy distinta a la anterior)
51
A)
Para analizar el grado de condicionamiento de un problema, se usa el Nmero de condicin cond (a) = ||a||2 . ||a-1||2 1
B) A)
si el nmero de condicin es muy alto se dice que la matriz est mal condicionada.
2 = aij ij
MTODO DE JACOBI Un mtodo iterativo para resolver un sistema de ecuaciones lineales es el de Jacobi. La ecuacin de iteracin del mtodo est dada por: xk = Txk-1 + c
a 11 x 1 a 21 x 1 a 31 x 1 a 11 x 1 a 22 x 2 a 33 x 3
k a 11 x 1 k a 22 x 2 k a 33 x 3
+ a 12 x 2 + a 22 x 2 + a 32 x 2
+ a 13 x 3 + a 23 x 3 + a 33 x 3
= b1 = b2 = b3 + b1 + b2 + b3 + b1 + b2 + b3
= = a 21 x 1 = a 31 x 1 = k = a 21 x 1 1 k = a 31 x 1 1
a 12 x 2 a 32 x 2 a 12 x k 1 2 a 32 x k 1 2
a 13 x 3 a 23 x 3
k a 13 x 3 1 k a 23 x 3 1
52
x ik =
1 a ii
( a
n j=1 i j
ij
x k 1 + j
bi a ii
i = 1 ... n
a 11 a 21 a 31
a 12 a 22 a 32 a
a 13 a 11 a 23 = 0 a 33 0 =
0 a 22 0 D
0 0 a 12 0 0 0 a 33 0 0 U
a 13 0 a 23 a 21 0 a 31
0 0 a 32 L
0 0 0
xk = T xk-1 + c
MTODO DE GAUSS-SEIDEL La diferencia de este mtodo con el de Jacobi es que para el clculo de xi en cada vuelta se utilizan los valores de xi ya calculados en dicha vuelta:
a11 x1k k a 22 x 2
k a33 x3
k a12 x 2 1
k a13 x3 1 k a 23 x3 1
+ b1 + b2 + b3
k a32 x 2
53
x =
k i j=1
i 1
a ij x k j a ii
j= i +1
a ij x k 1 j a ii
bi a ii
i = 1 ... n
a . x = (D L U) x = b (D L) xk = U xk-1 + b
x k = (D L ) U x k 1 + (D L ) b 14243 4 4 14243
1 1 T C
ANLISIS DE CONVERGENCIA
1) El esquema: xk = T xk-1 + c , converge a la solucin nica de: T x + c = x, si y slo si : (T) < 1 (condicin necesaria y suficiente), donde (T) = radio espectral de la matriz T = max |i| 1 i n donde i son los autovalores de la matriz T. Demostracin:
x x k = T (x x k 1 ) x = Tx + c x x k 1 = T (x x k 2 ) x k = Tx k 1 + c M k 1 k 2 x = Tx + c : por induccin k x - x = T k (x x 0 )
Tomando la norma: || x xk || = || Tk (x x0)|| || Tk || . || x x0 || Lim || Tk || = 0 k Si i son los autovalores de la matriz T: det (T I) = 0 para determinar los autovalores.
54
Si
Adems se cumple que: Tx= x , para todo x (vector de dimensin n), luego:
Tx = x { { Ty = y T 2 x = 2 y M T k x = k x
y y
Por consiguiente, si (T) < 1 el mtodo converge. Adems puede demostrarse que cuanto menor es (T) se obtiene ms precisin (o menos iteraciones para igual precisin). 2) Para cualquier norma: (T) || T || (sin demostracin)
max
=
1 a ii
a
j=1
ij
Es decir, si a es diagonal dominante estricta, entonces se cumple la condicin suficiente (no necesaria) de convergencia del mtodo. Tambin se puede demostrar para Gauss-Siedel.
55
ALGORITMO
ENTRADA
tolerancia TOL; nmero mximo de iteraciones N. Paso 1: Tomar k = 1. Paso 2: Mientras que (k N) seguir los pasos 3-6. Paso 3: Calcular x=T.xo+c Paso 4: Si || x-xo || < TOL entonces SALIDA (x): (Procedimiento completado satisfactoriamente)
PARAR.
Paso 5: Tomar k = k + 1. Paso 6: Hacer xo=x Paso 7: SALIDA (Nmero mximo de iteraciones excedido).
PARAR.
------------------------------
56
Dado el problema: fi (x1, x2, ..., xn) = 0; i = 1, 2, ... n donde fi es una funcin no lineal de xj.
x j = x j + x j donde xj es una correccin desconocida. Utilizando Taylor truncado de primer orden alrededor de x j :
f i (x 1 , x 2 , K x n ) = f i (x 1 , x 2 , K x n ) +
j
f i x j + K x j
Para n=2:
f 1 f x 1 + 1 x 2 = 0 f 1 (x 1 , x 2 ) = f 1 (x 1 , x 2 ) + x 1 x 2 f (x , x ) = f (x , x ) + f 2 x + f 2 x = 0 1 2 2 1 2 2 1 2 x 1 x 2
En forma matricial:
f1 0 f1 ( x1 , x 2 ) f1 ( x1 , x 2 ) x1 0 = f ( x , x ) = f ( x , x ) + f 2 1 2 2 1 2 2 x1 f1 x 2 x1 f 2 x 2 x 2
x = -J \ f
ALGORITMO
ENTRADA TOL;
Paso 1: Tomar k = 1. Paso 2: Mientras que (k N) seguir los pasos 3-7. Paso 3: Calcular f (x) y J (x), donde J (x)i,j = ( fi (x) / xj) para 1 i, j n. Paso 4: Resolver el sistema lineal de J (x). y = - f (x). Paso 5: Tomar x = x + y. Paso 6: Si || y || < TOL entonces SALIDA (x): (Procedimiento completado satisfactoriamente)
PARAR.
-------------------------------
58
Interpolacin y Ajuste
INTERPOLACIN
Dados 3 puntos: x1,y1 - x2,y2 - x3,y3, la interpolacin permite obtener el valor funcional yi, para un determinado xi.
y
y2 yi y3 y1
g (x)
x1
x2
xi
x3
Tipos de Interpolacin Con funcin: Lineal Polinmica No lineal Linealizable Otras Serie potencias Lagrange Spline
INTERPOLACIN LINEAL:
g (x) y2
y y1 g (x) = 2 x x (x x 1 ) + y 1 1 2
y1
59
Interpolacin y Ajuste
INTERPOLACIN POLINMICA
Serie de potencias Propone interpolar con un polinomio de grado n que pasa por (n + 1) puntos, como serie de potencias. g (x) = c1 xn + c2 xn-1 + ... + cn x + cn+1 Igualando g (xi) = yi para n + 1 puntos, se obtiene un sistema de n + 1 ecuaciones lineales A.c=y
n x1 n x2 . A= . . n x n +1
x1n 1 x
n x 2
... ... . . .
x1 x2 . . .
. . . x
n 1 n +1
... x n +1
1 c1 y1 c y 1 2 2 . . . ; c= ; y= . . . . . . 1 c n +1 y n +1
y 2 y1 (x x 1 ) + y 1 x 2 x1
y2 y (x x 1 ) 1 (x x 1 ) + y 1 x 2 x1 x 2 x1 x x1 x x1 x + x1 y2 + 2 y1 x 2 x1 x 2 x1
y=
x x2 y1 + x1 x 2 123 1 (x)
60
Interpolacin y Ajuste
1 (x) =
2 (x) =
En trminos generales:
i ( x) =
j =1 i j
n +1
(x x j ) ( xi x j )
; i = 1 ... n + 1
i (x i ) = 1 polinomio orden n i (x j ) = 0 ; j i
Al multiplicar 1 (x), 2 (x) ... n+1 (x) por y1 y2 ... yn+1 respectivamente y sumando los productos, tambin tenemos un polinomio de orden n, que vale yi para xi. Este procedimiento conduce a la frmula de Lagrange:
n +1 i =1
g (x) = i (x) y i Resulta de mayor eficiencia computacional que la serie de potencias (ya que no requiere la resolucin de un sistema de ecuaciones lineales).
Interpolacin Spline
Se aplica un polinomio cbico a cada par de datos consecutivos. Se requiere que la 1 y 2 derivadas de los polinomios cbicos sean continuas en cada punto de datos. Dado un conjunto (si, fi), se procede a un cambio de coordenadas:
f i' fi si t=0 f i'+1 f i +1 s i +1 t = hi
Interpolacin y Ajuste
total ecuaciones: 4 N 6 Las restantes 2 ecuaciones estan dadas por las condiciones de frontera, generalmente se toman las segundas derivadas nulas: f1=0 fN=0 En MAT LAB: yi = interp1 (x, y, xi, spline)
FUNCIONES LINEALIZABLES
Interpolacin y Ajuste
Tipos de Ajuste
Con funcin: Lineal Polinmica Combinacin lineal de funciones no lineales Linealizable Otras
No lineal
Propone la minimizacin de las discrepancias entre la funcin de ajuste y los datos. Este mtodo se aplicar en los distintos tipos de ajuste o aproximacin.
REGRESIN LINEAL
Ajuste de una funcin lineal al conjunto de datos. g (x) = c1 x + c2 resto: residuo: Minimizando: R c = 2 xi ( yi c1 x i c 2 ) = 0 1 i R = 2 ( yi c1 x i c 2 ) = 0 c2 i ri = yi g (xi) = yi (c1 xi + c2) ; i = 1 ... n R = ri = ( y i c1 x i c 2 )
2
i
xi2 x i c1 x i yi = n c 2 y i x i
63
Interpolacin y Ajuste
Otra alternativa:
yi = c1 xi + c2
i = 1...n
A.c=y
ecuacin sobredeterminada
y1 . y = n x1 = . . yn
x1 1 . . A = n x 2 = . . . . xn 1
t A2A At y 1 3 c = 1 3 2 2 x2 2 x1
c c = 2 x1= 1 c 2
REGRESIN POLINMICA
g (x) = c1 xm + c2 xm-1 + ... + cm+1 Desviacin o resto: ri = yi g (xi) n ri 2 R = i =1 = 0 c j c j En forma matricial: i = 1 ... n
j = 1 ... m + 1
x . . . x
n i =1 n i =1
2m i
i =1
xi . . . n
. . . . . . . . .
m i
. A
c c . . . c
1 2
m +1
x y . . . y
n i =1 m i i n i =1 i
64
Interpolacin y Ajuste
En MATLAB Igual que en la regresin lineal, para un sistema sobredeterminado: (At . A) . c = At . y c = (At . A) \ (At . y) c=A\y c = polyfit (x, y, m)
Error de la regresin
error i = yi yiest
errori % =
y i y iest yi
Coeficiente de correlacin: r=
(y (y
yest
i est i
y) y)
2
con
y=
yi n
2
d + de y
Dado que:
R =0 c2
R =0 c1
R =0 c2
65
Interpolacin y Ajuste
Con lo cual:
r=
variac. explic ; varia entre los valores : 0 r 1 ; tambin vlido para regresin no variac. total
lineal (polinmica)
LINEALIZACIN
Ejemplo:
g (x) = x
x'
y = A f1 (x) + B f2 (x)
R = ( y i (A f 1 (x i ) + B f 2 (x i )))
i
R A = 2 ( y i A f 1 (x i ) B f 2 (x i )) f 1 (x i ) = 0 i R = 2 ( y i A f 1 (x i ) B f 2 (x i )) f 2 (x i ) = 0 B i
y i f 1 (x i ) A [f 1 (x i )]2 B f 1 (x i ) f 2 (x i ) = 0 2 y i f 2 (x i ) A f 1 (x i ) f 2 (x i ) B [f 2 (x i )] = 0
resto:
ri = yi g (xi)
; i = 1 ... n
66
Interpolacin y Ajuste
2
residuo: Minimizando
R b = f 1 (b, c) = 0 R = f 2 (b, c) = 0 c
R = ri = ( y i g(x i ) )
2 i
------------------------
67
DIFERENCIACIN NUMRICA
APROXIMACIN EN DIFERENCIAS PARA LA 1 DERIVADA
A) f i +1 = f i + hf i' +
f i' =
(error de truncamiento) se desprecian los restantes trminos ya que desaparecen ms rpidamente cuando h
h '' fi 2
B) f i 1 = f i h f i' +
h 2 '' f i - ... 2
f i f i -1 +E h
f i' =
h '' fi 2
C) f i +1 f i 1
68
f i' = f f f i = i +1 i -1 + E ; 2h
'
f i +1 f i -1 1 2 ''' h f i + ... 2h 6
h 2 ' '' E fi 6
error de truncamiento
diferencia central
f i +1 = f i + hf i' +
h 2 '' h 3 ''' fi + f i + ... 2 6 4 h 2 ' ' 8 h 3 '' ' fi + f i + ... 2 6 2 h 3 '' ' f i + ... 3
f i + 2 + 4 f i +1 3 f i +E 2h
f i + 2 = f i + 2 hf i' +
4 f i +1 f i + 2 = 3 f i + 2 hf i'
f i' =
Anlogamente,
f i' = 3 f i 4 f i -1 + f i - 2 +E 2h
f i +1 + f i 1 = 2 f i + h 2 f i'' +
69
f i +1 2 f i + f i -1 = h 2 f i'' +
70
INTEGRACIN NUMRICA
Principio bsico: ajustar un polinomio a puntos de datos funcionales y luego integrarlo.
Veremos los siguientes mtodos: Mtodos de Newton-Cotes: Regla trapezoidal - Regla de Simpson Cuadratura de Gauss Integrales impropias
REGLA TRAPEZOIDAL
g (x ) =
f = f (a ) bx xa f1 + f 2 donde 1 ba ba f 2 = f (b )
I = f (x ) dx I = g(x ) dx =
b b a a
h (f1 + f 2 ) 2
rea del trapecio
donde h = b a
f f2 g
f1
Error:
I = f (x ) dx = I + E E = f (x ) dx I
b b a a
f (a ) + f (b ) I = h 2 Aplicando Taylor:
71
(x a )2
2!
+ ...
h2 h3 + f '' (a ) + ... 2 6
(b a )2 (a )
2!
+ ...
b h3 h3 1 3 '' E = f (x ) dx I = f '' (a ) 6 4 = - 12 h f (a ) a
E =-
1 3 '' h . f (a ) 12
Para 3 puntos:
f3 f2
I I1 + I 2
h (f1 + f 2 ) + h (f 2 + f 3 ) 2 2 h (f 1 + 2 f 2 + f 3 ) 2
con h=(b-a)/2
f1
Para (n + 1 ) puntos:
a b
h (f 1 + 2 f 2 + ... + 2 f n + f n +1 ) 2
con h=(b-a)/n
72
Error
n n 1 E T = E i = - h 3 f '' i =1 12 i =1
valor promedio
=-
1 3 '' h f 12
1 = i =1
1 (b a ) '' f n 12 n 3
3
ET = -
1 (b - a) f ''h 2 12
I
f3
f1
h (f1 + 4 f 2 + f3 ) 3
b a 2
con h =
Es una aplicacin repetida de Simpson 1/3 a un dominio dividido en un nmero par de intervalos. I = f (x ) dx
b a
h (f 1 + 4 f 2 + 2 f 3 + 4 f 4 + ... + 2 f n -1 + 4 f n + f n +1 ) 3
La regla de Simpson 3/8 se basa en el polinomio de interpolacin de 3 orden y est dada por:
3 h (f 1 + 3 f 2 + 3 f 3 + f 4 ) 8
a h = (b - a) / 3 b
73
Esta regla generalmente se utiliza cuando se tiene un nmero impar de intervalos, donde se usa Simpson 1/3 para todos los intervalos salvo los primeros tres o los ltimos tres intervalos donde se aplica Simpson 3/8.
1) Regla trapezoidal: E -
1 3 '' h f con h = b a 12
h 2 (b a ) '' f con 12
h=
ba n
ba h 5 '''' f ; h= 90 2
ba h 4 '''' 4) Regla Simpson 1/3 extendida: E = - (b a ) f con h = 180 n ba 3 h 5 '' '' 5) Regla Simpson 3/8: E f donde h = 80 3 Reemplazando h: 1 (b a )3 f '' ; Regla trapezoidal 12 12 n 2 f '' ; Regla trapezoidal extendida.
1) 2) 3)
(b a )3 -
(b a )5
2880 180 n 6480
f '''' ; Simpson 1/3 f '''' ; Simpson 1/3 extendida f '''' ; Simpson 3/8
74
4) -
(b a )5
4
(b a )5 5) -
En
MAT LAB
trapz (x, y) usa Regla trapezoidal quad(nombref, a, b) usa Simpson recursiva quad(nombref, a, b, tol) quad(nombref, a, b, tol, traza)
donde: tol, por omisin vale 0,001 traza 0, se trazar en pantalla una grfica que muestra el avance de la integracin
I = w1 f (x1 ) + w 2 f (x 2 )
4 condiciones o especificaciones:
A) Si a = -1 b= 1
I = dx = 2 = x dx = 0
-1 1 -1 1
= x 2 dx = 2/3 = x 3 dx = 0
-1 -1 1
w1 + w 2 = 2 w x + w x = 0 1 1 2 2 2 2 w 1 x 1 + w 2 x 2 = 2/3 3 w 1 x 1 + w 2 x 3 = 0 2
Queda un sistema de 4 ecuaciones con 4 incgnitas no lineal (resolver por Newton) Como resultado:
w1 = w 2 = 1
x1 = - 1 3
x2 = 1 3
75
I = f 1 3 + f 1 3
) (
B) Si a -1 b 1
I = f (x ) dx
ba b+a z+ 2 2
ba (- 1) + b + a = a b + b + a = a z = -1 x = 2 2 2 2 ba b+a z = 1 x = + = b 2 2
dx f (x ) dx = f (x (z )) d z dz
b 1 a -1
ba 2
b 1 ba I = f (x ) dx = f (x (z )) dz a -1 2
fT (z)
I = fT -1 3 + fT 1 3
Para 3 puntos:
Sistema de 6 ecuaciones con 6 incgnitas. y es exacto hasta x5 (Ver Tabla adjunta para mas puntos).
A) I = exp - x 2 dx
-
( )
76
B) I =
x (exp (x ) + 1)
dx
C) I = x
0
0.7
cos (x ) dx
no es analtica
en x = 0
A)
f (x)
I = f (x ) dx f (x ) dx
x - -x
Cuando hay singularidades en uno o ambos lmites finitos. Se transforma el dominio de integracin a [-,] mediante transformacin de coordenada y luego se sigue el mtodo A)
b
I = f (x ) dx ;
x= x (z)
1 2
tan h (z)
z = z = -
tan h (z ) = 1 tan h (z ) = - 1
z 1 -1
x = m . tan h (z) + n
77
I = f (x ) dx = f (x (z ))
b a -
------------------------------
78
Ecuaciones Diferenciales
ECUACIONES DIFERENCIALES
ECUACIONES DIFERENCIALES ORDINARIAS (EDO): Problema de Valor Inicial
Ecuacin Diferencial de Primer Orden
y' =
dy = f (y, t ) dt
MTODOS DE EULER
Caractersticas del mtodo: sencillo de programar, no muy exacto.
Euler Hacia Adelante (inestable)
y n +1 y n y n +1 = y n + y 'n h h
y n +1 = y n + f (y n , t n ) h
recursivamente:
y1 = y 0 + h f (y 0 , t 0 )
y 2 = y 1 + h f (y 1 , t 1 )
Ecuaciones Diferenciales
yn+1 = yn + h f (yn+1, tn+1) Si f es no lineal, la ecuacin es implcita y se debe resolver por algn mtodo numrico, como por ejemplo sustituciones sucesivas, secante, Newton. Ambos mtodos (hacia atrs y hacia adelante) tienen igual exactitud.
h2 + ... 2!
Reemplazando:
h2 + ... h . f (y n , t n ) 1 24 4 3 2! '
yn
en +1 y 'n'
h2 2!
ei = y'n'
i =1 i =1
h2 h2 = y '' ( ) N 2 2!
= y '' ( )
h 2 (t f t 0 ) 2 h
MTODOS DE RUNGE-KUTTA
Son ms exactos que los de Euler (el resultado es ms exacto y los errores se reducen con mayor rapidez al reducirse h).
80
y = f (y, t ) ; y (0) = y 0
'
Ecuaciones Diferenciales
y n +1 = y n +
t n +1
tn
f (y, t ) dt
R-K 2 orden
con h = tn+1 tn
t n +1
tn
f (y, t ) dt
Reemplazando en Taylor:
81
Ecuaciones Diferenciales
y (t + h ) = y (t ) + h f +
1 2 h f t + f y f + C T h 3 + ... 2
(1)
]
(4)
= y + (A + B) h f + B P h 2 f t + B Q h 2 f fy + B C P h 3 + ...
(5)
Al exigir estas condiciones (5) , el mtodo de RK tendr el mismo orden de precisin que el mtodo de Taylor dado por (1). ( (h2)) --> error truncamiento local (h3)
Error truncamiento local: (h3) Error truncamiento global: (h2)
Alternativas de RK-2
Del sistema (5) subdeterminado surgen distintas alternativas. Dos alternativas de uso comn son:
Caso 1: Mtodo de Heun
82
Ecuaciones Diferenciales
A=
1 B = 1/2 2 P = Q = 1
f = f (t, y ) h [f 0 + f 1 ] 0 2 f 1 = f (t + h , y + h f 0 )
y (t + h ) = y (t ) +
B = 1 A=0 P = Q = 1/2
h y (t + h ) = y (t ) + h f t + h/2 ; y + f (t , y ) 2
R-K 4 orden
(h5)
(h4)
y n +1 = y n +
k1 = h f (y n , t n )
1 (k 1 + 2 k 2 + 2 k 3 + k 4 ) 6
k k 2 = h f y n + 1 , t n +1/2 2 k k 3 = h f y n + 2 , t n +1/2 2 k 4 = h f (y n + k 3 , t n +1 )
En MAT LAB: FUNCIONES A USAR: ODE23, ODE45
Ecuaciones Diferenciales
F y0,sup
(EulerRK-ODE)
yf, calc
y0
t0
t1
t2
tf
f (y 0, sup ) = 0
i 1 i y 0+sup = y 0,sup ,
i f y 0,sup
( ) ) f (y )
84
Ecuaciones Diferenciales
T (x, t ) T (x, t ) = t x2
2
2iK
Vectorialmente: T ' = MT + S
T1 T2 . T= . .TK TK +1
TL T L 0 S= x2 . TR T R
85
Ecuaciones Diferenciales
1 0 0 1 2 1 0 1 2 M = 100 0 0 1 0 0 0
0 0 0 0 1 0 ; S = 100 2 1 0 1
0 0 0 200 200
EN MATLAB:
86
Ecuaciones Diferenciales
0 1
h 2 3 4 5
x nodos
Si: n = n de intervalos (4 en el ejemplo) n + 1 = n nodos (5) Para nodos: i = 2 : n y i-1 2 y i + y i +1 y y i-1 + a i +1 + b y i = f (x i ) 2 2h h Reordenando:
Ecuaciones Diferenciales
nodo i = 1 se utilizan las condiciones de borde o de frontera nodo i = n + 1 Las condiciones de borde son de algunos de los siguientes tipos: 1. De valor fijo (Tipo Dirichlet) y (0) = m 0 y (H ) = m H 2. De derivada (Tipo Neumann) con: m0 y mH constantes
y ' (0) = d 0
y ' (H ) = d H 3. Mixta
con: d0 y dH constantes.
2.
3.
(- 1 + 0 h ) y1 + y 2 = 0 h
88
Ecuaciones Diferenciales
y5 y4 + H y 5 = H ; y 5 (1 + h H ) y 4 = h H h
1 (2 a h ) 0 0 0
0 4 + 2 h2 b
(2 a h )
0 0
( 4 + 2 h b )
2
0 (2 + a h )
(2 a h )
0
( 4 + 2 h b )
2
(2 + a h )
0
0 0
y1 m 0 y 2 h 2 f (x ) 2 2 2 y 3 = 2 h f (x 3 ) (2 + a h ) y 4 2 h 2 f (x 4 ) 1 y5 m H 0 0
0 . . .
(1 + H
Ecuaciones Diferenciales
1 dx d2 x =0 + 2xdz d z2
z = 0 x = x 0 A z = x = x A
Para nodos i = 2 : n
xi 1 2 x i + x i +1 1 x i +1 x i-1 + =0 2 2 xi 2h h
Reordenando esta ecuacin: xi2+1 + 8 x i2 + x i2-1 2 x i +1 x i-1 4 x i x i +1 4 x i x i-1 + 8 x i +1 + 8 x i-1 16 x i = 0 Se establece un sistema de ecuaciones no lineales, y se resuelve, por ejemplo, por Newton Raphson.
x=J\f
T (x, t ) T (x, t ) = t x2
2
Ti +1, j 2Ti , j + Ti 1, j = x 2
-----------------------------
90
Orden
Clasificacin
Linealidad
Condiciones de borde
El orden de una EDP es determinado por el orden de la derivada de mayor orden presente en la ecuacin.
Primer orden:
u u =0 x y
Segundo orden:
2u x
2
+u
u =0 y
Tercer orden:
2 3u + u + u = 0 3 xy y x 2
a(.)
[(.) ( x , y )]
Cuasi-lineal: coeficientes funcin de derivadas de menor orden que el de EDP;
91
u u (.) x , y , u , x , y
Formas cannicas:
b 2 ac < 0
b 2 ac = 0 b 2 ac > 0
2u x
2
u t
2u x 2 = 2u t 2
Condiciones inicial y de borde: Las condiciones de borde para una ecuacin diferencial se dividen en 3 categoras: primera clase, segunda clase y tercera clase.
92
T t
Ejemplo de condiciones de borde e iniciales para el problema de conduccin de calor, condicin de Dirichlet.
Inicial:
T = f(x) T = T0 a t=0 a t=0 y y 0 x 1 0 x 1
De borde:
T = f (t ) T = T1 a a x=0 x =1 y y t>0 t>0
T =0 x
x =1
t0
93
T = h(T T f x
x=0
t0
Condicin de Cauchy: problema que combina condiciones de Dirichlet y Neumann. Problema de VI: al menos una de las variables independientes tiene regin abierta. Ej.: conduccin de calor en estado no estacionario.
2T x
2
T t
Problema de VB: cuando la regin de todas las variables independientes es cerrada. Ej.: conduccin de calor en estado estacionario.
2T x 2 + 2T y 2 + 2T z 2 =0
Condiciones de borde:
T (0 , y , z ) T (1, y , z ) T ( x ,0 , z ) T ( x ,1, z ) T ( x , y ,0 ) T ( x , y ,1)
94
La derivada parcial de u con respecto a x en un espacio tridimensional implica derivar u con respecto a x dejando y,z constantes:
du u x i , j ,k dx i , j ,k
Grilla tri-dimensional de diferencias finitas Utilizando aproximacin de derivada de primer orden en trminos de diferencias centrales:
1 u (ui +1, j ,k ui 1, j ,k ) + O x 2 = x i , j ,k 2x
( )
95
( )
u 1 (ui , j ,k +1 ui , j ,k 1) + O z 2 = z i , j ,k 2z
( )
(ui +1, j ,k 2ui , j ,k + ui 1, j ,k ) + O(x 2 ) (ui , j +1,k 2ui , j ,k + ui , j 1,k ) + O(y 2 ) (ui , j ,k +1 2ui , j ,k + ui , j ,k 1 ) + O(z 2 )
u y x i , j ,k
)
)
96
97
Difusin
2c A x 2
2c A y 2
2c A z 2
=0
98
Reemplazando cada derivada parcial de segundo orden por aproximacin en diferencias centrales:
1
x 2
y 2
Ecuacin algebraica lineal que involucra el valor de la variable dependiente en 5 puntos grilla adyacentes.
(ui +1, j ui 1, j ) =
99
Reordenando:
La ecuacin general en diferencias para cada nodo y las respectivas condiciones de borden constituyen un sistema de ecuaciones lineales (Gauss-Seidel) Grilla equidistante
ui , j = ui +1, j + ui 1, j + ui , j +1 + ui , j 1 4
Molcula computacional
100
x 2
y 2
z 2
Grilla equidistante:
ui , j ,k =
Molcula computacional
101
Ejemplo: conduccin de calor en una placa plana (1m x 1m) en estado estacionario.
2T x
2
2T y
2
= f =
Q k
a) 4 fuentes de calor
T (0 , y ) = 250 C T (1, y ) = 100 C T ( x ,0 ) = 500 C T ( x ,1) = 25 C
c) Fuente de calor de origen elctrico, Q=100 kW/m3. (k=16W/mK) Paredes en contacto con fluido a 25C.
T = 5[T (0 , y ) 25] x 0 , y T = 5[25 T (1, y )] x 1, y T = 5[T ( x ,0 ) 25] y x ,0 T = 5[25 T ( x ,1)] x x ,1
102
Ecuaciones diferenciales parciales parablicas Ejemplos clsicos de EDP parablicas son: Ecuacin de calor en estado no estacionario:
2T 2T 2T T = + + x 2 y 2 z 2 t
u 1 = ui ,n +1 ui ,n 1 + t 2 t i ,n 2t
) ( )
Esta es la frmula algebraica explcita. Esta formula es inestable. Para analizar la estabilidad se puede recurrir a la Regla de Positividad, la cual consiste en determinar si los signos de los trminos del lado derecho son positivos (caso de estabilidad). Dada una formula de diferencias finitas general:
ui ,n +1 = Aui +1,n + Bui ,n + Cui 1,n
La Regla de Positividad requiere que, para que el esquema sea estable: A,B,C positivos y
A+ B +C 1
103
Para eliminar el problema de inestabilidad se reemplaza la derivada parcial con el tiempo por aproximacin en diferencias finitas hacia delante:
u 1 = ui ,n +1 ui ,n + (t ) t i ,n t
t x 2
1 2
Esta ecuacin determina la relacin entre los pasos de integracin. Si se decide trabajar con la igualdad, el esquema de diferencias finitas queda:
ui ,n +1 = 1 (ui +1,n + ui 1,n ) + O x 2 + t 2
Molcula computacional
104
La funcin f corresponde a una fuente o sumidero en el problema fsico. Formula en diferencias finitas explcita:
t t t + 1 2 ui ,n +1 = u u + 2 ui 1,n + tf i ,n 2 i +1,n 2 i ,n x x x
resulta en:
t ui , j ,n +1 = (ui +1, j ,n + ui 1, j ,n ) x 2 t (ui , j +1,n + ui , j 1,n ) + 1 2 t 2 t + tf i , j ,n + y 2 x 2 y 2
1 2t
(x2 y 2 )2 0
Sumando
4x 2 y 2 a cada lado de la desigualdad:
(x2 + y 2 )2 4x2y 2
Reorganizando la ecuacin:
105
1 1 2+ 2 x 2 + y 2 x y
x + y
2
y 2
se obtiene:
t x + y
2 2
1 8
Para igual desarrollo, el caso tridimensional conduce al valor 1/18 en el lado derecho de la condicin de estabilidad.
Mtodo de lneas: mtodo de discretizacin parcial para la resolucin de EDP parablicas. Convierte la EDP en un sistema de EDO (Ecuaciones Diferenciales Ordinarias), discretizando las derivadas espaciales. Para un nodo i:
dui = (ui +1 2ui + ui 1 ) dt x 2
Habr tantas ecuaciones como nodos, o puntos grilla se definan en el dominio de integracin. El conjunto completo de ecuaciones EDO para N puntos grilla ser:
du0 = 2 (u1 2u0 + u1 ) dt x
. .
dui = (ui +1 2ui + ui 1 ) dt x 2
106
du N = (u N +1 2u N + u N 1 ) dt x 2
Para las ecuaciones en los bordes, se consideran las condiciones de borde del problema fsico. Para condicin de Dirichlet y Neumann:
u0 = u u du = 1 1 = 0 dx 0 ,t 2x du0 =0 dt du0 = (2u1 2u0 ) dt x 2
El conjunto de ecuaciones debe ser integrado con las condiciones iniciales del problema fsico. El mtodo produce soluciones estables. Ecuaciones diferenciales parciales hiperblicas Este tipo de ecuaciones se da principalmente en problemas fsicos conectados con procesos vibracionales. Por ejemplo, la ecuacin de la onda unidimensional:
2u 2u = T0 2 + f ( x ,t ) x t 2
Esta ecuacin describe el movimiento transversal de una cuerda vibrando que esta sujeta a una tensin To, una densidad y una fuerza externa f(x,t). Si la densidad es constante:
2u u + F ( x ,t ) =a x 2 t 2
2
2u
Para encontrar la solucin numrica se expande cada derivada de segundo orden en trminos de diferencias finitas centrales:
107
ui ,n +1 2ui ,n + ui ,n 1
ui ,n 1 + x 2 + t 2
x 2
108