Análisis_Numérico Benalcázar

618
Serie de Matemática Universitaria ANÁLISIS NUMÉRICO Hernán Benalcázar Gómez

description

Libro Analisis numeroico

Transcript of Análisis_Numérico Benalcázar

  • Serie de Matemtica Universitaria

    ANLISIS NUMRICO

    Hernn Benalczar Gmez

    Hernn Benalczar GmezANLISIS NUMRICO

  • Anlisis Numrico

    Hernn Benalczar Gmez

    Quito, noviembre del 2007

  • Dedicatoria

    A mi esposa y a mi hijo.

    A mis padres, siempre presentes apoyndome en todos mis proyectos.

    i

  • ii

  • Introduccin

    El anlisis numrico es una parte de la matemtica y tiene su crecimiento a partir de la dcada de loscuarenta del siglo pasado, crecimiento que va junto con el de los computadores. Se desarrolla en base a lasnecesidades de resolver problemas complejos que surgen en las ingenieras, las ciencias fsicas, qumicas,biolgicas, la economa y ciencias sociales, en la industria. En la actualidad, el anlisis numrico es partede la malla curricular de la mayor parte de las carreras de ingeniera y de ciencias fundamentales, y seconstituye en la base para la generacin de mtodos de simulacin asistido por computadora ampliamenteutilizados en el sector industrial, y ltimamente en el ambiental y climtico. Los pases desarrolados sonlos que han dado mayor importancia al anlisis numrico y a la simulacin numrica; en nuestro pas esmuy poco lo que se hace en matemtica y particularmente en anlisis numrico.

    Este libro es una introduccin al anlisis numrico. Est destinado a los estudiantes de segundo o terceraos de la carreras de ingeniera y en especial de informtica, computacin grca, de diseo industrial,mecnica, electrnica, qumica y muy particularmente a los estudiantes de ingeniera matemtica delas Escuelas de Ciencias, a los estudiantes de las maestras en docencia matemtica, estadstica yoptimizacin, entre otras, a matemticos e ingenieros interesados en aplicaciones del anlisis matemtico,del lgebra lineal y de las ecuaciones diferenciales ordinarias. Est basado en las notas que el autor haimpartido en cursos de pregrado y posgrado en varias Universidades y Escuelas Politcnicas del Ecuador.

    Los requisitos para el estudio de este libro son los cursos de anlisis matemtico I y II, de lgebra lineal,como los que se dictan en las Escuelas de Ciencias. Ms exactamente se requiere del conocimiento deresultados fundamentales del clculo diferencial e integral de funciones en una y en varias variables, delas sucesiones y series numricas, de las sucesiones y series de funciones, de algunos tipos de ecuacionesdiferenciales ordinarias de primer orden, y del lado del lgebra lineal, se requiere de conocimientos bsicosde los espacios vectoriales, las aplicaciones lineales y matrices, de los sistemas de ecuaciones lineales, dediagonalizacin de matrices.

    El texto contiene once captulos y un apndice, cada uno de ellos est dividido en secciones y subsecciones.Al inicio de cada captulo se presenta el resumen del mismo. Contiene ejemplos y ejercicios resueltosalgunos de ellos originales, y una gran cantidad de ejecicios propuestos, una parte de ellos originales,lo que enriquece el material que se ofrece al estudiante. Los resultados numricos que se presentan encada uno de los captulos, en unos casos se han obtenido simplemente con una calculadora de bolsillo, yen otros donde el caso lo amerita, se han elaborado programas en Fortran 77 que han sido corridos enuna mquina Pentium V. Ms an, todos los algoritmos propuestos han sido debidamente vericados.Adems, en algunos temas y ejercicios se forza al estudiante a que realice sus propios programas y sevuelva un productor de software, ms no un consumidor. Al nal del captulo se muestra una ampliabibliografa que van de textos muy elementales a textos muy avanzados y que pueden ser tiles sobre todopara los estudiantes de maestras que preparan tesis de graduacin, como tambin para que el estudiantede pregrado pueda disponer de otros enfoques que ofrecen muchos libros importantes de anlisis numricoque se han publicado.

    El primer captulo est destinado a introducir el lenguaje del anlisis numrico y a iniciar en el clculoaproximado. Se comienza con los elementos del clculo numrico y de los algoritmos. A continuacinse muestran algunos ejemplos de algoritmos y de resolucin numrica de problemas elementales. Se

    iii

  • iv

    consideran los sistemas de numeracin que permiten explicar la representacin en punto jo y en puntootante. Se estudian los tipos de errores, particularmente los de redondeo, de aproximacin (truncamientoy discretizacin) y la propagacin de los mismos. Se introducen las nociones de condicionamiento,estabilidad numrica.

    En el segundo captulo se tratan tres tipos de problemas: la interpolacin polinomial, la derivacin y laintegracin numricas. Todos estos son tratados en el mbito de los espacios duales, es decir como formaslineales denidas en apropiados espacios vectoriales. Se trata el problema de la existencia del polinomio deinterpolacin de Lagrange, el error de interpolacin. A continuacin se estudia la aproximacin numricade derivadas de primero y segundo orden as como de derivadas parciales. Luego, se pasa al estudio demtodos numricos de integracin de funciones de una sola variable, y la aplicacin de estos al clculode integrales dobles.

    El captulo tres est destinado al clculo aproximado de series de funciones. Para el efecto, se inicia conuna revisin de resultados de las series numricas y de funciones. Se presta mayor atencin a las series depotencias y particularmente a las series de Taylor y su aproximacin numrica. Se elaboran algoritmos delas funciones trascendentes ms importantes como son las trigonomtricas, logaritmo y exponencial, losmismos que son las bases de los algoritmos utilizados en calculadoras de bolsillo y los implementados enlos lenguajes de programacin como por ejemplo C, C++, Fortran, Delphi, etc. Posteriormente se tratala integracin de funciones representadas como series de potencias y se dan aplicaciones. La aproximacinde series de Fourier se trata en el captulo noveno.

    En el captulo cuarto se da respuesta a una pregunta simple: cmo se elaboran las tablas de las funcionesde distribucin de probabilidades? Se consideran las funciones de probabilidad discretas y continuas.Dentro de las discretas se tratan la binomial y de Poisson. De las continuas se consideran las funciones dedistribucin tipos gama y beta, normal i cuadrada; t de Student, de Snedekor. Se elaboran algoritmosde cada una de ellas que pueden ser implementados fcilmente en los programas de simulacin. Esimportante precisar que en muchos textos, sobre todo de mtodos de perturbacin, se aborda la funcinerror y su aproximacin mediante mtodos asimptticos; esta funcin es muy similar a la funcin dedistribucin normal, igualmente se tratan las funciones gama y beta de Euler. En esos textos, paraestas funciones no se dan algoritmos completos de aproximacin. De las otras funciones continuas dedistribucin arriba citadas, se ha encontrado escasamente algunos resultados, por lo que el material queaqu se presenta no se ha hallado, al menos en los libros citados en la bibliografa.

    El captulo quinto est destinado al clculo aproximado de races de ecuaciones. Se inicia con laaplicacin del teorema de Bolzano a la bsqueda del cambio de signo as como el mtodo de biseccin. Acontinuacin, basado en el teorema de Banach del punto jo se construyen aplicaciones contractivas queestn relacionadas con las ecuaciones propuestas y desarrollan algunos mtodos de aproximacin clsicos.Se trata la convergencia de estos mtodos as como dos mtodos de aceleracin de la convergencia. Seconcluye con el estudio de las races de polinomios.

    Los sistemas de ecuaciones lineales son el objeto del captulo sexto. Se presentan algunos ejemplos queoriginan sistemas de ecuaciones lineales, posteriormente se trata los problemas con sistemas de ecuacioneslineales. Para la seleccin del mtodo numrico es importante tener un conocimiento preciso de lascaractersticas de la matriz del sistema, es por esto que se presta atencin al estudio de algunos tiposde matrices. Luego se focaliza el trabajo en los mtodos clsicos de resolucin de sistemas de ecuacioneslineales como son: eliminacin gaussiana, factorizacin LU de Crout, factorizacin LTL de Choleski. Estosmtodos se adaptan particularmente a las matrices tridiagonales. Se concluye con la resolucin en normamnima de sistemas de ecuaciones lineales que tienen una innidad de soluciones.

    En el captulo sptimo se tratan mtodos iterativos de resolucin de sistemas de ecuaciones lineales y nolineales. Se consideran primero los sistemas de ecuaciones no lineales. Para el efecto, se revisan algunosresultados de la diferencial de Frchet y se vuelve a considerar el teorema de Banach del punto jo,a continuacin se trata el mtodo de Newton. Posteriormente, se tratan los mtodos de resolucin desistemas de ecuaciones lineales, a saber: el mtodo de Jacobi, Gauss-Seidel y SOR.

    El captulo octavo est destinado al clculo de los valores y vectores propios. Se inicia con la revisinde algunos resultados fundamentales. Luego se considera la aplicacin de los valores y vectores propios

  • va las cnicas. Por simplicidad, se considera el clculo de los valores y vectores propios de matrices realesde 3 3: Se considera el mtodo de la potencia para el clculo del mayor valor propio de una matrizdiagonalizable.

    Los problemas de mnimos cuadrados se abordan en el captulo noveno. Se inicia con la resolucin desistemas de ecuaciones lineales en mnimos cuadrados. A continuacin se trata el mtodo de Householderque constituye uno de los mtodos ms importantes para la resolucin de sistemas de ecuaciones linealesen mnimos cuadrados as como para el clculo de vectores propios. Posteriormente se ja la atencinen los problemas de ajuste de datos para varios tipos de problemas. Se concluye con los problemas demnimos cuadrados continuos, particularmente la aproximacin numrica de series de Fourier.

    En el captulo dcimo se da una breve introduccin hacia la teora de los splines. Bsicamente se abordanlos splines cbicos de interpolacin y los B-Splines.

    Los mtodos numricos para calcular soluciones aproximadas de ecuaciones diferenciales ordinarias tienenlugar en el captulo dcimo primero. Se abordan dos clases de problemas: los de Cauchy de valor inicialy los de valores en la frontera. Para la primera clase de problemas se consideran los mtodos de Eulerexplcitos e implcitos, el mtodo implcito de Crank-Nicolson, todos estos se hallan en la mayor partede los textos citados en la bibliografa, que no es el caso del mtodo de Petrov-Galerkin que aqu estratado. Este mtodo se aplica fundamentalmente a problemas de valores en la frontera y se encuentraen textos muy especializados. Se preri incluir el mtodo de Petrov-Galerkin y no los ampliamenteconocidos mtodos de Runge-Kutta, pus estos se los encuentra en la mayor parte de libros de ecuacionesdiferenciales y anlisis numrico. En la segunda clase de problemas se consideran ecuaciones diferencialesde segundo orden con condiciones de frontera de Dirichlet homogneas y no homgneas, de Neumannhomogneas y no homogneas, y mixtas. Todos estos problemas se aproximan con el mtodo de diferenciasnitas. Se concluye con la resolucin numrica de un problema no lineal.

    Se ha suministrado un apndice que contiene bsicamente una breve revisin de los resultados msimportantes de los espacios vectoriales y algunos ejemplos, y, una revisin de los espacios normados y delos espacios con producto interior.

    Al escribir este libro se busc un equilibrio entre abstraccin, practicidad, popularidad, simplicidad,novedad, actualidad de mtodos de clculo, lo que condujo a no incluir algunos temas que se considermuy complejos y surgieron algunas preguntas: por qu no se trat tal o cual tema? por qu unostemas tuvieron mayor atencin que otros posiblemente ms importantes? Cmo juzgar que temas sontrascendentales para un pblico tan variado? La nueva versin de este libro est ya preparada, se darmayor atencin a temas, que en un principio se consider muy complejos pero que luego se vi la necesidadde tratarlos, como los siguientes: resolucin de sistemas de ecuaciones lineales con los mtodos Minres yGmres, problemas no lineales de ajuste de datos dependientes de varios parmetros, mtodo de integracinde Gauss, mtodo de Householder para el clculo de valores y vectores propios, ampliacin de la teorade splines, resultados de existencia de ecuaciones diferenciales ordinarias y convergencia de los mtodospropuestos as como los muy populares mtodos de Runge-Kutta. Todos estos temas tendrn tambinuna ampliacin de ejemplos.

    Mucho agradecer se me comunique de posibles errores tipogrcos y deslices, que por cierto soninfaltables a pesar del esfuerzo en controlarlos y eliminarlos.

    Mi agradecimiento al seor Darwin Polivio Narvez Vicente que muy responsablemente colabor y mostrmucha capacidad y profesionalismo en el levantamiento del texto.

    .

    Hernn Benalczar Gmez

    Profesor de la Escuela de Ciencias

  • vi

  • ndice general

    1. Clculo aproximado, algoritmos, errores 1

    1.1. Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

    1.2. Clculo numrico. Algoritmos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

    1.3. Ejemplos de algoritmos y problemas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

    1.3.1. Operaciones elementales con vectores y matrices. Aplicaciones . . . . . . . . . . . . 5

    1.3.2. Clculo con funciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

    1.4. Sistemas de Numeracin. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

    1.4.1. Conversin de binario a decimal y viceversa. . . . . . . . . . . . . . . . . . . . . . . 26

    1.4.2. Conversin de decimal a cualquier base y viceversa . . . . . . . . . . . . . . . . . . 30

    1.5. Representacin en punto otante. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

    1.6. Tipos de Errores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

    1.7. Errores de redondeo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

    1.8. Aritmtica de punto otante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

    1.9. Condicionamiento de funciones reales. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

    1.9.1. Condicionamiento de funciones reales de una sola variable. . . . . . . . . . . . . . . 43

    1.9.2. Condicionamiento de funciones reales en varias variables . . . . . . . . . . . . . . . 46

    1.10. Propagacin de los errores. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

    1.11. Estabilidad numrica. Convergencia. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

    1.12. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66

    1.13. Lecturas complementarias y bibliografa . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75

    2. Interpolacin polinomial, derivacin e integracin numrica 77

    2.1. Espacios duales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77

    2.2. Interpolacin polinomial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82

    2.3. Operadores de diferencias nitas y derivacin numrica . . . . . . . . . . . . . . . . . . . . 92

    2.3.1. Aproximacin de derivadas de funciones reales como formas lineales . . . . . . . . 97

    2.3.2. Aproximacin numrica de derivadas parciales primeras, segundas y laplaciano . . 98

    2.4. Integracin numrica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102

    vii

  • viii NDICE GENERAL

    2.4.1. Frmula de Newton-Cotes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102

    2.5. Regla de los trapecios generalizada. Estimacin del error . . . . . . . . . . . . . . . . . . . 104

    2.6. Regla de Simpson generalizada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108

    2.7. Estimacin del error en la regla de Simpson . . . . . . . . . . . . . . . . . . . . . . . . . . 110

    2.8. Integrales dobles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115

    2.9. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121

    2.10. Lecturas complementarias y bibliografa . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128

    3. Aproximacin de series de funciones. Aplicaciones. 131

    3.1. Resultados fundamentales de series numricas convergentes. . . . . . . . . . . . . . . . . . 131

    3.1.1. Series numricas convergentes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131

    3.1.2. Criterios de convergencia. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134

    3.1.3. Clculo aproximado de series numricas. . . . . . . . . . . . . . . . . . . . . . . . . 138

    3.2. Sucesiones y series de funciones. Convergencia puntual y uniforme. . . . . . . . . . . . . . 140

    3.2.1. Sucesiones de funciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141

    3.2.2. Series de funciones. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145

    3.3. Series de potencias. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149

    3.3.1. Series de potencias. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149

    3.3.2. Series de Taylor. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156

    3.4. Aproximacin numrica de series de potencias. . . . . . . . . . . . . . . . . . . . . . . . . 158

    3.5. Aproximacin de las funciones trigonomtricas . . . . . . . . . . . . . . . . . . . . . . . . 163

    3.6. Aproximacin de exp(x) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169

    3.7. Aproximacin de ln(x) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171

    3.8. Integracin de funciones de clase C1(R) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174

    3.9. Funcin error . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176

    3.10. Aproximacin numrica de una integral elptica . . . . . . . . . . . . . . . . . . . . . . . . 180

    3.11. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183

    3.12. Lecturas complementarias y bibliografa . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187

    4. Aproximacin de algunas funciones de distribucin de probabilidad. 189

    4.1. Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189

    4.2. La distribucin de probabilidad binomial . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190

    4.3. Distribucin de Poisson . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192

    4.4. Funcin gama de Euler. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194

    4.4.1. Denicin de (p) para p < 0 y no entero . . . . . . . . . . . . . . . . . . . . . . . 197

  • NDICE GENERAL ix

    4.5. Aproximacin numrica de (p): . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198

    4.6. Distribucin de probabilidad de tipo gama . . . . . . . . . . . . . . . . . . . . . . . . . . . 202

    4.7. Funcin beta. Aproximacin de la funcin beta B(p; q), p > 0, q > 0: . . . . . . . . . . . 206

    4.8. Distribucin beta. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212

    4.9. Distribucin normal. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216

    4.10. Distribucin i- cuadrada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220

    4.11. Distribucin t de Student . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223

    4.12. Distribucin F (de Snedekor) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228

    4.13. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233

    4.14. Lecturas complementarias y bibliografa . . . . . . . . . . . . . . . . . . . . . . . . . . . . 235

    5. Resolucin Numrica de Ecuaciones no Lineales 237

    5.1. Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237

    5.2. Separacin de las races. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240

    5.3. Mtodo de biseccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245

    5.4. Desarrollo de mtodos iterativos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 250

    5.4.1. Mtodo de punto jo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257

    5.4.2. Mtodo de punto jo modicado . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259

    5.4.3. Mtodo de Newton-Raphson . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 268

    5.4.4. Mtodo de Newton modicado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279

    5.4.5. Mtodo de las secantes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 280

    5.4.6. Mtodo regula-falsi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283

    5.5. Convergencia. Convergencia acelerada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286

    5.6. Races de multiplicidad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 301

    5.7. Races reales de polinomios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306

    5.7.1. Fronteras superior e inferior de las races de la ecuacin P (x) = 0 . . . . . . . . . 308

    5.8. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 312

    5.9. Lecturas complementarias y bibliografa . . . . . . . . . . . . . . . . . . . . . . . . . . . . 316

    6. Resolucin numrica de sistemas de ecuaciones lineales 319

    6.1. Problemas que conducen a la resolucin de sistemas de ecuaciones lineales. . . . . . . . . . 319

    6.1.1. Problemas de mnimos cuadrados discreto. . . . . . . . . . . . . . . . . . . . . . . . 320

    6.1.2. Aproximacin de un problema de valores de frontera. . . . . . . . . . . . . . . . . . 321

    6.1.3. Trazado de una curva suave a partir de observaciones experimentales. . . . . . . . 322

    6.2. Problemas con sistemas de ecuaciones lineales. . . . . . . . . . . . . . . . . . . . . . . . . 325

  • x NDICE GENERAL

    6.3. Algunos tipos de matrices importantes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329

    6.3.1. Matrices simtricas denidas positivas. . . . . . . . . . . . . . . . . . . . . . . . . . 329

    6.3.2. Matrices montonas y diagonalmente dominantes. . . . . . . . . . . . . . . . . . . 331

    6.3.3. Matsrices normales y ortogonales. . . . . . . . . . . . . . . . . . . . . . . . . . . . 334

    6.4. Mtodos directos de resolucin de sistemas de ecuaciones lineales. . . . . . . . . . . . . . . 338

    6.4.1. Sistemas de ecuaciones lineales triangulares superiores e inferiores. . . . . . . . . . 339

    6.5. Operaciones elementales con matrices. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345

    6.6. Mtodo de eliminacin gaussiana. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347

    6.6.1. Eliminacin gaussiana sin pivoting. . . . . . . . . . . . . . . . . . . . . . . . . . . . 348

    6.6.2. Eliminacin gaussiana con pivoting. . . . . . . . . . . . . . . . . . . . . . . . . . . 354

    6.6.3. Clculo de la matriz inversa A1 y del determinante de la matriz A. . . . . . . . . 363

    6.7. Mtodo de Choleski. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365

    6.8. Mtodo de Crout. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 371

    6.9. Sistemas de ecuaciones lineales con matrices tridiagonales. . . . . . . . . . . . . . . . . . . 377

    6.10. Resolucin de un sistema de ecuaciones lineales en norma mnima. . . . . . . . . . . . . . 390

    6.11. Condicionamiento. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 393

    6.12. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 397

    6.13. Lecturas complementarias y bibliografa . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401

    7. Mtodos iterativos 405

    7.1. Diferencial de Frchet. Propiedades . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 405

    7.2. Aplicaciones contractivas y lipschisianas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 410

    7.3. Resolucin numrica de sistemas de ecuaciones no lineales . . . . . . . . . . . . . . . . . . 413

    7.4. Mtodos iterativos de resolucin de sistemas de ecuaciones lineales . . . . . . . . . . . . . 418

    7.4.1. Mtodos de Jacobi y Gauss-Seidel . . . . . . . . . . . . . . . . . . . . . . . . . . . 418

    7.4.2. Mtodo SOR (Successive Over-Relaxation) . . . . . . . . . . . . . . . . . . . . . . 421

    7.5. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 425

    7.6. Lecturas complementarias y bibliografa . . . . . . . . . . . . . . . . . . . . . . . . . . . . 430

    8. Valores y Vectores Propios 433

    8.1. Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 433

    8.2. Formas cuadrticas y ecuaciones cuadrticas en R2: . . . . . . . . . . . . . . . . . . . . . . 436

    8.3. Valores y vectores propios de matrices de 3 3 . . . . . . . . . . . . . . . . . . . . . . . . 4468.4. Mtodo de las Potencias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 449

    8.5. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 453

    8.6. Lecturas complementarias y bibliografa . . . . . . . . . . . . . . . . . . . . . . . . . . . . 454

  • NDICE GENERAL xi

    9. Mnimos Cuadrados 457

    9.1. Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 457

    9.2. Soluciones de sistemas de ecuaciones lineales en mnimos cuadrados. . . . . . . . . . . . . 460

    9.3. Mtodo de Householder y mnimos cuadrados . . . . . . . . . . . . . . . . . . . . . . . . . 464

    9.3.1. Nmero de operaciones elementales . . . . . . . . . . . . . . . . . . . . . . . . . . . 474

    9.4. Ajuste de datos polinomial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 478

    9.4.1. Ajuste de datos con polinomios de grado 1. . . . . . . . . . . . . . . . . . . . . . . 479

    9.4.2. Ajuste polinomial con polinomios de grado 2. . . . . . . . . . . . . . . . . . . . . . 482

    9.5. Ajuste de datos con funciones anes de n variables . . . . . . . . . . . . . . . . . . . . . . 485

    9.6. Ajuste de datos con funciones dependientes de un parmetro . . . . . . . . . . . . . . . . 491

    9.7. Mnimos cuadrados continuos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 495

    9.8. Aproximacin numrica de series de Fourier . . . . . . . . . . . . . . . . . . . . . . . . . . 495

    9.8.1. Preliminares . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 495

    9.8.2. Aproximacin numrica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 502

    9.9. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 504

    9.10. Lecturas complementarias y bibliografa . . . . . . . . . . . . . . . . . . . . . . . . . . . . 506

    10.Splines 509

    10.1. Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 509

    10.2. Espacio de funciones splines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 509

    10.3. Interpolacin mediante splines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 511

    10.3.1. Splines cbicas de interpolacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 513

    10.3.2. Interpolacin con condiciones de frontera de Hermite . . . . . . . . . . . . . . . . . 516

    10.3.3. Interpolacin con condiciones de frontera naturales . . . . . . . . . . . . . . . . . . 517

    10.3.4. Interpolacin con condiciones de frontera peridicas . . . . . . . . . . . . . . . . . 518

    10.4. Splines cuadrticas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 519

    10.5. B - Splines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 521

    10.5.1. Interpolaciones mediante B-splines cbicas . . . . . . . . . . . . . . . . . . . . . . 524

    10.6. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 525

    10.7. Lecturas complementarias y bibliografa . . . . . . . . . . . . . . . . . . . . . . . . . . . . 525

    11.Mtodos numricos de resolucin de ecuaciones diferenciales ordinarias 527

    11.1. Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 527

    11.2. El mtodo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 529

    11.3. Mtodo de Petrov-Galerkin. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 532

  • xii NDICE GENERAL

    11.4. Mtodo de diferencias nitas para problemas de valores en la frontera 1d. . . . . . . . . . 542

    11.4.1. Aspectos informticos del mtodo de diferencias nitas . . . . . . . . . . . . . . . . 544

    11.4.2. Consistencia, estabilidad, convergencia . . . . . . . . . . . . . . . . . . . . . . . . . 545

    11.4.3. Orden de convergencia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 552

    11.4.4. Mtodo de diferencias nitas en mallas no uniformes . . . . . . . . . . . . . . . . . 555

    11.5. Ejercicios resueltos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 560

    11.6. Lecturas complementarias y bibliografa . . . . . . . . . . . . . . . . . . . . . . . . . . . . 573

    12.Apendice 575

    12.1. Espacios vectoriales reales. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 575

    12.1.1. Denicin de espacio vectorial. Ejemplos. . . . . . . . . . . . . . . . . . . . . . . . 575

    12.1.2. Subespacios vectoriales. Ejemplos. . . . . . . . . . . . . . . . . . . . . . . . . . . . 581

    12.2. Denicin de espacio normado. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 584

    12.3. Ejemplos de espacios normados. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 585

    12.3.1. Normas en Rn: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 586

    12.3.2. Normas geomtricas de matrices. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 590

    12.3.3. Normas en el espacio de funciones continuas C ([a; b]) : . . . . . . . . . . . . . . . . 594

    12.4. Espacios con producto interno. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 596

    12.4.1. Ortogonalidad o perpendicularidad. . . . . . . . . . . . . . . . . . . . . . . . . . . 601

    12.5. Lecturas complementarias y bibliografa . . . . . . . . . . . . . . . . . . . . . . . . . . . . 603

  • Captulo 1

    Clculo aproximado, algoritmos, errores

    Resumen

    En este captulo se realiza un tour corto en los mtodos numricos. Se inicia con la presentacin de unametodologa para el anlisis de problemas y las soluciones aproximadas, la elaboracin de algoritmos yalgunas nociones de la complejidad de los mismos. A continuacin se presentan ejemplos de algoritmossimples as como de algunos problemas elementales que se presentan en el mbito del lgebra lineal y delanlisis matemtico, y, mtodos simples de resolucin numrica. Se hace un corto anlisis de los tipos deerrores. El uso de instrumentos de clculo como son las calculadoras de bosillo y los computadores motivanel estudio de la representacin en punto otante, los errores de redondeo y la aritmtica en punto otante,temtica que a su vez requiere del anlisis de los sistemas de numeracin. Luego se realiza un estudio delcondicionamiento de funciones de una y varias variables que est relacionado con la amplicacin de loserrores de redondeo. Particular atencin se pone en las operaciones aritmticas, lo que permite estableceruna jerarqua en las mismas e identicar que operaciones son las peligrosas y bajo que condiciones ycuales no son peligrosas, lo que constituye una ayuda extremadamente grande cuando se elaboran losalgoritmos de clculo. Mediante algunos ejemplos se analiza el problema de la propagacin de los erroresas como el de la estabilidad numrica.

    1.1. Introduccin

    Uno de los objetivos importantes del Anlisis Numrico es la elaboracin de mtodos, procedimientosde clculo y construccin de algoritmos que con la utilizacin de instrumentos de clculo como lascalculadoras de bolsillo o de instrumentos de clculo mucho ms complejos como los computadores,que requieren de la elaboracin de programas computacionales, permitan calcular soluciones exactaso aproximadas de una diversidad de problemas matemticos de modo que con cualesquiera de estosinstrumentos, se deba tener un control sobre los errores cometidos en los clculos y que los resultadosnales sean de calidad.

    Por otro lado, los procedimientos de clculo, los algoritmos numricos deben ser, en lo posible, los mssimples, concisos, de aplicabilidad a una amplia variedad de situaciones. El costo numrico de cadaprocedimiento o algoritmo y su programa computacional que se construya debe ser, en lo posible, el mspequeo.

    La calidad de la solucin de un problema dado depende de muchos factores, entre ellos, de los datosde entrada que se requieren para la ejecucin del algoritmo, procedimiento o programa computacionalconstruido, as como de los instrumentos de clculo utilizados, del lenguaje de programacin y de la versindel mismo. Es claro que la calidad de la solucin depende fuertemente del mtodo numrico empleadoy este a su vez depende de dos componentes importantes: el condicionamiento y la estabilidad; y, paraproblemas cuyas soluciones se aproximan mediante sucesiones, dependen a ms de todos los componentesanteriores, de la convergencia.

    1

  • 2 CAPTULO 1. CLCULO APROXIMADO, ALGORITMOS, ERRORES

    En este captulo se tratan algunos elementos de los algoritmos y caractersticas de los programascomputacionales, los tipos de errores comunes en anlisis numrico. Se revisa brevemente los sistemasde numeracin entre los que se destacan el binario y el decimal, la representacin en punto jo y puntootante, los errores de redondeo y la aritmtica en punto otante. Se introducen las nociones elementalesde condicionamiento, estabilidad numrica y convergencia que son muy importantes en la construccinde algoritmos, procedimientos de clculo y de la elaboracin de programas computacionales, y queconstituyen las bases que deben tenerse siempre presentes para el desarrollo de software en el clculocientco.

    1.2. Clculo numrico. Algoritmos

    Suponemos que un problema (P ) ha sido planteado y que requiere de su resolucin. Tres situaciones sepresentan: la primera en la que la solucin del problema (P ) podemos encontrarlo directamente y no serequiere del clculo numrico. La segunda en la que la solucin del problema (P ) podemos encontrarlodirectamente y se requiere de la implementacin de un procedimiento de clculo para aproximar la solucinencontrada. La tercera en la que no es posible encontrar directamente la solucin y se requiere de unmtodo numrico para aproximar la solucin. Son estas dos ltimas situaciones que nos interesan. Msan, en la resolucin numrica de un problema matemtico (P ) se establece la siguiente metodologa.

    1. Estudio de la existencia de solucin del problema (P ):

    2. Construccin de un mtodo numrico que aproxime la solucin del problema (P ):

    3. Elaboracin del respectivo algoritmo o procedimiento de clculo.

    4. Elaboracin de un programa o cdigo numrico para el clculo de la solucin aproximada de (P ):

    5. Realizacin de pruebas para validar el algoritmo o procedimiento de clculo y el programacomputacional.

    Desde el punto de vista prctico, esto es, problemas que surgen en las ciencias y en la industria, lametodologa presentada se extiende con la calibracin de la solucin y luego viene la implementacin dela solucin. En este curso daremos nfasis fundamentalmente a los puntos 1), 2), 3) y 5) de la metodologaprecedente.

    El punto 4) no lo abordaremos y dejamos al estudiante que elija el lenguaje de programacin que le interesepara la elaboracin de sus propios programas computacionales con los que debe realizar pruebas paravericar resultados mediante la implementacin del algoritmo as como vericar la correcta elaboracin delprograma computacional; o en su defecto, seleccione el paquete de programas de tipo comercial (Matlab,Matemtica, etc.) en el que provea la solucin del problema planteado con el algoritmo propuesto. Esun error gravsimo el modicar el problema planteado (P ) a uno ( bP ) cuya solucin est implementadoen el paquete de programas computacionales. Por otro lado, es tambin importante el uso de ciertasherramientas informticas que ayuden a presentar de mejor manera los resultados y permita comprendermejor las soluciones, por ejemplo gracadores para presentar grcas de curvas 2d, 3d, supercies, ujos,generacin de mallas estructuradas y no estructuradas, etc.

    El estudio de la existencia de una solucin o soluciones del problema (P ) es muy importante. Pus en lse deben conocer con precisin las hiptesis con las cuales nuestro problema tiene solucin, y bajo quecondiciones el problema (P ) puede no tener solucin. En muchos casos, en el estudio de existencia desoluciones se construye el mtodo que conduce a encontrar la solucin de (P ): Si el problema no tienesolucin, carece de sentido el intentar elaborar un mtodo numrico de solucin.

    Debido a que los clculos que se realizan son con nmeros que tienen un nmero nito de cifras decimales,estos afectan los resultados, por lo que el control de los errores en los clculos es fundamental, es decir,debemos conocer la precisin con la que obtenemos la solucin numrica del problema (P ). Este es uno

  • 1.2. CLCULO NUMRICO. ALGORITMOS 3

    de los problemas centrales del anlisis numrico y que estn ligados con las nociones de consistencia yla estabilidad numrica. En el caso en que la solucin de (P ) se calcula como lmite de una sucesinde soluciones de problemas (Pn) ms sencillos a resolver, otro de los problemas centrales del anlisisnumrico es probar o demostrar que las soluciones de esos problemas ms sencillos converge a la solucindel problema (P ), es decir se debe probar la convergencia del mtodo numrico propuesto. La consistencia,estabilidad y convergencia se discutirn ms adelante.

    Tanto en el estudio de existencia de soluciones como en la elaboracin del mtodo numrico se identicanlos datos que se requieren para resolver el problema. Una parte de estos datos los conocemos como datosde entrada.

    Una vez establecido el mtodo numrico, se pasa enseguida a la elaboracin o construccin del algoritmo.En la denicin siguiente se establece la nocin de algoritmo en su versin la ms simple

    Denicin 1 Se llama algoritmo a una sucesin nita de operaciones elementales, que organizadacomo pasos o procedimientos, se describen en forma lgica como calcular la solucin de un problema(P ) de modo ecaz con datos de entrada dados.

    Un algoritmo contiene los siguientes elementos:

    1. Datos de entrada: que consisten en valores o datos de partida, los cuales son asignados antes dearrancar la ejecucin del algoritmo. Estos datos permiten inicializar el algoritmo para su ejecucin.

    Es necesario vericar la lectura correcta de todos los datos de entrada.

    Los datos de entrada dependen obviamente del problema propuesto. Estos pueden ser datosque pertenecen a distintos conjuntos numricos (enteros, reales, complejos), pueden ser funcionesreales como las trigonomtricas (seno, coseno, tangente y sus inversas), las funciones exponencial,logartmica, las funciones hiperblicas, polinomios, etc, pueden ser datos vectoriales como son loselementos de Rn; pueden ser matrices, etc.

    2. Algoritmo o procedimiento: constituye la secuencia de todos los pasos o procedimientosde clculo que se deben ejecutar. Estos deben ser claros, precisos, lgicos. No se deben tenerambigedades en la descripcin de esos pasos o procedimientos. Debe considerarse todas lassituaciones posibles que se presenten.

    La ejecucin del algoritmo o procedimiento concluye siempre con un nmero nito de pasos.

    3. Datos de salida: son una o ms cantidades que tiene una relacin estrecha con los datos de entrada.Estos resultados estn denidos de manera nica por los pasos del procedimiento o algoritmo.

    La escritura de un algoritmo contiene los datos de entrada, los datos de salida, y a continuacin elprocedimiento o la descripcin del mtodo a utilizar que constituye el algoritmo propiamente dichoque generalmente se lo expresa en pseodocdigo de modo que facilite la escritura de un programacomputacional en cualquier lenguaje de programacin.

    Ms adelante se proponen muchos algoritmos que permiten aclarar todas estas ideas.

    En el siguiente esquema se muestra la secuencia de estos tres bloques:

    Lecturade datos de entrada

    !Ejecucin delAlgoritmo

    o procedimiento!

    Escritura deresultados

    o datos de salida:

    En la prctica estos tres bloques no son sucientes para escribir un programa computacional. Un anlisisms detallado de estos tres bloques proponemos en el diagrama siguiente:

  • 4 CAPTULO 1. CLCULO APROXIMADO, ALGORITMOS, ERRORES

    Lectura dedatos de entrada

    ! Validacin dedatos de entrada

    ! Preparacin de datosde entrada

    !

    ! Ejecucindel algoritmo

    ! Preparacin de datosde salida

    ! Escriturade resultados

    :

    En lo posible se busca construir algoritmos que tengan las caractersticas siguientes:

    1. Aplicabilidad general: el algoritmo debe funcionar para una clase de problemas lo ms ampliaposible, donde las soluciones de un problema especco de la clase resulten solamente por cambiosen los datos de entrada.

    2. Simplicidad: Un algoritmo o procedimiento tiene que ser, en lo posible, simple de programar.

    3. Conabilidad y seguridad: el algoritmo no debe ser numricamente costoso. En lo posible,se debe reducir el nmero de operaciones elementales a ejecutar. Esto evita que se ampliquenlos errores de redondeo, dando resultados ms precisos, y por otro lado, reducen los tiempos demquina.

    Se debe reducir, en lo posible, el nmero de variables a utilizar. Igualmente, se debe reducir en loposible el nmero de subrutinas o bucles a utilizar, as como la repeticin de ciertos clculos.

    Se deben efectuar tests o pruebas con datos de entrada los ms variados a n de asegurarse queel algoritmo est correctamente elaborado y que los resultados son correctos o muy aceptables. Sebuscar, en lo posible, ejemplos que se conozcan las soluciones exactas para compararse con lassoluciones numricas.

    En el estudio de un mtodo numrico y consecuentemente de un algoritmo es importante, siempreque sea posible, determinar el nmero de operaciones elementales que se realizan para obtenerla solucin numrica del problema, el nmero de comparaciones, son menos importantes lasreasignaciones . Entenderemos como operaciones elementales a las operaciones aritmticas comola suma, resta, multiplicacin, divisin, raz n-sima. Las comparaciones estn vinculadas con lasrelaciones de orden menor que ; menor o igual que ; mayor o igual que .Prestaremos mayor atencin a la determinacin del nmero de operaciones elementales que serequieren para calcular la solucin numrica mediante un mtodo o procedimiento est relacionadocon la complejidad del algoritmo que anlizamos a continuacin.

    Complejidad de algoritmos.

    Si para un problema (P ) se conocen varios mtodos y por lo tanto se pueden proporcionar variosalgoritmos, es importante analizar la denominada complejidad del algoritmo. Esta tiene que ver condos componentes importantes: uno del punto de vista volumen de memoria necesario del instrumentoo equipo utilizado para el clculo, y otro del punto de vista tiempo de mquina que a su vez estrelacionado con el nmero de operaciones elementales (siempre que haya sido posible obtener) quese requieren para calcular la solucin. Si se disponen de dos mtodos, cmo juzgar que mtodo esmejor? bajo que circunstancias un mtodo es mejor que otro?. Para poder dar respuesta a estasinterrograntes debemos estudiar la complejidad de cada algoritmo, esto es, determinar cunto dememoria se requiere en la ejecucin de cada mtodo, el tiempo de mquina requerido para el clculode la solucin con cada mtodo.

    Cuando un problema (P ) puede ser resuelto mediante dos mtodos generados por sucesiones deproblemas ms simples que los notamos (P (1)n ) y (P

    (2)n ); el estudio de la convergencia de cada mtodo

    es importante, esto nos proporcionar un dato que est relacionado con el orden de convergencia,cul mtodo es mejor?. Para responder a esta interrogante, debemos considerar otro elemento quees la exactitud de la solucin numrica que a su vez est relacionada con el orden de convergencia.Desde este punto de vista, el mtodo generado que tenga un orden de convergencia ms alto sermejor que el otro, lo que da respuesta a la interrogante.

  • 1.3. EJEMPLOS DE ALGORITMOS Y PROBLEMAS 5

    1.3. Ejemplos de algoritmos y problemas

    La metodologa arriba propuesta la aplicaremos a algunos ejemplos que proponemos a continuacin. Msan, esta seccin est dividida en dos partes: la primera en la que presentamos ejemplos simples deoperaciones elementales con vectores y matrices, y luego dos aplicaciones del producto escalar en R2, yla segunda que est destinada a problemas del anlisis matemtico como clculo de valores de funcionespolinomiales, funciones con discontinuidad evitable, derivacin e integracin numrica.

    1.3.1. Operaciones elementales con vectores y matrices. Aplicaciones

    1. Suma de vectores y producto de escalares por vectores de Rn:Sean 2 R; !x = (x1; : : : ; xn) ; !y = (y1; : : : ; yn) 2 Rn: La suma de !x con !y se nota !x +!y y sedene como !x +!y = (x1; : : : ; xn) + (y1; : : : ; yn) = (x1 + y1; : : : ; xn + yn) :El producto del escalar con el vector !x se nota !x denido como

    !x = (x1; : : : ; xn) = (x1; : : : ; xn) :

    Ponemos !z = !x + !y y !w = !x : A continuacin presentamos un algoritmo en el que se calcula!z = !x +!y y !w = !x :Algoritmo

    Datos de entrada: n 2 Z+; !x = (x1; : : : ; xn) ; !y = (y1; : : : ; yn) :Datos de salida: !z ; !w :1. i = 1; : : : ; n

    zi = xi + yi

    wi = xi

    Fin bucle i.

    2. Imprimir !z ; !w :3. Fin.

    Note que los datos son la talla n de los vectores !x e !y as como sus coordenadas. Observe que lasoperaciones elementales que intervienen en el clculo de !z son adiciones y en el clculo de !w sonproductos. Se realizan 2n operaciones elementales, y, el proceso de clculo concluye en exactamenten pasos. No contabilizamos la presentacin de resultados y el n.

    La notacin i = 1; : : : ; n signica que para i = 1 se realizan los clculos de z1 = x1 + y1 y dew1 = x1; a continuacin k = 2 y se realizan los clculos z2 = x2 + y2 y de w2 = x2: Se continuacon este proceso hasta k = n con lo que se hacen los clculos zn = xn + yn y de wn = xn:

    2. Producto escalar en Rn:Sean

    !x = (x1; :::; xn);

    !y = (y1; :::; yn) dos vectores de Rn. El producto escalar de !x con !y se nota

    con !x !y o tambin !x T !y (cuando los vectores !x e !y se escriben como vectores columna) y sedene como sigue:

    !x T !y = !x !y =nXi=1

    xiyi:

    En el apndice se resumen algunos resultados de los espacios vectoriales con producto interior.

    Para el clculo de este producto escalar se requiere de la siguiente informacin: n 2 Z+ y de loscomponentes o coordenadas de los vectores !x ; !y , con lo que el producto escalar que se le denotacon p puede calcularse usando el algoritmo que se propone a continuacin.

    Algoritmo

    Datos de entrada: n 2 Z+; ~x = (x1; ; xn); ~y = (y1; ; yn):

  • 6 CAPTULO 1. CLCULO APROXIMADO, ALGORITMOS, ERRORES

    Datos de salida: p

    1. p = 0:

    2. k = 1; : : : ; n

    p = p+ xk yk:Fin bucle k.

    3. Imprimir resultdo p:

    4. Fin.

    Para n = 4, !x = (1; 0;1; 2) ; !y = (5; 2;2;3), la aplicacin del algoritmo da como resultadop = 1.

    Observe que las operaciones elementales que intervienen en el clculo de p son adiciones y productos,se realizan 2n operaciones elementales, y, el proceso de clculo de p concluye en exactamente n pasos.

    La notacin k = 1; : : : ; n signica que para k = 1 se realiza el clculo de p+ x1 y1 que se asignaa p; a continuacin k = 2 y se realiza el clculo p+ x2 y2 cuyo resultado se asigna nuevamente ap: Se continua con este proceso hasta k = n con lo que se hace el clculo p+ xn yn que se asignaa p: La escritura p = p + xk yk no es una ecuacin, en realidad se trata de una asignacin delresultado p+xk yk a la variable p: Este tipo de notacin ser utilizada nicamente en la escriturade los algoritmos.

    3. Norma eucldea en Rn:

    Sea!x = (x1; ; xn) 2 Rn. La norma eucldea en Rn se nota con k k2 y se dene como:

    k !x k2=

    nXi=1

    x2i

    !1=2:

    En el apndice se resumen algunos resultados de los espacios normados.

    Para el clculo de k !x k2 se requiere de la siguiente informacin: n 2 Z+, las coordenadas xi,i = 1; : : : ; n, del vector !x . El siguiente algoritmo permite calcular k !x k2 que se le nota con Nx:Algoritmo

    Datos de entrada: n 2 Z+; !x = (x1; ; xn).Datos de salida: Nx

    1. Nx = 0:

    2. i = 1; : : : ; n

    Nx = Nx + xi xiFin bucle i:

    3. Nx =pNx:

    4. Imprimir resultado Nx:

    5. Fin.

    La escritura Nx =pNx, en realidad signica que el clculo de

    pNx se asigna a Nx: Esta notacin

    se utilizar nicamente en la escritura de algoritmos.

    Sean n = 4; !x = 3; 2;3;p3. La aplicacin del algoritmo precedente da como resultadoNx = 5.

    Las operaciones elementales que intervienen en el clculo de Nx son adiciones, productos y una razcuadrada, en un total de 2n+1 operaciones elementales. El proceso de clculo de Nx concluye luegode n+ 1 pasos.

  • 1.3. EJEMPLOS DE ALGORITMOS Y PROBLEMAS 7

    4. Suma de matrices reales de m n:Se nota con Mmn [R] el espacio vectorial de matrices de mn con valores en R. En algunos libroseste espacio vectorial se nota como Rmn. A una matriz A 2Mmn [R] se le nota A = (aij)mn y sim = n; es decir A es una matriz cuadrada, se escribir A = (aij) :

    Sea A = (aij)mn ; B = (bij)mn : La suma de las matrices A y B est denida como

    A+B = (aij)mn + (bij)mn = (aij + bij)mn =

    264 a11 + b11 a1n + b1n...am1 + bm1 amn + bmn

    375A esta matriz suma lo denotamos con C = (cij)mn ; esto es, C = A+B: El algoritmo para sumarlas matrices A y B se muestra a continuacin.

    Algoritmo

    Datos de entrada: m;n 2 Z+; A = (aij)mn ; B = (bij)mn :Datos de salida: C = (cij)mn :

    1. i = 1; : : : ;m

    j = 1; : : : ; n

    cij = aij + bij

    Fin bucle j:

    Fin bucle i:

    2. Imprimr C = (cij)mn :

    3. Fin.

    El clculo de la matriz C requiere de mn adiciones. Note que el ndice i es utilizado para indicarlas las, el ndice j es utilizado para indicar las columnas. El algoritmo muestra que la matriz Cse construye la a la, esto es, primera la, a continuacin segunda la, as sucesivamente. Se dejacomo ejercicio elaborar un algoritmo de clculo de C por columnas.

    5. Producto de matrices.

    Sean A = (aij)mn ; B = (bjk)np matrices reales. El producto de la matriz A con B se nota ABy es la matriz C = (cik)mp denida como sigue:

    Cik =

    nXj=1

    aijbjk = ai1b1k + + ainbnk, i = 1; : : : ;m; k = 1; : : : ; p:

    Como se puede apreciar, el elemento cik es el resultado de las sumas de los productos de los elementosde la la i de la matriz A con los correspondientes de la columna k de la matriz B: Un algoritmopara calcular C = AB se muestra a continuacin.

    Algoritmo

    1. i = 1; : : : ;m

    k = 1; : : : ; p

    s = 0:

    j = 1; : : : ; n

    s = s+ aij bjkFin bucle j:

    cik = s

    Fin bucle k:

    Fin bucle i:

  • 8 CAPTULO 1. CLCULO APROXIMADO, ALGORITMOS, ERRORES

    2. Imprimir C = (cik)mp :

    3. Fin.

    Este algoritmo concluye en un nmero nito de pasos, exactamente en m p (n+ 2) pasos. Lasoperaciones elementales que se realizan son sumas y productos. Adicionalmente se hacen 2m pasignaciones. Note que la escritura s = s + aijbjk no es una ecuacin, se trata de una asignacinpus el producto aijbjk se suma a s y este resultado se almacena en s.

    6. Intercambio de dos las de una matriz.

    Sea A = (aij)mn 2Mmn [R] : La matriz B = (bij)mn obtenida al intercambiar la la i con la laj con i < j se dene como B = Ei!jA; donde Ei!j = (epq)mm se obtiene de la matriz identidadI = (Ili)mm al intercambiar la la i con la la j; por lo tanto Ei!j = (epq)mm est denida comosigue:

    eik =

    0; si k 6= j1; si k = j;

    ejk =

    0; si k 6= j1; si k = i;

    k = 1; : : : ;m;

    y para p = 1; : : : ;m con p 6= i; j; epk =0; si p 6= k;1; si p = k

    k = 1; : : : ;m:

    Un algoritmo que realiza el producto Ei!jA se muestra a continuacin.

    Algoritmo

    Datos de entrada; m;n 2 Z+; i; j 2 Z+; A = (aij)mn :Datos de salida: B = (bpr)mn :

    1. Si m = 1 continuar en 5).

    2. p = 1; : : : ;m

    si p 6= i y p 6= jr = 1; : : : ; n

    bpr = apr

    Fin bucle r:

    Fin bucle p:

    3. r = 1; : : : ; n

    c = air

    bir = ajr

    bjr = c

    Fin bucle r:

    4. Imprimir B = (bpr)mn : Continuar en 6).

    5. Imprimir mensaje: m 2:6. Fin.

    La ejecucin de este algoritmo implica la realizacin de asignaciones y de comparaciones, as elnmero de comparaciones es 2m+1 y el nmero de asignaciones n (m+ 1) : Obviamente el algoritmoconcluye en un nmero nito de pasos.

    Note que se requiere de la siguiente informacin: talla de la matriz A, esto es, los enteros positivosm; n, los mn coecientes aij de A; la la i, la la j. Esta ltima informacin implica que m 2:Si m = 1 no se realiza intercambio de las.

    7. Producto de una matriz por un vector.

    Sean A = (aij)mn 2 Mmn [R] ; !x = (x1; ; xn) 2 Rn. El producto A!x se dene como sigue:

    A!x =

    264Pnj=1 a1jxj...Pn

    j=1 amjxj

    375 :

  • 1.3. EJEMPLOS DE ALGORITMOS Y PROBLEMAS 9

    Para elaborar un algoritmo de clculo del producto de la matriz A por el vector !x , esto es, A!xse requiere de la siguiente informacin: talla de la matriz A, o sea m; n 2 Z+, de sus componentesaij ; i = 1; : : : ;m; j = 1; : : : ; n, y de los componentes o coordenadas xi; i = 1; : : : ; n del vector!x . Con esta informacin el producto A!x puede calcularse con el algoritmo que se propone acontinuacin.

    Algoritmo

    Datos de entrada: m;n 2 Z+; A = (aij)mn; !x = (x1; ; xn):Datos de salida: ~z = A~x:

    1. c = 0:

    2. i = 1; : : : ;m

    j = 1; : : : ; n

    c = c+ aij xjFin bucle j:

    zi = c

    c = 0:

    Fin bucle i:

    3. Imprimir resultado !z = (z1; ; zm):4. Fin.

    Note que el algoritmo concluye luego de m n pasos en los que intervienen productos y adiciones.

    8. Vectores colineales. Angulo entre vectores y base ortogonal de R2:

    Sean !u 1 = (a1; b1) ; !u 2 = (a2; b2) dos elementos no nulos de R2: Se considera el siguiente problema:determinar si los vectores !u 1; !u 2 no son colineales, en tal caso calcular el ngulo que forman dichosvectores y construir una base ortogonal. Elaborar un algoritmo numrico.

    Analicemos la existencia de soluciones.

    Consideramos en el plano el sistema de coordenadas rectangulares y sean !u 1 = (a1; b1) ; !u 2 =(a2; b2) dos vectores no nulos. Se sabe que

    !u 1 y !u 2 son colineales si y solo si sus coordenadassatisfacen la relacin a1b2 a2b1 = 0: Por lo tanto, !u 1 y !u 2 no son colineales si y solo sid = a1b2 a2b1 6= 0:El producto escalar de los vectores !u 1; !u 2 se nota con !u 1 !u 2 y est denido como !u 1 !u 2 =a1a2 + b1b2: La longitud o norma de un vector

    !u = (a; b) 2 R2 se nota k!u k y se dene como

    k!u k = (!u !u ) 12 =pa2 + b2:

    Adems, la medida del ngulo que forman los vectores !u 1; !u 2 es el nmero real 2 [0; ] denidocomo

    cos () =!u 1 !u 2k!u 1k k!u 2k

    y de esta relacin

    = arc cos

    !u 1 !u 2k!u 1k k!u 2k

    :

    Recordemos que dos vectores !u ; !v de R2 son ortogonales o perpendiculares si y solo si !u !v = 0:En tal caso escribimos !u ? !v :En la gura de la izquierda se muestran los vectores no nulos y no colineales !u 1; !u 2 y el ngulo que forman dichos vectores. En la gura de la derecha se muestran los vectores !u 1; !u 2; la

  • 10 CAPTULO 1. CLCULO APROXIMADO, ALGORITMOS, ERRORES

    proyeccin ortogonal de !u 2 sobre !u 1 y el vector !c ortogonal a !u 1; esto es c ? !u 1:

    Figura 1 Figura 2

    Ponemos !v 1 = !u 1: Para construir una base ortogonal f!v 1;!v 2g consideramos las dos condicionessiguientes:

    hallar 2 R y !c 2 R2 tales que!u 1 +!c = !u 2;!u 1 ? !c :

    Calculemos : Multiplicando escalarmente por !u 1 la primera igualdad, se tiene

    (!u 1 +!c ) !u 1 = !u 2 !u 1y como el producto escalar es distributivo respecto de la adicin de vectores, resulta

    !u 1 !u 1 +!c !u 1 = !u 2 !u 1:

    Tomando en consideracin que !u 1 ? !c que a su vez es equivalente a !u 1 !c = 0; se sigue que

    !u 1 !u 1 = !u 2 !u 1:

    Puesto que k!u 1k2 = !u 1 !u 1 y como el producto escalar es conmutativo, esto es, !u 2 !u 1 = !u 1 !u 2resulta =

    !u 1 !u 2k!u 1k2

    : El nmero real se llama coeciente de Fourier.

    Una vez calculado pasamos a determinar el vector !c : De la igualdad !u 1 +!c = !u 2 se obtiene!c :!c = !u 2 !u 1 = !u 2

    !u 1 !u 2k!u 1k2

    !u 1:

    Denimos !v 2 = !c : As !v 1 ? !v 2: En la gura siguiente se muestran los vectores !v 1; !v 2 talesque !v 1 ? !v 2:

    Figura 3

    Con todos estos elementos estamos en condiciones de elaborar un algoritmo numrico que permitaidenticar si dos vectores no nulos son o no colineales. En caso de no ser colineales, calcular elngulo que forman y obtener una base ortogonal f!v 1;!v 2g :Algoritmo

    Datos de entrada: !u 1 = (a1; b1) ; !u 2 = (a2; b2)Datos de salida: Mensaje vectores colineales, ; !v 1; !v 2:

  • 1.3. EJEMPLOS DE ALGORITMOS Y PROBLEMAS 11

    1. Vericar a1 6= 0 o b1 6= 0; y, a2 6= 0 o b2 6= 0: Caso contrario !u 1; !u 2 son nulos. Continuar en10)

    2. Calcular d = a1b2 a2b1:3. Si d = 0; continuar en 9).

    4. Calcular p = a1a2 + b1b2;

    n1 =a21 + b

    21

    12 ;

    n2 =a22 + b

    22

    12 ;

    = arc cos

    p

    n1n2

    :

    5. Poner !v 1 = (a1; b1) :6. Calcular =

    p

    n21;

    x = a2 a1;y = b2 b1:

    7. Poner !v 2 = (x; y) :8. Imprimir: ngulo ; vectores ortogonales !v 1; !v 2: Continuar en 11).9. Imprimir: !u 1; !u 2 vectores colineales. Continuar en 11).10. Imprimir: !u 1; !u 2 vectores nulos.11. Fin.

    El nmero total de operaciones elementales que se realizan en la ejecucin de este algoritmo son 22operaciones, comparaciones 5, asignaciones 4, una evaluacin de la funcin arco coseno. Note queel punto 4) del algoritmo se ejecuta cuando d 6= 0:Veriquemos el algoritmo con los siguientes datos !u 1 = (3; 1) ; !u 2 =

    2;p5 :Claramente los vectores!u 1; !u 2 son no nulos. Pasemos a calcular d. Tenemos d = 3

    p5(2)1 =

    2 + 3p5 y d 6= 0 con lo que se continua con el clculo de p; n1; n2 y : Tenemos

    p = 3 (2) + 1p5 = 6 +

    p5;

    n1 =32 + 12

    12 =p10; n2 =

    (2)2 +

    p52 12

    = 3;

    = arc cos

    6 +p53p10

    !' arc cos

    3;7639320239;48683298

    ' 1;978773429:

    Ponemos !v 1 = (3; 1) :Calculemos el coeciente de Fourier ; y, x e y :

    =p

    n21=6 +p510

    ' 0;3763932023;x = a2 a1 ' 2 (0;3763932023) 3 = 0;870820393;y = b2 b1 '

    p5 (0;3763932023) 1 = 2;61246118:

    El vector !v 2 est denido como !v 2 = (0;870820393; 2;61246118) :El smbolo ' se utiliza para indicar un valor aproximado.

  • 12 CAPTULO 1. CLCULO APROXIMADO, ALGORITMOS, ERRORES

    En la gura siguiente se muestran los vectores !u 1; !u 2 y los vectores ortogonales !v 1; !v 2:

    Figura 4

    9. En este ejemplo se trata el mtodo de eliminacin gaussiana para sistemas de ecuaciones linealesde 33: Comencemos observando que los sistemas de tres ecuaciones con tres incgitas ms simplesde resolver son los sistemas de ecuaciones denominados diagonales, los denominados triangularessuperiores y triangulares inferiores que en ese orden se presentan a continuacin:8

  • 1.3. EJEMPLOS DE ALGORITMOS Y PROBLEMAS 13

    de eliminacin gaussiana es transformar el sistema de ecuaciones lineales dado en un sistema deecuaciones lineales triangular superior, que como hemos visto, esta clase de sistemas son los mssimples de resolver.

    Ejemplos

    1. Resolver el sistema de ecuaciones lineales siguiente: (x; y; z) 2 R3 tal que8>>>>:x+ 2y + 3z = 7

    5y 8z = 1444

    5z =

    132

    5:

    Note que k1 se obtiene como el cociente cambiado de signo del coeciente de y de la tercera ecuacindividido para el coeciente de y de la segunda ecuacin, siempre que este no sea nulo.

    c) Tercera etapa: Resolvemos el sistema de ecuaciones triangular superior. Comenzamos con laterera ecuacin, obtenemos z: z = 13244 = 3: De la segunda ecuacion obtenemos y: y =

    148z5 =

    14835 = 2; y de la primera ecuacin obtenemos x = 7 2y 3z = 7 2 (2) 3 3 = 2: La

    solucin es x = 2; y = 2; z = 3, que escibimos (2; 2; 3):2. Considerar el sistema de ecuaciones lineales siguiente: (x; y; z) 2 R3 tal que8>>>>>>:2x+ y = 2

    5

    2y + z = 1

    3x+ 4y + z = 4:

    Sea k1 = 32=3

    2(k1 se obtiene dividiendo el coeciente de x de la tercera ecuacin para el

    coeciente de x de la primera ecuacin, cambiado de signo). Multiplicando a la primera ecuacin

  • 14 CAPTULO 1. CLCULO APROXIMADO, ALGORITMOS, ERRORES

    por k1; el resultado sumamos a la tercera ecuacin. Tenemos

    8>>>>>>>:2x+ y = 2

    5

    2y + z = 1

    11

    2y + z = 1:

    Para obtener

    un sistema de ecuaciones triangular superior, mantenemos jas la primera y segunda ecuaciones delsistema precedente, eliminemos la incgnita y de la tercera ecuacin.

    Sea k2 = 11

    25

    2

    = 115(k2 se obtiene dividiendo el coeciente de y de la tercera ecuacin para el

    coeciente de y de la segunda ecuacin, cambiado de signo): Multiplicamos a la segunda ecuacin

    por k2; el resultado sumamos a la tercera, resulta

    8>>>>>>>>>:

    2x+ y = 25

    2y + z = 1

    65z = 6

    5;

    con lo que hemos obtenido

    un sistema de ecuaciones triangular superior. Determinemos su solucin. De la tercera ecuacin,obtenemos z = 1: De la segunda ecuacin, se obtiene y : y = 25(1z) = 25(11) = 0: De la primeraecuacin se deduce x: x = 12(2 y) = 12(2 0) = 1: La solucin del sistema de ecuacioneslineales propuesto es (1; 0; 1):3. Hallar la solucin si existe, del sistema de ecuaciones lineales que se propone: (x; y; z) 2 R3

    tal que

    8>>>>>:y + z = 2

    2x+ y z = 65x+ y + 6z = 10:

    Para obtener (siempre que sea posible) un sistema triangular

    superior, la primera accin que debemos realizar es intercambiar las ecuaciones del modo siguiente:8>>>>:5x+ y + 6z = 10

    7

    5y +

    7

    5z = 10

    y + z = 2:Manteniendo jas las dos primeras ecuaciones, eliminemos y de la tercera ecuacin. Multipliquemos

    por k1 = 175

    = 57a la segunda ecuacin y sumemos con la tercera:

    8>>>>>>>>>:

    5x+ y + 6z = 10

    7

    5y +

    7

    5z = 10

    0 = 647;

    que

    muestra que la tercera igualdad es contradictoria, es decir que el sistema de ecuaciones propuestono tiene solucin.

    1.3.2. Clculo con funciones

    Un polinomio P de grado n con coecientes reales lo denotamos como sigue:

    P (x) = a0 + a1x+ + anxn =nXk=0

    akxk x 2 R,

    donde ak 2 R con k = 0; 1; ; n son los coecientes y an 6= 0.

  • 1.3. EJEMPLOS DE ALGORITMOS Y PROBLEMAS 15

    En orden de complejidad, los ms simples son los polinomios constantes P (x) = c x 2 R, con c 2 Rjo. A continuacin, los polinomios de grado 1 tienen la forma P (x) = a+ bx; con a; b; x 2 R, a; b jos yb 6= 0: Los polinomios de grado 2 se escriben como P (x) = a+ bx+ cx2 con a; b; c; x 2 R, a; b; c jos yc 6= 0: Los polinomios de grado tres se escriben como P (x) = a + bx + cx2 + dx3 con a; b; c; d; x 2 R,a; b; c; d jos y d 6= 0:Los polinomios son las funciones reales ms simples de calcularse en un asignado dato x 2 R. Es claroque los ms simples son los polinomios constantes y de grado 1, y realizar clculos con esta clase depolinomios no presenta dicultad alguna. Nos interesamos en los polinomios de grado 2 que presentanalguna dicultad con los clculos pus a medida que el grado del polinomio es ms grande, el nmero deoperaciones elementales se incrementa y los resultados pueden no ser sucientemente exactos:

    1. Esquema de Hrner.

    Con frecuencia requerimos realizar evaluaciones de polinomios de modo que el nmero total deoperaciones elementales a realizar sea el ms pequeo posible y que el resultado sea el ms exactoposible. Por razones que veremos ms adelante y que estn relacionadas con el condicionamiento,debemos evitar el clculo directo de las potencias de x; de los factoriales, sumas y restas alternadas.

    Consideremos el polinomio P (x) = a0 + a1x+ + anxn =nXk=0

    akxk x 2 R, donde ak 2 R con

    k = 0; 1; ; n son los coecientes y an 6= 0. Nos interesamos primeramente en el clculo de P (x)en un asignado x 2 R, de modo que se evite el clculo directo de las potencias de x y el nmerode operaciones elementales sea el ms pequeo posible. Esto se logra si se escribe P (x) en la formasiguiente:

    P (x) = a0 + xa1 + + anxn1

    ...

    = a0 + x(a1 + x(a2 + x(a3 + + x(an1 + xan) ))):A esta forma de calcular P (x) se conoce con el nombre de esquema de Hrner. Utilizando estaescritura, podemos elaborar un algoritmo para calcular P (x) en un punto dado x 2 R. Note queel proceso de clculo de P (x) inicia en el trmino del parntesis interior an1 + xan y continuasucesivamente al exterior, que hace el proceso de clculo sea muy prctico en su aplicacin. Elnmero de operaciones elementales (sumas y productos) que se requiere para calcular P (x) es a loms 2n:

    Note que si x 2 R, el clculo de x2 = x x signica una operacin elemental, el clculode x3 = x2 x signica dos operaciones elementales, entonces para el clculo del polinomioP (x) = a+ bx+ cx2 se requieren de 5 operaciones (sumas y productos), mientras que si se escribeen la forma P (x) = a + x(b + cx) se requieren nicamente de 4 operaciones (sumas y productos).Para el clculo del polinomio P (x) = a + bx + cx2 + dx3 se requieren de 9 operaciones y con elesquema de Hrner se requieren de 6 operaciones y mejora la exactitud del resultado.

    Para elaborar un algoritmo que permita calcular P (x) requerimos de la siguiente informacin:grado del polinomio n 2 Z+, coeecientes a0; a1; : : : ; an 2 R y del dato x 2 R. Con estos elementosproponemos el siguiente algoritmo que se conoce con el nombre de esquema de Hrner.

    Algoritmo

    Datos de entrada: n 2 Z+; a0; a1; : : : ; an; x 2 R:Datos de salida: x, P (x):

    1. b = an

    2. k = 0; 1; : : : ; n 1j = n kz = aj1 + xb

    b = z

  • 16 CAPTULO 1. CLCULO APROXIMADO, ALGORITMOS, ERRORES

    Fin bucle k:

    3. Imprimir x; b = P (x) :

    4. Fin.

    Note que el clculo de P (x) concluye en un nmero nito de pasos. Veriquemos el algoritmopropuesto. Para el efecto, consideramos el siguiente polinomio que a su vez lo escribimos usando elesquema de Hrner:

    P (x) = 0;5 + 0;3x 0;25x2 2;56x3 + 3x4 = 0;5 + x(0;3 + x(0;25 + x(2;56 + 3x))) x 2 R.

    Calculemos P (x) en los puntos x = 0; 0;5 y 0;5: Utilizando la escritura de P (x); tenemos

    P (0:) = 0;5 + 0:(0;3 + 0:(0;25 + 0:(2;56 + 3 0:))) = 0;5;P (0;5) = 0;5 + 0;5(0;3 + 0;5(0;25 + 0;5(2;56 + 3 0;5))) = 0;455;

    P (0;5) = 0;5 0;5(0;3 0;5(0;25 0;5(2;56 3 0;5))) = 0;795:

    2. Consideremos la funcin E de R+ en R denida como E(x) =nXk=0

    xk

    (k + 1)(k + 2)(k + a)x 2 R+;

    donde a 2 R+ jo.Dado x 2 R, para calcular E (x), primeramente debemos expresar en forma explcita el sumatorioy luego escribirle en forma del esquema de Hrner como a continuacin se muestra:

    E(x) =1

    1 2 a +x

    2 3 (1 + a) +x2

    3 4 (2 + a) + +xn1

    n(n+ 1)(n 1 + a) +

    +xn

    (n+ 1)(n+ 2)(n+ a)

    =1

    2a+ x

    1

    2 3(1 + a) + x

    1

    3 4(2 + a) + + x

    1

    n(n+ 1)(n 1 + a)+

    +x

    (n+ 1)(n+ 2)(n+ a)

    :

    Note que en la ltima igualdad se evitan los clculos directos de las potencias xk; k = 2; : : : ; n,lo que reduce el nmero de operaciones elementales, facilita la escritura de un algoritmo para suclculo.

    Ponemos ak =1

    (k + 1)(k + 2)(k + a); k = 0; 1; 2; :::; n. En el clculo de ak intervienen 3 adiciones,

    3 productos y una divisin.

    Algoritmo

    Datos de entrada: n; a; x:

    Datos de salida: x; E(x):

    1. y =1

    (n+ 1)(n+ 2)(n+ a):

    2. k = 1; :::; n

    j = n ky =

    1

    (k + 1)(k + 2)(k + a)+ y x:

    Fin bucle k:

    3. Imprimir resultado y = E (x) :

    4. Fin.

    Observe que el clculo de E (x) concluye en un nmero nito de pasos.

  • 1.3. EJEMPLOS DE ALGORITMOS Y PROBLEMAS 17

    3. Para cada n 2 Z+ con n 3 impar, se considera la funcin 'n denida como sigue:

    'n (x) =

    nXk=0

    (1)k x k2k!3k

    x 0:

    Se trata de calcular 'n (x) de modo que el nmero de operaciones elementales sea el ms pequeoposible y elaborar un algoritmo de clculo que permita calcular 'n (xk) k = 0; 1; : : : ;m en puntosxk igualmente espaciados en el intervalo [0; 100] :

    Sigamos la metodologa utilizada para resolver problemas. Primeramente debemos constatar quese tienen soluciones. En efecto, la funcin 'n est bien denida para todo x 0: Adems, de ladenicin de 'n (x) se tiene

    'n (x) = 1x12

    1! 3 +x

    2! 32 x32

    3! 33 + +(1)n1

    (n 1)! 3n1 +(1)nn! 3nx

    n2 :

    Ms adelante veremos que la resta de nmeros positivos muy prximos entre s es una operacinpeligrosa pus los errores de redondeo son amplicados, ms an, la realizacin de sumas y restasalternadas es muy peligrosa ya que los errores de redondeo provocan grandes errores en los datosde salida. Vemos que en el clculo de 'n (x) debemos realizar este tipo de operaciones, adems, sedeben calcular los factoriales k! k = 1; 2; : : : ; n; las potencias 3k; x

    k2 :

    Puesto que n es impar, n 1 es par y en consecuencia p = n 12

    es un entero positivo, asociamos

    todos los trminos positivos y todos los trminos negativos. Cada grupo contiene exactamente p+1trminos. As

    'n (x) = 1 +x

    2! 32 + +xn12

    (n 1)! 3n1 "

    x12

    1! 3 +x32

    3! 33 + +xn2

    n! 3n#

    =

    pXk=0

    xk

    (2k)! 32k pXk=0

    xk+12

    (2k + 1)! 32k+1

    =

    pXk=0

    1

    (2k)!

    x9

    k px3

    pXk=0

    1

    (2k + 1)!

    x9

    kx 0:

    Denimos

    1 (x) =

    pXk=0

    1

    (2k)!

    x9

    kx 0; 2 (x) =

    pXk=0

    1

    (2k + 1)!

    x9

    kx 0:

    En forma explcita, 1 (x) se escribe como sigue:

    1 (x) = 1 +x

    2! 9 +x2

    4! 92 + +xp1

    [2 (p 1)]! 9p1 +xp

    (2p)! 9p

    = 1 +1

    2

    x

    9

    1 +

    1

    3 4x

    9

    1 + + 1

    (2p 3) (2p 2)x

    9

    1 +

    1

    (2p 1) (2p)x

    9

    :

    Procediendo en forma similar con 2 (x) ; obtenemos

    2 (x) =1

    1!+1

    3!

    x

    9+1

    5!

    x2

    92+ + 1

    (2p 1)!xp1

    9p1+

    1

    (2p+ 1)!

    xp

    9p

    = 1 +1

    3!

    x

    9

    1 +

    1

    4 5x

    9

    1 + + 1

    (2p 2) (2p 1)x

    9

    1 +

    1

    (2p) (2p+ 1)

    x

    9

    :

    Si ponemos y =x

    9; 1 (x) y 2 (x) se escriben como

    1 (x) = 1 +y

    2

    1 +

    y

    3 41 + + y

    (2p 3) (2p 2)1 +

    y

    (2p 1) (2p)

    ;

    2 (x) = 1 +y

    6

    1 +

    6

    4 51 + + 6

    (2p 2) (2p 1)1 +

    6

    (2p) (2p+ 1)

    :

  • 18 CAPTULO 1. CLCULO APROXIMADO, ALGORITMOS, ERRORES

    La escritura de 1 y 2 es una variante del esquema de Hrner que evita el clculo directo de losfactoriales k! k = 1; 2; : : : ; n; de las potencias xk y 3k: De esta manera reduce signicativamente elnmero de operaciones elementales y permite elaborar un algritmo numrico en forma muy simple.Adems,

    'n (x) = 1 (x)px

    32 (x) x 0;

    el clculo de 'n (x) implica una sola resta y no sumas y restas como originalmente se tena en el

    clculo de 'n (x) : Note tambin que los cocientesx

    9que tanto en 1 (x) como en 2 (x) se realizan, se

    evitan con el clculo de y =x

    9: El nmero de operaciones elementales que se realizan para calcular

    1 (x) y 2 (x) son a lo ms de 2 (6p) = 6 (n 1) ; y el clculo de 'n (x) requiere de a lo ms6 (n 1) + 5 = 6n 1 operaciones elementales.Si se debe calcular 'n (x) en la forma original se deben realizar a lo ms 1+

    n

    2(1 + 3n) operaciones

    elementales.

    Observe que el clculo de(px)k

    k! 3k k = 3; : : : ; n requiere de 3k 2 operaciones elementalespus (k 1)!k = k! corresponde cada una operacin elemental. Anlogamente ak1a = ak es unaoperacin elemental.

    Para n = 7 se requieren 77 operaciones elementales, mientras que con la forma simplicada serequieren a lo ms 41 operaciones elementales. Para n = 15; en la forma original se requierenaproximadamente 345 operaciones elementales, mientras que en la forma simplicada requierenaproximadamente 89 operaciones elementales.

    Cuando n es grande se presenta otras dicultades de clculo de n!; 3n; xn; por ejemplo 15! '1;30767436 1012; 515 ' 3;051757812 1010:Finalmente, como se debe calcular 'n (xk) en puntos igualmente espaciados xk de [0; 100] ; se dene

    h =100

    my xk = kh k = 0; 1; : : : ;m:

    Con todos estos resultados se propone el siguiente algoritmo de clculo de 'n (xk) k = 0; 1; : : : ;m;y, n 2 Z+ con n 3 impar.Algoritmo

    Datos de entrada: m;n 2 Z+; xk k = 0; 1; : : : ;m:Datos de salida: xk; 'n (xk) k = 0; 1; : : : ;m:

    1. Vericar n 3 impar. Caso contrario continuar en 6).2. h =

    100

    m:

    3. Para x = 0; poner 'n (0) = 1:

    4. Para k = 1; : : : ;m

    b = 1:

    c = 1:

    xk = kh

    y =xk9

    j = 0; 1; : : : ; p 1i = p j;b = 1 +

    1

    (2i 1) (2i) y b;

    c = 1 +1

    (2i) (2i+ 1) y b;

    Fin de bucle j.

  • 1.3. EJEMPLOS DE ALGORITMOS Y PROBLEMAS 19

    'n (xk) = bpxk3c:

    Fin de bucle k.

    5. Imprimir xk; 'n (xk) k = 0; 1; : : : ;m:

    6. Mensaje: Error de lectura de n:

    7. Fin.

    Para n = 3; la funcin '3 (x) est denida como

    '3 (x) = 1px

    1! 3 +x

    2! 32 (px)3

    3! 33 x 0:

    Calculemos '3 (10) : Tenemos

    '3 (10) = 1p10

    1! 3 +10

    2! 32 p103

    3! 33= 1 1;054092553 + 0;555555556 0;1952023247 = 0;3062606775:

    Para esta clculo se requieren de 15 operaciones elementales. Note las molestias en la realizacin

    de los clculos en '3 (x) : Apliquemos el algoritmo. Ponemos y =10

    9' 1;111111111:

    '3 (x) = 1 +y

    2p10

    3

    1 +

    y

    6

    ;

    '3 (10) = 1;555555556p10

    3 1;185185185 = 0;306260678:

    Se requieren de 9 operaciones lementales.

    Para n = 7; '7 (x) est denido como

    '7 (x) = 1px

    1! 3 +x

    2! 32 (px)3

    3! 33 +x2

    4! 34 (px)5

    5! 35 +x3

    6! 36 (px)7

    7! 37que se escribe como

    '7 (x) = 1 +y

    2

    1 +

    y

    12

    1 +

    y

    30

    px

    3

    1 +

    y

    6

    1 +

    y

    20

    1 +

    y

    42

    donde y =

    x

    9: Para x = 10; y =

    10

    9' 1;111111111; y aplicando el algoritmo, obtenemos

    '7 (x) = 1;608901082 1;260426345 = 0;348474737:En el siguiente captulo se tratan las series de potencias, las mismas que se aproximan con sumasnitas, las que a su vez se escriben siguiendo un procedimiento similar al discutido en el ejemploque acabamos de presentar.

    Note que ' (x) = exp(px

    3) =

    1Pk=0

    (1)k x k2k!3k

    x 0, y la funcin 'n es la suma parcial deldesarrollo en serie de potencias de ': Para x = 10, los valores que hemos calculado 'n(10) sonaproximaciones de '(10) :

    '(10) = exp(p10

    3) ' 0;3485085369:

    4. Este es un ejemplo de una funcin que posee una discontinuidad evitable.

    Se dene la funcin real ' como sigue: ' (x) =

    1 + x4

    13 1 x4 13x4

    0 < jxj 1: Se deseacalcular ' (x) para x 2 ]0; 1[ :Suponemos que con una calculadora de bolsillo (calculadora hipottica) se tiene 10100 ' 0 pero1099 6' 0: Entonces, para 0 < jxj 1025 se tiene 0 < x4 10100 ' 0 y no podemos calcular

  • 20 CAPTULO 1. CLCULO APROXIMADO, ALGORITMOS, ERRORES

    ' (x) : Para resolver este inconveniente, aplicamos el binomio de Newton con exponente racionalque se dene a continuacin:

    (1 + a)r = 1 + ra+r (r 1)2!

    a2 +r (r 1) (r 2)

    3!a3 + ;

    donde r 2 Q con r 6= 0; jaj < 1:Apliquemos el binomio de Newton a

    1 + x4

    13 y

    1 x4 13 para 0 < jxj < 1; tenemos

    1 + x4

    13 = 1 +

    1

    3x4 +

    1

    3

    1

    3 1

    2!x8 +

    1

    3

    1

    3 1

    1

    3 2

    3!x12

    +

    1

    3

    1

    3 1

    1

    3 2

    1

    3 3

    4!x16 +

    1

    3

    1

    3 1

    1

    3 2

    1

    3 3

    1

    3 4

    5!x20

    + = 1 +

    1

    3x4 1

    9x8 +

    5

    81x12 10

    243x16 +

    22

    729x20 + ;

    1 x4 13 = 1 13x4 1

    9x8 5

    81x12 10

    243x16 22

    729x20 + :

    Entonces 1 + x4

    13 1 + x4 13 = 2

    3x4 +

    10

    81x8 +

    44

    729x16 + ;

    de donde

    ' (x) =

    1 + x4

    13 1 x4 13x4

    =2

    3+10

    81x8 +

    44

    729x16 + 0 < jxj < 1:

    En esta nueva formulacin de la funcin '; vemos que se ha eliminado el inconveniente de clculoque arriba sealamos. En realidad se tiene una discontinuidad evitable en x = 0: Tenemos

    lmx!0

    '(x) =2

    3; luego ' (x) ' 2

    3si 0 < jxj 1025

    Ms an, si 0 < jxj 1025

    2 ; 0 < jxj8 10100 ' 0; y ' (x) se aproxima como ' (x) ' 23:

    Para x tal que 10252 < jxj 10 254 ; se tiene 10200 < jxj16 10100 ' 0; luego ' (x) se aproxima

    como ' (x) ' 23+10

    81x8:

    Si 10254 < jxj 10 10024 ' 6;812920691 105; entonces ' (x) se aproxima como

    ' (x) ' 23+10

    81x8 +

    44

    729x16 =

    2

    3+ x8(

    10

    81+44

    729x8):

    Para x tal que 1010024 < jxj 10 10032 se tiene 10 4003 < jxj32 10100 ' 0; en cuyo caso

    ' (x) ' 23+10

    81x8 +

    44

    729x16 +

    718

    19683x24 =

    2

    3+ x8

    10

    81+ x8

    44

    729+

    718

    19683x8

    :

    As sucesivamente.

    Para x tal que 101 < jxj 1; calculamos ' (x) con la expresin que se deni originalmente. As,

    ' (0;1) =

    1 + (0;1)2

    13

    1 (0;1)4

    13

    (0;1)4' 1;000033332 0;9999666656

    (0;1)4' 0;6666664;

    ' (0;2) =

    1 + (0;2)2

    13

    1 (0;2)4

    13

    (0;1)4' 1;000533049 0;999466382

    (0;2)4' 0;666666875:

    Note que si se utiliza el desarrollo de ' (x) =2

    3+10

    81x8 + ; se obtiene ' (0;2) ' 0;6666669827

    que es mucho ms exacto que el precedente:

  • 1.3. EJEMPLOS DE ALGORITMOS Y PROBLEMAS 21

    5. En este ejemplo se trata un mtodo de derivacin numrica.

    Sea f una funcin real derivable en el intervalo ]a; b[ ; x0 2 ]a; b[ : La derivada de f en x0 se notaf 0 (x0) o tambin

    df

    dx(x0) y se dene como

    f 0 (x0) = lmh!0

    f (x0 + h) :f (x0)

    h;

    siempre que el lmite exista. El cocientef (x0 + h) :f (x0)

    hh 6= 0; se llama cociente incremental.

    Admitiremos que la funcin f es derivable en algn intervalo abierto ]a; b[ de R y nos proponemoscalcular numricamente f 0 (x0) : Sea h 2 R con h 6= 0 sucientemente pequeo. De la denicin def 0 (x0) surge inmediatamente la idea de aproximar f 0(x0) mediante el cociente incremental, esto es,

    f 0 (x0) ' f (x0 + h) :f (x0)h

    :

    En la gura siguiente se muestra la grca de una funcin f denida en ]a; b[ y la recta secante queune los puntos (x0; f (x0)) y (x0 + h; f (x0 + h)) en los casos h < 0 y h > 0:

    Figura 5 Figura 6

    Ponemos y0 = f (x0) ; y1 = f (x0 + h) y y00 una aproximacin de f 0 (x0) denida como

    y00 =y1 y0h

    ;

    y00 la denominaremos derivada numrica de f 0 (x0) :

    Supongamos que f posee derivada segunda en ]a; b[ : El polinomio de Taylor con resto de f estdenido como

    f (x0 + h) = f (x0) + hf0 (x0) +

    h2

    2!f 00 () ;

    con h 6= 0 y entre x0 y x0 + h; entonces

    f 0 (x0) =f (x0 + h) f (x0)

    h h2!f 00 () :

    La aproximacin de f 0 (x0) se escribe como

    y00 =y1 y0h

    + 0 (h) :

    Con frecuencia y0 = f (x0) ; y1 = f (x0 + h) no se calculan exactamente, consideraremos y0; y1aproximaciones de f (x0) y f (x0 + h) respectivamente.

    Ejemplo

  • 22 CAPTULO 1. CLCULO APROXIMADO, ALGORITMOS, ERRORES

    Consideremos la funcin real denida como f (x) = x4 x 2 R: Claramente f es derivable.Calculemos numricamente f 0 (1;5) : Ponemos x0 = 1;5: En la tabla siguiente se muestran valores

    de h; x0 + h; y0 = f (x0) ; y1 = f (x0 + h) ; f 0 (x0) ' y00 =y1 y0h

    :

    h x0 + h y0 y1 f0 (x0) ' y00 =

    y1 y0h

    :

    0;1 1;4 5;0625 3;8416 12;2090;005 1;495 5;0625 4;995336751 13;43264980;00005 1;499995 5;0625 5;0624325 13;50;05 1;55 5;0625 5;77200625 14;190125

    0;0005 1;5005 5;0625 5;069253376 13;506752

    0;000005 1;500005 5;0625 5;0625675 13;5

    El valor exacto de f 0 (1;5) es 13;5:

    En base a la denicin de derivada numrica as como al proceso de clculo seguido en el ejemplo,se propone como ejercicio elaborar el algoritmo correspondiente.

    En un captulo ms adelante se vern otros mtodos numricos de clculo de f 0 (x0) y de derivadasde orden superior. Igualmente, se tratar el clculo aproximado de derivadas parciales.

    6. En este ejemplo se considera un mtodo de integracin aproximada.

    Sean a; b 2 R con a < b; u una funcin real continua denida en [a; b]. Se considera el siguienteproblema:

    hallar I (u) =Z bau (x) dx:

    Como es conocido, la integral denida de una funcin continua est bien denida. Para el clculo deI (u) se consideran dos casos: el primero en el que podemos encontrar una funcin primitiva F deu, esto es, una funcin F tal que F 0 (x) = u (x) 8x 2 [a; b] y en consecuencia I (u) = F (b)F (a) :En el segundo caso, no podemos encontrar una funcin primitiva de u; con lo que el clculo de I (u)debemos realizarlo en forma aproximada. Para el efecto, elegimos el mtodo conocido como la regladel rectngulo que describimos a continuacin.

    Sean m 2 Z+ y (m) = fx0 = a; x1; : : : ; xm = bg una particin de [a; b] ; esto es, xi1 < xi i =1; : : : ;m: Ponemos hi = xixi1 i = 0; 1; : : : ;m; y bh=maxfhi j i = 1; : : : ;mg: Si se elige h = b a

    my xi = ih i = 0; 1; : : : ;m; (m) se dice particin uniforme. Se tiene hi = h y bh = h: En generalestas particiones son las ms comunes.

    Se dene la funcin real vn sobre [a; b] como sigue

    vm (x) = u (ti) x 2 [xi1; xi[ ; i = 1; : : : ;m;vm (b) = u (b) ;

    donde ti = xi1+1

    2hi es el punto medio del intervalo [xi1; xi] : La funcin vm se le llama interpolante

    de u.

    En la gura siguiente se muestra la grca de una funcin u denida en [a; b] ; la particin (m)

  • 1.3. EJEMPLOS DE ALGORITMOS Y PROBLEMAS 23

    de [a; b] con m = 5 y la funcin interpolante vm de u:

    Figura 7

    Entonces

    I (vm) =

    Z bavm (x) dx =

    mXi=1

    Z xixi1

    vm (x) dx =mXi=1

    Z xixi1

    u

    xi1 +

    1

    2hi

    dx

    =mXi=1

    hiu

    xi1 +

    1

    2hi

    :

    La aproximacin I (vm) de I (u) se llama regla del rectngulo. Note que el problema de clculo de la

    integral I (u) se le ha tansformado en uno ms sencillo que es calcular I (vm) =mPi=1

    hiu

    xi1 +

    1

    2hi

    Puesto que la funcin u se ha discretizado segn la particin (m) de [a; b] ; se tiene un conjunto depuntos u (a) ; u (ti) i = 1; : : : ;m; u (b) ; en el clculo de I (u) se comete un error de discretizacin.En anlisis numrico interesa mucho estimar el error de discretizacin en el clculo numricode integrales denidas y particularmente del mtodo de la regla del rectngulo, esto es, estimarjI (u) I (vm)j y probar que I(vm) !

    m!1 I (a) ; en un cpitulo posterior se tratarn todos estosproblemas.

    Algoritmo

    Datos de entrada: a; b 2 R; m 2 Z+; funcin u:Datos de salida: I (vm) ; mensaje.

    1. Vericar a < b: Caso contrario, continuar en 8).

    2. Calcular h =b am

    :

    3. j = 0; 1; : : : ;m

    xj = a+ jh

    Fin de bucle j.

    4. S = 0:

    5. j = 1; : : : ;m

    tj = xj1 + 0;5h

    S = S + u (tj)

    Fin de bucle j:

    6. I (vm) = hS:

    7. Imprimir I (vm) : Continuar en 9).

  • 24 CAPTULO 1. CLCULO APROXIMADO, ALGORITMOS, ERRORES

    8. Mensaje: a < b:

    9. Fin.

    Como aplicacin de la regla del rectngulo consideramos la funcin u denida como u (x) = x3 x 2[1; 2] y m = 10: Se considera la particin uniforme. Se dene h =

    1

    10= 0;1; la particin (10) del

    intervalo [1; 2] est denida como (10) = f1; 1;1; 1;2; : : : ; 1;9; 1g : Entonces

    I (v10) =10Xi=1

    hiu (ti) =10Xi=1

    hiu

    xi1 +

    1

    2hi

    =

    10Xi=1

    hu (xi1 + 0;05)

    = 0;1 [u (1;05) + u (1;15) + + u (1;95)] = 3;74625:

    El valor exacto es

    I (u) =

    Z 21u (x) dx =

    Z 21x3dx =

    1

    4x421

    =15

    4= 3;75:

    Note que jI (u) I (v10)j = 0;00375:7. Ecuaciones diferenciales

    Sean T > 0; f una funcin real denida en [0; T ] R: Suponemos que f es continua, ms an, sesupone que f satisface la condicin de Lipschitz que se indica a continuacin

    9M > 0 tal que jf (t; y1) f (t; y2)j M jy1 y2j 8y1; y2 2 R y t 2 [0; T ] :

    Se considera el problema de Cauchy de valor inicial siguiente:

    hallar u 2 C1 ([0; T ]) solucin deu0 (t) = f (t; u (t)) t 2 ]0; T [ ;u (0) = u0:

    Por la hiptesis impuesta sobre f; se sabe que dicho problema tiene solucin nica. En la generalidadde los casos, la funcin u no puede determinarse explcitamente, esta viene representada como unaintegral de una funcin que no puede integrarse con funciones elementales lo que diculta el clculonumrico de u (t) t 2 [0; T ] : Frente a estos dos hechos, la idea es aproximar la solucin de laecuacin diferencial en forma numrica.

    Sean m 2 Z+; (m) = ft0 = 0; t1; : : : ; tm = Tg una particin de [0; T ] donde tj1 < tj j =1; : : : ;m: Ponemos hj = tj1 tj j = 1; : : : ;m y bh = max

    j=1;:::;mhj : Si se elige una particin uniforme,

    se tiene tj = jh j = 0; 1; : : : ;m con h =T

    m:

    De la denicin de u0 (t) = lmh!0

    u (t+ h) u (t)h

    se sigue que para h sucientemente pequeo y no

    nulo,

    u0 (t) ' u (t+ h) u (t)h

    t 2 ]0; T [ ;y como u0 (t) = f (t; u (t)) entonces

    u (t+ h) u (t)h

    ' f (t; u (t)) t 2 ]0; T [ ;

    luegou (t+ h) ' u (t) + hf (t; u (t)) ;

    y en t = tj ; se obtiene

    u (tj+1) ' u (tj) + hf (tj ; u (tj)) j = 0; 1; : : : ;m 1:

    Denotamos con uj un aproximacin de u (tj) j = 0; 1; : : : ;m: Consideramos una particin uniformede [0; T ] : Se dene

    u0 dado,uj+1 = uj + hf (tj ; uj) j = 0; 1; : : : ;m:

  • 1.3. EJEMPLOS DE ALGORITMOS Y PROBLEMAS 25

    que se conoce como esquema numrico de Euler explcito, lo que a su vez da lugar al siguientealgoritmo.

    Algoritmo

    Datos de entrada: m; funcin f (t; u (t)) ; u0; T:

    Datos de salida: tj ; uj ; j = 0; 1; : : : ;m:

    1. Poner h =T

    m:

    2. (m) = ftj = jh j j = 0; 1; : : : ;mg :3. Para