Post on 15-Sep-2019
METODOS NUMERICOS UN PRIMER CURSO
IvAN FRANCISCO ASMAR CHARRIS PROFESOR ASOCIADO
JavamAD 1~~ II E COLOMBIA JUJl t t I
DEPTO DE B lBUOTECAS IBLlOTECA EFE GOME
UNIVERSIDAD NACIONAL DE COLOMBIA SEDE MEDELLIN
FACULTAD DE CIENCIAS
DEPARTAMENTO DE MATEMATICAS
1999
I I I~ I IIIIIIII 6 4000 00128374 9
Mis agradecimientos a la permanencia en esta instilllcioll par y fZlego como docene me ha
METODOS NUMERICOS UN PRIMER CURSO
Segunda Edici6n 1999
ISBN 958-9352-12-X
Caratula Fractal 1999 Horacio Arango Marin Profesor Asociado Universidad Nacional Medellin
Diseno de caratula Hector H Aristizabal G Profesor Asociado Universidad Nacional Medellin
Ayudas computacionales Julio C Morales C Profesor Asociado Universidad Nacional Medellin
Asistencia tecnica Libardo Lotero Valencia Asistente Administrativo Facultad de Ciencias Universidad Nacional Medellin
Impreso en Medellin Esta obra se termin6 de imprimir en Julio de 1999 en la Litografia Graficas Montoya
Se imprimieron 500 ejempares
r IqmiddotJ-j 1S
Iqqq
~Jt
------
cos
Mis agradecimientos a a Universfdad Naciona de Colombia pues mi permanencia en esta institlcion por mas de veinte anos primero como estudiante y fuego como docente me ha posibilitado e feliz termino de esta obra
win F Asmar Ch
l1NtvPR~m 0 NACI( l~lALDI CoLOMBtA I ~ bull t If
DEfT I) Vl L I pI IOT~CAS
R1Rl I ITA r-Imiddot r GMl
INTRODUCCION
EI presente material esta dirigido a servir de ayuda tanto a estudiantes como profesores en un primer curso de Metodos Numericos y ha sido escrito teniendo en cuenta el programa del curso que se dicta actualmente para las carreras de Ingenierfa en la Universidad Nacional de Colombia sede Medellin
En el primer capitulo se hace una introducci6n a la aritmetica de punto fiotante errores de redondeo estabilidad de un algoritmo y problemas mal condicionados
En el capitulo dos se estudian los metodos numericos basicos para encontrar ralces aproximadas de una ecuaci6n algebraica no-lineal en una variable Se hace enfasis en los metod os de Punto Fijo y Newton-Raphson y la aplicaci6n de este ultimo en la busqueda de ralces reales de ecuaciones polin6micas
EI capitulo tres se dedica al estudio de metodos numericos para encontrar soluciones aproximadas de sistemas de ecuaciones lineales y no-lineales En el caso de los sistemas lineales se estudian metodos directos basad os en la eliminaci6n de Gauss y los metodos iterativos de Jacobi Gauss-Seidel y SOR tambien se estudia con algun detalle el problema del condicionamiento de una matriz y su relaci6n con la soluci6n numerica de un sistema de ecuaciones Para sistemas no-lineales se estudian los metod os de Punto Fijo y NewtonshyRaphson y como una aplicaci6n del metodo de Newton-Raphson se estudia el metodo de Bairstow para hallar ralces reales yo complejas de ecuaciones polin6micas
En el capitulo cuatro se tratan los temas de interpolaci6n polinomial y ajuste segun mlnimos cuadrados mediante polinomios En 10 referente a la interpolaci6n se estudian las formas interpolantes de Lagrange y Newton y la interpolaci6n segmentaria cubica Se hace aproximaci6n discreta polinomial por mlnimos cuadrados para un conjunto fin ito de puntos en el plano y se consideran los casos de ajuste exponencial logarltmico y de potencia p~r minimos cuadrados
En el capitulo cinco se trata el calculo numerico de integrales definidas mediante los metodos
de los Trapecios Simpson (iJy () Romberg coeficientes indeterminados y cuadratura
Gaussiana
Finalmente el capitulo seis esta dedicado al estudio de algunos metod os numericos para la aproximaci6n discreta de la soluci6n de un problema de valor inicial para ecuaciones
diferenciales ordinarias En este capitulo he recogido los metodos unipasos de Euler Euler mejorado Heun metodo de los tres primeros terminos de la serie de Taylor y metodo de Runge-Kutta de cuarto orden
AI final de cada capitulo se incluye una colecci6n de problemas a manera de taller para que el leCtor complemente los aspectos te6ricos y se ejercite en las aplicaciones
vi INTRODUCCION
Hace algunos anos los cursos de metodos numericos eran practicamente te6ricos ya que el acceso a los computadores era diflcil A los estudiantes se les ensenaba c6mo trabajar los algoritmos numericos y se les mostraban los resultados de algunos programas hechos previamente en el computador pero el estudiante tenia poca oportunidad de experimentar por si mismo con los algoritmos
Una vez que el computador fue mas accesible el estudiante pudo experimentar algo mas con los metodos numericos luego de capacitarse en algun lenguaje de programaci6n como BASIC FORTRAN PASCAL etc pero al gastar horas en la programaci6n de tales metodos ya no disponia de tiempo suficiente para explorar un gran numero de algoritmos numericos diferentes
Afortunadamente en la actualidad disponemos de herramientas computacionales que no requieren del conocimiento de algun lenguaje de programaci6n las cuales ademas de permitir explorar diversos algoritmos numericos ofrecen entre otras las siguientes ventajas se puede realizar un numero importante de iteraciones 10 cual sin tales herramientas no seria posible 0 requeriria demasiado tiempo facilita el manejo de las funciones desde el punto de vista del calculo familiariza en el uso del computador refuerza el trabajo en pequerios grupos y permite abordar algunos problemas que por la enorme cantidad de operaciones aritmetico-algebraicas involucradas no era posible tratar
Para lIevar a cabo los calculos numericos correspondientes a la mayorfa de los metodos numericos desarrollados en este texto se ha escogido el paquete computacional DERIVE ( el cual es potente amigable de poco requerimiento de maquina y relativamente econ6mico) complementado con procedimientos en DERIVE elaborados por el profesor Julio Cesar Morales C de nuestro Departamento de Matematicas Por esta raz6n he agregado en esta segunda edici6n algunas instrucciones correspondientes a tales procedimientos y que el lector encontrara enseguida de algunos ejemplos tambien he adicionado a este material un disquete que contiene los procedimientos mencionados
Para complementar la informaci6n en DERIVE aqui utilizada puede consultarse el manual Ayudese en Matematicas y Graficas con DERIVE escrito por el profesor Morales (ver bibliografia)
Para utilizar las ayudas que vienen en el disquete una vez que se ha cargado el DERIVE ejecute el comando TRANSFER+ LOAD+UTILITY y digite XzETAM MTH donde X denota el nombre del drive donde insert6 el disquete (deje cargar completamente sin tocar el teclado) Tambien estan dentro de las ayudas ofrecidas unos archivos demostrativos correspondientes a cadauno de los capitulos desarrollados en este libro tales archivos contienen resultados de algunos ejemplos y problemas planteados en el texto Para cargar estos archivos demostrativos una vez que se ha cargado el archivo ZETAMMTH cargue el archivo que usted requiera de acuerdo con el capitulo deseado ejecutando el comando TRANSFER+DEMO y editando XCAPDMO donde denota el numero del capitulo (si desea salir de este archiv~ use la tecla Esc) En el mismo disquete esta el archivo HMETODOSMTH que especifica las ayudas para la sintaxis de las funciones que se utilizan en los calculos numericos que aparecen en este texto y da una breve descripci6n de algunas de elias Para hacer uso de estas ayudas puede cargarlas ejecutando el comando TRANSFER+MERGE (agrega las expresiones que estan en el archivo que se carga a las que se encuentran en la ventana de Algebra) y editando XHMETODOSMTH
Quiero agradecer al profesor Julio C computacional correspondiente a este desarrollo del curso de Metodos ltUll taIlIiIIlIII
En la portada aparece el graflCo de un
lenguaje PASCAL por el profesor de la Universidad Nacional sede
la funci6n f(Z) Z2 +c con zee middot 0
Zo e[-22] x [-22] (condici6n InlCill)
condici6n inicial dada zo el NUllil lrtlft1
Finalmente quiero agradecer al sobre este material las cua profesores Mario Arias Zabala Manuel actual Director del Desshypara IIevar a cabo este trabajo
)s numericos eran practicamente te6ricos ya que el los estudiantes se les ensenaba c6mo trabajar los
an los resultados de algunos programas hechos ~studiante tenfa poca oportunidad de experimentar
cesible el estudiante pudo experimentar algo mas pacitarse en algun lenguaje de programaci6n como I gastar horas en la programaci6n de tales metodos explorar un gran numero de algoritmos numericos
nales -que no ademas de
tes ventajas amientas no I es desde el I trabajo en cantidad de
los metodos DERIVE (el economico) Julio Cesar ado en esta
os y que el material un
orales (ver
INTRODUCCI6N vii
Quiero agradecer al profesor Julio C Morales C por su valiosa ayuda en la parte computacional correspondiente a este material ya que con su aporte se ha facilitado e desarrollo del curso de Metodos Numericos
En la portada aparece el grafico de un conjunto de Julia para c = 036 + 01 Oi realizado en
lenguaje PASCAL por el profesor Horacio Arango Marin del Departamento de Matematicas de la Universidad Nacional sede Medellin Este conjunto se obtuvo mediante la iteracion de
fa funci6n f(Z)=Z2+C con ZEC 0 sea mediante la iteraclon Zn+1=Z~+C n = 01 y
Zo e[-22]x[-22] (condici6n inicial) Si la sucesi6n Iznlt diverge a infinito para una
condici6n inicial dada zo el conjunto de todos estos puntos zo se llama el conjunto de
escape y su frontera se llama conjunto de Julia asociado a c Mis agradecimientos al profesor Arango Marin por haberme facilitado tal grafico
Finalmente quiero agradecer al profesor Abraham Asmar Ch por sus valiosas sugerencias sobre este material las cuales me permitieron mejorarlo significativamente y a los profesores Mario Arias Zabala actual Decano de la Facultad de Ciencias y Arturo Jessie Manuel actual Director del Departamento de Matematicas por el apoyo que me brindaron para lIevar a cabo este trabajo
Ivan F Asmar Ch
el DERIVE X denota el el teclado l) mostrativos
les archivos I Para cargar H cargue el el comando
capitulo (si el archivo
e se utilizan de algunas
el comando carga a las
CONTENIDO
CAPiTULO 1 ERRORES DE REDONDEO Y ESTABILIDAD
11 ARITMETICA FINITA 3 12 ERRORES DE REDONDEO 10 13 PERDIDA DE CIFRAS SIGNIFICATIVAS 16 14 ESTABILIDAD DE UN ALGORITMO 20 15 CONDICIONAMIENTO DE UN PROBLEMA 27 TALLER 1 28
CAPiTULO 2 SOlUCI6N NUMERICA DE UNA ECUACI6N NO-LINEAL EN UNA VARIABLE 33
21 METODOS CERRADOS 38 lt-211 Metodo de Bisecci6n 38 212 Metodo de Posicion Falsa 41
22 METODOS ABIERTOS 43 221 Metodo de Punto Fijo 43 ~
-222 Metodo de Newton-Raphson 56 223 EI metodo de Newton-Raphson-Horner 65
L224 Metodo de Newton-Raphson modificado 76 225 Metodo de la Secante 78
23 RAPIDEZ DE CONVERGENCIA 80 231 Orden e convergencia del metodo de iteracion de Punto fijo 84 232 Orden de convergencia del metodo de Newton-Raphson 86
TALLER 2 88
CAPiTULO 3 SOlUCION NUMERICA DE SISTEMAS DE ECUACIONES 93
31 SOLUCION NUMERICA DE SISTEMAS DE ECUACIONES LINEALES 93 32 METODOS DIRECTOS 94 33 SISTEMAS MAL CONDICIONADOS Y NUMERO DE CONDICION DE UNA MATRIZ 99 34 ESTRATEGIAS DE PIVOTEO 114
341 Pivoteo maximo por columna 114 342 Pivoteo escalado de fila 116
35 FACTORIZACION TRIANGULAR 117 351 Algunas aplicaciones de la factorizaci6n PA=LV 119
36 SISTEMAS TRIDIAGONALES 120 37 FACTORIZACION DE CHOLESKI 124 38 METODOS ITERATIVOS 127
381 Metodo iterativo de Jacobi 129 382 Metodo iterativo de Gauss-Seidel 141 383 Metodo SOR 149
X CONTENIDO
39 SOlUCI6N NUMERICA DE SISTEMAS NO-LINEALES 391 Iteraci6n de Punto Fijo para sistemas no-lineales
_ 1392 Metodo de Newton-Raphson para sistemas no-lineales 310 CEROS COMPLEJOS DE POLINOMIOS METODO DE BAIRSTOW TALLER 3
CAPiTULO 4 INTERPOLACI6N POLINOMIAL Y AJUSTE POLINOMIAL
41 INTERPOLACI6N POLINOMIAL 411 Forma de Lagrange del polinomio interpolante 41 2 Forma de Newton del polinomio interpolante
42 INTERPOLACI6N SEGMENTARIA CUBICA 43 AJUSTE DE UN POLINOMIO POR MINIMOS CUADRADOS
431 Regresi6n polinomial 432 Regresi6n exponencial logaritmica y de potencia
TALLER 4
CAPiTULO 5 INTEGRACI6N NUMERICA
51 ALGUNAS F6RMULAS CERRADAS DE NEWTON-COTES 511 Regia de los trapecios
512 Regia de Simpson (~)
513 Regia de simpson () 52 INTEGRACI6N DE ROMBERG 53 METODO DE LOS COEFICIENTES INDETERMINADOS 54 METODO DE CUADRATURA GAUSSIANA TALLER 5
CAPiTULO 6 SOLUCI6N NUMERICA DE PROBLEMAS DE VALOR INICIAL PARA ECUACIONES DIFERENCIALES ORDINARIAS
61 METODO DE EULER 0 DE LA RECTA TANGENTE 62 UN METODO DE EULER MEJORADO 63 METODO DE LOS TRES PRIMEROS TERMINOS DE LA SERlE DE TAYLOR 64 METODO DE RUNGE-KUTTA TALLER 6
BIBLIOGRAFiA
iNDICE
iNDICE DE ALGORITMOS
SiMBOLOS NOTACIONES Y ABREVIATURAS
155 156 162 167 174
183
184 185 197 206 216 217 224 226
231
231 233
237
241
253 259 263 269
273
284 295 299 303 318
323
325
329
331 -
CAPfTULO 1
INTRODucclON
AI momento de menudo con DroIlIIIfIlil cuya soluciOn continuaciOn con para los cualls
IS NO-LINEALES 155 156 162 167 174
183
184 185 197 206 216 217 224 226
231
231 233
237
241
253 259 263 269
273
284 295
R 299 303 318
323
325
329
331 -
I
CAPiTULO 1 ERRORES DE REDONDEO Y ESTABILIDAD
INTRODUCCICN
AI momenta de aplicar las Matematicas a situacjones del mundo real nos encontramos a menudo con problemas que no pueden ser resueltos analiticamente 0 de manera exacta y cuya soluci6n debe ser abordada con ayuda de algun procedimiento numerico A continuaci6n consideramos algunos problemas tipicos ya formulados matematicamente para los cuales estudiaremos tecnicas numericas de soluCi6n
Problema 11 Encontrar el area de la regi6n comprendida entre las graficas de y = 2 sen x xy=e- con XE[O1t] bull
Problema 12 Encontrar las rafces de la ecuaci6n polin6mica
Problema 13 Resolver los siguientes sistemas de ecuaciones
a) EI sistema lineal AX = b con
~ -I 3
-1 2 -1 0 0
2 0 0 0
-2
A= 0 -1 2 -1 0 b= 2
0 0 -1 2 -1 -2
0 0 0 -1 2 1
b) EI sistema no-lineal
x +XY = 9 3x2 y _ y3 =4 bull
Problema 14 Dada la siguiente tabla de datos correspondiente a una cierta funci6n y = f( x)
~ f~) Ilr_=_~__r-~-1__+-_0~~_-~~~__=~__r-=~~ TABLA 11
encontrar el polinomio de menor grado que pase a traves de los puntos dados
Cual sera una estimaci6n para los valores f( x) correspondientes a x = -15 Y x = 15 bull
-Problema 15 Hallar el valor de cada una de las siguientes integrales
2 METODOS NUMERICOS
1
b) Jex2
dx 0
n
2J~ 3
c) ~1-~-4 (ellptica)-dX d) J~Inx x bull o 2
Problema 16 Resolver el problema de valor inicial
d28 d8 -2 + - +16sen8 = 0 dt dt
bull8(0) =~ 8(0) = 0
En reaci6n can los problemas anteriores tenemos que
En el problema 11 es necesario determinar los puntas de intersecci6n de las graficas de
y =2 sen x y y =e-x para 10 cual debemos resolver la ecuaci6n 2 sen x =e-x y no disponemos de un metoda algebraico para hacerlo
En el problema 12 se trata de hallar los ceros de un polinomio de grado 5 y como sabemos s610 se conocen metodos algebraicos para encontrar rarces de ecuaciones polin6micas de grado menor a igual que 4
En el problema 13 tenemos dos sistemas de ecuaciones EI de la parte a) es lineal y conocemos metodos de soluci6n (par ejemplo el metoda de eliminaci6n Gaussiana) sin embargo para sistemas de tamano mayor no s610 es conveniente sino necesario implementar tales metodos a traves del computador (metodo numerico) En la parte b) tenemos un sistema no-lineal y no conocemos metod as algebraicos generales para resolverlo
EI problema 14 se puede resolver anaifticamente (por interpolacion) sin embargo para determinar los coeficientes de dichos polinomios existen tecnicas que permiten encontrarlos rapidamente y que pueden implementarse en el computador
EI problema 15 corresponde a integrales definidas cuyo integrando tiene antiderivada que no es elemental
Finalmente en el problema 16 la ecuaci6n diferencial ordinaria
d2 8 d8 -2 + - + 16sene = 0 (ecuaci6n de movimiento de un pendulo) dt dt
es no-lineal (por la presencia de sen 8) Y no disponemos de un metoda analitico para
resolverla
Los problemas anteriores sirven un primer curso de mtodOi nllnall una variable soluci6n nu interpolaci6n polinomial integrad6n inicial para ecuaciones dihtrlllCil
Un metoda numenco es un manera aproximada la aritmeticos y 16glcos (Ooetl~nM
una tabla de vaores calculO finlta de nstrucciones preas 16gicas (algoritmo) que fVM~_
( olucion num6rica) a bien lit depende en parte de la fICIldId) especiales y limltaclon emplear estos instrumen
5iendo los computadores indicar c6mo son los nUnilllftlul
La mayoria de los conrtpUl_ los nLimeros reales contiene numeros raciloniIlI numeros de punto simplemente conJunto ell
Cada nLimero del conbullbull finita) segun se indlCI
Un numero del matematicamente en
J3 es un entero
(Sistema Blnlrlcl)41
Capitulo 1 ERRORES DE REDONDEO Y ESTABILIDAD 3
Los problemas anteriores sirven como motivaci6n para el estudio de cinco grandes temas en un pri mer curso de metodos numericos soluci6n numerica de una ecuaci6n no-lineal en una variable soluci6n numerica de sistemas de ecuaciones lineales y no-lineales interpolaci6n polinomial integraci6n numerica y soluci6n numerica de problemas de valor inicial para ecuaciones diferenciales ordinarias
Que es un metodo numerico
Un metodo numerico es un procedimiento mediante el cual se obtiene casl slempre de manera aproximada la soluci6n de ciertos problemas realizando calculos puramente aritmeticos y 16gicos (operaciones aritmeticas elementales calculo de funciones consulta de una tabla de valores calculo proposicional etc) Un tal procedimiento consiste de una lista fin ita de instrucciones precisas que especifican una secuencia de operaciones algebraicas y 16gicas (algoritmo) que producen 0 bien una aproximaci6n de la soluci6n del problema (soluci6n numerica) 0 bien un mensaje La eficiencia en el calculo de dicha aproximaci6n depende en parte de la faci lidad de implementaci6n del algori tmo y de las caracteristicas especiales y limitaciones de los instrumentos de calculo (los computadores) En general al emplear estos instrumentos de calculo se introducen errores Ilamados de redondeo
11 ARITMETICA FINITA
Siendo los computadores la herramienta basica en los metodos numericos es conveniente indicar c6mo son los numeros del computador y c6mo se simula su aritmetica
La mayoria de los computadores usan s610 un subconjunto finito relativamente pequeno de los numeros reales para representar a todos los numeros reales este conjunto que s610 contiene numeros racionales y que describiremos mas adelante es lIamado conjunto de numeros de punto flotante 0 conjunto de numeros de maquina en punto flotante 0
simplernente conjunto de punto flotante
Cada numero del computador se representa mediante un numero finito de digi tos (aritmetica fin ita) segun se indica a continuaci6n
Un numero del computador 0 de punto flotante distinto de cero se describe matematicamente en la forma
t f I
forma en la cuallos simbolos que all[ aparecen tienen el siguiente significado
(J =+ 1 0 (J =- 1 es el sig no del numero
~ es un entero que denota la base del sistema numerico usado Por 10 general ~ 2
(Sistema Binario) ~ = 8 (Sistema Octal) 0 ~ = 16 (Sistema Hexadecimal)
ai i = 12 t es un entero con 0 ~ ai ~ ~ - 1 Los enteros 01 0 - 1 son lIamados digitos
en la base ~ Nosotros asumiremos en todo 10 que sigue que a tc 0 en cuyo caso el
numero se dice que esta en forma normalizada
4 METODOS NUMERIC OS
a1 a2 at I f 6 d I ()middot a t ~ denota la suma 1 + 2++ yes IIamada a mantlsa 0 racci n e numero a1a2 p p p de punto flotante
EI entero t indica el numero de dfgitos en la base p que se usan para representar el
numero de punta flotante y es amado precisi6n Por 10 general t =6 0 t =7 con ~ =10
(precisi6n sencilla) t =14 0 t = 15 can ~ =10 (doble precisi6n) En algunos computadores se pueden hacer representaciones en precisi6n sencilla doble precisi6n e incluso en precisi6n mayor
e es un entero lIamado el exponente y es tal que L ~ e ~ U para ciertos enteros L y U es comun encontrar L = - U a L = -U plusmn 1 Un caso frecuente es L = -63 Y U = 64 para un total de 128 posibles exponentes
EI numero cero requiere una representaci6n especial
De acuerdo con 10 anterior un conjunto de punto flotante F queda caracterizado por cuatro parametros
a) La base p b) La precisi6n t c) Los enteros L y U tales que L ~ e ~ U donde e es el exponente
Cualesquiera sean los parametros elegidos los conjuntos de punta flotante correspondientes comparten las mismas caracterlsticas cualitativas entre elias la carencia de algunas de las propiedades algebraicas de que gozan los numeros reales
Una de las caracterfsticas de todo conjunto de punto flotante F es que es finito y tiene
numeros diferentes (incluyendo el cera) y donde los distintos de cero estan en forma normalizada En efecto
puede tomar p- 1 valores y ai i =23 t puede tomar p valores asf que haya1
(p - 1)p P=(p _1)pt-1 fracciones positivas distintas --v--
t-1
Ahora considerando que el numero de posibles exponentes es U - L + 1 que el numero de punta flotante puede ser positiv~ 0 negativ~ y teniendo en cuenta que el numero cero esta tambim en el conjunto de punto flotante concluimos que el conjunto F tiene
numeros diferentes
Capitulo 1 ERRORES DE REDONDEO Y ESTABILIDAD 5
Lo anterior nos dice que se usan 2(~ -1)~t- (U - L + 1) + 1 numeros de punto fiotante para
representar el conjunto continuo de los numeros reales (que es infinito) 10 que impl ica que muchos numeros reales tendrfan que ser representados par un mismo numero de punto flotante
Como ejemplo consideremos el conjunto de punto flotante F con para metros p== 2
(Binario) t == 3 L == -1 U == 2 Tal conjunto F tiene
numeros diferentes (inciuyendo el cero)
Los numeros de F distintos de cero son de la forma
con a = 1 a2 a3 = 0 1 Y e = - 1 0 1 2 asf que las fracciones positivas distintas son
Combinando estas mantisas con los exponentes obtenemos todos los numeros positivos de F que aparecen en la TABLA 12 siguiente
I MANTISA I EXP -1 I EXP 0 I EXP 1 IEXP 2
I 8
(100)2 =shy16
(100) x T=~2 16
(100) x 2deg = ~ 2 16
(100) x 2 = ~ 2 16
(100) x 22 == 32 2 16
(101) =Q2 16
(101)2 x T = ~ 16
(101) x 2deg = Q 2 16
(101) x 2 = 20 2 16
(101)2 22 == 40 16
(110) = ~ 2 16
(110) xT =~ 2 16
(110) x 2deg ==~ 2 16
(110) 2 x 2= 24 16
( ) 2 48 1 10 x 2 =shy2 16
(111) = i2 16
(111) x T = ~ 2 16
(111) x 2deg = i2 16
(111) x 2 = 28 2 16
(1 11) x 22 = 56 2 16
TABLA 12
6 METOOOS NUMERICOS
Como estamos mas familiarizados con los numeros decimales (en base p= 10) los 33 elementos de F en forma (racional) decimal son
16 20 24 28 32 40 48 56 +- plusmn- plusmn- plusmn - +- +- +- +shy-16 16 16 16 -16 -16 -16 -16
Una representaci6n de los numeros positiv~s y el cero de F en la recta real se muestra en la FIGURA 11 siguiente
o )( flex) Iii
56
~T 16 20 32 b
40 48 ~R
-TS 16 16 16 16 16 I regIon de under1low region de overflow
(subfJujo) (sobreflujo)
FIGURA 11
Algunos hechos que se pueden observar en un conjunto de punta flotante F son
1 Todo numero real x que entra en el computador 0 que es el resultado de un calculo es reemplazado (si es posible) por un numero de punto flotante que notaremos fl(x) Existen reg las para escoger tal numero (reglas de redondeo) por 10 general es el numero de punto
flotante mas cercano a x La diferencia Ix - f1( x) I se llama error (absoluto) de redondeo
2 Si observamos la distribuci6n de los elementos de F en la recta real vemos que no estan igualmente espaciados (eslan mas densamente distribuldos ella cercanla del cero) 10 que implica que el error de redondeo puede depender del tamaro del numero (entre mas grande sea el numero en valor absoluto mayor puede ser el error de redondeo)
En el ejemplo el numero de punto f10tante positiv~ mas pequero es ~ = y el numero de 16 4
punto flotante positiv~ mas grande es 56 = ~ 16 2
En general en un conjunto de punto flotante F con param~tros p t L Y U se tiene que
es el numero de punta f10tante positiv~ mas pequero (para el ejemplo FL = 2-1-1 = plusmn) y
con y = P-1
Capitulo 1 ERRORES DE REDONDEO Y ESTABILIDAD 7
es el numero de punto flotantepositivo mas grande (para el ejemplo Fu =(1- 2-3 )22 = ) 2
A la regi6n RL = X ER 0 lt IxIlt FL se Ie llama region de underflow 0 subflujo y en
algunos computadores si un numero real cae en esta region el numero es redondeado a cero
Por otra parte a la regi6n Ru = X ER Ixl gt Fu se Ie llama region de overflow 0
sobreflujo y en algunos computadores si un numero real cae en esta regi6n el numero es redondeado al numero de punto flotante mas cercano (Fu - Fu) 0 se infomia del fen6meno
overflow
Se define como range del conjunto F al conjunto
De acuerdo con esto todo numero de punto flotante distinto de cero fl(x) debe satisfacer
3 La combinaci6n aritmetica usual + - x 7- de dos numeros de punto flotante no
siempre produce un numero de punto flotante
Supongamos que fl(x) fl(Y)EF Veamos como ejemplo que la suma usual fl(x)+fl(y) no
necesariamente sera un numero en F Para ello consideremos el conjunto de punto f10tante
F dado en el ejemplo fl(x) = ~ EF fl(Y) = 1~ E F sin embargo
28 5 33fl( x) + fl(Y) = - + - = - ~ F Luego la adici6n usual no es cerrada en el sentido
16 16 16 matematico ordinario
Una manera de simular la adici6n Y las demas operaciones aritmeticas entre numeros rea les pero realizadas por el computador es la siguiente
Si x e Y son numeros reales en el range de F definimos las operaciones 83 8 reg Y 8 a las que nos referiremos como operaciones de punta flotante asi
x EB Y = fl( fl( x) + fl( Y ) )
x 8 Y= fl( fl( x) - fl( Y ) )
x reg Y = fl( fl( x) x fl( Y ) )
x 8 Y = fl( fI( x) fI(Y))
donde + - x Y 7 son las operaciones aritmeticas usuales
8 METOOOS NUMERICOS
Ilustraremos estas operaciones en 81 conjunto F del ejemplo al tiempo que pondremos de manifiesto la carencia de ciertas propiedades para tales operaciones Supondremos que f1(x) se escoge como el numero de punto f10tante mas cercano a x y que cuando el numero x equidista de dos numeros de punto f1otante se escoge flex) como el mas cercano a la derecha si es positiv~ 0 el mas cercano hacia la izquierda si es negativo
middot 28 5 R t ITomemos en F os numeros - y - y supongamos que X y E son a es queI 16 16
28 5f1(x) = - Y f1(Y) = - Entonces
16 16
xG) = f1(28 + ~) = fl( 33) = 32 Y 16 16 16 16
x e y = f( 28 _~) = fl( 23) = 24 1616 16 16
Xampgt y=fl( 28 x~) = fl( 35) = 32 = ~ 16 16 64 64 16
xEEJ y = fl( 28 -- ~) = fl( 28) = 56 (fen6meno overflow) 16 16 5 16
28 56t Overflow ya que - gt - = Fu 5 16
6 6Tomemos - EF Y supongamos que z ER es tal que fl(z) = - entonces
16 16
z e y = fl(~ - ~) =f1( _1 ) = 0 (fen6meno underflow) 16 16 16
1 4t Underflow ya que 0 lt - lt - = FL 16 16
16 7 14 5 10 Como 1 = 16 8 = 16 s = 16 E F entonces existen u v WE R tales que fl(U) = 1
7 5f~V)=S Y f1(W) = s Entonces
luego
Air que
Fi_
Mis agradecimientos a la permanencia en esta instilllcioll par y fZlego como docene me ha
METODOS NUMERICOS UN PRIMER CURSO
Segunda Edici6n 1999
ISBN 958-9352-12-X
Caratula Fractal 1999 Horacio Arango Marin Profesor Asociado Universidad Nacional Medellin
Diseno de caratula Hector H Aristizabal G Profesor Asociado Universidad Nacional Medellin
Ayudas computacionales Julio C Morales C Profesor Asociado Universidad Nacional Medellin
Asistencia tecnica Libardo Lotero Valencia Asistente Administrativo Facultad de Ciencias Universidad Nacional Medellin
Impreso en Medellin Esta obra se termin6 de imprimir en Julio de 1999 en la Litografia Graficas Montoya
Se imprimieron 500 ejempares
r IqmiddotJ-j 1S
Iqqq
~Jt
------
cos
Mis agradecimientos a a Universfdad Naciona de Colombia pues mi permanencia en esta institlcion por mas de veinte anos primero como estudiante y fuego como docente me ha posibilitado e feliz termino de esta obra
win F Asmar Ch
l1NtvPR~m 0 NACI( l~lALDI CoLOMBtA I ~ bull t If
DEfT I) Vl L I pI IOT~CAS
R1Rl I ITA r-Imiddot r GMl
INTRODUCCION
EI presente material esta dirigido a servir de ayuda tanto a estudiantes como profesores en un primer curso de Metodos Numericos y ha sido escrito teniendo en cuenta el programa del curso que se dicta actualmente para las carreras de Ingenierfa en la Universidad Nacional de Colombia sede Medellin
En el primer capitulo se hace una introducci6n a la aritmetica de punto fiotante errores de redondeo estabilidad de un algoritmo y problemas mal condicionados
En el capitulo dos se estudian los metodos numericos basicos para encontrar ralces aproximadas de una ecuaci6n algebraica no-lineal en una variable Se hace enfasis en los metod os de Punto Fijo y Newton-Raphson y la aplicaci6n de este ultimo en la busqueda de ralces reales de ecuaciones polin6micas
EI capitulo tres se dedica al estudio de metodos numericos para encontrar soluciones aproximadas de sistemas de ecuaciones lineales y no-lineales En el caso de los sistemas lineales se estudian metodos directos basad os en la eliminaci6n de Gauss y los metodos iterativos de Jacobi Gauss-Seidel y SOR tambien se estudia con algun detalle el problema del condicionamiento de una matriz y su relaci6n con la soluci6n numerica de un sistema de ecuaciones Para sistemas no-lineales se estudian los metod os de Punto Fijo y NewtonshyRaphson y como una aplicaci6n del metodo de Newton-Raphson se estudia el metodo de Bairstow para hallar ralces reales yo complejas de ecuaciones polin6micas
En el capitulo cuatro se tratan los temas de interpolaci6n polinomial y ajuste segun mlnimos cuadrados mediante polinomios En 10 referente a la interpolaci6n se estudian las formas interpolantes de Lagrange y Newton y la interpolaci6n segmentaria cubica Se hace aproximaci6n discreta polinomial por mlnimos cuadrados para un conjunto fin ito de puntos en el plano y se consideran los casos de ajuste exponencial logarltmico y de potencia p~r minimos cuadrados
En el capitulo cinco se trata el calculo numerico de integrales definidas mediante los metodos
de los Trapecios Simpson (iJy () Romberg coeficientes indeterminados y cuadratura
Gaussiana
Finalmente el capitulo seis esta dedicado al estudio de algunos metod os numericos para la aproximaci6n discreta de la soluci6n de un problema de valor inicial para ecuaciones
diferenciales ordinarias En este capitulo he recogido los metodos unipasos de Euler Euler mejorado Heun metodo de los tres primeros terminos de la serie de Taylor y metodo de Runge-Kutta de cuarto orden
AI final de cada capitulo se incluye una colecci6n de problemas a manera de taller para que el leCtor complemente los aspectos te6ricos y se ejercite en las aplicaciones
vi INTRODUCCION
Hace algunos anos los cursos de metodos numericos eran practicamente te6ricos ya que el acceso a los computadores era diflcil A los estudiantes se les ensenaba c6mo trabajar los algoritmos numericos y se les mostraban los resultados de algunos programas hechos previamente en el computador pero el estudiante tenia poca oportunidad de experimentar por si mismo con los algoritmos
Una vez que el computador fue mas accesible el estudiante pudo experimentar algo mas con los metodos numericos luego de capacitarse en algun lenguaje de programaci6n como BASIC FORTRAN PASCAL etc pero al gastar horas en la programaci6n de tales metodos ya no disponia de tiempo suficiente para explorar un gran numero de algoritmos numericos diferentes
Afortunadamente en la actualidad disponemos de herramientas computacionales que no requieren del conocimiento de algun lenguaje de programaci6n las cuales ademas de permitir explorar diversos algoritmos numericos ofrecen entre otras las siguientes ventajas se puede realizar un numero importante de iteraciones 10 cual sin tales herramientas no seria posible 0 requeriria demasiado tiempo facilita el manejo de las funciones desde el punto de vista del calculo familiariza en el uso del computador refuerza el trabajo en pequerios grupos y permite abordar algunos problemas que por la enorme cantidad de operaciones aritmetico-algebraicas involucradas no era posible tratar
Para lIevar a cabo los calculos numericos correspondientes a la mayorfa de los metodos numericos desarrollados en este texto se ha escogido el paquete computacional DERIVE ( el cual es potente amigable de poco requerimiento de maquina y relativamente econ6mico) complementado con procedimientos en DERIVE elaborados por el profesor Julio Cesar Morales C de nuestro Departamento de Matematicas Por esta raz6n he agregado en esta segunda edici6n algunas instrucciones correspondientes a tales procedimientos y que el lector encontrara enseguida de algunos ejemplos tambien he adicionado a este material un disquete que contiene los procedimientos mencionados
Para complementar la informaci6n en DERIVE aqui utilizada puede consultarse el manual Ayudese en Matematicas y Graficas con DERIVE escrito por el profesor Morales (ver bibliografia)
Para utilizar las ayudas que vienen en el disquete una vez que se ha cargado el DERIVE ejecute el comando TRANSFER+ LOAD+UTILITY y digite XzETAM MTH donde X denota el nombre del drive donde insert6 el disquete (deje cargar completamente sin tocar el teclado) Tambien estan dentro de las ayudas ofrecidas unos archivos demostrativos correspondientes a cadauno de los capitulos desarrollados en este libro tales archivos contienen resultados de algunos ejemplos y problemas planteados en el texto Para cargar estos archivos demostrativos una vez que se ha cargado el archivo ZETAMMTH cargue el archivo que usted requiera de acuerdo con el capitulo deseado ejecutando el comando TRANSFER+DEMO y editando XCAPDMO donde denota el numero del capitulo (si desea salir de este archiv~ use la tecla Esc) En el mismo disquete esta el archivo HMETODOSMTH que especifica las ayudas para la sintaxis de las funciones que se utilizan en los calculos numericos que aparecen en este texto y da una breve descripci6n de algunas de elias Para hacer uso de estas ayudas puede cargarlas ejecutando el comando TRANSFER+MERGE (agrega las expresiones que estan en el archivo que se carga a las que se encuentran en la ventana de Algebra) y editando XHMETODOSMTH
Quiero agradecer al profesor Julio C computacional correspondiente a este desarrollo del curso de Metodos ltUll taIlIiIIlIII
En la portada aparece el graflCo de un
lenguaje PASCAL por el profesor de la Universidad Nacional sede
la funci6n f(Z) Z2 +c con zee middot 0
Zo e[-22] x [-22] (condici6n InlCill)
condici6n inicial dada zo el NUllil lrtlft1
Finalmente quiero agradecer al sobre este material las cua profesores Mario Arias Zabala Manuel actual Director del Desshypara IIevar a cabo este trabajo
)s numericos eran practicamente te6ricos ya que el los estudiantes se les ensenaba c6mo trabajar los
an los resultados de algunos programas hechos ~studiante tenfa poca oportunidad de experimentar
cesible el estudiante pudo experimentar algo mas pacitarse en algun lenguaje de programaci6n como I gastar horas en la programaci6n de tales metodos explorar un gran numero de algoritmos numericos
nales -que no ademas de
tes ventajas amientas no I es desde el I trabajo en cantidad de
los metodos DERIVE (el economico) Julio Cesar ado en esta
os y que el material un
orales (ver
INTRODUCCI6N vii
Quiero agradecer al profesor Julio C Morales C por su valiosa ayuda en la parte computacional correspondiente a este material ya que con su aporte se ha facilitado e desarrollo del curso de Metodos Numericos
En la portada aparece el grafico de un conjunto de Julia para c = 036 + 01 Oi realizado en
lenguaje PASCAL por el profesor Horacio Arango Marin del Departamento de Matematicas de la Universidad Nacional sede Medellin Este conjunto se obtuvo mediante la iteracion de
fa funci6n f(Z)=Z2+C con ZEC 0 sea mediante la iteraclon Zn+1=Z~+C n = 01 y
Zo e[-22]x[-22] (condici6n inicial) Si la sucesi6n Iznlt diverge a infinito para una
condici6n inicial dada zo el conjunto de todos estos puntos zo se llama el conjunto de
escape y su frontera se llama conjunto de Julia asociado a c Mis agradecimientos al profesor Arango Marin por haberme facilitado tal grafico
Finalmente quiero agradecer al profesor Abraham Asmar Ch por sus valiosas sugerencias sobre este material las cuales me permitieron mejorarlo significativamente y a los profesores Mario Arias Zabala actual Decano de la Facultad de Ciencias y Arturo Jessie Manuel actual Director del Departamento de Matematicas por el apoyo que me brindaron para lIevar a cabo este trabajo
Ivan F Asmar Ch
el DERIVE X denota el el teclado l) mostrativos
les archivos I Para cargar H cargue el el comando
capitulo (si el archivo
e se utilizan de algunas
el comando carga a las
CONTENIDO
CAPiTULO 1 ERRORES DE REDONDEO Y ESTABILIDAD
11 ARITMETICA FINITA 3 12 ERRORES DE REDONDEO 10 13 PERDIDA DE CIFRAS SIGNIFICATIVAS 16 14 ESTABILIDAD DE UN ALGORITMO 20 15 CONDICIONAMIENTO DE UN PROBLEMA 27 TALLER 1 28
CAPiTULO 2 SOlUCI6N NUMERICA DE UNA ECUACI6N NO-LINEAL EN UNA VARIABLE 33
21 METODOS CERRADOS 38 lt-211 Metodo de Bisecci6n 38 212 Metodo de Posicion Falsa 41
22 METODOS ABIERTOS 43 221 Metodo de Punto Fijo 43 ~
-222 Metodo de Newton-Raphson 56 223 EI metodo de Newton-Raphson-Horner 65
L224 Metodo de Newton-Raphson modificado 76 225 Metodo de la Secante 78
23 RAPIDEZ DE CONVERGENCIA 80 231 Orden e convergencia del metodo de iteracion de Punto fijo 84 232 Orden de convergencia del metodo de Newton-Raphson 86
TALLER 2 88
CAPiTULO 3 SOlUCION NUMERICA DE SISTEMAS DE ECUACIONES 93
31 SOLUCION NUMERICA DE SISTEMAS DE ECUACIONES LINEALES 93 32 METODOS DIRECTOS 94 33 SISTEMAS MAL CONDICIONADOS Y NUMERO DE CONDICION DE UNA MATRIZ 99 34 ESTRATEGIAS DE PIVOTEO 114
341 Pivoteo maximo por columna 114 342 Pivoteo escalado de fila 116
35 FACTORIZACION TRIANGULAR 117 351 Algunas aplicaciones de la factorizaci6n PA=LV 119
36 SISTEMAS TRIDIAGONALES 120 37 FACTORIZACION DE CHOLESKI 124 38 METODOS ITERATIVOS 127
381 Metodo iterativo de Jacobi 129 382 Metodo iterativo de Gauss-Seidel 141 383 Metodo SOR 149
X CONTENIDO
39 SOlUCI6N NUMERICA DE SISTEMAS NO-LINEALES 391 Iteraci6n de Punto Fijo para sistemas no-lineales
_ 1392 Metodo de Newton-Raphson para sistemas no-lineales 310 CEROS COMPLEJOS DE POLINOMIOS METODO DE BAIRSTOW TALLER 3
CAPiTULO 4 INTERPOLACI6N POLINOMIAL Y AJUSTE POLINOMIAL
41 INTERPOLACI6N POLINOMIAL 411 Forma de Lagrange del polinomio interpolante 41 2 Forma de Newton del polinomio interpolante
42 INTERPOLACI6N SEGMENTARIA CUBICA 43 AJUSTE DE UN POLINOMIO POR MINIMOS CUADRADOS
431 Regresi6n polinomial 432 Regresi6n exponencial logaritmica y de potencia
TALLER 4
CAPiTULO 5 INTEGRACI6N NUMERICA
51 ALGUNAS F6RMULAS CERRADAS DE NEWTON-COTES 511 Regia de los trapecios
512 Regia de Simpson (~)
513 Regia de simpson () 52 INTEGRACI6N DE ROMBERG 53 METODO DE LOS COEFICIENTES INDETERMINADOS 54 METODO DE CUADRATURA GAUSSIANA TALLER 5
CAPiTULO 6 SOLUCI6N NUMERICA DE PROBLEMAS DE VALOR INICIAL PARA ECUACIONES DIFERENCIALES ORDINARIAS
61 METODO DE EULER 0 DE LA RECTA TANGENTE 62 UN METODO DE EULER MEJORADO 63 METODO DE LOS TRES PRIMEROS TERMINOS DE LA SERlE DE TAYLOR 64 METODO DE RUNGE-KUTTA TALLER 6
BIBLIOGRAFiA
iNDICE
iNDICE DE ALGORITMOS
SiMBOLOS NOTACIONES Y ABREVIATURAS
155 156 162 167 174
183
184 185 197 206 216 217 224 226
231
231 233
237
241
253 259 263 269
273
284 295 299 303 318
323
325
329
331 -
CAPfTULO 1
INTRODucclON
AI momento de menudo con DroIlIIIfIlil cuya soluciOn continuaciOn con para los cualls
IS NO-LINEALES 155 156 162 167 174
183
184 185 197 206 216 217 224 226
231
231 233
237
241
253 259 263 269
273
284 295
R 299 303 318
323
325
329
331 -
I
CAPiTULO 1 ERRORES DE REDONDEO Y ESTABILIDAD
INTRODUCCICN
AI momenta de aplicar las Matematicas a situacjones del mundo real nos encontramos a menudo con problemas que no pueden ser resueltos analiticamente 0 de manera exacta y cuya soluci6n debe ser abordada con ayuda de algun procedimiento numerico A continuaci6n consideramos algunos problemas tipicos ya formulados matematicamente para los cuales estudiaremos tecnicas numericas de soluCi6n
Problema 11 Encontrar el area de la regi6n comprendida entre las graficas de y = 2 sen x xy=e- con XE[O1t] bull
Problema 12 Encontrar las rafces de la ecuaci6n polin6mica
Problema 13 Resolver los siguientes sistemas de ecuaciones
a) EI sistema lineal AX = b con
~ -I 3
-1 2 -1 0 0
2 0 0 0
-2
A= 0 -1 2 -1 0 b= 2
0 0 -1 2 -1 -2
0 0 0 -1 2 1
b) EI sistema no-lineal
x +XY = 9 3x2 y _ y3 =4 bull
Problema 14 Dada la siguiente tabla de datos correspondiente a una cierta funci6n y = f( x)
~ f~) Ilr_=_~__r-~-1__+-_0~~_-~~~__=~__r-=~~ TABLA 11
encontrar el polinomio de menor grado que pase a traves de los puntos dados
Cual sera una estimaci6n para los valores f( x) correspondientes a x = -15 Y x = 15 bull
-Problema 15 Hallar el valor de cada una de las siguientes integrales
2 METODOS NUMERICOS
1
b) Jex2
dx 0
n
2J~ 3
c) ~1-~-4 (ellptica)-dX d) J~Inx x bull o 2
Problema 16 Resolver el problema de valor inicial
d28 d8 -2 + - +16sen8 = 0 dt dt
bull8(0) =~ 8(0) = 0
En reaci6n can los problemas anteriores tenemos que
En el problema 11 es necesario determinar los puntas de intersecci6n de las graficas de
y =2 sen x y y =e-x para 10 cual debemos resolver la ecuaci6n 2 sen x =e-x y no disponemos de un metoda algebraico para hacerlo
En el problema 12 se trata de hallar los ceros de un polinomio de grado 5 y como sabemos s610 se conocen metodos algebraicos para encontrar rarces de ecuaciones polin6micas de grado menor a igual que 4
En el problema 13 tenemos dos sistemas de ecuaciones EI de la parte a) es lineal y conocemos metodos de soluci6n (par ejemplo el metoda de eliminaci6n Gaussiana) sin embargo para sistemas de tamano mayor no s610 es conveniente sino necesario implementar tales metodos a traves del computador (metodo numerico) En la parte b) tenemos un sistema no-lineal y no conocemos metod as algebraicos generales para resolverlo
EI problema 14 se puede resolver anaifticamente (por interpolacion) sin embargo para determinar los coeficientes de dichos polinomios existen tecnicas que permiten encontrarlos rapidamente y que pueden implementarse en el computador
EI problema 15 corresponde a integrales definidas cuyo integrando tiene antiderivada que no es elemental
Finalmente en el problema 16 la ecuaci6n diferencial ordinaria
d2 8 d8 -2 + - + 16sene = 0 (ecuaci6n de movimiento de un pendulo) dt dt
es no-lineal (por la presencia de sen 8) Y no disponemos de un metoda analitico para
resolverla
Los problemas anteriores sirven un primer curso de mtodOi nllnall una variable soluci6n nu interpolaci6n polinomial integrad6n inicial para ecuaciones dihtrlllCil
Un metoda numenco es un manera aproximada la aritmeticos y 16glcos (Ooetl~nM
una tabla de vaores calculO finlta de nstrucciones preas 16gicas (algoritmo) que fVM~_
( olucion num6rica) a bien lit depende en parte de la fICIldId) especiales y limltaclon emplear estos instrumen
5iendo los computadores indicar c6mo son los nUnilllftlul
La mayoria de los conrtpUl_ los nLimeros reales contiene numeros raciloniIlI numeros de punto simplemente conJunto ell
Cada nLimero del conbullbull finita) segun se indlCI
Un numero del matematicamente en
J3 es un entero
(Sistema Blnlrlcl)41
Capitulo 1 ERRORES DE REDONDEO Y ESTABILIDAD 3
Los problemas anteriores sirven como motivaci6n para el estudio de cinco grandes temas en un pri mer curso de metodos numericos soluci6n numerica de una ecuaci6n no-lineal en una variable soluci6n numerica de sistemas de ecuaciones lineales y no-lineales interpolaci6n polinomial integraci6n numerica y soluci6n numerica de problemas de valor inicial para ecuaciones diferenciales ordinarias
Que es un metodo numerico
Un metodo numerico es un procedimiento mediante el cual se obtiene casl slempre de manera aproximada la soluci6n de ciertos problemas realizando calculos puramente aritmeticos y 16gicos (operaciones aritmeticas elementales calculo de funciones consulta de una tabla de valores calculo proposicional etc) Un tal procedimiento consiste de una lista fin ita de instrucciones precisas que especifican una secuencia de operaciones algebraicas y 16gicas (algoritmo) que producen 0 bien una aproximaci6n de la soluci6n del problema (soluci6n numerica) 0 bien un mensaje La eficiencia en el calculo de dicha aproximaci6n depende en parte de la faci lidad de implementaci6n del algori tmo y de las caracteristicas especiales y limitaciones de los instrumentos de calculo (los computadores) En general al emplear estos instrumentos de calculo se introducen errores Ilamados de redondeo
11 ARITMETICA FINITA
Siendo los computadores la herramienta basica en los metodos numericos es conveniente indicar c6mo son los numeros del computador y c6mo se simula su aritmetica
La mayoria de los computadores usan s610 un subconjunto finito relativamente pequeno de los numeros reales para representar a todos los numeros reales este conjunto que s610 contiene numeros racionales y que describiremos mas adelante es lIamado conjunto de numeros de punto flotante 0 conjunto de numeros de maquina en punto flotante 0
simplernente conjunto de punto flotante
Cada numero del computador se representa mediante un numero finito de digi tos (aritmetica fin ita) segun se indica a continuaci6n
Un numero del computador 0 de punto flotante distinto de cero se describe matematicamente en la forma
t f I
forma en la cuallos simbolos que all[ aparecen tienen el siguiente significado
(J =+ 1 0 (J =- 1 es el sig no del numero
~ es un entero que denota la base del sistema numerico usado Por 10 general ~ 2
(Sistema Binario) ~ = 8 (Sistema Octal) 0 ~ = 16 (Sistema Hexadecimal)
ai i = 12 t es un entero con 0 ~ ai ~ ~ - 1 Los enteros 01 0 - 1 son lIamados digitos
en la base ~ Nosotros asumiremos en todo 10 que sigue que a tc 0 en cuyo caso el
numero se dice que esta en forma normalizada
4 METODOS NUMERIC OS
a1 a2 at I f 6 d I ()middot a t ~ denota la suma 1 + 2++ yes IIamada a mantlsa 0 racci n e numero a1a2 p p p de punto flotante
EI entero t indica el numero de dfgitos en la base p que se usan para representar el
numero de punta flotante y es amado precisi6n Por 10 general t =6 0 t =7 con ~ =10
(precisi6n sencilla) t =14 0 t = 15 can ~ =10 (doble precisi6n) En algunos computadores se pueden hacer representaciones en precisi6n sencilla doble precisi6n e incluso en precisi6n mayor
e es un entero lIamado el exponente y es tal que L ~ e ~ U para ciertos enteros L y U es comun encontrar L = - U a L = -U plusmn 1 Un caso frecuente es L = -63 Y U = 64 para un total de 128 posibles exponentes
EI numero cero requiere una representaci6n especial
De acuerdo con 10 anterior un conjunto de punto flotante F queda caracterizado por cuatro parametros
a) La base p b) La precisi6n t c) Los enteros L y U tales que L ~ e ~ U donde e es el exponente
Cualesquiera sean los parametros elegidos los conjuntos de punta flotante correspondientes comparten las mismas caracterlsticas cualitativas entre elias la carencia de algunas de las propiedades algebraicas de que gozan los numeros reales
Una de las caracterfsticas de todo conjunto de punto flotante F es que es finito y tiene
numeros diferentes (incluyendo el cera) y donde los distintos de cero estan en forma normalizada En efecto
puede tomar p- 1 valores y ai i =23 t puede tomar p valores asf que haya1
(p - 1)p P=(p _1)pt-1 fracciones positivas distintas --v--
t-1
Ahora considerando que el numero de posibles exponentes es U - L + 1 que el numero de punta flotante puede ser positiv~ 0 negativ~ y teniendo en cuenta que el numero cero esta tambim en el conjunto de punto flotante concluimos que el conjunto F tiene
numeros diferentes
Capitulo 1 ERRORES DE REDONDEO Y ESTABILIDAD 5
Lo anterior nos dice que se usan 2(~ -1)~t- (U - L + 1) + 1 numeros de punto fiotante para
representar el conjunto continuo de los numeros reales (que es infinito) 10 que impl ica que muchos numeros reales tendrfan que ser representados par un mismo numero de punto flotante
Como ejemplo consideremos el conjunto de punto flotante F con para metros p== 2
(Binario) t == 3 L == -1 U == 2 Tal conjunto F tiene
numeros diferentes (inciuyendo el cero)
Los numeros de F distintos de cero son de la forma
con a = 1 a2 a3 = 0 1 Y e = - 1 0 1 2 asf que las fracciones positivas distintas son
Combinando estas mantisas con los exponentes obtenemos todos los numeros positivos de F que aparecen en la TABLA 12 siguiente
I MANTISA I EXP -1 I EXP 0 I EXP 1 IEXP 2
I 8
(100)2 =shy16
(100) x T=~2 16
(100) x 2deg = ~ 2 16
(100) x 2 = ~ 2 16
(100) x 22 == 32 2 16
(101) =Q2 16
(101)2 x T = ~ 16
(101) x 2deg = Q 2 16
(101) x 2 = 20 2 16
(101)2 22 == 40 16
(110) = ~ 2 16
(110) xT =~ 2 16
(110) x 2deg ==~ 2 16
(110) 2 x 2= 24 16
( ) 2 48 1 10 x 2 =shy2 16
(111) = i2 16
(111) x T = ~ 2 16
(111) x 2deg = i2 16
(111) x 2 = 28 2 16
(1 11) x 22 = 56 2 16
TABLA 12
6 METOOOS NUMERICOS
Como estamos mas familiarizados con los numeros decimales (en base p= 10) los 33 elementos de F en forma (racional) decimal son
16 20 24 28 32 40 48 56 +- plusmn- plusmn- plusmn - +- +- +- +shy-16 16 16 16 -16 -16 -16 -16
Una representaci6n de los numeros positiv~s y el cero de F en la recta real se muestra en la FIGURA 11 siguiente
o )( flex) Iii
56
~T 16 20 32 b
40 48 ~R
-TS 16 16 16 16 16 I regIon de under1low region de overflow
(subfJujo) (sobreflujo)
FIGURA 11
Algunos hechos que se pueden observar en un conjunto de punta flotante F son
1 Todo numero real x que entra en el computador 0 que es el resultado de un calculo es reemplazado (si es posible) por un numero de punto flotante que notaremos fl(x) Existen reg las para escoger tal numero (reglas de redondeo) por 10 general es el numero de punto
flotante mas cercano a x La diferencia Ix - f1( x) I se llama error (absoluto) de redondeo
2 Si observamos la distribuci6n de los elementos de F en la recta real vemos que no estan igualmente espaciados (eslan mas densamente distribuldos ella cercanla del cero) 10 que implica que el error de redondeo puede depender del tamaro del numero (entre mas grande sea el numero en valor absoluto mayor puede ser el error de redondeo)
En el ejemplo el numero de punto f10tante positiv~ mas pequero es ~ = y el numero de 16 4
punto flotante positiv~ mas grande es 56 = ~ 16 2
En general en un conjunto de punto flotante F con param~tros p t L Y U se tiene que
es el numero de punta f10tante positiv~ mas pequero (para el ejemplo FL = 2-1-1 = plusmn) y
con y = P-1
Capitulo 1 ERRORES DE REDONDEO Y ESTABILIDAD 7
es el numero de punto flotantepositivo mas grande (para el ejemplo Fu =(1- 2-3 )22 = ) 2
A la regi6n RL = X ER 0 lt IxIlt FL se Ie llama region de underflow 0 subflujo y en
algunos computadores si un numero real cae en esta region el numero es redondeado a cero
Por otra parte a la regi6n Ru = X ER Ixl gt Fu se Ie llama region de overflow 0
sobreflujo y en algunos computadores si un numero real cae en esta regi6n el numero es redondeado al numero de punto flotante mas cercano (Fu - Fu) 0 se infomia del fen6meno
overflow
Se define como range del conjunto F al conjunto
De acuerdo con esto todo numero de punto flotante distinto de cero fl(x) debe satisfacer
3 La combinaci6n aritmetica usual + - x 7- de dos numeros de punto flotante no
siempre produce un numero de punto flotante
Supongamos que fl(x) fl(Y)EF Veamos como ejemplo que la suma usual fl(x)+fl(y) no
necesariamente sera un numero en F Para ello consideremos el conjunto de punto f10tante
F dado en el ejemplo fl(x) = ~ EF fl(Y) = 1~ E F sin embargo
28 5 33fl( x) + fl(Y) = - + - = - ~ F Luego la adici6n usual no es cerrada en el sentido
16 16 16 matematico ordinario
Una manera de simular la adici6n Y las demas operaciones aritmeticas entre numeros rea les pero realizadas por el computador es la siguiente
Si x e Y son numeros reales en el range de F definimos las operaciones 83 8 reg Y 8 a las que nos referiremos como operaciones de punta flotante asi
x EB Y = fl( fl( x) + fl( Y ) )
x 8 Y= fl( fl( x) - fl( Y ) )
x reg Y = fl( fl( x) x fl( Y ) )
x 8 Y = fl( fI( x) fI(Y))
donde + - x Y 7 son las operaciones aritmeticas usuales
8 METOOOS NUMERICOS
Ilustraremos estas operaciones en 81 conjunto F del ejemplo al tiempo que pondremos de manifiesto la carencia de ciertas propiedades para tales operaciones Supondremos que f1(x) se escoge como el numero de punto f10tante mas cercano a x y que cuando el numero x equidista de dos numeros de punto f1otante se escoge flex) como el mas cercano a la derecha si es positiv~ 0 el mas cercano hacia la izquierda si es negativo
middot 28 5 R t ITomemos en F os numeros - y - y supongamos que X y E son a es queI 16 16
28 5f1(x) = - Y f1(Y) = - Entonces
16 16
xG) = f1(28 + ~) = fl( 33) = 32 Y 16 16 16 16
x e y = f( 28 _~) = fl( 23) = 24 1616 16 16
Xampgt y=fl( 28 x~) = fl( 35) = 32 = ~ 16 16 64 64 16
xEEJ y = fl( 28 -- ~) = fl( 28) = 56 (fen6meno overflow) 16 16 5 16
28 56t Overflow ya que - gt - = Fu 5 16
6 6Tomemos - EF Y supongamos que z ER es tal que fl(z) = - entonces
16 16
z e y = fl(~ - ~) =f1( _1 ) = 0 (fen6meno underflow) 16 16 16
1 4t Underflow ya que 0 lt - lt - = FL 16 16
16 7 14 5 10 Como 1 = 16 8 = 16 s = 16 E F entonces existen u v WE R tales que fl(U) = 1
7 5f~V)=S Y f1(W) = s Entonces
luego
Air que
Fi_
------
cos
Mis agradecimientos a a Universfdad Naciona de Colombia pues mi permanencia en esta institlcion por mas de veinte anos primero como estudiante y fuego como docente me ha posibilitado e feliz termino de esta obra
win F Asmar Ch
l1NtvPR~m 0 NACI( l~lALDI CoLOMBtA I ~ bull t If
DEfT I) Vl L I pI IOT~CAS
R1Rl I ITA r-Imiddot r GMl
INTRODUCCION
EI presente material esta dirigido a servir de ayuda tanto a estudiantes como profesores en un primer curso de Metodos Numericos y ha sido escrito teniendo en cuenta el programa del curso que se dicta actualmente para las carreras de Ingenierfa en la Universidad Nacional de Colombia sede Medellin
En el primer capitulo se hace una introducci6n a la aritmetica de punto fiotante errores de redondeo estabilidad de un algoritmo y problemas mal condicionados
En el capitulo dos se estudian los metodos numericos basicos para encontrar ralces aproximadas de una ecuaci6n algebraica no-lineal en una variable Se hace enfasis en los metod os de Punto Fijo y Newton-Raphson y la aplicaci6n de este ultimo en la busqueda de ralces reales de ecuaciones polin6micas
EI capitulo tres se dedica al estudio de metodos numericos para encontrar soluciones aproximadas de sistemas de ecuaciones lineales y no-lineales En el caso de los sistemas lineales se estudian metodos directos basad os en la eliminaci6n de Gauss y los metodos iterativos de Jacobi Gauss-Seidel y SOR tambien se estudia con algun detalle el problema del condicionamiento de una matriz y su relaci6n con la soluci6n numerica de un sistema de ecuaciones Para sistemas no-lineales se estudian los metod os de Punto Fijo y NewtonshyRaphson y como una aplicaci6n del metodo de Newton-Raphson se estudia el metodo de Bairstow para hallar ralces reales yo complejas de ecuaciones polin6micas
En el capitulo cuatro se tratan los temas de interpolaci6n polinomial y ajuste segun mlnimos cuadrados mediante polinomios En 10 referente a la interpolaci6n se estudian las formas interpolantes de Lagrange y Newton y la interpolaci6n segmentaria cubica Se hace aproximaci6n discreta polinomial por mlnimos cuadrados para un conjunto fin ito de puntos en el plano y se consideran los casos de ajuste exponencial logarltmico y de potencia p~r minimos cuadrados
En el capitulo cinco se trata el calculo numerico de integrales definidas mediante los metodos
de los Trapecios Simpson (iJy () Romberg coeficientes indeterminados y cuadratura
Gaussiana
Finalmente el capitulo seis esta dedicado al estudio de algunos metod os numericos para la aproximaci6n discreta de la soluci6n de un problema de valor inicial para ecuaciones
diferenciales ordinarias En este capitulo he recogido los metodos unipasos de Euler Euler mejorado Heun metodo de los tres primeros terminos de la serie de Taylor y metodo de Runge-Kutta de cuarto orden
AI final de cada capitulo se incluye una colecci6n de problemas a manera de taller para que el leCtor complemente los aspectos te6ricos y se ejercite en las aplicaciones
vi INTRODUCCION
Hace algunos anos los cursos de metodos numericos eran practicamente te6ricos ya que el acceso a los computadores era diflcil A los estudiantes se les ensenaba c6mo trabajar los algoritmos numericos y se les mostraban los resultados de algunos programas hechos previamente en el computador pero el estudiante tenia poca oportunidad de experimentar por si mismo con los algoritmos
Una vez que el computador fue mas accesible el estudiante pudo experimentar algo mas con los metodos numericos luego de capacitarse en algun lenguaje de programaci6n como BASIC FORTRAN PASCAL etc pero al gastar horas en la programaci6n de tales metodos ya no disponia de tiempo suficiente para explorar un gran numero de algoritmos numericos diferentes
Afortunadamente en la actualidad disponemos de herramientas computacionales que no requieren del conocimiento de algun lenguaje de programaci6n las cuales ademas de permitir explorar diversos algoritmos numericos ofrecen entre otras las siguientes ventajas se puede realizar un numero importante de iteraciones 10 cual sin tales herramientas no seria posible 0 requeriria demasiado tiempo facilita el manejo de las funciones desde el punto de vista del calculo familiariza en el uso del computador refuerza el trabajo en pequerios grupos y permite abordar algunos problemas que por la enorme cantidad de operaciones aritmetico-algebraicas involucradas no era posible tratar
Para lIevar a cabo los calculos numericos correspondientes a la mayorfa de los metodos numericos desarrollados en este texto se ha escogido el paquete computacional DERIVE ( el cual es potente amigable de poco requerimiento de maquina y relativamente econ6mico) complementado con procedimientos en DERIVE elaborados por el profesor Julio Cesar Morales C de nuestro Departamento de Matematicas Por esta raz6n he agregado en esta segunda edici6n algunas instrucciones correspondientes a tales procedimientos y que el lector encontrara enseguida de algunos ejemplos tambien he adicionado a este material un disquete que contiene los procedimientos mencionados
Para complementar la informaci6n en DERIVE aqui utilizada puede consultarse el manual Ayudese en Matematicas y Graficas con DERIVE escrito por el profesor Morales (ver bibliografia)
Para utilizar las ayudas que vienen en el disquete una vez que se ha cargado el DERIVE ejecute el comando TRANSFER+ LOAD+UTILITY y digite XzETAM MTH donde X denota el nombre del drive donde insert6 el disquete (deje cargar completamente sin tocar el teclado) Tambien estan dentro de las ayudas ofrecidas unos archivos demostrativos correspondientes a cadauno de los capitulos desarrollados en este libro tales archivos contienen resultados de algunos ejemplos y problemas planteados en el texto Para cargar estos archivos demostrativos una vez que se ha cargado el archivo ZETAMMTH cargue el archivo que usted requiera de acuerdo con el capitulo deseado ejecutando el comando TRANSFER+DEMO y editando XCAPDMO donde denota el numero del capitulo (si desea salir de este archiv~ use la tecla Esc) En el mismo disquete esta el archivo HMETODOSMTH que especifica las ayudas para la sintaxis de las funciones que se utilizan en los calculos numericos que aparecen en este texto y da una breve descripci6n de algunas de elias Para hacer uso de estas ayudas puede cargarlas ejecutando el comando TRANSFER+MERGE (agrega las expresiones que estan en el archivo que se carga a las que se encuentran en la ventana de Algebra) y editando XHMETODOSMTH
Quiero agradecer al profesor Julio C computacional correspondiente a este desarrollo del curso de Metodos ltUll taIlIiIIlIII
En la portada aparece el graflCo de un
lenguaje PASCAL por el profesor de la Universidad Nacional sede
la funci6n f(Z) Z2 +c con zee middot 0
Zo e[-22] x [-22] (condici6n InlCill)
condici6n inicial dada zo el NUllil lrtlft1
Finalmente quiero agradecer al sobre este material las cua profesores Mario Arias Zabala Manuel actual Director del Desshypara IIevar a cabo este trabajo
)s numericos eran practicamente te6ricos ya que el los estudiantes se les ensenaba c6mo trabajar los
an los resultados de algunos programas hechos ~studiante tenfa poca oportunidad de experimentar
cesible el estudiante pudo experimentar algo mas pacitarse en algun lenguaje de programaci6n como I gastar horas en la programaci6n de tales metodos explorar un gran numero de algoritmos numericos
nales -que no ademas de
tes ventajas amientas no I es desde el I trabajo en cantidad de
los metodos DERIVE (el economico) Julio Cesar ado en esta
os y que el material un
orales (ver
INTRODUCCI6N vii
Quiero agradecer al profesor Julio C Morales C por su valiosa ayuda en la parte computacional correspondiente a este material ya que con su aporte se ha facilitado e desarrollo del curso de Metodos Numericos
En la portada aparece el grafico de un conjunto de Julia para c = 036 + 01 Oi realizado en
lenguaje PASCAL por el profesor Horacio Arango Marin del Departamento de Matematicas de la Universidad Nacional sede Medellin Este conjunto se obtuvo mediante la iteracion de
fa funci6n f(Z)=Z2+C con ZEC 0 sea mediante la iteraclon Zn+1=Z~+C n = 01 y
Zo e[-22]x[-22] (condici6n inicial) Si la sucesi6n Iznlt diverge a infinito para una
condici6n inicial dada zo el conjunto de todos estos puntos zo se llama el conjunto de
escape y su frontera se llama conjunto de Julia asociado a c Mis agradecimientos al profesor Arango Marin por haberme facilitado tal grafico
Finalmente quiero agradecer al profesor Abraham Asmar Ch por sus valiosas sugerencias sobre este material las cuales me permitieron mejorarlo significativamente y a los profesores Mario Arias Zabala actual Decano de la Facultad de Ciencias y Arturo Jessie Manuel actual Director del Departamento de Matematicas por el apoyo que me brindaron para lIevar a cabo este trabajo
Ivan F Asmar Ch
el DERIVE X denota el el teclado l) mostrativos
les archivos I Para cargar H cargue el el comando
capitulo (si el archivo
e se utilizan de algunas
el comando carga a las
CONTENIDO
CAPiTULO 1 ERRORES DE REDONDEO Y ESTABILIDAD
11 ARITMETICA FINITA 3 12 ERRORES DE REDONDEO 10 13 PERDIDA DE CIFRAS SIGNIFICATIVAS 16 14 ESTABILIDAD DE UN ALGORITMO 20 15 CONDICIONAMIENTO DE UN PROBLEMA 27 TALLER 1 28
CAPiTULO 2 SOlUCI6N NUMERICA DE UNA ECUACI6N NO-LINEAL EN UNA VARIABLE 33
21 METODOS CERRADOS 38 lt-211 Metodo de Bisecci6n 38 212 Metodo de Posicion Falsa 41
22 METODOS ABIERTOS 43 221 Metodo de Punto Fijo 43 ~
-222 Metodo de Newton-Raphson 56 223 EI metodo de Newton-Raphson-Horner 65
L224 Metodo de Newton-Raphson modificado 76 225 Metodo de la Secante 78
23 RAPIDEZ DE CONVERGENCIA 80 231 Orden e convergencia del metodo de iteracion de Punto fijo 84 232 Orden de convergencia del metodo de Newton-Raphson 86
TALLER 2 88
CAPiTULO 3 SOlUCION NUMERICA DE SISTEMAS DE ECUACIONES 93
31 SOLUCION NUMERICA DE SISTEMAS DE ECUACIONES LINEALES 93 32 METODOS DIRECTOS 94 33 SISTEMAS MAL CONDICIONADOS Y NUMERO DE CONDICION DE UNA MATRIZ 99 34 ESTRATEGIAS DE PIVOTEO 114
341 Pivoteo maximo por columna 114 342 Pivoteo escalado de fila 116
35 FACTORIZACION TRIANGULAR 117 351 Algunas aplicaciones de la factorizaci6n PA=LV 119
36 SISTEMAS TRIDIAGONALES 120 37 FACTORIZACION DE CHOLESKI 124 38 METODOS ITERATIVOS 127
381 Metodo iterativo de Jacobi 129 382 Metodo iterativo de Gauss-Seidel 141 383 Metodo SOR 149
X CONTENIDO
39 SOlUCI6N NUMERICA DE SISTEMAS NO-LINEALES 391 Iteraci6n de Punto Fijo para sistemas no-lineales
_ 1392 Metodo de Newton-Raphson para sistemas no-lineales 310 CEROS COMPLEJOS DE POLINOMIOS METODO DE BAIRSTOW TALLER 3
CAPiTULO 4 INTERPOLACI6N POLINOMIAL Y AJUSTE POLINOMIAL
41 INTERPOLACI6N POLINOMIAL 411 Forma de Lagrange del polinomio interpolante 41 2 Forma de Newton del polinomio interpolante
42 INTERPOLACI6N SEGMENTARIA CUBICA 43 AJUSTE DE UN POLINOMIO POR MINIMOS CUADRADOS
431 Regresi6n polinomial 432 Regresi6n exponencial logaritmica y de potencia
TALLER 4
CAPiTULO 5 INTEGRACI6N NUMERICA
51 ALGUNAS F6RMULAS CERRADAS DE NEWTON-COTES 511 Regia de los trapecios
512 Regia de Simpson (~)
513 Regia de simpson () 52 INTEGRACI6N DE ROMBERG 53 METODO DE LOS COEFICIENTES INDETERMINADOS 54 METODO DE CUADRATURA GAUSSIANA TALLER 5
CAPiTULO 6 SOLUCI6N NUMERICA DE PROBLEMAS DE VALOR INICIAL PARA ECUACIONES DIFERENCIALES ORDINARIAS
61 METODO DE EULER 0 DE LA RECTA TANGENTE 62 UN METODO DE EULER MEJORADO 63 METODO DE LOS TRES PRIMEROS TERMINOS DE LA SERlE DE TAYLOR 64 METODO DE RUNGE-KUTTA TALLER 6
BIBLIOGRAFiA
iNDICE
iNDICE DE ALGORITMOS
SiMBOLOS NOTACIONES Y ABREVIATURAS
155 156 162 167 174
183
184 185 197 206 216 217 224 226
231
231 233
237
241
253 259 263 269
273
284 295 299 303 318
323
325
329
331 -
CAPfTULO 1
INTRODucclON
AI momento de menudo con DroIlIIIfIlil cuya soluciOn continuaciOn con para los cualls
IS NO-LINEALES 155 156 162 167 174
183
184 185 197 206 216 217 224 226
231
231 233
237
241
253 259 263 269
273
284 295
R 299 303 318
323
325
329
331 -
I
CAPiTULO 1 ERRORES DE REDONDEO Y ESTABILIDAD
INTRODUCCICN
AI momenta de aplicar las Matematicas a situacjones del mundo real nos encontramos a menudo con problemas que no pueden ser resueltos analiticamente 0 de manera exacta y cuya soluci6n debe ser abordada con ayuda de algun procedimiento numerico A continuaci6n consideramos algunos problemas tipicos ya formulados matematicamente para los cuales estudiaremos tecnicas numericas de soluCi6n
Problema 11 Encontrar el area de la regi6n comprendida entre las graficas de y = 2 sen x xy=e- con XE[O1t] bull
Problema 12 Encontrar las rafces de la ecuaci6n polin6mica
Problema 13 Resolver los siguientes sistemas de ecuaciones
a) EI sistema lineal AX = b con
~ -I 3
-1 2 -1 0 0
2 0 0 0
-2
A= 0 -1 2 -1 0 b= 2
0 0 -1 2 -1 -2
0 0 0 -1 2 1
b) EI sistema no-lineal
x +XY = 9 3x2 y _ y3 =4 bull
Problema 14 Dada la siguiente tabla de datos correspondiente a una cierta funci6n y = f( x)
~ f~) Ilr_=_~__r-~-1__+-_0~~_-~~~__=~__r-=~~ TABLA 11
encontrar el polinomio de menor grado que pase a traves de los puntos dados
Cual sera una estimaci6n para los valores f( x) correspondientes a x = -15 Y x = 15 bull
-Problema 15 Hallar el valor de cada una de las siguientes integrales
2 METODOS NUMERICOS
1
b) Jex2
dx 0
n
2J~ 3
c) ~1-~-4 (ellptica)-dX d) J~Inx x bull o 2
Problema 16 Resolver el problema de valor inicial
d28 d8 -2 + - +16sen8 = 0 dt dt
bull8(0) =~ 8(0) = 0
En reaci6n can los problemas anteriores tenemos que
En el problema 11 es necesario determinar los puntas de intersecci6n de las graficas de
y =2 sen x y y =e-x para 10 cual debemos resolver la ecuaci6n 2 sen x =e-x y no disponemos de un metoda algebraico para hacerlo
En el problema 12 se trata de hallar los ceros de un polinomio de grado 5 y como sabemos s610 se conocen metodos algebraicos para encontrar rarces de ecuaciones polin6micas de grado menor a igual que 4
En el problema 13 tenemos dos sistemas de ecuaciones EI de la parte a) es lineal y conocemos metodos de soluci6n (par ejemplo el metoda de eliminaci6n Gaussiana) sin embargo para sistemas de tamano mayor no s610 es conveniente sino necesario implementar tales metodos a traves del computador (metodo numerico) En la parte b) tenemos un sistema no-lineal y no conocemos metod as algebraicos generales para resolverlo
EI problema 14 se puede resolver anaifticamente (por interpolacion) sin embargo para determinar los coeficientes de dichos polinomios existen tecnicas que permiten encontrarlos rapidamente y que pueden implementarse en el computador
EI problema 15 corresponde a integrales definidas cuyo integrando tiene antiderivada que no es elemental
Finalmente en el problema 16 la ecuaci6n diferencial ordinaria
d2 8 d8 -2 + - + 16sene = 0 (ecuaci6n de movimiento de un pendulo) dt dt
es no-lineal (por la presencia de sen 8) Y no disponemos de un metoda analitico para
resolverla
Los problemas anteriores sirven un primer curso de mtodOi nllnall una variable soluci6n nu interpolaci6n polinomial integrad6n inicial para ecuaciones dihtrlllCil
Un metoda numenco es un manera aproximada la aritmeticos y 16glcos (Ooetl~nM
una tabla de vaores calculO finlta de nstrucciones preas 16gicas (algoritmo) que fVM~_
( olucion num6rica) a bien lit depende en parte de la fICIldId) especiales y limltaclon emplear estos instrumen
5iendo los computadores indicar c6mo son los nUnilllftlul
La mayoria de los conrtpUl_ los nLimeros reales contiene numeros raciloniIlI numeros de punto simplemente conJunto ell
Cada nLimero del conbullbull finita) segun se indlCI
Un numero del matematicamente en
J3 es un entero
(Sistema Blnlrlcl)41
Capitulo 1 ERRORES DE REDONDEO Y ESTABILIDAD 3
Los problemas anteriores sirven como motivaci6n para el estudio de cinco grandes temas en un pri mer curso de metodos numericos soluci6n numerica de una ecuaci6n no-lineal en una variable soluci6n numerica de sistemas de ecuaciones lineales y no-lineales interpolaci6n polinomial integraci6n numerica y soluci6n numerica de problemas de valor inicial para ecuaciones diferenciales ordinarias
Que es un metodo numerico
Un metodo numerico es un procedimiento mediante el cual se obtiene casl slempre de manera aproximada la soluci6n de ciertos problemas realizando calculos puramente aritmeticos y 16gicos (operaciones aritmeticas elementales calculo de funciones consulta de una tabla de valores calculo proposicional etc) Un tal procedimiento consiste de una lista fin ita de instrucciones precisas que especifican una secuencia de operaciones algebraicas y 16gicas (algoritmo) que producen 0 bien una aproximaci6n de la soluci6n del problema (soluci6n numerica) 0 bien un mensaje La eficiencia en el calculo de dicha aproximaci6n depende en parte de la faci lidad de implementaci6n del algori tmo y de las caracteristicas especiales y limitaciones de los instrumentos de calculo (los computadores) En general al emplear estos instrumentos de calculo se introducen errores Ilamados de redondeo
11 ARITMETICA FINITA
Siendo los computadores la herramienta basica en los metodos numericos es conveniente indicar c6mo son los numeros del computador y c6mo se simula su aritmetica
La mayoria de los computadores usan s610 un subconjunto finito relativamente pequeno de los numeros reales para representar a todos los numeros reales este conjunto que s610 contiene numeros racionales y que describiremos mas adelante es lIamado conjunto de numeros de punto flotante 0 conjunto de numeros de maquina en punto flotante 0
simplernente conjunto de punto flotante
Cada numero del computador se representa mediante un numero finito de digi tos (aritmetica fin ita) segun se indica a continuaci6n
Un numero del computador 0 de punto flotante distinto de cero se describe matematicamente en la forma
t f I
forma en la cuallos simbolos que all[ aparecen tienen el siguiente significado
(J =+ 1 0 (J =- 1 es el sig no del numero
~ es un entero que denota la base del sistema numerico usado Por 10 general ~ 2
(Sistema Binario) ~ = 8 (Sistema Octal) 0 ~ = 16 (Sistema Hexadecimal)
ai i = 12 t es un entero con 0 ~ ai ~ ~ - 1 Los enteros 01 0 - 1 son lIamados digitos
en la base ~ Nosotros asumiremos en todo 10 que sigue que a tc 0 en cuyo caso el
numero se dice que esta en forma normalizada
4 METODOS NUMERIC OS
a1 a2 at I f 6 d I ()middot a t ~ denota la suma 1 + 2++ yes IIamada a mantlsa 0 racci n e numero a1a2 p p p de punto flotante
EI entero t indica el numero de dfgitos en la base p que se usan para representar el
numero de punta flotante y es amado precisi6n Por 10 general t =6 0 t =7 con ~ =10
(precisi6n sencilla) t =14 0 t = 15 can ~ =10 (doble precisi6n) En algunos computadores se pueden hacer representaciones en precisi6n sencilla doble precisi6n e incluso en precisi6n mayor
e es un entero lIamado el exponente y es tal que L ~ e ~ U para ciertos enteros L y U es comun encontrar L = - U a L = -U plusmn 1 Un caso frecuente es L = -63 Y U = 64 para un total de 128 posibles exponentes
EI numero cero requiere una representaci6n especial
De acuerdo con 10 anterior un conjunto de punto flotante F queda caracterizado por cuatro parametros
a) La base p b) La precisi6n t c) Los enteros L y U tales que L ~ e ~ U donde e es el exponente
Cualesquiera sean los parametros elegidos los conjuntos de punta flotante correspondientes comparten las mismas caracterlsticas cualitativas entre elias la carencia de algunas de las propiedades algebraicas de que gozan los numeros reales
Una de las caracterfsticas de todo conjunto de punto flotante F es que es finito y tiene
numeros diferentes (incluyendo el cera) y donde los distintos de cero estan en forma normalizada En efecto
puede tomar p- 1 valores y ai i =23 t puede tomar p valores asf que haya1
(p - 1)p P=(p _1)pt-1 fracciones positivas distintas --v--
t-1
Ahora considerando que el numero de posibles exponentes es U - L + 1 que el numero de punta flotante puede ser positiv~ 0 negativ~ y teniendo en cuenta que el numero cero esta tambim en el conjunto de punto flotante concluimos que el conjunto F tiene
numeros diferentes
Capitulo 1 ERRORES DE REDONDEO Y ESTABILIDAD 5
Lo anterior nos dice que se usan 2(~ -1)~t- (U - L + 1) + 1 numeros de punto fiotante para
representar el conjunto continuo de los numeros reales (que es infinito) 10 que impl ica que muchos numeros reales tendrfan que ser representados par un mismo numero de punto flotante
Como ejemplo consideremos el conjunto de punto flotante F con para metros p== 2
(Binario) t == 3 L == -1 U == 2 Tal conjunto F tiene
numeros diferentes (inciuyendo el cero)
Los numeros de F distintos de cero son de la forma
con a = 1 a2 a3 = 0 1 Y e = - 1 0 1 2 asf que las fracciones positivas distintas son
Combinando estas mantisas con los exponentes obtenemos todos los numeros positivos de F que aparecen en la TABLA 12 siguiente
I MANTISA I EXP -1 I EXP 0 I EXP 1 IEXP 2
I 8
(100)2 =shy16
(100) x T=~2 16
(100) x 2deg = ~ 2 16
(100) x 2 = ~ 2 16
(100) x 22 == 32 2 16
(101) =Q2 16
(101)2 x T = ~ 16
(101) x 2deg = Q 2 16
(101) x 2 = 20 2 16
(101)2 22 == 40 16
(110) = ~ 2 16
(110) xT =~ 2 16
(110) x 2deg ==~ 2 16
(110) 2 x 2= 24 16
( ) 2 48 1 10 x 2 =shy2 16
(111) = i2 16
(111) x T = ~ 2 16
(111) x 2deg = i2 16
(111) x 2 = 28 2 16
(1 11) x 22 = 56 2 16
TABLA 12
6 METOOOS NUMERICOS
Como estamos mas familiarizados con los numeros decimales (en base p= 10) los 33 elementos de F en forma (racional) decimal son
16 20 24 28 32 40 48 56 +- plusmn- plusmn- plusmn - +- +- +- +shy-16 16 16 16 -16 -16 -16 -16
Una representaci6n de los numeros positiv~s y el cero de F en la recta real se muestra en la FIGURA 11 siguiente
o )( flex) Iii
56
~T 16 20 32 b
40 48 ~R
-TS 16 16 16 16 16 I regIon de under1low region de overflow
(subfJujo) (sobreflujo)
FIGURA 11
Algunos hechos que se pueden observar en un conjunto de punta flotante F son
1 Todo numero real x que entra en el computador 0 que es el resultado de un calculo es reemplazado (si es posible) por un numero de punto flotante que notaremos fl(x) Existen reg las para escoger tal numero (reglas de redondeo) por 10 general es el numero de punto
flotante mas cercano a x La diferencia Ix - f1( x) I se llama error (absoluto) de redondeo
2 Si observamos la distribuci6n de los elementos de F en la recta real vemos que no estan igualmente espaciados (eslan mas densamente distribuldos ella cercanla del cero) 10 que implica que el error de redondeo puede depender del tamaro del numero (entre mas grande sea el numero en valor absoluto mayor puede ser el error de redondeo)
En el ejemplo el numero de punto f10tante positiv~ mas pequero es ~ = y el numero de 16 4
punto flotante positiv~ mas grande es 56 = ~ 16 2
En general en un conjunto de punto flotante F con param~tros p t L Y U se tiene que
es el numero de punta f10tante positiv~ mas pequero (para el ejemplo FL = 2-1-1 = plusmn) y
con y = P-1
Capitulo 1 ERRORES DE REDONDEO Y ESTABILIDAD 7
es el numero de punto flotantepositivo mas grande (para el ejemplo Fu =(1- 2-3 )22 = ) 2
A la regi6n RL = X ER 0 lt IxIlt FL se Ie llama region de underflow 0 subflujo y en
algunos computadores si un numero real cae en esta region el numero es redondeado a cero
Por otra parte a la regi6n Ru = X ER Ixl gt Fu se Ie llama region de overflow 0
sobreflujo y en algunos computadores si un numero real cae en esta regi6n el numero es redondeado al numero de punto flotante mas cercano (Fu - Fu) 0 se infomia del fen6meno
overflow
Se define como range del conjunto F al conjunto
De acuerdo con esto todo numero de punto flotante distinto de cero fl(x) debe satisfacer
3 La combinaci6n aritmetica usual + - x 7- de dos numeros de punto flotante no
siempre produce un numero de punto flotante
Supongamos que fl(x) fl(Y)EF Veamos como ejemplo que la suma usual fl(x)+fl(y) no
necesariamente sera un numero en F Para ello consideremos el conjunto de punto f10tante
F dado en el ejemplo fl(x) = ~ EF fl(Y) = 1~ E F sin embargo
28 5 33fl( x) + fl(Y) = - + - = - ~ F Luego la adici6n usual no es cerrada en el sentido
16 16 16 matematico ordinario
Una manera de simular la adici6n Y las demas operaciones aritmeticas entre numeros rea les pero realizadas por el computador es la siguiente
Si x e Y son numeros reales en el range de F definimos las operaciones 83 8 reg Y 8 a las que nos referiremos como operaciones de punta flotante asi
x EB Y = fl( fl( x) + fl( Y ) )
x 8 Y= fl( fl( x) - fl( Y ) )
x reg Y = fl( fl( x) x fl( Y ) )
x 8 Y = fl( fI( x) fI(Y))
donde + - x Y 7 son las operaciones aritmeticas usuales
8 METOOOS NUMERICOS
Ilustraremos estas operaciones en 81 conjunto F del ejemplo al tiempo que pondremos de manifiesto la carencia de ciertas propiedades para tales operaciones Supondremos que f1(x) se escoge como el numero de punto f10tante mas cercano a x y que cuando el numero x equidista de dos numeros de punto f1otante se escoge flex) como el mas cercano a la derecha si es positiv~ 0 el mas cercano hacia la izquierda si es negativo
middot 28 5 R t ITomemos en F os numeros - y - y supongamos que X y E son a es queI 16 16
28 5f1(x) = - Y f1(Y) = - Entonces
16 16
xG) = f1(28 + ~) = fl( 33) = 32 Y 16 16 16 16
x e y = f( 28 _~) = fl( 23) = 24 1616 16 16
Xampgt y=fl( 28 x~) = fl( 35) = 32 = ~ 16 16 64 64 16
xEEJ y = fl( 28 -- ~) = fl( 28) = 56 (fen6meno overflow) 16 16 5 16
28 56t Overflow ya que - gt - = Fu 5 16
6 6Tomemos - EF Y supongamos que z ER es tal que fl(z) = - entonces
16 16
z e y = fl(~ - ~) =f1( _1 ) = 0 (fen6meno underflow) 16 16 16
1 4t Underflow ya que 0 lt - lt - = FL 16 16
16 7 14 5 10 Como 1 = 16 8 = 16 s = 16 E F entonces existen u v WE R tales que fl(U) = 1
7 5f~V)=S Y f1(W) = s Entonces
luego
Air que
Fi_
INTRODUCCION
EI presente material esta dirigido a servir de ayuda tanto a estudiantes como profesores en un primer curso de Metodos Numericos y ha sido escrito teniendo en cuenta el programa del curso que se dicta actualmente para las carreras de Ingenierfa en la Universidad Nacional de Colombia sede Medellin
En el primer capitulo se hace una introducci6n a la aritmetica de punto fiotante errores de redondeo estabilidad de un algoritmo y problemas mal condicionados
En el capitulo dos se estudian los metodos numericos basicos para encontrar ralces aproximadas de una ecuaci6n algebraica no-lineal en una variable Se hace enfasis en los metod os de Punto Fijo y Newton-Raphson y la aplicaci6n de este ultimo en la busqueda de ralces reales de ecuaciones polin6micas
EI capitulo tres se dedica al estudio de metodos numericos para encontrar soluciones aproximadas de sistemas de ecuaciones lineales y no-lineales En el caso de los sistemas lineales se estudian metodos directos basad os en la eliminaci6n de Gauss y los metodos iterativos de Jacobi Gauss-Seidel y SOR tambien se estudia con algun detalle el problema del condicionamiento de una matriz y su relaci6n con la soluci6n numerica de un sistema de ecuaciones Para sistemas no-lineales se estudian los metod os de Punto Fijo y NewtonshyRaphson y como una aplicaci6n del metodo de Newton-Raphson se estudia el metodo de Bairstow para hallar ralces reales yo complejas de ecuaciones polin6micas
En el capitulo cuatro se tratan los temas de interpolaci6n polinomial y ajuste segun mlnimos cuadrados mediante polinomios En 10 referente a la interpolaci6n se estudian las formas interpolantes de Lagrange y Newton y la interpolaci6n segmentaria cubica Se hace aproximaci6n discreta polinomial por mlnimos cuadrados para un conjunto fin ito de puntos en el plano y se consideran los casos de ajuste exponencial logarltmico y de potencia p~r minimos cuadrados
En el capitulo cinco se trata el calculo numerico de integrales definidas mediante los metodos
de los Trapecios Simpson (iJy () Romberg coeficientes indeterminados y cuadratura
Gaussiana
Finalmente el capitulo seis esta dedicado al estudio de algunos metod os numericos para la aproximaci6n discreta de la soluci6n de un problema de valor inicial para ecuaciones
diferenciales ordinarias En este capitulo he recogido los metodos unipasos de Euler Euler mejorado Heun metodo de los tres primeros terminos de la serie de Taylor y metodo de Runge-Kutta de cuarto orden
AI final de cada capitulo se incluye una colecci6n de problemas a manera de taller para que el leCtor complemente los aspectos te6ricos y se ejercite en las aplicaciones
vi INTRODUCCION
Hace algunos anos los cursos de metodos numericos eran practicamente te6ricos ya que el acceso a los computadores era diflcil A los estudiantes se les ensenaba c6mo trabajar los algoritmos numericos y se les mostraban los resultados de algunos programas hechos previamente en el computador pero el estudiante tenia poca oportunidad de experimentar por si mismo con los algoritmos
Una vez que el computador fue mas accesible el estudiante pudo experimentar algo mas con los metodos numericos luego de capacitarse en algun lenguaje de programaci6n como BASIC FORTRAN PASCAL etc pero al gastar horas en la programaci6n de tales metodos ya no disponia de tiempo suficiente para explorar un gran numero de algoritmos numericos diferentes
Afortunadamente en la actualidad disponemos de herramientas computacionales que no requieren del conocimiento de algun lenguaje de programaci6n las cuales ademas de permitir explorar diversos algoritmos numericos ofrecen entre otras las siguientes ventajas se puede realizar un numero importante de iteraciones 10 cual sin tales herramientas no seria posible 0 requeriria demasiado tiempo facilita el manejo de las funciones desde el punto de vista del calculo familiariza en el uso del computador refuerza el trabajo en pequerios grupos y permite abordar algunos problemas que por la enorme cantidad de operaciones aritmetico-algebraicas involucradas no era posible tratar
Para lIevar a cabo los calculos numericos correspondientes a la mayorfa de los metodos numericos desarrollados en este texto se ha escogido el paquete computacional DERIVE ( el cual es potente amigable de poco requerimiento de maquina y relativamente econ6mico) complementado con procedimientos en DERIVE elaborados por el profesor Julio Cesar Morales C de nuestro Departamento de Matematicas Por esta raz6n he agregado en esta segunda edici6n algunas instrucciones correspondientes a tales procedimientos y que el lector encontrara enseguida de algunos ejemplos tambien he adicionado a este material un disquete que contiene los procedimientos mencionados
Para complementar la informaci6n en DERIVE aqui utilizada puede consultarse el manual Ayudese en Matematicas y Graficas con DERIVE escrito por el profesor Morales (ver bibliografia)
Para utilizar las ayudas que vienen en el disquete una vez que se ha cargado el DERIVE ejecute el comando TRANSFER+ LOAD+UTILITY y digite XzETAM MTH donde X denota el nombre del drive donde insert6 el disquete (deje cargar completamente sin tocar el teclado) Tambien estan dentro de las ayudas ofrecidas unos archivos demostrativos correspondientes a cadauno de los capitulos desarrollados en este libro tales archivos contienen resultados de algunos ejemplos y problemas planteados en el texto Para cargar estos archivos demostrativos una vez que se ha cargado el archivo ZETAMMTH cargue el archivo que usted requiera de acuerdo con el capitulo deseado ejecutando el comando TRANSFER+DEMO y editando XCAPDMO donde denota el numero del capitulo (si desea salir de este archiv~ use la tecla Esc) En el mismo disquete esta el archivo HMETODOSMTH que especifica las ayudas para la sintaxis de las funciones que se utilizan en los calculos numericos que aparecen en este texto y da una breve descripci6n de algunas de elias Para hacer uso de estas ayudas puede cargarlas ejecutando el comando TRANSFER+MERGE (agrega las expresiones que estan en el archivo que se carga a las que se encuentran en la ventana de Algebra) y editando XHMETODOSMTH
Quiero agradecer al profesor Julio C computacional correspondiente a este desarrollo del curso de Metodos ltUll taIlIiIIlIII
En la portada aparece el graflCo de un
lenguaje PASCAL por el profesor de la Universidad Nacional sede
la funci6n f(Z) Z2 +c con zee middot 0
Zo e[-22] x [-22] (condici6n InlCill)
condici6n inicial dada zo el NUllil lrtlft1
Finalmente quiero agradecer al sobre este material las cua profesores Mario Arias Zabala Manuel actual Director del Desshypara IIevar a cabo este trabajo
)s numericos eran practicamente te6ricos ya que el los estudiantes se les ensenaba c6mo trabajar los
an los resultados de algunos programas hechos ~studiante tenfa poca oportunidad de experimentar
cesible el estudiante pudo experimentar algo mas pacitarse en algun lenguaje de programaci6n como I gastar horas en la programaci6n de tales metodos explorar un gran numero de algoritmos numericos
nales -que no ademas de
tes ventajas amientas no I es desde el I trabajo en cantidad de
los metodos DERIVE (el economico) Julio Cesar ado en esta
os y que el material un
orales (ver
INTRODUCCI6N vii
Quiero agradecer al profesor Julio C Morales C por su valiosa ayuda en la parte computacional correspondiente a este material ya que con su aporte se ha facilitado e desarrollo del curso de Metodos Numericos
En la portada aparece el grafico de un conjunto de Julia para c = 036 + 01 Oi realizado en
lenguaje PASCAL por el profesor Horacio Arango Marin del Departamento de Matematicas de la Universidad Nacional sede Medellin Este conjunto se obtuvo mediante la iteracion de
fa funci6n f(Z)=Z2+C con ZEC 0 sea mediante la iteraclon Zn+1=Z~+C n = 01 y
Zo e[-22]x[-22] (condici6n inicial) Si la sucesi6n Iznlt diverge a infinito para una
condici6n inicial dada zo el conjunto de todos estos puntos zo se llama el conjunto de
escape y su frontera se llama conjunto de Julia asociado a c Mis agradecimientos al profesor Arango Marin por haberme facilitado tal grafico
Finalmente quiero agradecer al profesor Abraham Asmar Ch por sus valiosas sugerencias sobre este material las cuales me permitieron mejorarlo significativamente y a los profesores Mario Arias Zabala actual Decano de la Facultad de Ciencias y Arturo Jessie Manuel actual Director del Departamento de Matematicas por el apoyo que me brindaron para lIevar a cabo este trabajo
Ivan F Asmar Ch
el DERIVE X denota el el teclado l) mostrativos
les archivos I Para cargar H cargue el el comando
capitulo (si el archivo
e se utilizan de algunas
el comando carga a las
CONTENIDO
CAPiTULO 1 ERRORES DE REDONDEO Y ESTABILIDAD
11 ARITMETICA FINITA 3 12 ERRORES DE REDONDEO 10 13 PERDIDA DE CIFRAS SIGNIFICATIVAS 16 14 ESTABILIDAD DE UN ALGORITMO 20 15 CONDICIONAMIENTO DE UN PROBLEMA 27 TALLER 1 28
CAPiTULO 2 SOlUCI6N NUMERICA DE UNA ECUACI6N NO-LINEAL EN UNA VARIABLE 33
21 METODOS CERRADOS 38 lt-211 Metodo de Bisecci6n 38 212 Metodo de Posicion Falsa 41
22 METODOS ABIERTOS 43 221 Metodo de Punto Fijo 43 ~
-222 Metodo de Newton-Raphson 56 223 EI metodo de Newton-Raphson-Horner 65
L224 Metodo de Newton-Raphson modificado 76 225 Metodo de la Secante 78
23 RAPIDEZ DE CONVERGENCIA 80 231 Orden e convergencia del metodo de iteracion de Punto fijo 84 232 Orden de convergencia del metodo de Newton-Raphson 86
TALLER 2 88
CAPiTULO 3 SOlUCION NUMERICA DE SISTEMAS DE ECUACIONES 93
31 SOLUCION NUMERICA DE SISTEMAS DE ECUACIONES LINEALES 93 32 METODOS DIRECTOS 94 33 SISTEMAS MAL CONDICIONADOS Y NUMERO DE CONDICION DE UNA MATRIZ 99 34 ESTRATEGIAS DE PIVOTEO 114
341 Pivoteo maximo por columna 114 342 Pivoteo escalado de fila 116
35 FACTORIZACION TRIANGULAR 117 351 Algunas aplicaciones de la factorizaci6n PA=LV 119
36 SISTEMAS TRIDIAGONALES 120 37 FACTORIZACION DE CHOLESKI 124 38 METODOS ITERATIVOS 127
381 Metodo iterativo de Jacobi 129 382 Metodo iterativo de Gauss-Seidel 141 383 Metodo SOR 149
X CONTENIDO
39 SOlUCI6N NUMERICA DE SISTEMAS NO-LINEALES 391 Iteraci6n de Punto Fijo para sistemas no-lineales
_ 1392 Metodo de Newton-Raphson para sistemas no-lineales 310 CEROS COMPLEJOS DE POLINOMIOS METODO DE BAIRSTOW TALLER 3
CAPiTULO 4 INTERPOLACI6N POLINOMIAL Y AJUSTE POLINOMIAL
41 INTERPOLACI6N POLINOMIAL 411 Forma de Lagrange del polinomio interpolante 41 2 Forma de Newton del polinomio interpolante
42 INTERPOLACI6N SEGMENTARIA CUBICA 43 AJUSTE DE UN POLINOMIO POR MINIMOS CUADRADOS
431 Regresi6n polinomial 432 Regresi6n exponencial logaritmica y de potencia
TALLER 4
CAPiTULO 5 INTEGRACI6N NUMERICA
51 ALGUNAS F6RMULAS CERRADAS DE NEWTON-COTES 511 Regia de los trapecios
512 Regia de Simpson (~)
513 Regia de simpson () 52 INTEGRACI6N DE ROMBERG 53 METODO DE LOS COEFICIENTES INDETERMINADOS 54 METODO DE CUADRATURA GAUSSIANA TALLER 5
CAPiTULO 6 SOLUCI6N NUMERICA DE PROBLEMAS DE VALOR INICIAL PARA ECUACIONES DIFERENCIALES ORDINARIAS
61 METODO DE EULER 0 DE LA RECTA TANGENTE 62 UN METODO DE EULER MEJORADO 63 METODO DE LOS TRES PRIMEROS TERMINOS DE LA SERlE DE TAYLOR 64 METODO DE RUNGE-KUTTA TALLER 6
BIBLIOGRAFiA
iNDICE
iNDICE DE ALGORITMOS
SiMBOLOS NOTACIONES Y ABREVIATURAS
155 156 162 167 174
183
184 185 197 206 216 217 224 226
231
231 233
237
241
253 259 263 269
273
284 295 299 303 318
323
325
329
331 -
CAPfTULO 1
INTRODucclON
AI momento de menudo con DroIlIIIfIlil cuya soluciOn continuaciOn con para los cualls
IS NO-LINEALES 155 156 162 167 174
183
184 185 197 206 216 217 224 226
231
231 233
237
241
253 259 263 269
273
284 295
R 299 303 318
323
325
329
331 -
I
CAPiTULO 1 ERRORES DE REDONDEO Y ESTABILIDAD
INTRODUCCICN
AI momenta de aplicar las Matematicas a situacjones del mundo real nos encontramos a menudo con problemas que no pueden ser resueltos analiticamente 0 de manera exacta y cuya soluci6n debe ser abordada con ayuda de algun procedimiento numerico A continuaci6n consideramos algunos problemas tipicos ya formulados matematicamente para los cuales estudiaremos tecnicas numericas de soluCi6n
Problema 11 Encontrar el area de la regi6n comprendida entre las graficas de y = 2 sen x xy=e- con XE[O1t] bull
Problema 12 Encontrar las rafces de la ecuaci6n polin6mica
Problema 13 Resolver los siguientes sistemas de ecuaciones
a) EI sistema lineal AX = b con
~ -I 3
-1 2 -1 0 0
2 0 0 0
-2
A= 0 -1 2 -1 0 b= 2
0 0 -1 2 -1 -2
0 0 0 -1 2 1
b) EI sistema no-lineal
x +XY = 9 3x2 y _ y3 =4 bull
Problema 14 Dada la siguiente tabla de datos correspondiente a una cierta funci6n y = f( x)
~ f~) Ilr_=_~__r-~-1__+-_0~~_-~~~__=~__r-=~~ TABLA 11
encontrar el polinomio de menor grado que pase a traves de los puntos dados
Cual sera una estimaci6n para los valores f( x) correspondientes a x = -15 Y x = 15 bull
-Problema 15 Hallar el valor de cada una de las siguientes integrales
2 METODOS NUMERICOS
1
b) Jex2
dx 0
n
2J~ 3
c) ~1-~-4 (ellptica)-dX d) J~Inx x bull o 2
Problema 16 Resolver el problema de valor inicial
d28 d8 -2 + - +16sen8 = 0 dt dt
bull8(0) =~ 8(0) = 0
En reaci6n can los problemas anteriores tenemos que
En el problema 11 es necesario determinar los puntas de intersecci6n de las graficas de
y =2 sen x y y =e-x para 10 cual debemos resolver la ecuaci6n 2 sen x =e-x y no disponemos de un metoda algebraico para hacerlo
En el problema 12 se trata de hallar los ceros de un polinomio de grado 5 y como sabemos s610 se conocen metodos algebraicos para encontrar rarces de ecuaciones polin6micas de grado menor a igual que 4
En el problema 13 tenemos dos sistemas de ecuaciones EI de la parte a) es lineal y conocemos metodos de soluci6n (par ejemplo el metoda de eliminaci6n Gaussiana) sin embargo para sistemas de tamano mayor no s610 es conveniente sino necesario implementar tales metodos a traves del computador (metodo numerico) En la parte b) tenemos un sistema no-lineal y no conocemos metod as algebraicos generales para resolverlo
EI problema 14 se puede resolver anaifticamente (por interpolacion) sin embargo para determinar los coeficientes de dichos polinomios existen tecnicas que permiten encontrarlos rapidamente y que pueden implementarse en el computador
EI problema 15 corresponde a integrales definidas cuyo integrando tiene antiderivada que no es elemental
Finalmente en el problema 16 la ecuaci6n diferencial ordinaria
d2 8 d8 -2 + - + 16sene = 0 (ecuaci6n de movimiento de un pendulo) dt dt
es no-lineal (por la presencia de sen 8) Y no disponemos de un metoda analitico para
resolverla
Los problemas anteriores sirven un primer curso de mtodOi nllnall una variable soluci6n nu interpolaci6n polinomial integrad6n inicial para ecuaciones dihtrlllCil
Un metoda numenco es un manera aproximada la aritmeticos y 16glcos (Ooetl~nM
una tabla de vaores calculO finlta de nstrucciones preas 16gicas (algoritmo) que fVM~_
( olucion num6rica) a bien lit depende en parte de la fICIldId) especiales y limltaclon emplear estos instrumen
5iendo los computadores indicar c6mo son los nUnilllftlul
La mayoria de los conrtpUl_ los nLimeros reales contiene numeros raciloniIlI numeros de punto simplemente conJunto ell
Cada nLimero del conbullbull finita) segun se indlCI
Un numero del matematicamente en
J3 es un entero
(Sistema Blnlrlcl)41
Capitulo 1 ERRORES DE REDONDEO Y ESTABILIDAD 3
Los problemas anteriores sirven como motivaci6n para el estudio de cinco grandes temas en un pri mer curso de metodos numericos soluci6n numerica de una ecuaci6n no-lineal en una variable soluci6n numerica de sistemas de ecuaciones lineales y no-lineales interpolaci6n polinomial integraci6n numerica y soluci6n numerica de problemas de valor inicial para ecuaciones diferenciales ordinarias
Que es un metodo numerico
Un metodo numerico es un procedimiento mediante el cual se obtiene casl slempre de manera aproximada la soluci6n de ciertos problemas realizando calculos puramente aritmeticos y 16gicos (operaciones aritmeticas elementales calculo de funciones consulta de una tabla de valores calculo proposicional etc) Un tal procedimiento consiste de una lista fin ita de instrucciones precisas que especifican una secuencia de operaciones algebraicas y 16gicas (algoritmo) que producen 0 bien una aproximaci6n de la soluci6n del problema (soluci6n numerica) 0 bien un mensaje La eficiencia en el calculo de dicha aproximaci6n depende en parte de la faci lidad de implementaci6n del algori tmo y de las caracteristicas especiales y limitaciones de los instrumentos de calculo (los computadores) En general al emplear estos instrumentos de calculo se introducen errores Ilamados de redondeo
11 ARITMETICA FINITA
Siendo los computadores la herramienta basica en los metodos numericos es conveniente indicar c6mo son los numeros del computador y c6mo se simula su aritmetica
La mayoria de los computadores usan s610 un subconjunto finito relativamente pequeno de los numeros reales para representar a todos los numeros reales este conjunto que s610 contiene numeros racionales y que describiremos mas adelante es lIamado conjunto de numeros de punto flotante 0 conjunto de numeros de maquina en punto flotante 0
simplernente conjunto de punto flotante
Cada numero del computador se representa mediante un numero finito de digi tos (aritmetica fin ita) segun se indica a continuaci6n
Un numero del computador 0 de punto flotante distinto de cero se describe matematicamente en la forma
t f I
forma en la cuallos simbolos que all[ aparecen tienen el siguiente significado
(J =+ 1 0 (J =- 1 es el sig no del numero
~ es un entero que denota la base del sistema numerico usado Por 10 general ~ 2
(Sistema Binario) ~ = 8 (Sistema Octal) 0 ~ = 16 (Sistema Hexadecimal)
ai i = 12 t es un entero con 0 ~ ai ~ ~ - 1 Los enteros 01 0 - 1 son lIamados digitos
en la base ~ Nosotros asumiremos en todo 10 que sigue que a tc 0 en cuyo caso el
numero se dice que esta en forma normalizada
4 METODOS NUMERIC OS
a1 a2 at I f 6 d I ()middot a t ~ denota la suma 1 + 2++ yes IIamada a mantlsa 0 racci n e numero a1a2 p p p de punto flotante
EI entero t indica el numero de dfgitos en la base p que se usan para representar el
numero de punta flotante y es amado precisi6n Por 10 general t =6 0 t =7 con ~ =10
(precisi6n sencilla) t =14 0 t = 15 can ~ =10 (doble precisi6n) En algunos computadores se pueden hacer representaciones en precisi6n sencilla doble precisi6n e incluso en precisi6n mayor
e es un entero lIamado el exponente y es tal que L ~ e ~ U para ciertos enteros L y U es comun encontrar L = - U a L = -U plusmn 1 Un caso frecuente es L = -63 Y U = 64 para un total de 128 posibles exponentes
EI numero cero requiere una representaci6n especial
De acuerdo con 10 anterior un conjunto de punto flotante F queda caracterizado por cuatro parametros
a) La base p b) La precisi6n t c) Los enteros L y U tales que L ~ e ~ U donde e es el exponente
Cualesquiera sean los parametros elegidos los conjuntos de punta flotante correspondientes comparten las mismas caracterlsticas cualitativas entre elias la carencia de algunas de las propiedades algebraicas de que gozan los numeros reales
Una de las caracterfsticas de todo conjunto de punto flotante F es que es finito y tiene
numeros diferentes (incluyendo el cera) y donde los distintos de cero estan en forma normalizada En efecto
puede tomar p- 1 valores y ai i =23 t puede tomar p valores asf que haya1
(p - 1)p P=(p _1)pt-1 fracciones positivas distintas --v--
t-1
Ahora considerando que el numero de posibles exponentes es U - L + 1 que el numero de punta flotante puede ser positiv~ 0 negativ~ y teniendo en cuenta que el numero cero esta tambim en el conjunto de punto flotante concluimos que el conjunto F tiene
numeros diferentes
Capitulo 1 ERRORES DE REDONDEO Y ESTABILIDAD 5
Lo anterior nos dice que se usan 2(~ -1)~t- (U - L + 1) + 1 numeros de punto fiotante para
representar el conjunto continuo de los numeros reales (que es infinito) 10 que impl ica que muchos numeros reales tendrfan que ser representados par un mismo numero de punto flotante
Como ejemplo consideremos el conjunto de punto flotante F con para metros p== 2
(Binario) t == 3 L == -1 U == 2 Tal conjunto F tiene
numeros diferentes (inciuyendo el cero)
Los numeros de F distintos de cero son de la forma
con a = 1 a2 a3 = 0 1 Y e = - 1 0 1 2 asf que las fracciones positivas distintas son
Combinando estas mantisas con los exponentes obtenemos todos los numeros positivos de F que aparecen en la TABLA 12 siguiente
I MANTISA I EXP -1 I EXP 0 I EXP 1 IEXP 2
I 8
(100)2 =shy16
(100) x T=~2 16
(100) x 2deg = ~ 2 16
(100) x 2 = ~ 2 16
(100) x 22 == 32 2 16
(101) =Q2 16
(101)2 x T = ~ 16
(101) x 2deg = Q 2 16
(101) x 2 = 20 2 16
(101)2 22 == 40 16
(110) = ~ 2 16
(110) xT =~ 2 16
(110) x 2deg ==~ 2 16
(110) 2 x 2= 24 16
( ) 2 48 1 10 x 2 =shy2 16
(111) = i2 16
(111) x T = ~ 2 16
(111) x 2deg = i2 16
(111) x 2 = 28 2 16
(1 11) x 22 = 56 2 16
TABLA 12
6 METOOOS NUMERICOS
Como estamos mas familiarizados con los numeros decimales (en base p= 10) los 33 elementos de F en forma (racional) decimal son
16 20 24 28 32 40 48 56 +- plusmn- plusmn- plusmn - +- +- +- +shy-16 16 16 16 -16 -16 -16 -16
Una representaci6n de los numeros positiv~s y el cero de F en la recta real se muestra en la FIGURA 11 siguiente
o )( flex) Iii
56
~T 16 20 32 b
40 48 ~R
-TS 16 16 16 16 16 I regIon de under1low region de overflow
(subfJujo) (sobreflujo)
FIGURA 11
Algunos hechos que se pueden observar en un conjunto de punta flotante F son
1 Todo numero real x que entra en el computador 0 que es el resultado de un calculo es reemplazado (si es posible) por un numero de punto flotante que notaremos fl(x) Existen reg las para escoger tal numero (reglas de redondeo) por 10 general es el numero de punto
flotante mas cercano a x La diferencia Ix - f1( x) I se llama error (absoluto) de redondeo
2 Si observamos la distribuci6n de los elementos de F en la recta real vemos que no estan igualmente espaciados (eslan mas densamente distribuldos ella cercanla del cero) 10 que implica que el error de redondeo puede depender del tamaro del numero (entre mas grande sea el numero en valor absoluto mayor puede ser el error de redondeo)
En el ejemplo el numero de punto f10tante positiv~ mas pequero es ~ = y el numero de 16 4
punto flotante positiv~ mas grande es 56 = ~ 16 2
En general en un conjunto de punto flotante F con param~tros p t L Y U se tiene que
es el numero de punta f10tante positiv~ mas pequero (para el ejemplo FL = 2-1-1 = plusmn) y
con y = P-1
Capitulo 1 ERRORES DE REDONDEO Y ESTABILIDAD 7
es el numero de punto flotantepositivo mas grande (para el ejemplo Fu =(1- 2-3 )22 = ) 2
A la regi6n RL = X ER 0 lt IxIlt FL se Ie llama region de underflow 0 subflujo y en
algunos computadores si un numero real cae en esta region el numero es redondeado a cero
Por otra parte a la regi6n Ru = X ER Ixl gt Fu se Ie llama region de overflow 0
sobreflujo y en algunos computadores si un numero real cae en esta regi6n el numero es redondeado al numero de punto flotante mas cercano (Fu - Fu) 0 se infomia del fen6meno
overflow
Se define como range del conjunto F al conjunto
De acuerdo con esto todo numero de punto flotante distinto de cero fl(x) debe satisfacer
3 La combinaci6n aritmetica usual + - x 7- de dos numeros de punto flotante no
siempre produce un numero de punto flotante
Supongamos que fl(x) fl(Y)EF Veamos como ejemplo que la suma usual fl(x)+fl(y) no
necesariamente sera un numero en F Para ello consideremos el conjunto de punto f10tante
F dado en el ejemplo fl(x) = ~ EF fl(Y) = 1~ E F sin embargo
28 5 33fl( x) + fl(Y) = - + - = - ~ F Luego la adici6n usual no es cerrada en el sentido
16 16 16 matematico ordinario
Una manera de simular la adici6n Y las demas operaciones aritmeticas entre numeros rea les pero realizadas por el computador es la siguiente
Si x e Y son numeros reales en el range de F definimos las operaciones 83 8 reg Y 8 a las que nos referiremos como operaciones de punta flotante asi
x EB Y = fl( fl( x) + fl( Y ) )
x 8 Y= fl( fl( x) - fl( Y ) )
x reg Y = fl( fl( x) x fl( Y ) )
x 8 Y = fl( fI( x) fI(Y))
donde + - x Y 7 son las operaciones aritmeticas usuales
8 METOOOS NUMERICOS
Ilustraremos estas operaciones en 81 conjunto F del ejemplo al tiempo que pondremos de manifiesto la carencia de ciertas propiedades para tales operaciones Supondremos que f1(x) se escoge como el numero de punto f10tante mas cercano a x y que cuando el numero x equidista de dos numeros de punto f1otante se escoge flex) como el mas cercano a la derecha si es positiv~ 0 el mas cercano hacia la izquierda si es negativo
middot 28 5 R t ITomemos en F os numeros - y - y supongamos que X y E son a es queI 16 16
28 5f1(x) = - Y f1(Y) = - Entonces
16 16
xG) = f1(28 + ~) = fl( 33) = 32 Y 16 16 16 16
x e y = f( 28 _~) = fl( 23) = 24 1616 16 16
Xampgt y=fl( 28 x~) = fl( 35) = 32 = ~ 16 16 64 64 16
xEEJ y = fl( 28 -- ~) = fl( 28) = 56 (fen6meno overflow) 16 16 5 16
28 56t Overflow ya que - gt - = Fu 5 16
6 6Tomemos - EF Y supongamos que z ER es tal que fl(z) = - entonces
16 16
z e y = fl(~ - ~) =f1( _1 ) = 0 (fen6meno underflow) 16 16 16
1 4t Underflow ya que 0 lt - lt - = FL 16 16
16 7 14 5 10 Como 1 = 16 8 = 16 s = 16 E F entonces existen u v WE R tales que fl(U) = 1
7 5f~V)=S Y f1(W) = s Entonces
luego
Air que
Fi_
vi INTRODUCCION
Hace algunos anos los cursos de metodos numericos eran practicamente te6ricos ya que el acceso a los computadores era diflcil A los estudiantes se les ensenaba c6mo trabajar los algoritmos numericos y se les mostraban los resultados de algunos programas hechos previamente en el computador pero el estudiante tenia poca oportunidad de experimentar por si mismo con los algoritmos
Una vez que el computador fue mas accesible el estudiante pudo experimentar algo mas con los metodos numericos luego de capacitarse en algun lenguaje de programaci6n como BASIC FORTRAN PASCAL etc pero al gastar horas en la programaci6n de tales metodos ya no disponia de tiempo suficiente para explorar un gran numero de algoritmos numericos diferentes
Afortunadamente en la actualidad disponemos de herramientas computacionales que no requieren del conocimiento de algun lenguaje de programaci6n las cuales ademas de permitir explorar diversos algoritmos numericos ofrecen entre otras las siguientes ventajas se puede realizar un numero importante de iteraciones 10 cual sin tales herramientas no seria posible 0 requeriria demasiado tiempo facilita el manejo de las funciones desde el punto de vista del calculo familiariza en el uso del computador refuerza el trabajo en pequerios grupos y permite abordar algunos problemas que por la enorme cantidad de operaciones aritmetico-algebraicas involucradas no era posible tratar
Para lIevar a cabo los calculos numericos correspondientes a la mayorfa de los metodos numericos desarrollados en este texto se ha escogido el paquete computacional DERIVE ( el cual es potente amigable de poco requerimiento de maquina y relativamente econ6mico) complementado con procedimientos en DERIVE elaborados por el profesor Julio Cesar Morales C de nuestro Departamento de Matematicas Por esta raz6n he agregado en esta segunda edici6n algunas instrucciones correspondientes a tales procedimientos y que el lector encontrara enseguida de algunos ejemplos tambien he adicionado a este material un disquete que contiene los procedimientos mencionados
Para complementar la informaci6n en DERIVE aqui utilizada puede consultarse el manual Ayudese en Matematicas y Graficas con DERIVE escrito por el profesor Morales (ver bibliografia)
Para utilizar las ayudas que vienen en el disquete una vez que se ha cargado el DERIVE ejecute el comando TRANSFER+ LOAD+UTILITY y digite XzETAM MTH donde X denota el nombre del drive donde insert6 el disquete (deje cargar completamente sin tocar el teclado) Tambien estan dentro de las ayudas ofrecidas unos archivos demostrativos correspondientes a cadauno de los capitulos desarrollados en este libro tales archivos contienen resultados de algunos ejemplos y problemas planteados en el texto Para cargar estos archivos demostrativos una vez que se ha cargado el archivo ZETAMMTH cargue el archivo que usted requiera de acuerdo con el capitulo deseado ejecutando el comando TRANSFER+DEMO y editando XCAPDMO donde denota el numero del capitulo (si desea salir de este archiv~ use la tecla Esc) En el mismo disquete esta el archivo HMETODOSMTH que especifica las ayudas para la sintaxis de las funciones que se utilizan en los calculos numericos que aparecen en este texto y da una breve descripci6n de algunas de elias Para hacer uso de estas ayudas puede cargarlas ejecutando el comando TRANSFER+MERGE (agrega las expresiones que estan en el archivo que se carga a las que se encuentran en la ventana de Algebra) y editando XHMETODOSMTH
Quiero agradecer al profesor Julio C computacional correspondiente a este desarrollo del curso de Metodos ltUll taIlIiIIlIII
En la portada aparece el graflCo de un
lenguaje PASCAL por el profesor de la Universidad Nacional sede
la funci6n f(Z) Z2 +c con zee middot 0
Zo e[-22] x [-22] (condici6n InlCill)
condici6n inicial dada zo el NUllil lrtlft1
Finalmente quiero agradecer al sobre este material las cua profesores Mario Arias Zabala Manuel actual Director del Desshypara IIevar a cabo este trabajo
)s numericos eran practicamente te6ricos ya que el los estudiantes se les ensenaba c6mo trabajar los
an los resultados de algunos programas hechos ~studiante tenfa poca oportunidad de experimentar
cesible el estudiante pudo experimentar algo mas pacitarse en algun lenguaje de programaci6n como I gastar horas en la programaci6n de tales metodos explorar un gran numero de algoritmos numericos
nales -que no ademas de
tes ventajas amientas no I es desde el I trabajo en cantidad de
los metodos DERIVE (el economico) Julio Cesar ado en esta
os y que el material un
orales (ver
INTRODUCCI6N vii
Quiero agradecer al profesor Julio C Morales C por su valiosa ayuda en la parte computacional correspondiente a este material ya que con su aporte se ha facilitado e desarrollo del curso de Metodos Numericos
En la portada aparece el grafico de un conjunto de Julia para c = 036 + 01 Oi realizado en
lenguaje PASCAL por el profesor Horacio Arango Marin del Departamento de Matematicas de la Universidad Nacional sede Medellin Este conjunto se obtuvo mediante la iteracion de
fa funci6n f(Z)=Z2+C con ZEC 0 sea mediante la iteraclon Zn+1=Z~+C n = 01 y
Zo e[-22]x[-22] (condici6n inicial) Si la sucesi6n Iznlt diverge a infinito para una
condici6n inicial dada zo el conjunto de todos estos puntos zo se llama el conjunto de
escape y su frontera se llama conjunto de Julia asociado a c Mis agradecimientos al profesor Arango Marin por haberme facilitado tal grafico
Finalmente quiero agradecer al profesor Abraham Asmar Ch por sus valiosas sugerencias sobre este material las cuales me permitieron mejorarlo significativamente y a los profesores Mario Arias Zabala actual Decano de la Facultad de Ciencias y Arturo Jessie Manuel actual Director del Departamento de Matematicas por el apoyo que me brindaron para lIevar a cabo este trabajo
Ivan F Asmar Ch
el DERIVE X denota el el teclado l) mostrativos
les archivos I Para cargar H cargue el el comando
capitulo (si el archivo
e se utilizan de algunas
el comando carga a las
CONTENIDO
CAPiTULO 1 ERRORES DE REDONDEO Y ESTABILIDAD
11 ARITMETICA FINITA 3 12 ERRORES DE REDONDEO 10 13 PERDIDA DE CIFRAS SIGNIFICATIVAS 16 14 ESTABILIDAD DE UN ALGORITMO 20 15 CONDICIONAMIENTO DE UN PROBLEMA 27 TALLER 1 28
CAPiTULO 2 SOlUCI6N NUMERICA DE UNA ECUACI6N NO-LINEAL EN UNA VARIABLE 33
21 METODOS CERRADOS 38 lt-211 Metodo de Bisecci6n 38 212 Metodo de Posicion Falsa 41
22 METODOS ABIERTOS 43 221 Metodo de Punto Fijo 43 ~
-222 Metodo de Newton-Raphson 56 223 EI metodo de Newton-Raphson-Horner 65
L224 Metodo de Newton-Raphson modificado 76 225 Metodo de la Secante 78
23 RAPIDEZ DE CONVERGENCIA 80 231 Orden e convergencia del metodo de iteracion de Punto fijo 84 232 Orden de convergencia del metodo de Newton-Raphson 86
TALLER 2 88
CAPiTULO 3 SOlUCION NUMERICA DE SISTEMAS DE ECUACIONES 93
31 SOLUCION NUMERICA DE SISTEMAS DE ECUACIONES LINEALES 93 32 METODOS DIRECTOS 94 33 SISTEMAS MAL CONDICIONADOS Y NUMERO DE CONDICION DE UNA MATRIZ 99 34 ESTRATEGIAS DE PIVOTEO 114
341 Pivoteo maximo por columna 114 342 Pivoteo escalado de fila 116
35 FACTORIZACION TRIANGULAR 117 351 Algunas aplicaciones de la factorizaci6n PA=LV 119
36 SISTEMAS TRIDIAGONALES 120 37 FACTORIZACION DE CHOLESKI 124 38 METODOS ITERATIVOS 127
381 Metodo iterativo de Jacobi 129 382 Metodo iterativo de Gauss-Seidel 141 383 Metodo SOR 149
X CONTENIDO
39 SOlUCI6N NUMERICA DE SISTEMAS NO-LINEALES 391 Iteraci6n de Punto Fijo para sistemas no-lineales
_ 1392 Metodo de Newton-Raphson para sistemas no-lineales 310 CEROS COMPLEJOS DE POLINOMIOS METODO DE BAIRSTOW TALLER 3
CAPiTULO 4 INTERPOLACI6N POLINOMIAL Y AJUSTE POLINOMIAL
41 INTERPOLACI6N POLINOMIAL 411 Forma de Lagrange del polinomio interpolante 41 2 Forma de Newton del polinomio interpolante
42 INTERPOLACI6N SEGMENTARIA CUBICA 43 AJUSTE DE UN POLINOMIO POR MINIMOS CUADRADOS
431 Regresi6n polinomial 432 Regresi6n exponencial logaritmica y de potencia
TALLER 4
CAPiTULO 5 INTEGRACI6N NUMERICA
51 ALGUNAS F6RMULAS CERRADAS DE NEWTON-COTES 511 Regia de los trapecios
512 Regia de Simpson (~)
513 Regia de simpson () 52 INTEGRACI6N DE ROMBERG 53 METODO DE LOS COEFICIENTES INDETERMINADOS 54 METODO DE CUADRATURA GAUSSIANA TALLER 5
CAPiTULO 6 SOLUCI6N NUMERICA DE PROBLEMAS DE VALOR INICIAL PARA ECUACIONES DIFERENCIALES ORDINARIAS
61 METODO DE EULER 0 DE LA RECTA TANGENTE 62 UN METODO DE EULER MEJORADO 63 METODO DE LOS TRES PRIMEROS TERMINOS DE LA SERlE DE TAYLOR 64 METODO DE RUNGE-KUTTA TALLER 6
BIBLIOGRAFiA
iNDICE
iNDICE DE ALGORITMOS
SiMBOLOS NOTACIONES Y ABREVIATURAS
155 156 162 167 174
183
184 185 197 206 216 217 224 226
231
231 233
237
241
253 259 263 269
273
284 295 299 303 318
323
325
329
331 -
CAPfTULO 1
INTRODucclON
AI momento de menudo con DroIlIIIfIlil cuya soluciOn continuaciOn con para los cualls
IS NO-LINEALES 155 156 162 167 174
183
184 185 197 206 216 217 224 226
231
231 233
237
241
253 259 263 269
273
284 295
R 299 303 318
323
325
329
331 -
I
CAPiTULO 1 ERRORES DE REDONDEO Y ESTABILIDAD
INTRODUCCICN
AI momenta de aplicar las Matematicas a situacjones del mundo real nos encontramos a menudo con problemas que no pueden ser resueltos analiticamente 0 de manera exacta y cuya soluci6n debe ser abordada con ayuda de algun procedimiento numerico A continuaci6n consideramos algunos problemas tipicos ya formulados matematicamente para los cuales estudiaremos tecnicas numericas de soluCi6n
Problema 11 Encontrar el area de la regi6n comprendida entre las graficas de y = 2 sen x xy=e- con XE[O1t] bull
Problema 12 Encontrar las rafces de la ecuaci6n polin6mica
Problema 13 Resolver los siguientes sistemas de ecuaciones
a) EI sistema lineal AX = b con
~ -I 3
-1 2 -1 0 0
2 0 0 0
-2
A= 0 -1 2 -1 0 b= 2
0 0 -1 2 -1 -2
0 0 0 -1 2 1
b) EI sistema no-lineal
x +XY = 9 3x2 y _ y3 =4 bull
Problema 14 Dada la siguiente tabla de datos correspondiente a una cierta funci6n y = f( x)
~ f~) Ilr_=_~__r-~-1__+-_0~~_-~~~__=~__r-=~~ TABLA 11
encontrar el polinomio de menor grado que pase a traves de los puntos dados
Cual sera una estimaci6n para los valores f( x) correspondientes a x = -15 Y x = 15 bull
-Problema 15 Hallar el valor de cada una de las siguientes integrales
2 METODOS NUMERICOS
1
b) Jex2
dx 0
n
2J~ 3
c) ~1-~-4 (ellptica)-dX d) J~Inx x bull o 2
Problema 16 Resolver el problema de valor inicial
d28 d8 -2 + - +16sen8 = 0 dt dt
bull8(0) =~ 8(0) = 0
En reaci6n can los problemas anteriores tenemos que
En el problema 11 es necesario determinar los puntas de intersecci6n de las graficas de
y =2 sen x y y =e-x para 10 cual debemos resolver la ecuaci6n 2 sen x =e-x y no disponemos de un metoda algebraico para hacerlo
En el problema 12 se trata de hallar los ceros de un polinomio de grado 5 y como sabemos s610 se conocen metodos algebraicos para encontrar rarces de ecuaciones polin6micas de grado menor a igual que 4
En el problema 13 tenemos dos sistemas de ecuaciones EI de la parte a) es lineal y conocemos metodos de soluci6n (par ejemplo el metoda de eliminaci6n Gaussiana) sin embargo para sistemas de tamano mayor no s610 es conveniente sino necesario implementar tales metodos a traves del computador (metodo numerico) En la parte b) tenemos un sistema no-lineal y no conocemos metod as algebraicos generales para resolverlo
EI problema 14 se puede resolver anaifticamente (por interpolacion) sin embargo para determinar los coeficientes de dichos polinomios existen tecnicas que permiten encontrarlos rapidamente y que pueden implementarse en el computador
EI problema 15 corresponde a integrales definidas cuyo integrando tiene antiderivada que no es elemental
Finalmente en el problema 16 la ecuaci6n diferencial ordinaria
d2 8 d8 -2 + - + 16sene = 0 (ecuaci6n de movimiento de un pendulo) dt dt
es no-lineal (por la presencia de sen 8) Y no disponemos de un metoda analitico para
resolverla
Los problemas anteriores sirven un primer curso de mtodOi nllnall una variable soluci6n nu interpolaci6n polinomial integrad6n inicial para ecuaciones dihtrlllCil
Un metoda numenco es un manera aproximada la aritmeticos y 16glcos (Ooetl~nM
una tabla de vaores calculO finlta de nstrucciones preas 16gicas (algoritmo) que fVM~_
( olucion num6rica) a bien lit depende en parte de la fICIldId) especiales y limltaclon emplear estos instrumen
5iendo los computadores indicar c6mo son los nUnilllftlul
La mayoria de los conrtpUl_ los nLimeros reales contiene numeros raciloniIlI numeros de punto simplemente conJunto ell
Cada nLimero del conbullbull finita) segun se indlCI
Un numero del matematicamente en
J3 es un entero
(Sistema Blnlrlcl)41
Capitulo 1 ERRORES DE REDONDEO Y ESTABILIDAD 3
Los problemas anteriores sirven como motivaci6n para el estudio de cinco grandes temas en un pri mer curso de metodos numericos soluci6n numerica de una ecuaci6n no-lineal en una variable soluci6n numerica de sistemas de ecuaciones lineales y no-lineales interpolaci6n polinomial integraci6n numerica y soluci6n numerica de problemas de valor inicial para ecuaciones diferenciales ordinarias
Que es un metodo numerico
Un metodo numerico es un procedimiento mediante el cual se obtiene casl slempre de manera aproximada la soluci6n de ciertos problemas realizando calculos puramente aritmeticos y 16gicos (operaciones aritmeticas elementales calculo de funciones consulta de una tabla de valores calculo proposicional etc) Un tal procedimiento consiste de una lista fin ita de instrucciones precisas que especifican una secuencia de operaciones algebraicas y 16gicas (algoritmo) que producen 0 bien una aproximaci6n de la soluci6n del problema (soluci6n numerica) 0 bien un mensaje La eficiencia en el calculo de dicha aproximaci6n depende en parte de la faci lidad de implementaci6n del algori tmo y de las caracteristicas especiales y limitaciones de los instrumentos de calculo (los computadores) En general al emplear estos instrumentos de calculo se introducen errores Ilamados de redondeo
11 ARITMETICA FINITA
Siendo los computadores la herramienta basica en los metodos numericos es conveniente indicar c6mo son los numeros del computador y c6mo se simula su aritmetica
La mayoria de los computadores usan s610 un subconjunto finito relativamente pequeno de los numeros reales para representar a todos los numeros reales este conjunto que s610 contiene numeros racionales y que describiremos mas adelante es lIamado conjunto de numeros de punto flotante 0 conjunto de numeros de maquina en punto flotante 0
simplernente conjunto de punto flotante
Cada numero del computador se representa mediante un numero finito de digi tos (aritmetica fin ita) segun se indica a continuaci6n
Un numero del computador 0 de punto flotante distinto de cero se describe matematicamente en la forma
t f I
forma en la cuallos simbolos que all[ aparecen tienen el siguiente significado
(J =+ 1 0 (J =- 1 es el sig no del numero
~ es un entero que denota la base del sistema numerico usado Por 10 general ~ 2
(Sistema Binario) ~ = 8 (Sistema Octal) 0 ~ = 16 (Sistema Hexadecimal)
ai i = 12 t es un entero con 0 ~ ai ~ ~ - 1 Los enteros 01 0 - 1 son lIamados digitos
en la base ~ Nosotros asumiremos en todo 10 que sigue que a tc 0 en cuyo caso el
numero se dice que esta en forma normalizada
4 METODOS NUMERIC OS
a1 a2 at I f 6 d I ()middot a t ~ denota la suma 1 + 2++ yes IIamada a mantlsa 0 racci n e numero a1a2 p p p de punto flotante
EI entero t indica el numero de dfgitos en la base p que se usan para representar el
numero de punta flotante y es amado precisi6n Por 10 general t =6 0 t =7 con ~ =10
(precisi6n sencilla) t =14 0 t = 15 can ~ =10 (doble precisi6n) En algunos computadores se pueden hacer representaciones en precisi6n sencilla doble precisi6n e incluso en precisi6n mayor
e es un entero lIamado el exponente y es tal que L ~ e ~ U para ciertos enteros L y U es comun encontrar L = - U a L = -U plusmn 1 Un caso frecuente es L = -63 Y U = 64 para un total de 128 posibles exponentes
EI numero cero requiere una representaci6n especial
De acuerdo con 10 anterior un conjunto de punto flotante F queda caracterizado por cuatro parametros
a) La base p b) La precisi6n t c) Los enteros L y U tales que L ~ e ~ U donde e es el exponente
Cualesquiera sean los parametros elegidos los conjuntos de punta flotante correspondientes comparten las mismas caracterlsticas cualitativas entre elias la carencia de algunas de las propiedades algebraicas de que gozan los numeros reales
Una de las caracterfsticas de todo conjunto de punto flotante F es que es finito y tiene
numeros diferentes (incluyendo el cera) y donde los distintos de cero estan en forma normalizada En efecto
puede tomar p- 1 valores y ai i =23 t puede tomar p valores asf que haya1
(p - 1)p P=(p _1)pt-1 fracciones positivas distintas --v--
t-1
Ahora considerando que el numero de posibles exponentes es U - L + 1 que el numero de punta flotante puede ser positiv~ 0 negativ~ y teniendo en cuenta que el numero cero esta tambim en el conjunto de punto flotante concluimos que el conjunto F tiene
numeros diferentes
Capitulo 1 ERRORES DE REDONDEO Y ESTABILIDAD 5
Lo anterior nos dice que se usan 2(~ -1)~t- (U - L + 1) + 1 numeros de punto fiotante para
representar el conjunto continuo de los numeros reales (que es infinito) 10 que impl ica que muchos numeros reales tendrfan que ser representados par un mismo numero de punto flotante
Como ejemplo consideremos el conjunto de punto flotante F con para metros p== 2
(Binario) t == 3 L == -1 U == 2 Tal conjunto F tiene
numeros diferentes (inciuyendo el cero)
Los numeros de F distintos de cero son de la forma
con a = 1 a2 a3 = 0 1 Y e = - 1 0 1 2 asf que las fracciones positivas distintas son
Combinando estas mantisas con los exponentes obtenemos todos los numeros positivos de F que aparecen en la TABLA 12 siguiente
I MANTISA I EXP -1 I EXP 0 I EXP 1 IEXP 2
I 8
(100)2 =shy16
(100) x T=~2 16
(100) x 2deg = ~ 2 16
(100) x 2 = ~ 2 16
(100) x 22 == 32 2 16
(101) =Q2 16
(101)2 x T = ~ 16
(101) x 2deg = Q 2 16
(101) x 2 = 20 2 16
(101)2 22 == 40 16
(110) = ~ 2 16
(110) xT =~ 2 16
(110) x 2deg ==~ 2 16
(110) 2 x 2= 24 16
( ) 2 48 1 10 x 2 =shy2 16
(111) = i2 16
(111) x T = ~ 2 16
(111) x 2deg = i2 16
(111) x 2 = 28 2 16
(1 11) x 22 = 56 2 16
TABLA 12
6 METOOOS NUMERICOS
Como estamos mas familiarizados con los numeros decimales (en base p= 10) los 33 elementos de F en forma (racional) decimal son
16 20 24 28 32 40 48 56 +- plusmn- plusmn- plusmn - +- +- +- +shy-16 16 16 16 -16 -16 -16 -16
Una representaci6n de los numeros positiv~s y el cero de F en la recta real se muestra en la FIGURA 11 siguiente
o )( flex) Iii
56
~T 16 20 32 b
40 48 ~R
-TS 16 16 16 16 16 I regIon de under1low region de overflow
(subfJujo) (sobreflujo)
FIGURA 11
Algunos hechos que se pueden observar en un conjunto de punta flotante F son
1 Todo numero real x que entra en el computador 0 que es el resultado de un calculo es reemplazado (si es posible) por un numero de punto flotante que notaremos fl(x) Existen reg las para escoger tal numero (reglas de redondeo) por 10 general es el numero de punto
flotante mas cercano a x La diferencia Ix - f1( x) I se llama error (absoluto) de redondeo
2 Si observamos la distribuci6n de los elementos de F en la recta real vemos que no estan igualmente espaciados (eslan mas densamente distribuldos ella cercanla del cero) 10 que implica que el error de redondeo puede depender del tamaro del numero (entre mas grande sea el numero en valor absoluto mayor puede ser el error de redondeo)
En el ejemplo el numero de punto f10tante positiv~ mas pequero es ~ = y el numero de 16 4
punto flotante positiv~ mas grande es 56 = ~ 16 2
En general en un conjunto de punto flotante F con param~tros p t L Y U se tiene que
es el numero de punta f10tante positiv~ mas pequero (para el ejemplo FL = 2-1-1 = plusmn) y
con y = P-1
Capitulo 1 ERRORES DE REDONDEO Y ESTABILIDAD 7
es el numero de punto flotantepositivo mas grande (para el ejemplo Fu =(1- 2-3 )22 = ) 2
A la regi6n RL = X ER 0 lt IxIlt FL se Ie llama region de underflow 0 subflujo y en
algunos computadores si un numero real cae en esta region el numero es redondeado a cero
Por otra parte a la regi6n Ru = X ER Ixl gt Fu se Ie llama region de overflow 0
sobreflujo y en algunos computadores si un numero real cae en esta regi6n el numero es redondeado al numero de punto flotante mas cercano (Fu - Fu) 0 se infomia del fen6meno
overflow
Se define como range del conjunto F al conjunto
De acuerdo con esto todo numero de punto flotante distinto de cero fl(x) debe satisfacer
3 La combinaci6n aritmetica usual + - x 7- de dos numeros de punto flotante no
siempre produce un numero de punto flotante
Supongamos que fl(x) fl(Y)EF Veamos como ejemplo que la suma usual fl(x)+fl(y) no
necesariamente sera un numero en F Para ello consideremos el conjunto de punto f10tante
F dado en el ejemplo fl(x) = ~ EF fl(Y) = 1~ E F sin embargo
28 5 33fl( x) + fl(Y) = - + - = - ~ F Luego la adici6n usual no es cerrada en el sentido
16 16 16 matematico ordinario
Una manera de simular la adici6n Y las demas operaciones aritmeticas entre numeros rea les pero realizadas por el computador es la siguiente
Si x e Y son numeros reales en el range de F definimos las operaciones 83 8 reg Y 8 a las que nos referiremos como operaciones de punta flotante asi
x EB Y = fl( fl( x) + fl( Y ) )
x 8 Y= fl( fl( x) - fl( Y ) )
x reg Y = fl( fl( x) x fl( Y ) )
x 8 Y = fl( fI( x) fI(Y))
donde + - x Y 7 son las operaciones aritmeticas usuales
8 METOOOS NUMERICOS
Ilustraremos estas operaciones en 81 conjunto F del ejemplo al tiempo que pondremos de manifiesto la carencia de ciertas propiedades para tales operaciones Supondremos que f1(x) se escoge como el numero de punto f10tante mas cercano a x y que cuando el numero x equidista de dos numeros de punto f1otante se escoge flex) como el mas cercano a la derecha si es positiv~ 0 el mas cercano hacia la izquierda si es negativo
middot 28 5 R t ITomemos en F os numeros - y - y supongamos que X y E son a es queI 16 16
28 5f1(x) = - Y f1(Y) = - Entonces
16 16
xG) = f1(28 + ~) = fl( 33) = 32 Y 16 16 16 16
x e y = f( 28 _~) = fl( 23) = 24 1616 16 16
Xampgt y=fl( 28 x~) = fl( 35) = 32 = ~ 16 16 64 64 16
xEEJ y = fl( 28 -- ~) = fl( 28) = 56 (fen6meno overflow) 16 16 5 16
28 56t Overflow ya que - gt - = Fu 5 16
6 6Tomemos - EF Y supongamos que z ER es tal que fl(z) = - entonces
16 16
z e y = fl(~ - ~) =f1( _1 ) = 0 (fen6meno underflow) 16 16 16
1 4t Underflow ya que 0 lt - lt - = FL 16 16
16 7 14 5 10 Como 1 = 16 8 = 16 s = 16 E F entonces existen u v WE R tales que fl(U) = 1
7 5f~V)=S Y f1(W) = s Entonces
luego
Air que
Fi_
)s numericos eran practicamente te6ricos ya que el los estudiantes se les ensenaba c6mo trabajar los
an los resultados de algunos programas hechos ~studiante tenfa poca oportunidad de experimentar
cesible el estudiante pudo experimentar algo mas pacitarse en algun lenguaje de programaci6n como I gastar horas en la programaci6n de tales metodos explorar un gran numero de algoritmos numericos
nales -que no ademas de
tes ventajas amientas no I es desde el I trabajo en cantidad de
los metodos DERIVE (el economico) Julio Cesar ado en esta
os y que el material un
orales (ver
INTRODUCCI6N vii
Quiero agradecer al profesor Julio C Morales C por su valiosa ayuda en la parte computacional correspondiente a este material ya que con su aporte se ha facilitado e desarrollo del curso de Metodos Numericos
En la portada aparece el grafico de un conjunto de Julia para c = 036 + 01 Oi realizado en
lenguaje PASCAL por el profesor Horacio Arango Marin del Departamento de Matematicas de la Universidad Nacional sede Medellin Este conjunto se obtuvo mediante la iteracion de
fa funci6n f(Z)=Z2+C con ZEC 0 sea mediante la iteraclon Zn+1=Z~+C n = 01 y
Zo e[-22]x[-22] (condici6n inicial) Si la sucesi6n Iznlt diverge a infinito para una
condici6n inicial dada zo el conjunto de todos estos puntos zo se llama el conjunto de
escape y su frontera se llama conjunto de Julia asociado a c Mis agradecimientos al profesor Arango Marin por haberme facilitado tal grafico
Finalmente quiero agradecer al profesor Abraham Asmar Ch por sus valiosas sugerencias sobre este material las cuales me permitieron mejorarlo significativamente y a los profesores Mario Arias Zabala actual Decano de la Facultad de Ciencias y Arturo Jessie Manuel actual Director del Departamento de Matematicas por el apoyo que me brindaron para lIevar a cabo este trabajo
Ivan F Asmar Ch
el DERIVE X denota el el teclado l) mostrativos
les archivos I Para cargar H cargue el el comando
capitulo (si el archivo
e se utilizan de algunas
el comando carga a las
CONTENIDO
CAPiTULO 1 ERRORES DE REDONDEO Y ESTABILIDAD
11 ARITMETICA FINITA 3 12 ERRORES DE REDONDEO 10 13 PERDIDA DE CIFRAS SIGNIFICATIVAS 16 14 ESTABILIDAD DE UN ALGORITMO 20 15 CONDICIONAMIENTO DE UN PROBLEMA 27 TALLER 1 28
CAPiTULO 2 SOlUCI6N NUMERICA DE UNA ECUACI6N NO-LINEAL EN UNA VARIABLE 33
21 METODOS CERRADOS 38 lt-211 Metodo de Bisecci6n 38 212 Metodo de Posicion Falsa 41
22 METODOS ABIERTOS 43 221 Metodo de Punto Fijo 43 ~
-222 Metodo de Newton-Raphson 56 223 EI metodo de Newton-Raphson-Horner 65
L224 Metodo de Newton-Raphson modificado 76 225 Metodo de la Secante 78
23 RAPIDEZ DE CONVERGENCIA 80 231 Orden e convergencia del metodo de iteracion de Punto fijo 84 232 Orden de convergencia del metodo de Newton-Raphson 86
TALLER 2 88
CAPiTULO 3 SOlUCION NUMERICA DE SISTEMAS DE ECUACIONES 93
31 SOLUCION NUMERICA DE SISTEMAS DE ECUACIONES LINEALES 93 32 METODOS DIRECTOS 94 33 SISTEMAS MAL CONDICIONADOS Y NUMERO DE CONDICION DE UNA MATRIZ 99 34 ESTRATEGIAS DE PIVOTEO 114
341 Pivoteo maximo por columna 114 342 Pivoteo escalado de fila 116
35 FACTORIZACION TRIANGULAR 117 351 Algunas aplicaciones de la factorizaci6n PA=LV 119
36 SISTEMAS TRIDIAGONALES 120 37 FACTORIZACION DE CHOLESKI 124 38 METODOS ITERATIVOS 127
381 Metodo iterativo de Jacobi 129 382 Metodo iterativo de Gauss-Seidel 141 383 Metodo SOR 149
X CONTENIDO
39 SOlUCI6N NUMERICA DE SISTEMAS NO-LINEALES 391 Iteraci6n de Punto Fijo para sistemas no-lineales
_ 1392 Metodo de Newton-Raphson para sistemas no-lineales 310 CEROS COMPLEJOS DE POLINOMIOS METODO DE BAIRSTOW TALLER 3
CAPiTULO 4 INTERPOLACI6N POLINOMIAL Y AJUSTE POLINOMIAL
41 INTERPOLACI6N POLINOMIAL 411 Forma de Lagrange del polinomio interpolante 41 2 Forma de Newton del polinomio interpolante
42 INTERPOLACI6N SEGMENTARIA CUBICA 43 AJUSTE DE UN POLINOMIO POR MINIMOS CUADRADOS
431 Regresi6n polinomial 432 Regresi6n exponencial logaritmica y de potencia
TALLER 4
CAPiTULO 5 INTEGRACI6N NUMERICA
51 ALGUNAS F6RMULAS CERRADAS DE NEWTON-COTES 511 Regia de los trapecios
512 Regia de Simpson (~)
513 Regia de simpson () 52 INTEGRACI6N DE ROMBERG 53 METODO DE LOS COEFICIENTES INDETERMINADOS 54 METODO DE CUADRATURA GAUSSIANA TALLER 5
CAPiTULO 6 SOLUCI6N NUMERICA DE PROBLEMAS DE VALOR INICIAL PARA ECUACIONES DIFERENCIALES ORDINARIAS
61 METODO DE EULER 0 DE LA RECTA TANGENTE 62 UN METODO DE EULER MEJORADO 63 METODO DE LOS TRES PRIMEROS TERMINOS DE LA SERlE DE TAYLOR 64 METODO DE RUNGE-KUTTA TALLER 6
BIBLIOGRAFiA
iNDICE
iNDICE DE ALGORITMOS
SiMBOLOS NOTACIONES Y ABREVIATURAS
155 156 162 167 174
183
184 185 197 206 216 217 224 226
231
231 233
237
241
253 259 263 269
273
284 295 299 303 318
323
325
329
331 -
CAPfTULO 1
INTRODucclON
AI momento de menudo con DroIlIIIfIlil cuya soluciOn continuaciOn con para los cualls
IS NO-LINEALES 155 156 162 167 174
183
184 185 197 206 216 217 224 226
231
231 233
237
241
253 259 263 269
273
284 295
R 299 303 318
323
325
329
331 -
I
CAPiTULO 1 ERRORES DE REDONDEO Y ESTABILIDAD
INTRODUCCICN
AI momenta de aplicar las Matematicas a situacjones del mundo real nos encontramos a menudo con problemas que no pueden ser resueltos analiticamente 0 de manera exacta y cuya soluci6n debe ser abordada con ayuda de algun procedimiento numerico A continuaci6n consideramos algunos problemas tipicos ya formulados matematicamente para los cuales estudiaremos tecnicas numericas de soluCi6n
Problema 11 Encontrar el area de la regi6n comprendida entre las graficas de y = 2 sen x xy=e- con XE[O1t] bull
Problema 12 Encontrar las rafces de la ecuaci6n polin6mica
Problema 13 Resolver los siguientes sistemas de ecuaciones
a) EI sistema lineal AX = b con
~ -I 3
-1 2 -1 0 0
2 0 0 0
-2
A= 0 -1 2 -1 0 b= 2
0 0 -1 2 -1 -2
0 0 0 -1 2 1
b) EI sistema no-lineal
x +XY = 9 3x2 y _ y3 =4 bull
Problema 14 Dada la siguiente tabla de datos correspondiente a una cierta funci6n y = f( x)
~ f~) Ilr_=_~__r-~-1__+-_0~~_-~~~__=~__r-=~~ TABLA 11
encontrar el polinomio de menor grado que pase a traves de los puntos dados
Cual sera una estimaci6n para los valores f( x) correspondientes a x = -15 Y x = 15 bull
-Problema 15 Hallar el valor de cada una de las siguientes integrales
2 METODOS NUMERICOS
1
b) Jex2
dx 0
n
2J~ 3
c) ~1-~-4 (ellptica)-dX d) J~Inx x bull o 2
Problema 16 Resolver el problema de valor inicial
d28 d8 -2 + - +16sen8 = 0 dt dt
bull8(0) =~ 8(0) = 0
En reaci6n can los problemas anteriores tenemos que
En el problema 11 es necesario determinar los puntas de intersecci6n de las graficas de
y =2 sen x y y =e-x para 10 cual debemos resolver la ecuaci6n 2 sen x =e-x y no disponemos de un metoda algebraico para hacerlo
En el problema 12 se trata de hallar los ceros de un polinomio de grado 5 y como sabemos s610 se conocen metodos algebraicos para encontrar rarces de ecuaciones polin6micas de grado menor a igual que 4
En el problema 13 tenemos dos sistemas de ecuaciones EI de la parte a) es lineal y conocemos metodos de soluci6n (par ejemplo el metoda de eliminaci6n Gaussiana) sin embargo para sistemas de tamano mayor no s610 es conveniente sino necesario implementar tales metodos a traves del computador (metodo numerico) En la parte b) tenemos un sistema no-lineal y no conocemos metod as algebraicos generales para resolverlo
EI problema 14 se puede resolver anaifticamente (por interpolacion) sin embargo para determinar los coeficientes de dichos polinomios existen tecnicas que permiten encontrarlos rapidamente y que pueden implementarse en el computador
EI problema 15 corresponde a integrales definidas cuyo integrando tiene antiderivada que no es elemental
Finalmente en el problema 16 la ecuaci6n diferencial ordinaria
d2 8 d8 -2 + - + 16sene = 0 (ecuaci6n de movimiento de un pendulo) dt dt
es no-lineal (por la presencia de sen 8) Y no disponemos de un metoda analitico para
resolverla
Los problemas anteriores sirven un primer curso de mtodOi nllnall una variable soluci6n nu interpolaci6n polinomial integrad6n inicial para ecuaciones dihtrlllCil
Un metoda numenco es un manera aproximada la aritmeticos y 16glcos (Ooetl~nM
una tabla de vaores calculO finlta de nstrucciones preas 16gicas (algoritmo) que fVM~_
( olucion num6rica) a bien lit depende en parte de la fICIldId) especiales y limltaclon emplear estos instrumen
5iendo los computadores indicar c6mo son los nUnilllftlul
La mayoria de los conrtpUl_ los nLimeros reales contiene numeros raciloniIlI numeros de punto simplemente conJunto ell
Cada nLimero del conbullbull finita) segun se indlCI
Un numero del matematicamente en
J3 es un entero
(Sistema Blnlrlcl)41
Capitulo 1 ERRORES DE REDONDEO Y ESTABILIDAD 3
Los problemas anteriores sirven como motivaci6n para el estudio de cinco grandes temas en un pri mer curso de metodos numericos soluci6n numerica de una ecuaci6n no-lineal en una variable soluci6n numerica de sistemas de ecuaciones lineales y no-lineales interpolaci6n polinomial integraci6n numerica y soluci6n numerica de problemas de valor inicial para ecuaciones diferenciales ordinarias
Que es un metodo numerico
Un metodo numerico es un procedimiento mediante el cual se obtiene casl slempre de manera aproximada la soluci6n de ciertos problemas realizando calculos puramente aritmeticos y 16gicos (operaciones aritmeticas elementales calculo de funciones consulta de una tabla de valores calculo proposicional etc) Un tal procedimiento consiste de una lista fin ita de instrucciones precisas que especifican una secuencia de operaciones algebraicas y 16gicas (algoritmo) que producen 0 bien una aproximaci6n de la soluci6n del problema (soluci6n numerica) 0 bien un mensaje La eficiencia en el calculo de dicha aproximaci6n depende en parte de la faci lidad de implementaci6n del algori tmo y de las caracteristicas especiales y limitaciones de los instrumentos de calculo (los computadores) En general al emplear estos instrumentos de calculo se introducen errores Ilamados de redondeo
11 ARITMETICA FINITA
Siendo los computadores la herramienta basica en los metodos numericos es conveniente indicar c6mo son los numeros del computador y c6mo se simula su aritmetica
La mayoria de los computadores usan s610 un subconjunto finito relativamente pequeno de los numeros reales para representar a todos los numeros reales este conjunto que s610 contiene numeros racionales y que describiremos mas adelante es lIamado conjunto de numeros de punto flotante 0 conjunto de numeros de maquina en punto flotante 0
simplernente conjunto de punto flotante
Cada numero del computador se representa mediante un numero finito de digi tos (aritmetica fin ita) segun se indica a continuaci6n
Un numero del computador 0 de punto flotante distinto de cero se describe matematicamente en la forma
t f I
forma en la cuallos simbolos que all[ aparecen tienen el siguiente significado
(J =+ 1 0 (J =- 1 es el sig no del numero
~ es un entero que denota la base del sistema numerico usado Por 10 general ~ 2
(Sistema Binario) ~ = 8 (Sistema Octal) 0 ~ = 16 (Sistema Hexadecimal)
ai i = 12 t es un entero con 0 ~ ai ~ ~ - 1 Los enteros 01 0 - 1 son lIamados digitos
en la base ~ Nosotros asumiremos en todo 10 que sigue que a tc 0 en cuyo caso el
numero se dice que esta en forma normalizada
4 METODOS NUMERIC OS
a1 a2 at I f 6 d I ()middot a t ~ denota la suma 1 + 2++ yes IIamada a mantlsa 0 racci n e numero a1a2 p p p de punto flotante
EI entero t indica el numero de dfgitos en la base p que se usan para representar el
numero de punta flotante y es amado precisi6n Por 10 general t =6 0 t =7 con ~ =10
(precisi6n sencilla) t =14 0 t = 15 can ~ =10 (doble precisi6n) En algunos computadores se pueden hacer representaciones en precisi6n sencilla doble precisi6n e incluso en precisi6n mayor
e es un entero lIamado el exponente y es tal que L ~ e ~ U para ciertos enteros L y U es comun encontrar L = - U a L = -U plusmn 1 Un caso frecuente es L = -63 Y U = 64 para un total de 128 posibles exponentes
EI numero cero requiere una representaci6n especial
De acuerdo con 10 anterior un conjunto de punto flotante F queda caracterizado por cuatro parametros
a) La base p b) La precisi6n t c) Los enteros L y U tales que L ~ e ~ U donde e es el exponente
Cualesquiera sean los parametros elegidos los conjuntos de punta flotante correspondientes comparten las mismas caracterlsticas cualitativas entre elias la carencia de algunas de las propiedades algebraicas de que gozan los numeros reales
Una de las caracterfsticas de todo conjunto de punto flotante F es que es finito y tiene
numeros diferentes (incluyendo el cera) y donde los distintos de cero estan en forma normalizada En efecto
puede tomar p- 1 valores y ai i =23 t puede tomar p valores asf que haya1
(p - 1)p P=(p _1)pt-1 fracciones positivas distintas --v--
t-1
Ahora considerando que el numero de posibles exponentes es U - L + 1 que el numero de punta flotante puede ser positiv~ 0 negativ~ y teniendo en cuenta que el numero cero esta tambim en el conjunto de punto flotante concluimos que el conjunto F tiene
numeros diferentes
Capitulo 1 ERRORES DE REDONDEO Y ESTABILIDAD 5
Lo anterior nos dice que se usan 2(~ -1)~t- (U - L + 1) + 1 numeros de punto fiotante para
representar el conjunto continuo de los numeros reales (que es infinito) 10 que impl ica que muchos numeros reales tendrfan que ser representados par un mismo numero de punto flotante
Como ejemplo consideremos el conjunto de punto flotante F con para metros p== 2
(Binario) t == 3 L == -1 U == 2 Tal conjunto F tiene
numeros diferentes (inciuyendo el cero)
Los numeros de F distintos de cero son de la forma
con a = 1 a2 a3 = 0 1 Y e = - 1 0 1 2 asf que las fracciones positivas distintas son
Combinando estas mantisas con los exponentes obtenemos todos los numeros positivos de F que aparecen en la TABLA 12 siguiente
I MANTISA I EXP -1 I EXP 0 I EXP 1 IEXP 2
I 8
(100)2 =shy16
(100) x T=~2 16
(100) x 2deg = ~ 2 16
(100) x 2 = ~ 2 16
(100) x 22 == 32 2 16
(101) =Q2 16
(101)2 x T = ~ 16
(101) x 2deg = Q 2 16
(101) x 2 = 20 2 16
(101)2 22 == 40 16
(110) = ~ 2 16
(110) xT =~ 2 16
(110) x 2deg ==~ 2 16
(110) 2 x 2= 24 16
( ) 2 48 1 10 x 2 =shy2 16
(111) = i2 16
(111) x T = ~ 2 16
(111) x 2deg = i2 16
(111) x 2 = 28 2 16
(1 11) x 22 = 56 2 16
TABLA 12
6 METOOOS NUMERICOS
Como estamos mas familiarizados con los numeros decimales (en base p= 10) los 33 elementos de F en forma (racional) decimal son
16 20 24 28 32 40 48 56 +- plusmn- plusmn- plusmn - +- +- +- +shy-16 16 16 16 -16 -16 -16 -16
Una representaci6n de los numeros positiv~s y el cero de F en la recta real se muestra en la FIGURA 11 siguiente
o )( flex) Iii
56
~T 16 20 32 b
40 48 ~R
-TS 16 16 16 16 16 I regIon de under1low region de overflow
(subfJujo) (sobreflujo)
FIGURA 11
Algunos hechos que se pueden observar en un conjunto de punta flotante F son
1 Todo numero real x que entra en el computador 0 que es el resultado de un calculo es reemplazado (si es posible) por un numero de punto flotante que notaremos fl(x) Existen reg las para escoger tal numero (reglas de redondeo) por 10 general es el numero de punto
flotante mas cercano a x La diferencia Ix - f1( x) I se llama error (absoluto) de redondeo
2 Si observamos la distribuci6n de los elementos de F en la recta real vemos que no estan igualmente espaciados (eslan mas densamente distribuldos ella cercanla del cero) 10 que implica que el error de redondeo puede depender del tamaro del numero (entre mas grande sea el numero en valor absoluto mayor puede ser el error de redondeo)
En el ejemplo el numero de punto f10tante positiv~ mas pequero es ~ = y el numero de 16 4
punto flotante positiv~ mas grande es 56 = ~ 16 2
En general en un conjunto de punto flotante F con param~tros p t L Y U se tiene que
es el numero de punta f10tante positiv~ mas pequero (para el ejemplo FL = 2-1-1 = plusmn) y
con y = P-1
Capitulo 1 ERRORES DE REDONDEO Y ESTABILIDAD 7
es el numero de punto flotantepositivo mas grande (para el ejemplo Fu =(1- 2-3 )22 = ) 2
A la regi6n RL = X ER 0 lt IxIlt FL se Ie llama region de underflow 0 subflujo y en
algunos computadores si un numero real cae en esta region el numero es redondeado a cero
Por otra parte a la regi6n Ru = X ER Ixl gt Fu se Ie llama region de overflow 0
sobreflujo y en algunos computadores si un numero real cae en esta regi6n el numero es redondeado al numero de punto flotante mas cercano (Fu - Fu) 0 se infomia del fen6meno
overflow
Se define como range del conjunto F al conjunto
De acuerdo con esto todo numero de punto flotante distinto de cero fl(x) debe satisfacer
3 La combinaci6n aritmetica usual + - x 7- de dos numeros de punto flotante no
siempre produce un numero de punto flotante
Supongamos que fl(x) fl(Y)EF Veamos como ejemplo que la suma usual fl(x)+fl(y) no
necesariamente sera un numero en F Para ello consideremos el conjunto de punto f10tante
F dado en el ejemplo fl(x) = ~ EF fl(Y) = 1~ E F sin embargo
28 5 33fl( x) + fl(Y) = - + - = - ~ F Luego la adici6n usual no es cerrada en el sentido
16 16 16 matematico ordinario
Una manera de simular la adici6n Y las demas operaciones aritmeticas entre numeros rea les pero realizadas por el computador es la siguiente
Si x e Y son numeros reales en el range de F definimos las operaciones 83 8 reg Y 8 a las que nos referiremos como operaciones de punta flotante asi
x EB Y = fl( fl( x) + fl( Y ) )
x 8 Y= fl( fl( x) - fl( Y ) )
x reg Y = fl( fl( x) x fl( Y ) )
x 8 Y = fl( fI( x) fI(Y))
donde + - x Y 7 son las operaciones aritmeticas usuales
8 METOOOS NUMERICOS
Ilustraremos estas operaciones en 81 conjunto F del ejemplo al tiempo que pondremos de manifiesto la carencia de ciertas propiedades para tales operaciones Supondremos que f1(x) se escoge como el numero de punto f10tante mas cercano a x y que cuando el numero x equidista de dos numeros de punto f1otante se escoge flex) como el mas cercano a la derecha si es positiv~ 0 el mas cercano hacia la izquierda si es negativo
middot 28 5 R t ITomemos en F os numeros - y - y supongamos que X y E son a es queI 16 16
28 5f1(x) = - Y f1(Y) = - Entonces
16 16
xG) = f1(28 + ~) = fl( 33) = 32 Y 16 16 16 16
x e y = f( 28 _~) = fl( 23) = 24 1616 16 16
Xampgt y=fl( 28 x~) = fl( 35) = 32 = ~ 16 16 64 64 16
xEEJ y = fl( 28 -- ~) = fl( 28) = 56 (fen6meno overflow) 16 16 5 16
28 56t Overflow ya que - gt - = Fu 5 16
6 6Tomemos - EF Y supongamos que z ER es tal que fl(z) = - entonces
16 16
z e y = fl(~ - ~) =f1( _1 ) = 0 (fen6meno underflow) 16 16 16
1 4t Underflow ya que 0 lt - lt - = FL 16 16
16 7 14 5 10 Como 1 = 16 8 = 16 s = 16 E F entonces existen u v WE R tales que fl(U) = 1
7 5f~V)=S Y f1(W) = s Entonces
luego
Air que
Fi_
CONTENIDO
CAPiTULO 1 ERRORES DE REDONDEO Y ESTABILIDAD
11 ARITMETICA FINITA 3 12 ERRORES DE REDONDEO 10 13 PERDIDA DE CIFRAS SIGNIFICATIVAS 16 14 ESTABILIDAD DE UN ALGORITMO 20 15 CONDICIONAMIENTO DE UN PROBLEMA 27 TALLER 1 28
CAPiTULO 2 SOlUCI6N NUMERICA DE UNA ECUACI6N NO-LINEAL EN UNA VARIABLE 33
21 METODOS CERRADOS 38 lt-211 Metodo de Bisecci6n 38 212 Metodo de Posicion Falsa 41
22 METODOS ABIERTOS 43 221 Metodo de Punto Fijo 43 ~
-222 Metodo de Newton-Raphson 56 223 EI metodo de Newton-Raphson-Horner 65
L224 Metodo de Newton-Raphson modificado 76 225 Metodo de la Secante 78
23 RAPIDEZ DE CONVERGENCIA 80 231 Orden e convergencia del metodo de iteracion de Punto fijo 84 232 Orden de convergencia del metodo de Newton-Raphson 86
TALLER 2 88
CAPiTULO 3 SOlUCION NUMERICA DE SISTEMAS DE ECUACIONES 93
31 SOLUCION NUMERICA DE SISTEMAS DE ECUACIONES LINEALES 93 32 METODOS DIRECTOS 94 33 SISTEMAS MAL CONDICIONADOS Y NUMERO DE CONDICION DE UNA MATRIZ 99 34 ESTRATEGIAS DE PIVOTEO 114
341 Pivoteo maximo por columna 114 342 Pivoteo escalado de fila 116
35 FACTORIZACION TRIANGULAR 117 351 Algunas aplicaciones de la factorizaci6n PA=LV 119
36 SISTEMAS TRIDIAGONALES 120 37 FACTORIZACION DE CHOLESKI 124 38 METODOS ITERATIVOS 127
381 Metodo iterativo de Jacobi 129 382 Metodo iterativo de Gauss-Seidel 141 383 Metodo SOR 149
X CONTENIDO
39 SOlUCI6N NUMERICA DE SISTEMAS NO-LINEALES 391 Iteraci6n de Punto Fijo para sistemas no-lineales
_ 1392 Metodo de Newton-Raphson para sistemas no-lineales 310 CEROS COMPLEJOS DE POLINOMIOS METODO DE BAIRSTOW TALLER 3
CAPiTULO 4 INTERPOLACI6N POLINOMIAL Y AJUSTE POLINOMIAL
41 INTERPOLACI6N POLINOMIAL 411 Forma de Lagrange del polinomio interpolante 41 2 Forma de Newton del polinomio interpolante
42 INTERPOLACI6N SEGMENTARIA CUBICA 43 AJUSTE DE UN POLINOMIO POR MINIMOS CUADRADOS
431 Regresi6n polinomial 432 Regresi6n exponencial logaritmica y de potencia
TALLER 4
CAPiTULO 5 INTEGRACI6N NUMERICA
51 ALGUNAS F6RMULAS CERRADAS DE NEWTON-COTES 511 Regia de los trapecios
512 Regia de Simpson (~)
513 Regia de simpson () 52 INTEGRACI6N DE ROMBERG 53 METODO DE LOS COEFICIENTES INDETERMINADOS 54 METODO DE CUADRATURA GAUSSIANA TALLER 5
CAPiTULO 6 SOLUCI6N NUMERICA DE PROBLEMAS DE VALOR INICIAL PARA ECUACIONES DIFERENCIALES ORDINARIAS
61 METODO DE EULER 0 DE LA RECTA TANGENTE 62 UN METODO DE EULER MEJORADO 63 METODO DE LOS TRES PRIMEROS TERMINOS DE LA SERlE DE TAYLOR 64 METODO DE RUNGE-KUTTA TALLER 6
BIBLIOGRAFiA
iNDICE
iNDICE DE ALGORITMOS
SiMBOLOS NOTACIONES Y ABREVIATURAS
155 156 162 167 174
183
184 185 197 206 216 217 224 226
231
231 233
237
241
253 259 263 269
273
284 295 299 303 318
323
325
329
331 -
CAPfTULO 1
INTRODucclON
AI momento de menudo con DroIlIIIfIlil cuya soluciOn continuaciOn con para los cualls
IS NO-LINEALES 155 156 162 167 174
183
184 185 197 206 216 217 224 226
231
231 233
237
241
253 259 263 269
273
284 295
R 299 303 318
323
325
329
331 -
I
CAPiTULO 1 ERRORES DE REDONDEO Y ESTABILIDAD
INTRODUCCICN
AI momenta de aplicar las Matematicas a situacjones del mundo real nos encontramos a menudo con problemas que no pueden ser resueltos analiticamente 0 de manera exacta y cuya soluci6n debe ser abordada con ayuda de algun procedimiento numerico A continuaci6n consideramos algunos problemas tipicos ya formulados matematicamente para los cuales estudiaremos tecnicas numericas de soluCi6n
Problema 11 Encontrar el area de la regi6n comprendida entre las graficas de y = 2 sen x xy=e- con XE[O1t] bull
Problema 12 Encontrar las rafces de la ecuaci6n polin6mica
Problema 13 Resolver los siguientes sistemas de ecuaciones
a) EI sistema lineal AX = b con
~ -I 3
-1 2 -1 0 0
2 0 0 0
-2
A= 0 -1 2 -1 0 b= 2
0 0 -1 2 -1 -2
0 0 0 -1 2 1
b) EI sistema no-lineal
x +XY = 9 3x2 y _ y3 =4 bull
Problema 14 Dada la siguiente tabla de datos correspondiente a una cierta funci6n y = f( x)
~ f~) Ilr_=_~__r-~-1__+-_0~~_-~~~__=~__r-=~~ TABLA 11
encontrar el polinomio de menor grado que pase a traves de los puntos dados
Cual sera una estimaci6n para los valores f( x) correspondientes a x = -15 Y x = 15 bull
-Problema 15 Hallar el valor de cada una de las siguientes integrales
2 METODOS NUMERICOS
1
b) Jex2
dx 0
n
2J~ 3
c) ~1-~-4 (ellptica)-dX d) J~Inx x bull o 2
Problema 16 Resolver el problema de valor inicial
d28 d8 -2 + - +16sen8 = 0 dt dt
bull8(0) =~ 8(0) = 0
En reaci6n can los problemas anteriores tenemos que
En el problema 11 es necesario determinar los puntas de intersecci6n de las graficas de
y =2 sen x y y =e-x para 10 cual debemos resolver la ecuaci6n 2 sen x =e-x y no disponemos de un metoda algebraico para hacerlo
En el problema 12 se trata de hallar los ceros de un polinomio de grado 5 y como sabemos s610 se conocen metodos algebraicos para encontrar rarces de ecuaciones polin6micas de grado menor a igual que 4
En el problema 13 tenemos dos sistemas de ecuaciones EI de la parte a) es lineal y conocemos metodos de soluci6n (par ejemplo el metoda de eliminaci6n Gaussiana) sin embargo para sistemas de tamano mayor no s610 es conveniente sino necesario implementar tales metodos a traves del computador (metodo numerico) En la parte b) tenemos un sistema no-lineal y no conocemos metod as algebraicos generales para resolverlo
EI problema 14 se puede resolver anaifticamente (por interpolacion) sin embargo para determinar los coeficientes de dichos polinomios existen tecnicas que permiten encontrarlos rapidamente y que pueden implementarse en el computador
EI problema 15 corresponde a integrales definidas cuyo integrando tiene antiderivada que no es elemental
Finalmente en el problema 16 la ecuaci6n diferencial ordinaria
d2 8 d8 -2 + - + 16sene = 0 (ecuaci6n de movimiento de un pendulo) dt dt
es no-lineal (por la presencia de sen 8) Y no disponemos de un metoda analitico para
resolverla
Los problemas anteriores sirven un primer curso de mtodOi nllnall una variable soluci6n nu interpolaci6n polinomial integrad6n inicial para ecuaciones dihtrlllCil
Un metoda numenco es un manera aproximada la aritmeticos y 16glcos (Ooetl~nM
una tabla de vaores calculO finlta de nstrucciones preas 16gicas (algoritmo) que fVM~_
( olucion num6rica) a bien lit depende en parte de la fICIldId) especiales y limltaclon emplear estos instrumen
5iendo los computadores indicar c6mo son los nUnilllftlul
La mayoria de los conrtpUl_ los nLimeros reales contiene numeros raciloniIlI numeros de punto simplemente conJunto ell
Cada nLimero del conbullbull finita) segun se indlCI
Un numero del matematicamente en
J3 es un entero
(Sistema Blnlrlcl)41
Capitulo 1 ERRORES DE REDONDEO Y ESTABILIDAD 3
Los problemas anteriores sirven como motivaci6n para el estudio de cinco grandes temas en un pri mer curso de metodos numericos soluci6n numerica de una ecuaci6n no-lineal en una variable soluci6n numerica de sistemas de ecuaciones lineales y no-lineales interpolaci6n polinomial integraci6n numerica y soluci6n numerica de problemas de valor inicial para ecuaciones diferenciales ordinarias
Que es un metodo numerico
Un metodo numerico es un procedimiento mediante el cual se obtiene casl slempre de manera aproximada la soluci6n de ciertos problemas realizando calculos puramente aritmeticos y 16gicos (operaciones aritmeticas elementales calculo de funciones consulta de una tabla de valores calculo proposicional etc) Un tal procedimiento consiste de una lista fin ita de instrucciones precisas que especifican una secuencia de operaciones algebraicas y 16gicas (algoritmo) que producen 0 bien una aproximaci6n de la soluci6n del problema (soluci6n numerica) 0 bien un mensaje La eficiencia en el calculo de dicha aproximaci6n depende en parte de la faci lidad de implementaci6n del algori tmo y de las caracteristicas especiales y limitaciones de los instrumentos de calculo (los computadores) En general al emplear estos instrumentos de calculo se introducen errores Ilamados de redondeo
11 ARITMETICA FINITA
Siendo los computadores la herramienta basica en los metodos numericos es conveniente indicar c6mo son los numeros del computador y c6mo se simula su aritmetica
La mayoria de los computadores usan s610 un subconjunto finito relativamente pequeno de los numeros reales para representar a todos los numeros reales este conjunto que s610 contiene numeros racionales y que describiremos mas adelante es lIamado conjunto de numeros de punto flotante 0 conjunto de numeros de maquina en punto flotante 0
simplernente conjunto de punto flotante
Cada numero del computador se representa mediante un numero finito de digi tos (aritmetica fin ita) segun se indica a continuaci6n
Un numero del computador 0 de punto flotante distinto de cero se describe matematicamente en la forma
t f I
forma en la cuallos simbolos que all[ aparecen tienen el siguiente significado
(J =+ 1 0 (J =- 1 es el sig no del numero
~ es un entero que denota la base del sistema numerico usado Por 10 general ~ 2
(Sistema Binario) ~ = 8 (Sistema Octal) 0 ~ = 16 (Sistema Hexadecimal)
ai i = 12 t es un entero con 0 ~ ai ~ ~ - 1 Los enteros 01 0 - 1 son lIamados digitos
en la base ~ Nosotros asumiremos en todo 10 que sigue que a tc 0 en cuyo caso el
numero se dice que esta en forma normalizada
4 METODOS NUMERIC OS
a1 a2 at I f 6 d I ()middot a t ~ denota la suma 1 + 2++ yes IIamada a mantlsa 0 racci n e numero a1a2 p p p de punto flotante
EI entero t indica el numero de dfgitos en la base p que se usan para representar el
numero de punta flotante y es amado precisi6n Por 10 general t =6 0 t =7 con ~ =10
(precisi6n sencilla) t =14 0 t = 15 can ~ =10 (doble precisi6n) En algunos computadores se pueden hacer representaciones en precisi6n sencilla doble precisi6n e incluso en precisi6n mayor
e es un entero lIamado el exponente y es tal que L ~ e ~ U para ciertos enteros L y U es comun encontrar L = - U a L = -U plusmn 1 Un caso frecuente es L = -63 Y U = 64 para un total de 128 posibles exponentes
EI numero cero requiere una representaci6n especial
De acuerdo con 10 anterior un conjunto de punto flotante F queda caracterizado por cuatro parametros
a) La base p b) La precisi6n t c) Los enteros L y U tales que L ~ e ~ U donde e es el exponente
Cualesquiera sean los parametros elegidos los conjuntos de punta flotante correspondientes comparten las mismas caracterlsticas cualitativas entre elias la carencia de algunas de las propiedades algebraicas de que gozan los numeros reales
Una de las caracterfsticas de todo conjunto de punto flotante F es que es finito y tiene
numeros diferentes (incluyendo el cera) y donde los distintos de cero estan en forma normalizada En efecto
puede tomar p- 1 valores y ai i =23 t puede tomar p valores asf que haya1
(p - 1)p P=(p _1)pt-1 fracciones positivas distintas --v--
t-1
Ahora considerando que el numero de posibles exponentes es U - L + 1 que el numero de punta flotante puede ser positiv~ 0 negativ~ y teniendo en cuenta que el numero cero esta tambim en el conjunto de punto flotante concluimos que el conjunto F tiene
numeros diferentes
Capitulo 1 ERRORES DE REDONDEO Y ESTABILIDAD 5
Lo anterior nos dice que se usan 2(~ -1)~t- (U - L + 1) + 1 numeros de punto fiotante para
representar el conjunto continuo de los numeros reales (que es infinito) 10 que impl ica que muchos numeros reales tendrfan que ser representados par un mismo numero de punto flotante
Como ejemplo consideremos el conjunto de punto flotante F con para metros p== 2
(Binario) t == 3 L == -1 U == 2 Tal conjunto F tiene
numeros diferentes (inciuyendo el cero)
Los numeros de F distintos de cero son de la forma
con a = 1 a2 a3 = 0 1 Y e = - 1 0 1 2 asf que las fracciones positivas distintas son
Combinando estas mantisas con los exponentes obtenemos todos los numeros positivos de F que aparecen en la TABLA 12 siguiente
I MANTISA I EXP -1 I EXP 0 I EXP 1 IEXP 2
I 8
(100)2 =shy16
(100) x T=~2 16
(100) x 2deg = ~ 2 16
(100) x 2 = ~ 2 16
(100) x 22 == 32 2 16
(101) =Q2 16
(101)2 x T = ~ 16
(101) x 2deg = Q 2 16
(101) x 2 = 20 2 16
(101)2 22 == 40 16
(110) = ~ 2 16
(110) xT =~ 2 16
(110) x 2deg ==~ 2 16
(110) 2 x 2= 24 16
( ) 2 48 1 10 x 2 =shy2 16
(111) = i2 16
(111) x T = ~ 2 16
(111) x 2deg = i2 16
(111) x 2 = 28 2 16
(1 11) x 22 = 56 2 16
TABLA 12
6 METOOOS NUMERICOS
Como estamos mas familiarizados con los numeros decimales (en base p= 10) los 33 elementos de F en forma (racional) decimal son
16 20 24 28 32 40 48 56 +- plusmn- plusmn- plusmn - +- +- +- +shy-16 16 16 16 -16 -16 -16 -16
Una representaci6n de los numeros positiv~s y el cero de F en la recta real se muestra en la FIGURA 11 siguiente
o )( flex) Iii
56
~T 16 20 32 b
40 48 ~R
-TS 16 16 16 16 16 I regIon de under1low region de overflow
(subfJujo) (sobreflujo)
FIGURA 11
Algunos hechos que se pueden observar en un conjunto de punta flotante F son
1 Todo numero real x que entra en el computador 0 que es el resultado de un calculo es reemplazado (si es posible) por un numero de punto flotante que notaremos fl(x) Existen reg las para escoger tal numero (reglas de redondeo) por 10 general es el numero de punto
flotante mas cercano a x La diferencia Ix - f1( x) I se llama error (absoluto) de redondeo
2 Si observamos la distribuci6n de los elementos de F en la recta real vemos que no estan igualmente espaciados (eslan mas densamente distribuldos ella cercanla del cero) 10 que implica que el error de redondeo puede depender del tamaro del numero (entre mas grande sea el numero en valor absoluto mayor puede ser el error de redondeo)
En el ejemplo el numero de punto f10tante positiv~ mas pequero es ~ = y el numero de 16 4
punto flotante positiv~ mas grande es 56 = ~ 16 2
En general en un conjunto de punto flotante F con param~tros p t L Y U se tiene que
es el numero de punta f10tante positiv~ mas pequero (para el ejemplo FL = 2-1-1 = plusmn) y
con y = P-1
Capitulo 1 ERRORES DE REDONDEO Y ESTABILIDAD 7
es el numero de punto flotantepositivo mas grande (para el ejemplo Fu =(1- 2-3 )22 = ) 2
A la regi6n RL = X ER 0 lt IxIlt FL se Ie llama region de underflow 0 subflujo y en
algunos computadores si un numero real cae en esta region el numero es redondeado a cero
Por otra parte a la regi6n Ru = X ER Ixl gt Fu se Ie llama region de overflow 0
sobreflujo y en algunos computadores si un numero real cae en esta regi6n el numero es redondeado al numero de punto flotante mas cercano (Fu - Fu) 0 se infomia del fen6meno
overflow
Se define como range del conjunto F al conjunto
De acuerdo con esto todo numero de punto flotante distinto de cero fl(x) debe satisfacer
3 La combinaci6n aritmetica usual + - x 7- de dos numeros de punto flotante no
siempre produce un numero de punto flotante
Supongamos que fl(x) fl(Y)EF Veamos como ejemplo que la suma usual fl(x)+fl(y) no
necesariamente sera un numero en F Para ello consideremos el conjunto de punto f10tante
F dado en el ejemplo fl(x) = ~ EF fl(Y) = 1~ E F sin embargo
28 5 33fl( x) + fl(Y) = - + - = - ~ F Luego la adici6n usual no es cerrada en el sentido
16 16 16 matematico ordinario
Una manera de simular la adici6n Y las demas operaciones aritmeticas entre numeros rea les pero realizadas por el computador es la siguiente
Si x e Y son numeros reales en el range de F definimos las operaciones 83 8 reg Y 8 a las que nos referiremos como operaciones de punta flotante asi
x EB Y = fl( fl( x) + fl( Y ) )
x 8 Y= fl( fl( x) - fl( Y ) )
x reg Y = fl( fl( x) x fl( Y ) )
x 8 Y = fl( fI( x) fI(Y))
donde + - x Y 7 son las operaciones aritmeticas usuales
8 METOOOS NUMERICOS
Ilustraremos estas operaciones en 81 conjunto F del ejemplo al tiempo que pondremos de manifiesto la carencia de ciertas propiedades para tales operaciones Supondremos que f1(x) se escoge como el numero de punto f10tante mas cercano a x y que cuando el numero x equidista de dos numeros de punto f1otante se escoge flex) como el mas cercano a la derecha si es positiv~ 0 el mas cercano hacia la izquierda si es negativo
middot 28 5 R t ITomemos en F os numeros - y - y supongamos que X y E son a es queI 16 16
28 5f1(x) = - Y f1(Y) = - Entonces
16 16
xG) = f1(28 + ~) = fl( 33) = 32 Y 16 16 16 16
x e y = f( 28 _~) = fl( 23) = 24 1616 16 16
Xampgt y=fl( 28 x~) = fl( 35) = 32 = ~ 16 16 64 64 16
xEEJ y = fl( 28 -- ~) = fl( 28) = 56 (fen6meno overflow) 16 16 5 16
28 56t Overflow ya que - gt - = Fu 5 16
6 6Tomemos - EF Y supongamos que z ER es tal que fl(z) = - entonces
16 16
z e y = fl(~ - ~) =f1( _1 ) = 0 (fen6meno underflow) 16 16 16
1 4t Underflow ya que 0 lt - lt - = FL 16 16
16 7 14 5 10 Como 1 = 16 8 = 16 s = 16 E F entonces existen u v WE R tales que fl(U) = 1
7 5f~V)=S Y f1(W) = s Entonces
luego
Air que
Fi_
X CONTENIDO
39 SOlUCI6N NUMERICA DE SISTEMAS NO-LINEALES 391 Iteraci6n de Punto Fijo para sistemas no-lineales
_ 1392 Metodo de Newton-Raphson para sistemas no-lineales 310 CEROS COMPLEJOS DE POLINOMIOS METODO DE BAIRSTOW TALLER 3
CAPiTULO 4 INTERPOLACI6N POLINOMIAL Y AJUSTE POLINOMIAL
41 INTERPOLACI6N POLINOMIAL 411 Forma de Lagrange del polinomio interpolante 41 2 Forma de Newton del polinomio interpolante
42 INTERPOLACI6N SEGMENTARIA CUBICA 43 AJUSTE DE UN POLINOMIO POR MINIMOS CUADRADOS
431 Regresi6n polinomial 432 Regresi6n exponencial logaritmica y de potencia
TALLER 4
CAPiTULO 5 INTEGRACI6N NUMERICA
51 ALGUNAS F6RMULAS CERRADAS DE NEWTON-COTES 511 Regia de los trapecios
512 Regia de Simpson (~)
513 Regia de simpson () 52 INTEGRACI6N DE ROMBERG 53 METODO DE LOS COEFICIENTES INDETERMINADOS 54 METODO DE CUADRATURA GAUSSIANA TALLER 5
CAPiTULO 6 SOLUCI6N NUMERICA DE PROBLEMAS DE VALOR INICIAL PARA ECUACIONES DIFERENCIALES ORDINARIAS
61 METODO DE EULER 0 DE LA RECTA TANGENTE 62 UN METODO DE EULER MEJORADO 63 METODO DE LOS TRES PRIMEROS TERMINOS DE LA SERlE DE TAYLOR 64 METODO DE RUNGE-KUTTA TALLER 6
BIBLIOGRAFiA
iNDICE
iNDICE DE ALGORITMOS
SiMBOLOS NOTACIONES Y ABREVIATURAS
155 156 162 167 174
183
184 185 197 206 216 217 224 226
231
231 233
237
241
253 259 263 269
273
284 295 299 303 318
323
325
329
331 -
CAPfTULO 1
INTRODucclON
AI momento de menudo con DroIlIIIfIlil cuya soluciOn continuaciOn con para los cualls
IS NO-LINEALES 155 156 162 167 174
183
184 185 197 206 216 217 224 226
231
231 233
237
241
253 259 263 269
273
284 295
R 299 303 318
323
325
329
331 -
I
CAPiTULO 1 ERRORES DE REDONDEO Y ESTABILIDAD
INTRODUCCICN
AI momenta de aplicar las Matematicas a situacjones del mundo real nos encontramos a menudo con problemas que no pueden ser resueltos analiticamente 0 de manera exacta y cuya soluci6n debe ser abordada con ayuda de algun procedimiento numerico A continuaci6n consideramos algunos problemas tipicos ya formulados matematicamente para los cuales estudiaremos tecnicas numericas de soluCi6n
Problema 11 Encontrar el area de la regi6n comprendida entre las graficas de y = 2 sen x xy=e- con XE[O1t] bull
Problema 12 Encontrar las rafces de la ecuaci6n polin6mica
Problema 13 Resolver los siguientes sistemas de ecuaciones
a) EI sistema lineal AX = b con
~ -I 3
-1 2 -1 0 0
2 0 0 0
-2
A= 0 -1 2 -1 0 b= 2
0 0 -1 2 -1 -2
0 0 0 -1 2 1
b) EI sistema no-lineal
x +XY = 9 3x2 y _ y3 =4 bull
Problema 14 Dada la siguiente tabla de datos correspondiente a una cierta funci6n y = f( x)
~ f~) Ilr_=_~__r-~-1__+-_0~~_-~~~__=~__r-=~~ TABLA 11
encontrar el polinomio de menor grado que pase a traves de los puntos dados
Cual sera una estimaci6n para los valores f( x) correspondientes a x = -15 Y x = 15 bull
-Problema 15 Hallar el valor de cada una de las siguientes integrales
2 METODOS NUMERICOS
1
b) Jex2
dx 0
n
2J~ 3
c) ~1-~-4 (ellptica)-dX d) J~Inx x bull o 2
Problema 16 Resolver el problema de valor inicial
d28 d8 -2 + - +16sen8 = 0 dt dt
bull8(0) =~ 8(0) = 0
En reaci6n can los problemas anteriores tenemos que
En el problema 11 es necesario determinar los puntas de intersecci6n de las graficas de
y =2 sen x y y =e-x para 10 cual debemos resolver la ecuaci6n 2 sen x =e-x y no disponemos de un metoda algebraico para hacerlo
En el problema 12 se trata de hallar los ceros de un polinomio de grado 5 y como sabemos s610 se conocen metodos algebraicos para encontrar rarces de ecuaciones polin6micas de grado menor a igual que 4
En el problema 13 tenemos dos sistemas de ecuaciones EI de la parte a) es lineal y conocemos metodos de soluci6n (par ejemplo el metoda de eliminaci6n Gaussiana) sin embargo para sistemas de tamano mayor no s610 es conveniente sino necesario implementar tales metodos a traves del computador (metodo numerico) En la parte b) tenemos un sistema no-lineal y no conocemos metod as algebraicos generales para resolverlo
EI problema 14 se puede resolver anaifticamente (por interpolacion) sin embargo para determinar los coeficientes de dichos polinomios existen tecnicas que permiten encontrarlos rapidamente y que pueden implementarse en el computador
EI problema 15 corresponde a integrales definidas cuyo integrando tiene antiderivada que no es elemental
Finalmente en el problema 16 la ecuaci6n diferencial ordinaria
d2 8 d8 -2 + - + 16sene = 0 (ecuaci6n de movimiento de un pendulo) dt dt
es no-lineal (por la presencia de sen 8) Y no disponemos de un metoda analitico para
resolverla
Los problemas anteriores sirven un primer curso de mtodOi nllnall una variable soluci6n nu interpolaci6n polinomial integrad6n inicial para ecuaciones dihtrlllCil
Un metoda numenco es un manera aproximada la aritmeticos y 16glcos (Ooetl~nM
una tabla de vaores calculO finlta de nstrucciones preas 16gicas (algoritmo) que fVM~_
( olucion num6rica) a bien lit depende en parte de la fICIldId) especiales y limltaclon emplear estos instrumen
5iendo los computadores indicar c6mo son los nUnilllftlul
La mayoria de los conrtpUl_ los nLimeros reales contiene numeros raciloniIlI numeros de punto simplemente conJunto ell
Cada nLimero del conbullbull finita) segun se indlCI
Un numero del matematicamente en
J3 es un entero
(Sistema Blnlrlcl)41
Capitulo 1 ERRORES DE REDONDEO Y ESTABILIDAD 3
Los problemas anteriores sirven como motivaci6n para el estudio de cinco grandes temas en un pri mer curso de metodos numericos soluci6n numerica de una ecuaci6n no-lineal en una variable soluci6n numerica de sistemas de ecuaciones lineales y no-lineales interpolaci6n polinomial integraci6n numerica y soluci6n numerica de problemas de valor inicial para ecuaciones diferenciales ordinarias
Que es un metodo numerico
Un metodo numerico es un procedimiento mediante el cual se obtiene casl slempre de manera aproximada la soluci6n de ciertos problemas realizando calculos puramente aritmeticos y 16gicos (operaciones aritmeticas elementales calculo de funciones consulta de una tabla de valores calculo proposicional etc) Un tal procedimiento consiste de una lista fin ita de instrucciones precisas que especifican una secuencia de operaciones algebraicas y 16gicas (algoritmo) que producen 0 bien una aproximaci6n de la soluci6n del problema (soluci6n numerica) 0 bien un mensaje La eficiencia en el calculo de dicha aproximaci6n depende en parte de la faci lidad de implementaci6n del algori tmo y de las caracteristicas especiales y limitaciones de los instrumentos de calculo (los computadores) En general al emplear estos instrumentos de calculo se introducen errores Ilamados de redondeo
11 ARITMETICA FINITA
Siendo los computadores la herramienta basica en los metodos numericos es conveniente indicar c6mo son los numeros del computador y c6mo se simula su aritmetica
La mayoria de los computadores usan s610 un subconjunto finito relativamente pequeno de los numeros reales para representar a todos los numeros reales este conjunto que s610 contiene numeros racionales y que describiremos mas adelante es lIamado conjunto de numeros de punto flotante 0 conjunto de numeros de maquina en punto flotante 0
simplernente conjunto de punto flotante
Cada numero del computador se representa mediante un numero finito de digi tos (aritmetica fin ita) segun se indica a continuaci6n
Un numero del computador 0 de punto flotante distinto de cero se describe matematicamente en la forma
t f I
forma en la cuallos simbolos que all[ aparecen tienen el siguiente significado
(J =+ 1 0 (J =- 1 es el sig no del numero
~ es un entero que denota la base del sistema numerico usado Por 10 general ~ 2
(Sistema Binario) ~ = 8 (Sistema Octal) 0 ~ = 16 (Sistema Hexadecimal)
ai i = 12 t es un entero con 0 ~ ai ~ ~ - 1 Los enteros 01 0 - 1 son lIamados digitos
en la base ~ Nosotros asumiremos en todo 10 que sigue que a tc 0 en cuyo caso el
numero se dice que esta en forma normalizada
4 METODOS NUMERIC OS
a1 a2 at I f 6 d I ()middot a t ~ denota la suma 1 + 2++ yes IIamada a mantlsa 0 racci n e numero a1a2 p p p de punto flotante
EI entero t indica el numero de dfgitos en la base p que se usan para representar el
numero de punta flotante y es amado precisi6n Por 10 general t =6 0 t =7 con ~ =10
(precisi6n sencilla) t =14 0 t = 15 can ~ =10 (doble precisi6n) En algunos computadores se pueden hacer representaciones en precisi6n sencilla doble precisi6n e incluso en precisi6n mayor
e es un entero lIamado el exponente y es tal que L ~ e ~ U para ciertos enteros L y U es comun encontrar L = - U a L = -U plusmn 1 Un caso frecuente es L = -63 Y U = 64 para un total de 128 posibles exponentes
EI numero cero requiere una representaci6n especial
De acuerdo con 10 anterior un conjunto de punto flotante F queda caracterizado por cuatro parametros
a) La base p b) La precisi6n t c) Los enteros L y U tales que L ~ e ~ U donde e es el exponente
Cualesquiera sean los parametros elegidos los conjuntos de punta flotante correspondientes comparten las mismas caracterlsticas cualitativas entre elias la carencia de algunas de las propiedades algebraicas de que gozan los numeros reales
Una de las caracterfsticas de todo conjunto de punto flotante F es que es finito y tiene
numeros diferentes (incluyendo el cera) y donde los distintos de cero estan en forma normalizada En efecto
puede tomar p- 1 valores y ai i =23 t puede tomar p valores asf que haya1
(p - 1)p P=(p _1)pt-1 fracciones positivas distintas --v--
t-1
Ahora considerando que el numero de posibles exponentes es U - L + 1 que el numero de punta flotante puede ser positiv~ 0 negativ~ y teniendo en cuenta que el numero cero esta tambim en el conjunto de punto flotante concluimos que el conjunto F tiene
numeros diferentes
Capitulo 1 ERRORES DE REDONDEO Y ESTABILIDAD 5
Lo anterior nos dice que se usan 2(~ -1)~t- (U - L + 1) + 1 numeros de punto fiotante para
representar el conjunto continuo de los numeros reales (que es infinito) 10 que impl ica que muchos numeros reales tendrfan que ser representados par un mismo numero de punto flotante
Como ejemplo consideremos el conjunto de punto flotante F con para metros p== 2
(Binario) t == 3 L == -1 U == 2 Tal conjunto F tiene
numeros diferentes (inciuyendo el cero)
Los numeros de F distintos de cero son de la forma
con a = 1 a2 a3 = 0 1 Y e = - 1 0 1 2 asf que las fracciones positivas distintas son
Combinando estas mantisas con los exponentes obtenemos todos los numeros positivos de F que aparecen en la TABLA 12 siguiente
I MANTISA I EXP -1 I EXP 0 I EXP 1 IEXP 2
I 8
(100)2 =shy16
(100) x T=~2 16
(100) x 2deg = ~ 2 16
(100) x 2 = ~ 2 16
(100) x 22 == 32 2 16
(101) =Q2 16
(101)2 x T = ~ 16
(101) x 2deg = Q 2 16
(101) x 2 = 20 2 16
(101)2 22 == 40 16
(110) = ~ 2 16
(110) xT =~ 2 16
(110) x 2deg ==~ 2 16
(110) 2 x 2= 24 16
( ) 2 48 1 10 x 2 =shy2 16
(111) = i2 16
(111) x T = ~ 2 16
(111) x 2deg = i2 16
(111) x 2 = 28 2 16
(1 11) x 22 = 56 2 16
TABLA 12
6 METOOOS NUMERICOS
Como estamos mas familiarizados con los numeros decimales (en base p= 10) los 33 elementos de F en forma (racional) decimal son
16 20 24 28 32 40 48 56 +- plusmn- plusmn- plusmn - +- +- +- +shy-16 16 16 16 -16 -16 -16 -16
Una representaci6n de los numeros positiv~s y el cero de F en la recta real se muestra en la FIGURA 11 siguiente
o )( flex) Iii
56
~T 16 20 32 b
40 48 ~R
-TS 16 16 16 16 16 I regIon de under1low region de overflow
(subfJujo) (sobreflujo)
FIGURA 11
Algunos hechos que se pueden observar en un conjunto de punta flotante F son
1 Todo numero real x que entra en el computador 0 que es el resultado de un calculo es reemplazado (si es posible) por un numero de punto flotante que notaremos fl(x) Existen reg las para escoger tal numero (reglas de redondeo) por 10 general es el numero de punto
flotante mas cercano a x La diferencia Ix - f1( x) I se llama error (absoluto) de redondeo
2 Si observamos la distribuci6n de los elementos de F en la recta real vemos que no estan igualmente espaciados (eslan mas densamente distribuldos ella cercanla del cero) 10 que implica que el error de redondeo puede depender del tamaro del numero (entre mas grande sea el numero en valor absoluto mayor puede ser el error de redondeo)
En el ejemplo el numero de punto f10tante positiv~ mas pequero es ~ = y el numero de 16 4
punto flotante positiv~ mas grande es 56 = ~ 16 2
En general en un conjunto de punto flotante F con param~tros p t L Y U se tiene que
es el numero de punta f10tante positiv~ mas pequero (para el ejemplo FL = 2-1-1 = plusmn) y
con y = P-1
Capitulo 1 ERRORES DE REDONDEO Y ESTABILIDAD 7
es el numero de punto flotantepositivo mas grande (para el ejemplo Fu =(1- 2-3 )22 = ) 2
A la regi6n RL = X ER 0 lt IxIlt FL se Ie llama region de underflow 0 subflujo y en
algunos computadores si un numero real cae en esta region el numero es redondeado a cero
Por otra parte a la regi6n Ru = X ER Ixl gt Fu se Ie llama region de overflow 0
sobreflujo y en algunos computadores si un numero real cae en esta regi6n el numero es redondeado al numero de punto flotante mas cercano (Fu - Fu) 0 se infomia del fen6meno
overflow
Se define como range del conjunto F al conjunto
De acuerdo con esto todo numero de punto flotante distinto de cero fl(x) debe satisfacer
3 La combinaci6n aritmetica usual + - x 7- de dos numeros de punto flotante no
siempre produce un numero de punto flotante
Supongamos que fl(x) fl(Y)EF Veamos como ejemplo que la suma usual fl(x)+fl(y) no
necesariamente sera un numero en F Para ello consideremos el conjunto de punto f10tante
F dado en el ejemplo fl(x) = ~ EF fl(Y) = 1~ E F sin embargo
28 5 33fl( x) + fl(Y) = - + - = - ~ F Luego la adici6n usual no es cerrada en el sentido
16 16 16 matematico ordinario
Una manera de simular la adici6n Y las demas operaciones aritmeticas entre numeros rea les pero realizadas por el computador es la siguiente
Si x e Y son numeros reales en el range de F definimos las operaciones 83 8 reg Y 8 a las que nos referiremos como operaciones de punta flotante asi
x EB Y = fl( fl( x) + fl( Y ) )
x 8 Y= fl( fl( x) - fl( Y ) )
x reg Y = fl( fl( x) x fl( Y ) )
x 8 Y = fl( fI( x) fI(Y))
donde + - x Y 7 son las operaciones aritmeticas usuales
8 METOOOS NUMERICOS
Ilustraremos estas operaciones en 81 conjunto F del ejemplo al tiempo que pondremos de manifiesto la carencia de ciertas propiedades para tales operaciones Supondremos que f1(x) se escoge como el numero de punto f10tante mas cercano a x y que cuando el numero x equidista de dos numeros de punto f1otante se escoge flex) como el mas cercano a la derecha si es positiv~ 0 el mas cercano hacia la izquierda si es negativo
middot 28 5 R t ITomemos en F os numeros - y - y supongamos que X y E son a es queI 16 16
28 5f1(x) = - Y f1(Y) = - Entonces
16 16
xG) = f1(28 + ~) = fl( 33) = 32 Y 16 16 16 16
x e y = f( 28 _~) = fl( 23) = 24 1616 16 16
Xampgt y=fl( 28 x~) = fl( 35) = 32 = ~ 16 16 64 64 16
xEEJ y = fl( 28 -- ~) = fl( 28) = 56 (fen6meno overflow) 16 16 5 16
28 56t Overflow ya que - gt - = Fu 5 16
6 6Tomemos - EF Y supongamos que z ER es tal que fl(z) = - entonces
16 16
z e y = fl(~ - ~) =f1( _1 ) = 0 (fen6meno underflow) 16 16 16
1 4t Underflow ya que 0 lt - lt - = FL 16 16
16 7 14 5 10 Como 1 = 16 8 = 16 s = 16 E F entonces existen u v WE R tales que fl(U) = 1
7 5f~V)=S Y f1(W) = s Entonces
luego
Air que
Fi_
IS NO-LINEALES 155 156 162 167 174
183
184 185 197 206 216 217 224 226
231
231 233
237
241
253 259 263 269
273
284 295
R 299 303 318
323
325
329
331 -
I
CAPiTULO 1 ERRORES DE REDONDEO Y ESTABILIDAD
INTRODUCCICN
AI momenta de aplicar las Matematicas a situacjones del mundo real nos encontramos a menudo con problemas que no pueden ser resueltos analiticamente 0 de manera exacta y cuya soluci6n debe ser abordada con ayuda de algun procedimiento numerico A continuaci6n consideramos algunos problemas tipicos ya formulados matematicamente para los cuales estudiaremos tecnicas numericas de soluCi6n
Problema 11 Encontrar el area de la regi6n comprendida entre las graficas de y = 2 sen x xy=e- con XE[O1t] bull
Problema 12 Encontrar las rafces de la ecuaci6n polin6mica
Problema 13 Resolver los siguientes sistemas de ecuaciones
a) EI sistema lineal AX = b con
~ -I 3
-1 2 -1 0 0
2 0 0 0
-2
A= 0 -1 2 -1 0 b= 2
0 0 -1 2 -1 -2
0 0 0 -1 2 1
b) EI sistema no-lineal
x +XY = 9 3x2 y _ y3 =4 bull
Problema 14 Dada la siguiente tabla de datos correspondiente a una cierta funci6n y = f( x)
~ f~) Ilr_=_~__r-~-1__+-_0~~_-~~~__=~__r-=~~ TABLA 11
encontrar el polinomio de menor grado que pase a traves de los puntos dados
Cual sera una estimaci6n para los valores f( x) correspondientes a x = -15 Y x = 15 bull
-Problema 15 Hallar el valor de cada una de las siguientes integrales
2 METODOS NUMERICOS
1
b) Jex2
dx 0
n
2J~ 3
c) ~1-~-4 (ellptica)-dX d) J~Inx x bull o 2
Problema 16 Resolver el problema de valor inicial
d28 d8 -2 + - +16sen8 = 0 dt dt
bull8(0) =~ 8(0) = 0
En reaci6n can los problemas anteriores tenemos que
En el problema 11 es necesario determinar los puntas de intersecci6n de las graficas de
y =2 sen x y y =e-x para 10 cual debemos resolver la ecuaci6n 2 sen x =e-x y no disponemos de un metoda algebraico para hacerlo
En el problema 12 se trata de hallar los ceros de un polinomio de grado 5 y como sabemos s610 se conocen metodos algebraicos para encontrar rarces de ecuaciones polin6micas de grado menor a igual que 4
En el problema 13 tenemos dos sistemas de ecuaciones EI de la parte a) es lineal y conocemos metodos de soluci6n (par ejemplo el metoda de eliminaci6n Gaussiana) sin embargo para sistemas de tamano mayor no s610 es conveniente sino necesario implementar tales metodos a traves del computador (metodo numerico) En la parte b) tenemos un sistema no-lineal y no conocemos metod as algebraicos generales para resolverlo
EI problema 14 se puede resolver anaifticamente (por interpolacion) sin embargo para determinar los coeficientes de dichos polinomios existen tecnicas que permiten encontrarlos rapidamente y que pueden implementarse en el computador
EI problema 15 corresponde a integrales definidas cuyo integrando tiene antiderivada que no es elemental
Finalmente en el problema 16 la ecuaci6n diferencial ordinaria
d2 8 d8 -2 + - + 16sene = 0 (ecuaci6n de movimiento de un pendulo) dt dt
es no-lineal (por la presencia de sen 8) Y no disponemos de un metoda analitico para
resolverla
Los problemas anteriores sirven un primer curso de mtodOi nllnall una variable soluci6n nu interpolaci6n polinomial integrad6n inicial para ecuaciones dihtrlllCil
Un metoda numenco es un manera aproximada la aritmeticos y 16glcos (Ooetl~nM
una tabla de vaores calculO finlta de nstrucciones preas 16gicas (algoritmo) que fVM~_
( olucion num6rica) a bien lit depende en parte de la fICIldId) especiales y limltaclon emplear estos instrumen
5iendo los computadores indicar c6mo son los nUnilllftlul
La mayoria de los conrtpUl_ los nLimeros reales contiene numeros raciloniIlI numeros de punto simplemente conJunto ell
Cada nLimero del conbullbull finita) segun se indlCI
Un numero del matematicamente en
J3 es un entero
(Sistema Blnlrlcl)41
Capitulo 1 ERRORES DE REDONDEO Y ESTABILIDAD 3
Los problemas anteriores sirven como motivaci6n para el estudio de cinco grandes temas en un pri mer curso de metodos numericos soluci6n numerica de una ecuaci6n no-lineal en una variable soluci6n numerica de sistemas de ecuaciones lineales y no-lineales interpolaci6n polinomial integraci6n numerica y soluci6n numerica de problemas de valor inicial para ecuaciones diferenciales ordinarias
Que es un metodo numerico
Un metodo numerico es un procedimiento mediante el cual se obtiene casl slempre de manera aproximada la soluci6n de ciertos problemas realizando calculos puramente aritmeticos y 16gicos (operaciones aritmeticas elementales calculo de funciones consulta de una tabla de valores calculo proposicional etc) Un tal procedimiento consiste de una lista fin ita de instrucciones precisas que especifican una secuencia de operaciones algebraicas y 16gicas (algoritmo) que producen 0 bien una aproximaci6n de la soluci6n del problema (soluci6n numerica) 0 bien un mensaje La eficiencia en el calculo de dicha aproximaci6n depende en parte de la faci lidad de implementaci6n del algori tmo y de las caracteristicas especiales y limitaciones de los instrumentos de calculo (los computadores) En general al emplear estos instrumentos de calculo se introducen errores Ilamados de redondeo
11 ARITMETICA FINITA
Siendo los computadores la herramienta basica en los metodos numericos es conveniente indicar c6mo son los numeros del computador y c6mo se simula su aritmetica
La mayoria de los computadores usan s610 un subconjunto finito relativamente pequeno de los numeros reales para representar a todos los numeros reales este conjunto que s610 contiene numeros racionales y que describiremos mas adelante es lIamado conjunto de numeros de punto flotante 0 conjunto de numeros de maquina en punto flotante 0
simplernente conjunto de punto flotante
Cada numero del computador se representa mediante un numero finito de digi tos (aritmetica fin ita) segun se indica a continuaci6n
Un numero del computador 0 de punto flotante distinto de cero se describe matematicamente en la forma
t f I
forma en la cuallos simbolos que all[ aparecen tienen el siguiente significado
(J =+ 1 0 (J =- 1 es el sig no del numero
~ es un entero que denota la base del sistema numerico usado Por 10 general ~ 2
(Sistema Binario) ~ = 8 (Sistema Octal) 0 ~ = 16 (Sistema Hexadecimal)
ai i = 12 t es un entero con 0 ~ ai ~ ~ - 1 Los enteros 01 0 - 1 son lIamados digitos
en la base ~ Nosotros asumiremos en todo 10 que sigue que a tc 0 en cuyo caso el
numero se dice que esta en forma normalizada
4 METODOS NUMERIC OS
a1 a2 at I f 6 d I ()middot a t ~ denota la suma 1 + 2++ yes IIamada a mantlsa 0 racci n e numero a1a2 p p p de punto flotante
EI entero t indica el numero de dfgitos en la base p que se usan para representar el
numero de punta flotante y es amado precisi6n Por 10 general t =6 0 t =7 con ~ =10
(precisi6n sencilla) t =14 0 t = 15 can ~ =10 (doble precisi6n) En algunos computadores se pueden hacer representaciones en precisi6n sencilla doble precisi6n e incluso en precisi6n mayor
e es un entero lIamado el exponente y es tal que L ~ e ~ U para ciertos enteros L y U es comun encontrar L = - U a L = -U plusmn 1 Un caso frecuente es L = -63 Y U = 64 para un total de 128 posibles exponentes
EI numero cero requiere una representaci6n especial
De acuerdo con 10 anterior un conjunto de punto flotante F queda caracterizado por cuatro parametros
a) La base p b) La precisi6n t c) Los enteros L y U tales que L ~ e ~ U donde e es el exponente
Cualesquiera sean los parametros elegidos los conjuntos de punta flotante correspondientes comparten las mismas caracterlsticas cualitativas entre elias la carencia de algunas de las propiedades algebraicas de que gozan los numeros reales
Una de las caracterfsticas de todo conjunto de punto flotante F es que es finito y tiene
numeros diferentes (incluyendo el cera) y donde los distintos de cero estan en forma normalizada En efecto
puede tomar p- 1 valores y ai i =23 t puede tomar p valores asf que haya1
(p - 1)p P=(p _1)pt-1 fracciones positivas distintas --v--
t-1
Ahora considerando que el numero de posibles exponentes es U - L + 1 que el numero de punta flotante puede ser positiv~ 0 negativ~ y teniendo en cuenta que el numero cero esta tambim en el conjunto de punto flotante concluimos que el conjunto F tiene
numeros diferentes
Capitulo 1 ERRORES DE REDONDEO Y ESTABILIDAD 5
Lo anterior nos dice que se usan 2(~ -1)~t- (U - L + 1) + 1 numeros de punto fiotante para
representar el conjunto continuo de los numeros reales (que es infinito) 10 que impl ica que muchos numeros reales tendrfan que ser representados par un mismo numero de punto flotante
Como ejemplo consideremos el conjunto de punto flotante F con para metros p== 2
(Binario) t == 3 L == -1 U == 2 Tal conjunto F tiene
numeros diferentes (inciuyendo el cero)
Los numeros de F distintos de cero son de la forma
con a = 1 a2 a3 = 0 1 Y e = - 1 0 1 2 asf que las fracciones positivas distintas son
Combinando estas mantisas con los exponentes obtenemos todos los numeros positivos de F que aparecen en la TABLA 12 siguiente
I MANTISA I EXP -1 I EXP 0 I EXP 1 IEXP 2
I 8
(100)2 =shy16
(100) x T=~2 16
(100) x 2deg = ~ 2 16
(100) x 2 = ~ 2 16
(100) x 22 == 32 2 16
(101) =Q2 16
(101)2 x T = ~ 16
(101) x 2deg = Q 2 16
(101) x 2 = 20 2 16
(101)2 22 == 40 16
(110) = ~ 2 16
(110) xT =~ 2 16
(110) x 2deg ==~ 2 16
(110) 2 x 2= 24 16
( ) 2 48 1 10 x 2 =shy2 16
(111) = i2 16
(111) x T = ~ 2 16
(111) x 2deg = i2 16
(111) x 2 = 28 2 16
(1 11) x 22 = 56 2 16
TABLA 12
6 METOOOS NUMERICOS
Como estamos mas familiarizados con los numeros decimales (en base p= 10) los 33 elementos de F en forma (racional) decimal son
16 20 24 28 32 40 48 56 +- plusmn- plusmn- plusmn - +- +- +- +shy-16 16 16 16 -16 -16 -16 -16
Una representaci6n de los numeros positiv~s y el cero de F en la recta real se muestra en la FIGURA 11 siguiente
o )( flex) Iii
56
~T 16 20 32 b
40 48 ~R
-TS 16 16 16 16 16 I regIon de under1low region de overflow
(subfJujo) (sobreflujo)
FIGURA 11
Algunos hechos que se pueden observar en un conjunto de punta flotante F son
1 Todo numero real x que entra en el computador 0 que es el resultado de un calculo es reemplazado (si es posible) por un numero de punto flotante que notaremos fl(x) Existen reg las para escoger tal numero (reglas de redondeo) por 10 general es el numero de punto
flotante mas cercano a x La diferencia Ix - f1( x) I se llama error (absoluto) de redondeo
2 Si observamos la distribuci6n de los elementos de F en la recta real vemos que no estan igualmente espaciados (eslan mas densamente distribuldos ella cercanla del cero) 10 que implica que el error de redondeo puede depender del tamaro del numero (entre mas grande sea el numero en valor absoluto mayor puede ser el error de redondeo)
En el ejemplo el numero de punto f10tante positiv~ mas pequero es ~ = y el numero de 16 4
punto flotante positiv~ mas grande es 56 = ~ 16 2
En general en un conjunto de punto flotante F con param~tros p t L Y U se tiene que
es el numero de punta f10tante positiv~ mas pequero (para el ejemplo FL = 2-1-1 = plusmn) y
con y = P-1
Capitulo 1 ERRORES DE REDONDEO Y ESTABILIDAD 7
es el numero de punto flotantepositivo mas grande (para el ejemplo Fu =(1- 2-3 )22 = ) 2
A la regi6n RL = X ER 0 lt IxIlt FL se Ie llama region de underflow 0 subflujo y en
algunos computadores si un numero real cae en esta region el numero es redondeado a cero
Por otra parte a la regi6n Ru = X ER Ixl gt Fu se Ie llama region de overflow 0
sobreflujo y en algunos computadores si un numero real cae en esta regi6n el numero es redondeado al numero de punto flotante mas cercano (Fu - Fu) 0 se infomia del fen6meno
overflow
Se define como range del conjunto F al conjunto
De acuerdo con esto todo numero de punto flotante distinto de cero fl(x) debe satisfacer
3 La combinaci6n aritmetica usual + - x 7- de dos numeros de punto flotante no
siempre produce un numero de punto flotante
Supongamos que fl(x) fl(Y)EF Veamos como ejemplo que la suma usual fl(x)+fl(y) no
necesariamente sera un numero en F Para ello consideremos el conjunto de punto f10tante
F dado en el ejemplo fl(x) = ~ EF fl(Y) = 1~ E F sin embargo
28 5 33fl( x) + fl(Y) = - + - = - ~ F Luego la adici6n usual no es cerrada en el sentido
16 16 16 matematico ordinario
Una manera de simular la adici6n Y las demas operaciones aritmeticas entre numeros rea les pero realizadas por el computador es la siguiente
Si x e Y son numeros reales en el range de F definimos las operaciones 83 8 reg Y 8 a las que nos referiremos como operaciones de punta flotante asi
x EB Y = fl( fl( x) + fl( Y ) )
x 8 Y= fl( fl( x) - fl( Y ) )
x reg Y = fl( fl( x) x fl( Y ) )
x 8 Y = fl( fI( x) fI(Y))
donde + - x Y 7 son las operaciones aritmeticas usuales
8 METOOOS NUMERICOS
Ilustraremos estas operaciones en 81 conjunto F del ejemplo al tiempo que pondremos de manifiesto la carencia de ciertas propiedades para tales operaciones Supondremos que f1(x) se escoge como el numero de punto f10tante mas cercano a x y que cuando el numero x equidista de dos numeros de punto f1otante se escoge flex) como el mas cercano a la derecha si es positiv~ 0 el mas cercano hacia la izquierda si es negativo
middot 28 5 R t ITomemos en F os numeros - y - y supongamos que X y E son a es queI 16 16
28 5f1(x) = - Y f1(Y) = - Entonces
16 16
xG) = f1(28 + ~) = fl( 33) = 32 Y 16 16 16 16
x e y = f( 28 _~) = fl( 23) = 24 1616 16 16
Xampgt y=fl( 28 x~) = fl( 35) = 32 = ~ 16 16 64 64 16
xEEJ y = fl( 28 -- ~) = fl( 28) = 56 (fen6meno overflow) 16 16 5 16
28 56t Overflow ya que - gt - = Fu 5 16
6 6Tomemos - EF Y supongamos que z ER es tal que fl(z) = - entonces
16 16
z e y = fl(~ - ~) =f1( _1 ) = 0 (fen6meno underflow) 16 16 16
1 4t Underflow ya que 0 lt - lt - = FL 16 16
16 7 14 5 10 Como 1 = 16 8 = 16 s = 16 E F entonces existen u v WE R tales que fl(U) = 1
7 5f~V)=S Y f1(W) = s Entonces
luego
Air que
Fi_
2 METODOS NUMERICOS
1
b) Jex2
dx 0
n
2J~ 3
c) ~1-~-4 (ellptica)-dX d) J~Inx x bull o 2
Problema 16 Resolver el problema de valor inicial
d28 d8 -2 + - +16sen8 = 0 dt dt
bull8(0) =~ 8(0) = 0
En reaci6n can los problemas anteriores tenemos que
En el problema 11 es necesario determinar los puntas de intersecci6n de las graficas de
y =2 sen x y y =e-x para 10 cual debemos resolver la ecuaci6n 2 sen x =e-x y no disponemos de un metoda algebraico para hacerlo
En el problema 12 se trata de hallar los ceros de un polinomio de grado 5 y como sabemos s610 se conocen metodos algebraicos para encontrar rarces de ecuaciones polin6micas de grado menor a igual que 4
En el problema 13 tenemos dos sistemas de ecuaciones EI de la parte a) es lineal y conocemos metodos de soluci6n (par ejemplo el metoda de eliminaci6n Gaussiana) sin embargo para sistemas de tamano mayor no s610 es conveniente sino necesario implementar tales metodos a traves del computador (metodo numerico) En la parte b) tenemos un sistema no-lineal y no conocemos metod as algebraicos generales para resolverlo
EI problema 14 se puede resolver anaifticamente (por interpolacion) sin embargo para determinar los coeficientes de dichos polinomios existen tecnicas que permiten encontrarlos rapidamente y que pueden implementarse en el computador
EI problema 15 corresponde a integrales definidas cuyo integrando tiene antiderivada que no es elemental
Finalmente en el problema 16 la ecuaci6n diferencial ordinaria
d2 8 d8 -2 + - + 16sene = 0 (ecuaci6n de movimiento de un pendulo) dt dt
es no-lineal (por la presencia de sen 8) Y no disponemos de un metoda analitico para
resolverla
Los problemas anteriores sirven un primer curso de mtodOi nllnall una variable soluci6n nu interpolaci6n polinomial integrad6n inicial para ecuaciones dihtrlllCil
Un metoda numenco es un manera aproximada la aritmeticos y 16glcos (Ooetl~nM
una tabla de vaores calculO finlta de nstrucciones preas 16gicas (algoritmo) que fVM~_
( olucion num6rica) a bien lit depende en parte de la fICIldId) especiales y limltaclon emplear estos instrumen
5iendo los computadores indicar c6mo son los nUnilllftlul
La mayoria de los conrtpUl_ los nLimeros reales contiene numeros raciloniIlI numeros de punto simplemente conJunto ell
Cada nLimero del conbullbull finita) segun se indlCI
Un numero del matematicamente en
J3 es un entero
(Sistema Blnlrlcl)41
Capitulo 1 ERRORES DE REDONDEO Y ESTABILIDAD 3
Los problemas anteriores sirven como motivaci6n para el estudio de cinco grandes temas en un pri mer curso de metodos numericos soluci6n numerica de una ecuaci6n no-lineal en una variable soluci6n numerica de sistemas de ecuaciones lineales y no-lineales interpolaci6n polinomial integraci6n numerica y soluci6n numerica de problemas de valor inicial para ecuaciones diferenciales ordinarias
Que es un metodo numerico
Un metodo numerico es un procedimiento mediante el cual se obtiene casl slempre de manera aproximada la soluci6n de ciertos problemas realizando calculos puramente aritmeticos y 16gicos (operaciones aritmeticas elementales calculo de funciones consulta de una tabla de valores calculo proposicional etc) Un tal procedimiento consiste de una lista fin ita de instrucciones precisas que especifican una secuencia de operaciones algebraicas y 16gicas (algoritmo) que producen 0 bien una aproximaci6n de la soluci6n del problema (soluci6n numerica) 0 bien un mensaje La eficiencia en el calculo de dicha aproximaci6n depende en parte de la faci lidad de implementaci6n del algori tmo y de las caracteristicas especiales y limitaciones de los instrumentos de calculo (los computadores) En general al emplear estos instrumentos de calculo se introducen errores Ilamados de redondeo
11 ARITMETICA FINITA
Siendo los computadores la herramienta basica en los metodos numericos es conveniente indicar c6mo son los numeros del computador y c6mo se simula su aritmetica
La mayoria de los computadores usan s610 un subconjunto finito relativamente pequeno de los numeros reales para representar a todos los numeros reales este conjunto que s610 contiene numeros racionales y que describiremos mas adelante es lIamado conjunto de numeros de punto flotante 0 conjunto de numeros de maquina en punto flotante 0
simplernente conjunto de punto flotante
Cada numero del computador se representa mediante un numero finito de digi tos (aritmetica fin ita) segun se indica a continuaci6n
Un numero del computador 0 de punto flotante distinto de cero se describe matematicamente en la forma
t f I
forma en la cuallos simbolos que all[ aparecen tienen el siguiente significado
(J =+ 1 0 (J =- 1 es el sig no del numero
~ es un entero que denota la base del sistema numerico usado Por 10 general ~ 2
(Sistema Binario) ~ = 8 (Sistema Octal) 0 ~ = 16 (Sistema Hexadecimal)
ai i = 12 t es un entero con 0 ~ ai ~ ~ - 1 Los enteros 01 0 - 1 son lIamados digitos
en la base ~ Nosotros asumiremos en todo 10 que sigue que a tc 0 en cuyo caso el
numero se dice que esta en forma normalizada
4 METODOS NUMERIC OS
a1 a2 at I f 6 d I ()middot a t ~ denota la suma 1 + 2++ yes IIamada a mantlsa 0 racci n e numero a1a2 p p p de punto flotante
EI entero t indica el numero de dfgitos en la base p que se usan para representar el
numero de punta flotante y es amado precisi6n Por 10 general t =6 0 t =7 con ~ =10
(precisi6n sencilla) t =14 0 t = 15 can ~ =10 (doble precisi6n) En algunos computadores se pueden hacer representaciones en precisi6n sencilla doble precisi6n e incluso en precisi6n mayor
e es un entero lIamado el exponente y es tal que L ~ e ~ U para ciertos enteros L y U es comun encontrar L = - U a L = -U plusmn 1 Un caso frecuente es L = -63 Y U = 64 para un total de 128 posibles exponentes
EI numero cero requiere una representaci6n especial
De acuerdo con 10 anterior un conjunto de punto flotante F queda caracterizado por cuatro parametros
a) La base p b) La precisi6n t c) Los enteros L y U tales que L ~ e ~ U donde e es el exponente
Cualesquiera sean los parametros elegidos los conjuntos de punta flotante correspondientes comparten las mismas caracterlsticas cualitativas entre elias la carencia de algunas de las propiedades algebraicas de que gozan los numeros reales
Una de las caracterfsticas de todo conjunto de punto flotante F es que es finito y tiene
numeros diferentes (incluyendo el cera) y donde los distintos de cero estan en forma normalizada En efecto
puede tomar p- 1 valores y ai i =23 t puede tomar p valores asf que haya1
(p - 1)p P=(p _1)pt-1 fracciones positivas distintas --v--
t-1
Ahora considerando que el numero de posibles exponentes es U - L + 1 que el numero de punta flotante puede ser positiv~ 0 negativ~ y teniendo en cuenta que el numero cero esta tambim en el conjunto de punto flotante concluimos que el conjunto F tiene
numeros diferentes
Capitulo 1 ERRORES DE REDONDEO Y ESTABILIDAD 5
Lo anterior nos dice que se usan 2(~ -1)~t- (U - L + 1) + 1 numeros de punto fiotante para
representar el conjunto continuo de los numeros reales (que es infinito) 10 que impl ica que muchos numeros reales tendrfan que ser representados par un mismo numero de punto flotante
Como ejemplo consideremos el conjunto de punto flotante F con para metros p== 2
(Binario) t == 3 L == -1 U == 2 Tal conjunto F tiene
numeros diferentes (inciuyendo el cero)
Los numeros de F distintos de cero son de la forma
con a = 1 a2 a3 = 0 1 Y e = - 1 0 1 2 asf que las fracciones positivas distintas son
Combinando estas mantisas con los exponentes obtenemos todos los numeros positivos de F que aparecen en la TABLA 12 siguiente
I MANTISA I EXP -1 I EXP 0 I EXP 1 IEXP 2
I 8
(100)2 =shy16
(100) x T=~2 16
(100) x 2deg = ~ 2 16
(100) x 2 = ~ 2 16
(100) x 22 == 32 2 16
(101) =Q2 16
(101)2 x T = ~ 16
(101) x 2deg = Q 2 16
(101) x 2 = 20 2 16
(101)2 22 == 40 16
(110) = ~ 2 16
(110) xT =~ 2 16
(110) x 2deg ==~ 2 16
(110) 2 x 2= 24 16
( ) 2 48 1 10 x 2 =shy2 16
(111) = i2 16
(111) x T = ~ 2 16
(111) x 2deg = i2 16
(111) x 2 = 28 2 16
(1 11) x 22 = 56 2 16
TABLA 12
6 METOOOS NUMERICOS
Como estamos mas familiarizados con los numeros decimales (en base p= 10) los 33 elementos de F en forma (racional) decimal son
16 20 24 28 32 40 48 56 +- plusmn- plusmn- plusmn - +- +- +- +shy-16 16 16 16 -16 -16 -16 -16
Una representaci6n de los numeros positiv~s y el cero de F en la recta real se muestra en la FIGURA 11 siguiente
o )( flex) Iii
56
~T 16 20 32 b
40 48 ~R
-TS 16 16 16 16 16 I regIon de under1low region de overflow
(subfJujo) (sobreflujo)
FIGURA 11
Algunos hechos que se pueden observar en un conjunto de punta flotante F son
1 Todo numero real x que entra en el computador 0 que es el resultado de un calculo es reemplazado (si es posible) por un numero de punto flotante que notaremos fl(x) Existen reg las para escoger tal numero (reglas de redondeo) por 10 general es el numero de punto
flotante mas cercano a x La diferencia Ix - f1( x) I se llama error (absoluto) de redondeo
2 Si observamos la distribuci6n de los elementos de F en la recta real vemos que no estan igualmente espaciados (eslan mas densamente distribuldos ella cercanla del cero) 10 que implica que el error de redondeo puede depender del tamaro del numero (entre mas grande sea el numero en valor absoluto mayor puede ser el error de redondeo)
En el ejemplo el numero de punto f10tante positiv~ mas pequero es ~ = y el numero de 16 4
punto flotante positiv~ mas grande es 56 = ~ 16 2
En general en un conjunto de punto flotante F con param~tros p t L Y U se tiene que
es el numero de punta f10tante positiv~ mas pequero (para el ejemplo FL = 2-1-1 = plusmn) y
con y = P-1
Capitulo 1 ERRORES DE REDONDEO Y ESTABILIDAD 7
es el numero de punto flotantepositivo mas grande (para el ejemplo Fu =(1- 2-3 )22 = ) 2
A la regi6n RL = X ER 0 lt IxIlt FL se Ie llama region de underflow 0 subflujo y en
algunos computadores si un numero real cae en esta region el numero es redondeado a cero
Por otra parte a la regi6n Ru = X ER Ixl gt Fu se Ie llama region de overflow 0
sobreflujo y en algunos computadores si un numero real cae en esta regi6n el numero es redondeado al numero de punto flotante mas cercano (Fu - Fu) 0 se infomia del fen6meno
overflow
Se define como range del conjunto F al conjunto
De acuerdo con esto todo numero de punto flotante distinto de cero fl(x) debe satisfacer
3 La combinaci6n aritmetica usual + - x 7- de dos numeros de punto flotante no
siempre produce un numero de punto flotante
Supongamos que fl(x) fl(Y)EF Veamos como ejemplo que la suma usual fl(x)+fl(y) no
necesariamente sera un numero en F Para ello consideremos el conjunto de punto f10tante
F dado en el ejemplo fl(x) = ~ EF fl(Y) = 1~ E F sin embargo
28 5 33fl( x) + fl(Y) = - + - = - ~ F Luego la adici6n usual no es cerrada en el sentido
16 16 16 matematico ordinario
Una manera de simular la adici6n Y las demas operaciones aritmeticas entre numeros rea les pero realizadas por el computador es la siguiente
Si x e Y son numeros reales en el range de F definimos las operaciones 83 8 reg Y 8 a las que nos referiremos como operaciones de punta flotante asi
x EB Y = fl( fl( x) + fl( Y ) )
x 8 Y= fl( fl( x) - fl( Y ) )
x reg Y = fl( fl( x) x fl( Y ) )
x 8 Y = fl( fI( x) fI(Y))
donde + - x Y 7 son las operaciones aritmeticas usuales
8 METOOOS NUMERICOS
Ilustraremos estas operaciones en 81 conjunto F del ejemplo al tiempo que pondremos de manifiesto la carencia de ciertas propiedades para tales operaciones Supondremos que f1(x) se escoge como el numero de punto f10tante mas cercano a x y que cuando el numero x equidista de dos numeros de punto f1otante se escoge flex) como el mas cercano a la derecha si es positiv~ 0 el mas cercano hacia la izquierda si es negativo
middot 28 5 R t ITomemos en F os numeros - y - y supongamos que X y E son a es queI 16 16
28 5f1(x) = - Y f1(Y) = - Entonces
16 16
xG) = f1(28 + ~) = fl( 33) = 32 Y 16 16 16 16
x e y = f( 28 _~) = fl( 23) = 24 1616 16 16
Xampgt y=fl( 28 x~) = fl( 35) = 32 = ~ 16 16 64 64 16
xEEJ y = fl( 28 -- ~) = fl( 28) = 56 (fen6meno overflow) 16 16 5 16
28 56t Overflow ya que - gt - = Fu 5 16
6 6Tomemos - EF Y supongamos que z ER es tal que fl(z) = - entonces
16 16
z e y = fl(~ - ~) =f1( _1 ) = 0 (fen6meno underflow) 16 16 16
1 4t Underflow ya que 0 lt - lt - = FL 16 16
16 7 14 5 10 Como 1 = 16 8 = 16 s = 16 E F entonces existen u v WE R tales que fl(U) = 1
7 5f~V)=S Y f1(W) = s Entonces
luego
Air que
Fi_
Capitulo 1 ERRORES DE REDONDEO Y ESTABILIDAD 3
Los problemas anteriores sirven como motivaci6n para el estudio de cinco grandes temas en un pri mer curso de metodos numericos soluci6n numerica de una ecuaci6n no-lineal en una variable soluci6n numerica de sistemas de ecuaciones lineales y no-lineales interpolaci6n polinomial integraci6n numerica y soluci6n numerica de problemas de valor inicial para ecuaciones diferenciales ordinarias
Que es un metodo numerico
Un metodo numerico es un procedimiento mediante el cual se obtiene casl slempre de manera aproximada la soluci6n de ciertos problemas realizando calculos puramente aritmeticos y 16gicos (operaciones aritmeticas elementales calculo de funciones consulta de una tabla de valores calculo proposicional etc) Un tal procedimiento consiste de una lista fin ita de instrucciones precisas que especifican una secuencia de operaciones algebraicas y 16gicas (algoritmo) que producen 0 bien una aproximaci6n de la soluci6n del problema (soluci6n numerica) 0 bien un mensaje La eficiencia en el calculo de dicha aproximaci6n depende en parte de la faci lidad de implementaci6n del algori tmo y de las caracteristicas especiales y limitaciones de los instrumentos de calculo (los computadores) En general al emplear estos instrumentos de calculo se introducen errores Ilamados de redondeo
11 ARITMETICA FINITA
Siendo los computadores la herramienta basica en los metodos numericos es conveniente indicar c6mo son los numeros del computador y c6mo se simula su aritmetica
La mayoria de los computadores usan s610 un subconjunto finito relativamente pequeno de los numeros reales para representar a todos los numeros reales este conjunto que s610 contiene numeros racionales y que describiremos mas adelante es lIamado conjunto de numeros de punto flotante 0 conjunto de numeros de maquina en punto flotante 0
simplernente conjunto de punto flotante
Cada numero del computador se representa mediante un numero finito de digi tos (aritmetica fin ita) segun se indica a continuaci6n
Un numero del computador 0 de punto flotante distinto de cero se describe matematicamente en la forma
t f I
forma en la cuallos simbolos que all[ aparecen tienen el siguiente significado
(J =+ 1 0 (J =- 1 es el sig no del numero
~ es un entero que denota la base del sistema numerico usado Por 10 general ~ 2
(Sistema Binario) ~ = 8 (Sistema Octal) 0 ~ = 16 (Sistema Hexadecimal)
ai i = 12 t es un entero con 0 ~ ai ~ ~ - 1 Los enteros 01 0 - 1 son lIamados digitos
en la base ~ Nosotros asumiremos en todo 10 que sigue que a tc 0 en cuyo caso el
numero se dice que esta en forma normalizada
4 METODOS NUMERIC OS
a1 a2 at I f 6 d I ()middot a t ~ denota la suma 1 + 2++ yes IIamada a mantlsa 0 racci n e numero a1a2 p p p de punto flotante
EI entero t indica el numero de dfgitos en la base p que se usan para representar el
numero de punta flotante y es amado precisi6n Por 10 general t =6 0 t =7 con ~ =10
(precisi6n sencilla) t =14 0 t = 15 can ~ =10 (doble precisi6n) En algunos computadores se pueden hacer representaciones en precisi6n sencilla doble precisi6n e incluso en precisi6n mayor
e es un entero lIamado el exponente y es tal que L ~ e ~ U para ciertos enteros L y U es comun encontrar L = - U a L = -U plusmn 1 Un caso frecuente es L = -63 Y U = 64 para un total de 128 posibles exponentes
EI numero cero requiere una representaci6n especial
De acuerdo con 10 anterior un conjunto de punto flotante F queda caracterizado por cuatro parametros
a) La base p b) La precisi6n t c) Los enteros L y U tales que L ~ e ~ U donde e es el exponente
Cualesquiera sean los parametros elegidos los conjuntos de punta flotante correspondientes comparten las mismas caracterlsticas cualitativas entre elias la carencia de algunas de las propiedades algebraicas de que gozan los numeros reales
Una de las caracterfsticas de todo conjunto de punto flotante F es que es finito y tiene
numeros diferentes (incluyendo el cera) y donde los distintos de cero estan en forma normalizada En efecto
puede tomar p- 1 valores y ai i =23 t puede tomar p valores asf que haya1
(p - 1)p P=(p _1)pt-1 fracciones positivas distintas --v--
t-1
Ahora considerando que el numero de posibles exponentes es U - L + 1 que el numero de punta flotante puede ser positiv~ 0 negativ~ y teniendo en cuenta que el numero cero esta tambim en el conjunto de punto flotante concluimos que el conjunto F tiene
numeros diferentes
Capitulo 1 ERRORES DE REDONDEO Y ESTABILIDAD 5
Lo anterior nos dice que se usan 2(~ -1)~t- (U - L + 1) + 1 numeros de punto fiotante para
representar el conjunto continuo de los numeros reales (que es infinito) 10 que impl ica que muchos numeros reales tendrfan que ser representados par un mismo numero de punto flotante
Como ejemplo consideremos el conjunto de punto flotante F con para metros p== 2
(Binario) t == 3 L == -1 U == 2 Tal conjunto F tiene
numeros diferentes (inciuyendo el cero)
Los numeros de F distintos de cero son de la forma
con a = 1 a2 a3 = 0 1 Y e = - 1 0 1 2 asf que las fracciones positivas distintas son
Combinando estas mantisas con los exponentes obtenemos todos los numeros positivos de F que aparecen en la TABLA 12 siguiente
I MANTISA I EXP -1 I EXP 0 I EXP 1 IEXP 2
I 8
(100)2 =shy16
(100) x T=~2 16
(100) x 2deg = ~ 2 16
(100) x 2 = ~ 2 16
(100) x 22 == 32 2 16
(101) =Q2 16
(101)2 x T = ~ 16
(101) x 2deg = Q 2 16
(101) x 2 = 20 2 16
(101)2 22 == 40 16
(110) = ~ 2 16
(110) xT =~ 2 16
(110) x 2deg ==~ 2 16
(110) 2 x 2= 24 16
( ) 2 48 1 10 x 2 =shy2 16
(111) = i2 16
(111) x T = ~ 2 16
(111) x 2deg = i2 16
(111) x 2 = 28 2 16
(1 11) x 22 = 56 2 16
TABLA 12
6 METOOOS NUMERICOS
Como estamos mas familiarizados con los numeros decimales (en base p= 10) los 33 elementos de F en forma (racional) decimal son
16 20 24 28 32 40 48 56 +- plusmn- plusmn- plusmn - +- +- +- +shy-16 16 16 16 -16 -16 -16 -16
Una representaci6n de los numeros positiv~s y el cero de F en la recta real se muestra en la FIGURA 11 siguiente
o )( flex) Iii
56
~T 16 20 32 b
40 48 ~R
-TS 16 16 16 16 16 I regIon de under1low region de overflow
(subfJujo) (sobreflujo)
FIGURA 11
Algunos hechos que se pueden observar en un conjunto de punta flotante F son
1 Todo numero real x que entra en el computador 0 que es el resultado de un calculo es reemplazado (si es posible) por un numero de punto flotante que notaremos fl(x) Existen reg las para escoger tal numero (reglas de redondeo) por 10 general es el numero de punto
flotante mas cercano a x La diferencia Ix - f1( x) I se llama error (absoluto) de redondeo
2 Si observamos la distribuci6n de los elementos de F en la recta real vemos que no estan igualmente espaciados (eslan mas densamente distribuldos ella cercanla del cero) 10 que implica que el error de redondeo puede depender del tamaro del numero (entre mas grande sea el numero en valor absoluto mayor puede ser el error de redondeo)
En el ejemplo el numero de punto f10tante positiv~ mas pequero es ~ = y el numero de 16 4
punto flotante positiv~ mas grande es 56 = ~ 16 2
En general en un conjunto de punto flotante F con param~tros p t L Y U se tiene que
es el numero de punta f10tante positiv~ mas pequero (para el ejemplo FL = 2-1-1 = plusmn) y
con y = P-1
Capitulo 1 ERRORES DE REDONDEO Y ESTABILIDAD 7
es el numero de punto flotantepositivo mas grande (para el ejemplo Fu =(1- 2-3 )22 = ) 2
A la regi6n RL = X ER 0 lt IxIlt FL se Ie llama region de underflow 0 subflujo y en
algunos computadores si un numero real cae en esta region el numero es redondeado a cero
Por otra parte a la regi6n Ru = X ER Ixl gt Fu se Ie llama region de overflow 0
sobreflujo y en algunos computadores si un numero real cae en esta regi6n el numero es redondeado al numero de punto flotante mas cercano (Fu - Fu) 0 se infomia del fen6meno
overflow
Se define como range del conjunto F al conjunto
De acuerdo con esto todo numero de punto flotante distinto de cero fl(x) debe satisfacer
3 La combinaci6n aritmetica usual + - x 7- de dos numeros de punto flotante no
siempre produce un numero de punto flotante
Supongamos que fl(x) fl(Y)EF Veamos como ejemplo que la suma usual fl(x)+fl(y) no
necesariamente sera un numero en F Para ello consideremos el conjunto de punto f10tante
F dado en el ejemplo fl(x) = ~ EF fl(Y) = 1~ E F sin embargo
28 5 33fl( x) + fl(Y) = - + - = - ~ F Luego la adici6n usual no es cerrada en el sentido
16 16 16 matematico ordinario
Una manera de simular la adici6n Y las demas operaciones aritmeticas entre numeros rea les pero realizadas por el computador es la siguiente
Si x e Y son numeros reales en el range de F definimos las operaciones 83 8 reg Y 8 a las que nos referiremos como operaciones de punta flotante asi
x EB Y = fl( fl( x) + fl( Y ) )
x 8 Y= fl( fl( x) - fl( Y ) )
x reg Y = fl( fl( x) x fl( Y ) )
x 8 Y = fl( fI( x) fI(Y))
donde + - x Y 7 son las operaciones aritmeticas usuales
8 METOOOS NUMERICOS
Ilustraremos estas operaciones en 81 conjunto F del ejemplo al tiempo que pondremos de manifiesto la carencia de ciertas propiedades para tales operaciones Supondremos que f1(x) se escoge como el numero de punto f10tante mas cercano a x y que cuando el numero x equidista de dos numeros de punto f1otante se escoge flex) como el mas cercano a la derecha si es positiv~ 0 el mas cercano hacia la izquierda si es negativo
middot 28 5 R t ITomemos en F os numeros - y - y supongamos que X y E son a es queI 16 16
28 5f1(x) = - Y f1(Y) = - Entonces
16 16
xG) = f1(28 + ~) = fl( 33) = 32 Y 16 16 16 16
x e y = f( 28 _~) = fl( 23) = 24 1616 16 16
Xampgt y=fl( 28 x~) = fl( 35) = 32 = ~ 16 16 64 64 16
xEEJ y = fl( 28 -- ~) = fl( 28) = 56 (fen6meno overflow) 16 16 5 16
28 56t Overflow ya que - gt - = Fu 5 16
6 6Tomemos - EF Y supongamos que z ER es tal que fl(z) = - entonces
16 16
z e y = fl(~ - ~) =f1( _1 ) = 0 (fen6meno underflow) 16 16 16
1 4t Underflow ya que 0 lt - lt - = FL 16 16
16 7 14 5 10 Como 1 = 16 8 = 16 s = 16 E F entonces existen u v WE R tales que fl(U) = 1
7 5f~V)=S Y f1(W) = s Entonces
luego
Air que
Fi_
4 METODOS NUMERIC OS
a1 a2 at I f 6 d I ()middot a t ~ denota la suma 1 + 2++ yes IIamada a mantlsa 0 racci n e numero a1a2 p p p de punto flotante
EI entero t indica el numero de dfgitos en la base p que se usan para representar el
numero de punta flotante y es amado precisi6n Por 10 general t =6 0 t =7 con ~ =10
(precisi6n sencilla) t =14 0 t = 15 can ~ =10 (doble precisi6n) En algunos computadores se pueden hacer representaciones en precisi6n sencilla doble precisi6n e incluso en precisi6n mayor
e es un entero lIamado el exponente y es tal que L ~ e ~ U para ciertos enteros L y U es comun encontrar L = - U a L = -U plusmn 1 Un caso frecuente es L = -63 Y U = 64 para un total de 128 posibles exponentes
EI numero cero requiere una representaci6n especial
De acuerdo con 10 anterior un conjunto de punto flotante F queda caracterizado por cuatro parametros
a) La base p b) La precisi6n t c) Los enteros L y U tales que L ~ e ~ U donde e es el exponente
Cualesquiera sean los parametros elegidos los conjuntos de punta flotante correspondientes comparten las mismas caracterlsticas cualitativas entre elias la carencia de algunas de las propiedades algebraicas de que gozan los numeros reales
Una de las caracterfsticas de todo conjunto de punto flotante F es que es finito y tiene
numeros diferentes (incluyendo el cera) y donde los distintos de cero estan en forma normalizada En efecto
puede tomar p- 1 valores y ai i =23 t puede tomar p valores asf que haya1
(p - 1)p P=(p _1)pt-1 fracciones positivas distintas --v--
t-1
Ahora considerando que el numero de posibles exponentes es U - L + 1 que el numero de punta flotante puede ser positiv~ 0 negativ~ y teniendo en cuenta que el numero cero esta tambim en el conjunto de punto flotante concluimos que el conjunto F tiene
numeros diferentes
Capitulo 1 ERRORES DE REDONDEO Y ESTABILIDAD 5
Lo anterior nos dice que se usan 2(~ -1)~t- (U - L + 1) + 1 numeros de punto fiotante para
representar el conjunto continuo de los numeros reales (que es infinito) 10 que impl ica que muchos numeros reales tendrfan que ser representados par un mismo numero de punto flotante
Como ejemplo consideremos el conjunto de punto flotante F con para metros p== 2
(Binario) t == 3 L == -1 U == 2 Tal conjunto F tiene
numeros diferentes (inciuyendo el cero)
Los numeros de F distintos de cero son de la forma
con a = 1 a2 a3 = 0 1 Y e = - 1 0 1 2 asf que las fracciones positivas distintas son
Combinando estas mantisas con los exponentes obtenemos todos los numeros positivos de F que aparecen en la TABLA 12 siguiente
I MANTISA I EXP -1 I EXP 0 I EXP 1 IEXP 2
I 8
(100)2 =shy16
(100) x T=~2 16
(100) x 2deg = ~ 2 16
(100) x 2 = ~ 2 16
(100) x 22 == 32 2 16
(101) =Q2 16
(101)2 x T = ~ 16
(101) x 2deg = Q 2 16
(101) x 2 = 20 2 16
(101)2 22 == 40 16
(110) = ~ 2 16
(110) xT =~ 2 16
(110) x 2deg ==~ 2 16
(110) 2 x 2= 24 16
( ) 2 48 1 10 x 2 =shy2 16
(111) = i2 16
(111) x T = ~ 2 16
(111) x 2deg = i2 16
(111) x 2 = 28 2 16
(1 11) x 22 = 56 2 16
TABLA 12
6 METOOOS NUMERICOS
Como estamos mas familiarizados con los numeros decimales (en base p= 10) los 33 elementos de F en forma (racional) decimal son
16 20 24 28 32 40 48 56 +- plusmn- plusmn- plusmn - +- +- +- +shy-16 16 16 16 -16 -16 -16 -16
Una representaci6n de los numeros positiv~s y el cero de F en la recta real se muestra en la FIGURA 11 siguiente
o )( flex) Iii
56
~T 16 20 32 b
40 48 ~R
-TS 16 16 16 16 16 I regIon de under1low region de overflow
(subfJujo) (sobreflujo)
FIGURA 11
Algunos hechos que se pueden observar en un conjunto de punta flotante F son
1 Todo numero real x que entra en el computador 0 que es el resultado de un calculo es reemplazado (si es posible) por un numero de punto flotante que notaremos fl(x) Existen reg las para escoger tal numero (reglas de redondeo) por 10 general es el numero de punto
flotante mas cercano a x La diferencia Ix - f1( x) I se llama error (absoluto) de redondeo
2 Si observamos la distribuci6n de los elementos de F en la recta real vemos que no estan igualmente espaciados (eslan mas densamente distribuldos ella cercanla del cero) 10 que implica que el error de redondeo puede depender del tamaro del numero (entre mas grande sea el numero en valor absoluto mayor puede ser el error de redondeo)
En el ejemplo el numero de punto f10tante positiv~ mas pequero es ~ = y el numero de 16 4
punto flotante positiv~ mas grande es 56 = ~ 16 2
En general en un conjunto de punto flotante F con param~tros p t L Y U se tiene que
es el numero de punta f10tante positiv~ mas pequero (para el ejemplo FL = 2-1-1 = plusmn) y
con y = P-1
Capitulo 1 ERRORES DE REDONDEO Y ESTABILIDAD 7
es el numero de punto flotantepositivo mas grande (para el ejemplo Fu =(1- 2-3 )22 = ) 2
A la regi6n RL = X ER 0 lt IxIlt FL se Ie llama region de underflow 0 subflujo y en
algunos computadores si un numero real cae en esta region el numero es redondeado a cero
Por otra parte a la regi6n Ru = X ER Ixl gt Fu se Ie llama region de overflow 0
sobreflujo y en algunos computadores si un numero real cae en esta regi6n el numero es redondeado al numero de punto flotante mas cercano (Fu - Fu) 0 se infomia del fen6meno
overflow
Se define como range del conjunto F al conjunto
De acuerdo con esto todo numero de punto flotante distinto de cero fl(x) debe satisfacer
3 La combinaci6n aritmetica usual + - x 7- de dos numeros de punto flotante no
siempre produce un numero de punto flotante
Supongamos que fl(x) fl(Y)EF Veamos como ejemplo que la suma usual fl(x)+fl(y) no
necesariamente sera un numero en F Para ello consideremos el conjunto de punto f10tante
F dado en el ejemplo fl(x) = ~ EF fl(Y) = 1~ E F sin embargo
28 5 33fl( x) + fl(Y) = - + - = - ~ F Luego la adici6n usual no es cerrada en el sentido
16 16 16 matematico ordinario
Una manera de simular la adici6n Y las demas operaciones aritmeticas entre numeros rea les pero realizadas por el computador es la siguiente
Si x e Y son numeros reales en el range de F definimos las operaciones 83 8 reg Y 8 a las que nos referiremos como operaciones de punta flotante asi
x EB Y = fl( fl( x) + fl( Y ) )
x 8 Y= fl( fl( x) - fl( Y ) )
x reg Y = fl( fl( x) x fl( Y ) )
x 8 Y = fl( fI( x) fI(Y))
donde + - x Y 7 son las operaciones aritmeticas usuales
8 METOOOS NUMERICOS
Ilustraremos estas operaciones en 81 conjunto F del ejemplo al tiempo que pondremos de manifiesto la carencia de ciertas propiedades para tales operaciones Supondremos que f1(x) se escoge como el numero de punto f10tante mas cercano a x y que cuando el numero x equidista de dos numeros de punto f1otante se escoge flex) como el mas cercano a la derecha si es positiv~ 0 el mas cercano hacia la izquierda si es negativo
middot 28 5 R t ITomemos en F os numeros - y - y supongamos que X y E son a es queI 16 16
28 5f1(x) = - Y f1(Y) = - Entonces
16 16
xG) = f1(28 + ~) = fl( 33) = 32 Y 16 16 16 16
x e y = f( 28 _~) = fl( 23) = 24 1616 16 16
Xampgt y=fl( 28 x~) = fl( 35) = 32 = ~ 16 16 64 64 16
xEEJ y = fl( 28 -- ~) = fl( 28) = 56 (fen6meno overflow) 16 16 5 16
28 56t Overflow ya que - gt - = Fu 5 16
6 6Tomemos - EF Y supongamos que z ER es tal que fl(z) = - entonces
16 16
z e y = fl(~ - ~) =f1( _1 ) = 0 (fen6meno underflow) 16 16 16
1 4t Underflow ya que 0 lt - lt - = FL 16 16
16 7 14 5 10 Como 1 = 16 8 = 16 s = 16 E F entonces existen u v WE R tales que fl(U) = 1
7 5f~V)=S Y f1(W) = s Entonces
luego
Air que
Fi_
Capitulo 1 ERRORES DE REDONDEO Y ESTABILIDAD 5
Lo anterior nos dice que se usan 2(~ -1)~t- (U - L + 1) + 1 numeros de punto fiotante para
representar el conjunto continuo de los numeros reales (que es infinito) 10 que impl ica que muchos numeros reales tendrfan que ser representados par un mismo numero de punto flotante
Como ejemplo consideremos el conjunto de punto flotante F con para metros p== 2
(Binario) t == 3 L == -1 U == 2 Tal conjunto F tiene
numeros diferentes (inciuyendo el cero)
Los numeros de F distintos de cero son de la forma
con a = 1 a2 a3 = 0 1 Y e = - 1 0 1 2 asf que las fracciones positivas distintas son
Combinando estas mantisas con los exponentes obtenemos todos los numeros positivos de F que aparecen en la TABLA 12 siguiente
I MANTISA I EXP -1 I EXP 0 I EXP 1 IEXP 2
I 8
(100)2 =shy16
(100) x T=~2 16
(100) x 2deg = ~ 2 16
(100) x 2 = ~ 2 16
(100) x 22 == 32 2 16
(101) =Q2 16
(101)2 x T = ~ 16
(101) x 2deg = Q 2 16
(101) x 2 = 20 2 16
(101)2 22 == 40 16
(110) = ~ 2 16
(110) xT =~ 2 16
(110) x 2deg ==~ 2 16
(110) 2 x 2= 24 16
( ) 2 48 1 10 x 2 =shy2 16
(111) = i2 16
(111) x T = ~ 2 16
(111) x 2deg = i2 16
(111) x 2 = 28 2 16
(1 11) x 22 = 56 2 16
TABLA 12
6 METOOOS NUMERICOS
Como estamos mas familiarizados con los numeros decimales (en base p= 10) los 33 elementos de F en forma (racional) decimal son
16 20 24 28 32 40 48 56 +- plusmn- plusmn- plusmn - +- +- +- +shy-16 16 16 16 -16 -16 -16 -16
Una representaci6n de los numeros positiv~s y el cero de F en la recta real se muestra en la FIGURA 11 siguiente
o )( flex) Iii
56
~T 16 20 32 b
40 48 ~R
-TS 16 16 16 16 16 I regIon de under1low region de overflow
(subfJujo) (sobreflujo)
FIGURA 11
Algunos hechos que se pueden observar en un conjunto de punta flotante F son
1 Todo numero real x que entra en el computador 0 que es el resultado de un calculo es reemplazado (si es posible) por un numero de punto flotante que notaremos fl(x) Existen reg las para escoger tal numero (reglas de redondeo) por 10 general es el numero de punto
flotante mas cercano a x La diferencia Ix - f1( x) I se llama error (absoluto) de redondeo
2 Si observamos la distribuci6n de los elementos de F en la recta real vemos que no estan igualmente espaciados (eslan mas densamente distribuldos ella cercanla del cero) 10 que implica que el error de redondeo puede depender del tamaro del numero (entre mas grande sea el numero en valor absoluto mayor puede ser el error de redondeo)
En el ejemplo el numero de punto f10tante positiv~ mas pequero es ~ = y el numero de 16 4
punto flotante positiv~ mas grande es 56 = ~ 16 2
En general en un conjunto de punto flotante F con param~tros p t L Y U se tiene que
es el numero de punta f10tante positiv~ mas pequero (para el ejemplo FL = 2-1-1 = plusmn) y
con y = P-1
Capitulo 1 ERRORES DE REDONDEO Y ESTABILIDAD 7
es el numero de punto flotantepositivo mas grande (para el ejemplo Fu =(1- 2-3 )22 = ) 2
A la regi6n RL = X ER 0 lt IxIlt FL se Ie llama region de underflow 0 subflujo y en
algunos computadores si un numero real cae en esta region el numero es redondeado a cero
Por otra parte a la regi6n Ru = X ER Ixl gt Fu se Ie llama region de overflow 0
sobreflujo y en algunos computadores si un numero real cae en esta regi6n el numero es redondeado al numero de punto flotante mas cercano (Fu - Fu) 0 se infomia del fen6meno
overflow
Se define como range del conjunto F al conjunto
De acuerdo con esto todo numero de punto flotante distinto de cero fl(x) debe satisfacer
3 La combinaci6n aritmetica usual + - x 7- de dos numeros de punto flotante no
siempre produce un numero de punto flotante
Supongamos que fl(x) fl(Y)EF Veamos como ejemplo que la suma usual fl(x)+fl(y) no
necesariamente sera un numero en F Para ello consideremos el conjunto de punto f10tante
F dado en el ejemplo fl(x) = ~ EF fl(Y) = 1~ E F sin embargo
28 5 33fl( x) + fl(Y) = - + - = - ~ F Luego la adici6n usual no es cerrada en el sentido
16 16 16 matematico ordinario
Una manera de simular la adici6n Y las demas operaciones aritmeticas entre numeros rea les pero realizadas por el computador es la siguiente
Si x e Y son numeros reales en el range de F definimos las operaciones 83 8 reg Y 8 a las que nos referiremos como operaciones de punta flotante asi
x EB Y = fl( fl( x) + fl( Y ) )
x 8 Y= fl( fl( x) - fl( Y ) )
x reg Y = fl( fl( x) x fl( Y ) )
x 8 Y = fl( fI( x) fI(Y))
donde + - x Y 7 son las operaciones aritmeticas usuales
8 METOOOS NUMERICOS
Ilustraremos estas operaciones en 81 conjunto F del ejemplo al tiempo que pondremos de manifiesto la carencia de ciertas propiedades para tales operaciones Supondremos que f1(x) se escoge como el numero de punto f10tante mas cercano a x y que cuando el numero x equidista de dos numeros de punto f1otante se escoge flex) como el mas cercano a la derecha si es positiv~ 0 el mas cercano hacia la izquierda si es negativo
middot 28 5 R t ITomemos en F os numeros - y - y supongamos que X y E son a es queI 16 16
28 5f1(x) = - Y f1(Y) = - Entonces
16 16
xG) = f1(28 + ~) = fl( 33) = 32 Y 16 16 16 16
x e y = f( 28 _~) = fl( 23) = 24 1616 16 16
Xampgt y=fl( 28 x~) = fl( 35) = 32 = ~ 16 16 64 64 16
xEEJ y = fl( 28 -- ~) = fl( 28) = 56 (fen6meno overflow) 16 16 5 16
28 56t Overflow ya que - gt - = Fu 5 16
6 6Tomemos - EF Y supongamos que z ER es tal que fl(z) = - entonces
16 16
z e y = fl(~ - ~) =f1( _1 ) = 0 (fen6meno underflow) 16 16 16
1 4t Underflow ya que 0 lt - lt - = FL 16 16
16 7 14 5 10 Como 1 = 16 8 = 16 s = 16 E F entonces existen u v WE R tales que fl(U) = 1
7 5f~V)=S Y f1(W) = s Entonces
luego
Air que
Fi_
6 METOOOS NUMERICOS
Como estamos mas familiarizados con los numeros decimales (en base p= 10) los 33 elementos de F en forma (racional) decimal son
16 20 24 28 32 40 48 56 +- plusmn- plusmn- plusmn - +- +- +- +shy-16 16 16 16 -16 -16 -16 -16
Una representaci6n de los numeros positiv~s y el cero de F en la recta real se muestra en la FIGURA 11 siguiente
o )( flex) Iii
56
~T 16 20 32 b
40 48 ~R
-TS 16 16 16 16 16 I regIon de under1low region de overflow
(subfJujo) (sobreflujo)
FIGURA 11
Algunos hechos que se pueden observar en un conjunto de punta flotante F son
1 Todo numero real x que entra en el computador 0 que es el resultado de un calculo es reemplazado (si es posible) por un numero de punto flotante que notaremos fl(x) Existen reg las para escoger tal numero (reglas de redondeo) por 10 general es el numero de punto
flotante mas cercano a x La diferencia Ix - f1( x) I se llama error (absoluto) de redondeo
2 Si observamos la distribuci6n de los elementos de F en la recta real vemos que no estan igualmente espaciados (eslan mas densamente distribuldos ella cercanla del cero) 10 que implica que el error de redondeo puede depender del tamaro del numero (entre mas grande sea el numero en valor absoluto mayor puede ser el error de redondeo)
En el ejemplo el numero de punto f10tante positiv~ mas pequero es ~ = y el numero de 16 4
punto flotante positiv~ mas grande es 56 = ~ 16 2
En general en un conjunto de punto flotante F con param~tros p t L Y U se tiene que
es el numero de punta f10tante positiv~ mas pequero (para el ejemplo FL = 2-1-1 = plusmn) y
con y = P-1
Capitulo 1 ERRORES DE REDONDEO Y ESTABILIDAD 7
es el numero de punto flotantepositivo mas grande (para el ejemplo Fu =(1- 2-3 )22 = ) 2
A la regi6n RL = X ER 0 lt IxIlt FL se Ie llama region de underflow 0 subflujo y en
algunos computadores si un numero real cae en esta region el numero es redondeado a cero
Por otra parte a la regi6n Ru = X ER Ixl gt Fu se Ie llama region de overflow 0
sobreflujo y en algunos computadores si un numero real cae en esta regi6n el numero es redondeado al numero de punto flotante mas cercano (Fu - Fu) 0 se infomia del fen6meno
overflow
Se define como range del conjunto F al conjunto
De acuerdo con esto todo numero de punto flotante distinto de cero fl(x) debe satisfacer
3 La combinaci6n aritmetica usual + - x 7- de dos numeros de punto flotante no
siempre produce un numero de punto flotante
Supongamos que fl(x) fl(Y)EF Veamos como ejemplo que la suma usual fl(x)+fl(y) no
necesariamente sera un numero en F Para ello consideremos el conjunto de punto f10tante
F dado en el ejemplo fl(x) = ~ EF fl(Y) = 1~ E F sin embargo
28 5 33fl( x) + fl(Y) = - + - = - ~ F Luego la adici6n usual no es cerrada en el sentido
16 16 16 matematico ordinario
Una manera de simular la adici6n Y las demas operaciones aritmeticas entre numeros rea les pero realizadas por el computador es la siguiente
Si x e Y son numeros reales en el range de F definimos las operaciones 83 8 reg Y 8 a las que nos referiremos como operaciones de punta flotante asi
x EB Y = fl( fl( x) + fl( Y ) )
x 8 Y= fl( fl( x) - fl( Y ) )
x reg Y = fl( fl( x) x fl( Y ) )
x 8 Y = fl( fI( x) fI(Y))
donde + - x Y 7 son las operaciones aritmeticas usuales
8 METOOOS NUMERICOS
Ilustraremos estas operaciones en 81 conjunto F del ejemplo al tiempo que pondremos de manifiesto la carencia de ciertas propiedades para tales operaciones Supondremos que f1(x) se escoge como el numero de punto f10tante mas cercano a x y que cuando el numero x equidista de dos numeros de punto f1otante se escoge flex) como el mas cercano a la derecha si es positiv~ 0 el mas cercano hacia la izquierda si es negativo
middot 28 5 R t ITomemos en F os numeros - y - y supongamos que X y E son a es queI 16 16
28 5f1(x) = - Y f1(Y) = - Entonces
16 16
xG) = f1(28 + ~) = fl( 33) = 32 Y 16 16 16 16
x e y = f( 28 _~) = fl( 23) = 24 1616 16 16
Xampgt y=fl( 28 x~) = fl( 35) = 32 = ~ 16 16 64 64 16
xEEJ y = fl( 28 -- ~) = fl( 28) = 56 (fen6meno overflow) 16 16 5 16
28 56t Overflow ya que - gt - = Fu 5 16
6 6Tomemos - EF Y supongamos que z ER es tal que fl(z) = - entonces
16 16
z e y = fl(~ - ~) =f1( _1 ) = 0 (fen6meno underflow) 16 16 16
1 4t Underflow ya que 0 lt - lt - = FL 16 16
16 7 14 5 10 Como 1 = 16 8 = 16 s = 16 E F entonces existen u v WE R tales que fl(U) = 1
7 5f~V)=S Y f1(W) = s Entonces
luego
Air que
Fi_
Capitulo 1 ERRORES DE REDONDEO Y ESTABILIDAD 7
es el numero de punto flotantepositivo mas grande (para el ejemplo Fu =(1- 2-3 )22 = ) 2
A la regi6n RL = X ER 0 lt IxIlt FL se Ie llama region de underflow 0 subflujo y en
algunos computadores si un numero real cae en esta region el numero es redondeado a cero
Por otra parte a la regi6n Ru = X ER Ixl gt Fu se Ie llama region de overflow 0
sobreflujo y en algunos computadores si un numero real cae en esta regi6n el numero es redondeado al numero de punto flotante mas cercano (Fu - Fu) 0 se infomia del fen6meno
overflow
Se define como range del conjunto F al conjunto
De acuerdo con esto todo numero de punto flotante distinto de cero fl(x) debe satisfacer
3 La combinaci6n aritmetica usual + - x 7- de dos numeros de punto flotante no
siempre produce un numero de punto flotante
Supongamos que fl(x) fl(Y)EF Veamos como ejemplo que la suma usual fl(x)+fl(y) no
necesariamente sera un numero en F Para ello consideremos el conjunto de punto f10tante
F dado en el ejemplo fl(x) = ~ EF fl(Y) = 1~ E F sin embargo
28 5 33fl( x) + fl(Y) = - + - = - ~ F Luego la adici6n usual no es cerrada en el sentido
16 16 16 matematico ordinario
Una manera de simular la adici6n Y las demas operaciones aritmeticas entre numeros rea les pero realizadas por el computador es la siguiente
Si x e Y son numeros reales en el range de F definimos las operaciones 83 8 reg Y 8 a las que nos referiremos como operaciones de punta flotante asi
x EB Y = fl( fl( x) + fl( Y ) )
x 8 Y= fl( fl( x) - fl( Y ) )
x reg Y = fl( fl( x) x fl( Y ) )
x 8 Y = fl( fI( x) fI(Y))
donde + - x Y 7 son las operaciones aritmeticas usuales
8 METOOOS NUMERICOS
Ilustraremos estas operaciones en 81 conjunto F del ejemplo al tiempo que pondremos de manifiesto la carencia de ciertas propiedades para tales operaciones Supondremos que f1(x) se escoge como el numero de punto f10tante mas cercano a x y que cuando el numero x equidista de dos numeros de punto f1otante se escoge flex) como el mas cercano a la derecha si es positiv~ 0 el mas cercano hacia la izquierda si es negativo
middot 28 5 R t ITomemos en F os numeros - y - y supongamos que X y E son a es queI 16 16
28 5f1(x) = - Y f1(Y) = - Entonces
16 16
xG) = f1(28 + ~) = fl( 33) = 32 Y 16 16 16 16
x e y = f( 28 _~) = fl( 23) = 24 1616 16 16
Xampgt y=fl( 28 x~) = fl( 35) = 32 = ~ 16 16 64 64 16
xEEJ y = fl( 28 -- ~) = fl( 28) = 56 (fen6meno overflow) 16 16 5 16
28 56t Overflow ya que - gt - = Fu 5 16
6 6Tomemos - EF Y supongamos que z ER es tal que fl(z) = - entonces
16 16
z e y = fl(~ - ~) =f1( _1 ) = 0 (fen6meno underflow) 16 16 16
1 4t Underflow ya que 0 lt - lt - = FL 16 16
16 7 14 5 10 Como 1 = 16 8 = 16 s = 16 E F entonces existen u v WE R tales que fl(U) = 1
7 5f~V)=S Y f1(W) = s Entonces
luego
Air que
Fi_
8 METOOOS NUMERICOS
Ilustraremos estas operaciones en 81 conjunto F del ejemplo al tiempo que pondremos de manifiesto la carencia de ciertas propiedades para tales operaciones Supondremos que f1(x) se escoge como el numero de punto f10tante mas cercano a x y que cuando el numero x equidista de dos numeros de punto f1otante se escoge flex) como el mas cercano a la derecha si es positiv~ 0 el mas cercano hacia la izquierda si es negativo
middot 28 5 R t ITomemos en F os numeros - y - y supongamos que X y E son a es queI 16 16
28 5f1(x) = - Y f1(Y) = - Entonces
16 16
xG) = f1(28 + ~) = fl( 33) = 32 Y 16 16 16 16
x e y = f( 28 _~) = fl( 23) = 24 1616 16 16
Xampgt y=fl( 28 x~) = fl( 35) = 32 = ~ 16 16 64 64 16
xEEJ y = fl( 28 -- ~) = fl( 28) = 56 (fen6meno overflow) 16 16 5 16
28 56t Overflow ya que - gt - = Fu 5 16
6 6Tomemos - EF Y supongamos que z ER es tal que fl(z) = - entonces
16 16
z e y = fl(~ - ~) =f1( _1 ) = 0 (fen6meno underflow) 16 16 16
1 4t Underflow ya que 0 lt - lt - = FL 16 16
16 7 14 5 10 Como 1 = 16 8 = 16 s = 16 E F entonces existen u v WE R tales que fl(U) = 1
7 5f~V)=S Y f1(W) = s Entonces
luego
Air que
Fi_