metodos numericos - bdigital.unal.edu.cobdigital.unal.edu.co/4831/1/958-9352-12-x._1999_1.pdf ·...

16
METODOS NUMERICOS UN PRIMER CURSO IvAN FRANCISCO ASMAR CHARRIS PROFESOR ASOCIADO J,!!a;vamAD II .:: E! COLOMBIA. J.UJ.l t t ,I DEPTO. DE B lBU OTECAS 'IBLl OTECA "EFE" GOME? UNIVERSIDAD NACIONAL DE COLOMBIA SEDE MEDELLIN FACULTAD DE CIENCIAS DEPARTAMENTO DE MATEMATICAS 1999 6 4000 00128374 9 /

Upload: others

Post on 15-Sep-2019

2 views

Category:

Documents


0 download

TRANSCRIPT

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_