Está en la página 1de 37

TRABAJO FINAL DE METODOS NUMERICOS 1. Introduccin La ciencia y la tecnologa describen los fenmenos reales mediante modelos matemticos.

El estudio de estos modelos permite un conocimiento ms profundo del fenmeno, as como de su evolucin futura. La matemtica aplicada es la rama de las matemticas que se dedica a buscar y aplicar las herramientas ms adecuadas a los problemas basados en estos modelos. Desafortunadamente, no siempre es posible aplicar mtodos analticos clsicos por diferentes razones:

No se adecan al modelo concreto. Su aplicacin resulta excesivamente compleja. La solucin formal es tan complicada que hace imposible cualquier interpretacin posterior. Simplemente no existen mtodos analticos capaces de proporcionar soluciones al problema.

En estos casos son tiles las tcnicas numricas, que mediante una labor de clculo ms o menos intensa, conducen a soluciones aproximadas que son siempre numrica. El importante esfuerzo de clculo que implica la mayora de estos mtodos hace que su uso est ntimamente ligado al empleo de computadores. De hecho, sin el desarrollo que se ha producido en el campo de la informtica resultara difcilmente imaginable el nivel actual de utilizacin de las tcnicas numricas en mbitos cada da ms diversos1 2. Errores El concepto de error es consustancial con el clculo numrico. En todos los problemas es fundamental hacer un seguimiento de los errores cometidos a fin de poder estimar el grado de aproximacin de la solucin que se obtiene. Los errores asociados a todo clculo numrico tienen su origen en dos grandes factores:

Aquellos que son inherentes a la formulacin del problema. Los que son consecuencia del mtodo empleado para encontrar la solucin del problema.

Dentro del grupo de los primeros, se incluyen aquellos en los que la definicin matemtica del problema es slo una aproximacin a la situacin fsica real. Estos errores son normalmente despreciables; por ejemplo, el que se comete al obviar los efectos relativistas en la solucin de un problema de mecnica clsica. En aquellos casos en que estos errores no son realmente despreciables, nuestra solucin ser poco precisa independientemente de la precisin empleada para encontrar las soluciones numricas. Otra fuente de este tipo de errores tiene su origen en la imprecisin de los datos fsicos: constantes fsicas y datos empricos. En el caso de errores en la medida de los datos empricos y teniendo en cuenta su carcter generalmente aleatorio, su tratamiento analtico es especialmente complejo pero imprescindible para contrastar el resultado obtenido computacional-mente.

En lo que se refiere al segundo tipo de error (error computacional), tres son sus fuentes principales: 1. Equivocaciones en la realizacin de las operaciones (errores de bulto). Esta fuente de error es bien conocida por cualquiera que haya realizado clculos manualmente o empleando una calculadora. El empleo de computadores ha reducido enormemente la probabilidad de que este tipo de errores se produzcan. Sin embargo, no es despreciable la probabilidad de que el programador cometa uno de estos errores (calculando correctamente el resultado errneo). Ms an, la presencia de bugs no detectados en el compilador o en el software del sistema no es inusual. Cuando no resulta posible verificar que la solucin calculada es razonablemente correcta, la probabilidad de que se haya cometido un error de bulto no puede ser ignorada. Sin embargo, no es esta la fuente de error que ms nos va a preocupar. 2. El error causado por resolver el problema no como se ha formulado, sino mediante algn tipo de aproximacin. Generalmente est causado por la sustitucin de un infinito (sumatorio o integracin) o un infinitesimal (diferenciacin) por una aproximacin finita. Algunos ejemplos son:

El clculo de una funcin elemental (por ejemplo, Seno x) empleando slo n trminos de los infinitos que constituyen la expansin en serie de Taylor. Aproximacin de la integral de una funcin por una suma finita de los valores de la funcin, como la empleada en la regla del trapezoide. Resolucin de una ecuacin diferencial reemplazando las derivadas por una aproximacin (diferencias finitas). Solucin de la ecuacin f(x) = 0 por el mtodo de Newton-Raphson: proceso iterativo que, en general, converge slo cuando el nmero de iteraciones tiende a infinito.

Denominaremos a este error, en todas sus formas, como error por truncamiento, ya que resulta de truncar un proceso infinito para obtener un proceso finito. Obviamente, estamos interesados en estimar, o al menos acotar, este error en cualquier procedimiento numrico. 3. Por ltimo, la otra fuente de error de importancia es aquella que tiene su origen en el hecho de que los clculos aritmticos no pueden realizarse con precisin ilimitada. Muchos nmeros requieren infinitos decimales para ser representados correctamente, sin embargo, para operar con ellos es necesario redondearlos. Incluso en el caso en que un nmero pueda representarse exactamente, algunas operaciones aritmticas pueden dar lugar a la aparicin de errores (las divisiones pueden producir nmeros que deben ser redondeados y las multiplicaciones dar lugar a ms dgitos de los que se pueden almacenar). El error que se introduce al redondear un nmero se denomina error de redondeo.

2.1 Definiciones Ahora que disponemos de una idea correcta de qu es el error y de cual es su origen, podemos formalizar el concepto de error. Generalmente, no conocemos el valor de una cierta magnitud y hemos de conformarnos con un valor aproximado x. Para estimar la magnitud de este error necesitamos dos definiciones bsicas: Error absoluto de x: (1) Error relativo de x:

(2)

En la prctica, se emplea la expresin: (3) En general, no conocemos el valor de este error, ya que no es habitual disponer del valor exacto de la magnitud, sino slo de una acotacin de su valor, esto es, un nmero , tal que: (4)

o bien:

(5)

De acuerdo con este formalismo, tenemos que un numero se representar del siguiente modo: = (6)

= 2.2 Dgitos significativos Sea x un nmero real que, en general, tiene una representacin decimal infinita. Podemos decir que x ha sido adecuadamente redondeado a un nmero con ddecimales, al que denominaremos x(d), si el error de redondeo, es tal que:

(7)

(8)

Ejemplo 1: Exprese el nmero x=35.47846 correctamente redondeado a cuatro (x(4)) y tres (x(3)) decimales. Calcular el error cometido. Solucin: en el primer caso obtenemos: x(4) = 35.4785 =

En el segundo caso, la aproximacin correcta es: x(3) = 35.478 =

y no la siguiente: x(3) = 35.479 =

Es decir, no es correcto redondear por exceso cuando el dgito anterior es 5 y proviene de un acarreo previo.

Otra forma de obtener el nmero de cifras significativas es mediante truncamiento, en donde simplemente se eliminan los dgitos de orden inferior. El error cometido en este caso es: (9)

y que, en general, conduce a peores resultados que el mtodo anterior. Ejemplo 2: Exprese el nmero x=35.47846 truncado a cuatro (x(4)) y tres (x(3)) decimales. Calcular el error cometido. Solucin: x(4) = 35.4784 =

x(3) = 35.478 =

2.3 Propagacin de errores Cuando se resuelve un problema matemtico por mtodos numricos y aunque las operaciones se lleven a cabo exactamente, obtenemos una aproximacin numrica del resultado exacto. Es importante tratar de conocer el efecto que sobre el resultado final del problema tiene cada una de las operaciones realizadas. Para estudiar como se propaga en error, veamos cual es el efecto que cada una de las operaciones bsicas tiene sobre el error final cuando se aplican sobre dos nmeros y :

= = = =

(10) (11) (12) (13)

Cuando el problema consiste en calcular el resultado y = f(x)tenemos la siguiente frmula aproximada de propagacin del error: (14)

En el caso ms general, en que una funcin depende de ms de una variable ( es ), la frmula aproximada de propagacin del error maximal

(15)

Ejemplo 3: Determinar el error mximo cometido en el clculo y = x1 x22 para y .

Solucin: El error cometido, de acuerdo con la ecuacin (15), se puede calcular mediante:

Sustituyendo valores, obtenemos:

Por lo que el resultado final se debe expresar como:

Ejemplo 4: Sea el siguiente sistema de ecuaciones lineales:

en donde determinar el producto xy?

; b = 1 / a y d = b - aCon qu exactitud podemos

Solucin: Primero resolveremos el sistema de ecuaciones por reduccin:

Ecuaciones que conducen a la siguiente expresin para el producto:

(16)

Resolveremos ahora el problema por dos mtodos. Primero, calcularemos el error asociado a cada una de las variables y los trminos de la expresin anterior:

Sustituyendo valores, obtenemos el siguiente resultado:

Una forma mucho ms adecuada de resolver este problema consiste en sustituir en la expresin (16) los valores de b y d por sus correspondientes expresiones en funcin de a. Sustituyendo y operando, obtenemos que el producto y el error asociado vienen dados por:

que, sustituyendo valores, conduce al resultado:

Si ambos resultados son correctos Por qu el error es mucho menor en el segundo caso que en el primero? La respuesta es simple: en el segundo caso hemos eliminado operaciones intermedias, permitiendo que algunos errores se cancelen mutuamente. En general, cuanto menor sea el nmero de pasos intermedios que efectuemos para alcanzar la solucin, menor ser el error cometido. 2.4 Ejercicios adicionales 1. Con qu exactitud es necesario medir el radio de una esfera para que su volumen sea conocido con un error relativo menor de 0.01%? Cuantos decimales es necesario emplear para el valor de ?

Soluciones: seis cifras decimales.

. El nmero

debe expresarse al menos con

2. Supongamos una barra de hierro de longitud l y seccin rectangular fija por uno de sus extremos. Si sobre el extremo libre aplicamos una fuerza Fperpendicular a la barra, la flexin s que sta experimenta viene dada por la expresin:

en donde E es una constante que depende slo del material denominada mdulo de Young. Conociendo que una fuerza de 140 Kp aplicada sobre una barra de 125 cm de longitud y seccin cuadrada de 2.5 cm produce una flexin de 1.71 mm, calcular el mdulo de Young y el intervalo de error. Suponer que los datos vienen afectados por un error mximo correspondiente al de aproximar por truncamiento las cifras dadas. 3. Clculo de races de ecuaciones El objeto del clculo de las races de una ecuacin es determinar los valores de x para los que se cumple:

f(x) = 0

(28)

La determinacin de las races de una ecuacin es uno de los problemas ms antiguos en matemticas y se han realizado un gran nmero de esfuerzos en este sentido. Su importancia radica en que si podemos determinar las races de una ecuacin tambin podemos determinar mximos y mnimos, valores propios de matrices, resolver sistemas de ecuaciones lineales y diferenciales, etc... La determinacin de las soluciones de la ecuacin (28) puede llegar a ser un problema muy difcil. Si f(x) es una funcin polinmica de grado 1 2, conocemos expresiones simples que nos permitirn determinar sus races. Para polinomios de grado 3 4 es necesario emplear mtodos complejos y laboriosos. Sin embargo, si f(x) es de grado mayor de cuatro o bien no es polinmica, no hay ninguna frmula conocida que permita determinar los ceros de la ecuacin (excepto en casos muy particulares). Existen una serie de reglas que pueden ayudar a determinar las races de una ecuacin:

El teorema de Bolzano, que establece que si una funcin continua, f(x), toma en los extremos del intervalo [a,b] valores de signo opuesto, entonces la funcin admite, al menos, una raz en dicho intervalo.

En el caso en que f(x) sea una funcin algebraica (polinmica) de grado n y coeficientes reales, podemos afirmar que tendr n races reales o complejas. La propiedad ms importante que verifican las races racionales de una ecuacin algebraica establece que si p/q es una raz racional de la ecuacin de coeficientes enteros:

entonces el denominador q divide al coeficientes an y el numerador p divide al trmino independiente a0. Ejemplo: Pretendemos calcular las races racionales de la ecuacin: 3x3 + 3x2 - x - 1 = 0

Primero es necesario efectuar un cambio de variable x = y/3:

y despus multiplicamos por 32: y3 + 3y2 -3y -9 = 0

con lo que los candidatos a raz del polinomio son:

Sustituyendo en la ecuacin, obtenemos que la nica raz real es y = -3, es decir, (que es adems la nica raz racional de la ecuacin). Lgicamente, este mtodo es muy poco potente, por lo que slo nos puede servir a modo de orientacin. La mayora de los mtodos utilizados para el clculo de las races de una ecuacin son iterativos y se basan en modelos de aproximaciones sucesivas. Estos mtodos trabajan

del siguiente modo: a partir de una primera aproximacin al valor de la raz, determinamos una aproximacin mejor aplicando una determinada regla de clculo y as sucesivamente hasta que se determine el valor de la raz con el grado de aproximacin deseado.

3.1 Mtodo de las aproximaciones sucesivas Dada la ecuacin f(x) = 0, el mtodo de las aproximaciones sucesivas reemplaza esta ecuacin por una equivalente, x=g(x), definida en la forma g(x)=f(x)+x. Para encontrar la solucin, partimos de un valor inicial x0 y calculamos una nueva aproximacin x1=g(x0). Reemplazamos el nuevo valor obtenido y repetimos el proceso. Esto da lugar a una sucesin de valores como lmite la solucin del problema. , que si converge, tendr

Figure: Interpretacin geomtrica del mtodo de las aproximaciones sucesivas. [scale=0.9]eps/as-1

En la figura (4) se representa la interpretacin geomtrica del mtodo. Partimos de un punto inicial x0 y calculamos y = g(x0). La interseccin de esta solucin con la recta y=x nos dar un nuevo valor x1 ms prximo a la solucin final. Sin embargo, el mtodo puede divergir fcilmente. Es fcil comprobar que el mtodo slo podr converger si la derivada g'(x) es menor en valor absoluto que la unidad (que es la pendiente de la recta definida por y=x). Un ejemplo de este caso se muestra en la figura (5). Esta condicin, que a priori puede considerarse una severa restriccin del mtodo, puede obviarse fcilmente. Para ello basta elegir la funcin g(x) del siguiente modo:

de forma que tomando un valor de cumpla la condicin de la derivada.

adecuado, siempre podemos hacer que g(x)

Figure: Demostracin grfica de que el mtodo de las aproximaciones sucesivas diverge si la derivada g'(x) > 1. 3.2 Mtodo de Newton Este mtodo parte de una aproximacin inicial x0 y obtiene una aproximacin mejor, x1, dada por la frmula: (29)

La expresin anterior puede derivarse a partir de un desarrollo en serie de Taylor. Efectivamente, sea r un cero de f y sea x una aproximacin a r tal que r=x+h. Sif'' existe y es continua, por el teorema de Taylor tenemos:

0 = f(r) = f(x+h) = f(x) + hf'(x) + O(h2)

(30)

en donde h=r-x. Si x est prximo a r (es decir hes pequea), es razonable ignorar el trmino O(h2):

0 = f(x) + hf'(x)

(31)

por lo que obtenemos la siguiente expresin para h:

(32)

A partir de la ecuacin (32) y teniendo en cuenta que r=x+h es fcil derivar la ecuacin (29).

Figure: Interpretacin geomtrica del mtodo de Newton. [scale=0.9]eps/new-1

El mtodo de Newton tiene una interpretacin geomtrica sencilla, como se puede apreciar del anlisis de la figura (6). De hecho, el mtodo de Newton consiste en una linealizacin de la funcin, es decir, f se reemplaza por una recta tal que contiene al punto (x0,f(x0)) y cuya pendiente coincide con la derivada de la funcin en el punto, f'(x0). La nueva aproximacin a la raz, x1, se obtiene de la interseccin de la funcin linear con el eje X de ordenadas. Veamos como podemos obtener la ecuacin (29) a partir de lo dicho en el prrafo anterior. La ecuacin de la recta que pasa por el punto (x0,f(x0)) y de pendientef'(x0) es:

y - f(x0) = f'(x0)(x-x0)

(33)

de donde, haciendo y=0 y despejando x obtenemos la ecuacin de Newton-Raphson (29).

Figure: Dos situaciones en las que el mtodo de Newton no funciona adecuadamente: (a) el mtodo no alcanza la convergencia y (b) el mtodo converge hacia un punto que no es un cero de la ecuacin.

El mtodo de Newton es muy rpido y eficiente ya que la convergencia es de tipo cuadrtico (el nmero de cifras significativas se duplica en cada iteracin). Sin embargo, la convergencia depende en gran medida de la forma que adopta la funcin en las proximidades del punto de iteracin. En la figura (7) se muestran dos situaciones en las que este mtodo no es capaz de alcanzar la convergencia (figura (7a)) o bien converge hacia un punto que no es un cero de la ecuacin (figura (7b)). 3.3 Mtodo de la secante El principal inconveniente del mtodo de Newton estriba en que requiere conocer el valor de la primera derivada de la funcin en el punto. Sin embargo, la forma funcional de f(x) dificulta en ocasiones el clculo de la derivada. En estos casos es ms til emplear el mtodo de la secante. El mtodo de la secante parte de dos puntos (y no slo uno como el mtodo de Newton) y estima la tangente (es decir, la pendiente de la recta) por una aproximacin de acuerdo con la expresin:

(34)

Sustituyendo esta expresin en la ecuacin (29) del mtodo de Newton, obtenemos la expresin del mtodo de la secante que nos proporciona el siguiente punto de iteracin:

(35)

Figure: Representacin geomtrica del mtodo de la secante. [scale=0.9]eps/secante

En la siguiente iteracin, emplearemos los puntos x1 y x2para estimar un nuevo punto ms prximo a la raz de acuerdo con la ecuacin (35). En la figura (8) se representa geomtricamente este mtodo. En general, el mtodo de la secante presenta las mismas ventajas y limitaciones que el mtodo de Newton-Raphson explicado anteriormente. 3.4 Mtodo de Steffensen El mtodo de Steffensen presenta una convergencia rpida y no requiere, como en el caso del mtodo de la secante, la evaluacin de derivada alguna. Presenta adems, la ventaja adicional de que el proceso de iteracin slo necesita un punto inicial. Este mtodo calcula el siguiente punto de iteracin a partir de la expresin:

(36)

3.5 Mtodo de la falsa posicin El mtodo de la falsa posicin pretende conjugar la seguridad del mtodo de la biseccin con la rapidez del mtodo de la secante. Este mtodo, como en el mtodo de la biseccin, parte de dos puntos que rodean a la raz f(x) = 0, es decir, dos puntos x0 y x1tales que f(x0)f(x1) < 0. La siguiente aproximacin, x2, se calcula como la interseccin con el eje X de la recta que une ambos puntos (empleando la ecuacin (35) del mtodo de la secante). La asignacin del nuevo intervalo de bsqueda se realiza como en el mtodo de la biseccin: entre ambos intervalos, [x0,x2] y [x2,x1], se toma aquel que cumpla f(x)f(x2) < 0. En la figura (9) se representa geomtricamente este mtodo.

Figure: Representacin geomtrica del mtodo de la falsa posicin.

La eleccin guiada del intervalo representa una ventaja respecto al mtodo de la secante ya que inhibe la posibilidad de una divergencia del mtodo. Por otra parte y respecto al mtodo de la biseccin, mejora notablemente la eleccin del intervalo (ya que no se limita a partir el intervalo por la mitad).

Figure: Modificacin del mtodo de la falsa posicin propuesta por Hamming. La aproximacin a la raz se toma a partir del punto de interseccin con el eje X de la recta que une los puntos ( x0,f(x0)/2) y (x1,f(x1)) si la funcin es convexa en el intervalo (figura a) o bien a partir de la recta que une los puntos (x0,f(x0)) y (x1, f(x1)/2) si la funcin es cncava en el intervalo (figura b). [scale=0.9]eps/hamming

Sin embargo, el mtodo de la falsa posicin tiene una convergencia muy lenta hacia la solucin. Efectivamente, una vez iniciado el proceso iterativo, uno de los extremos del intervalo tiende a no modificarse (ver figura (9)). Para obviar este problema, se ha propuesto una modificacin del mtodo, denominada mtodo de Hamming. Segn este mtodo, la aproximacin a una raz se encuentra a partir de la determinacin del punto de interseccin con el eje X de la recta que une los puntos ( x0,f(x0)/2) y (x1,f(x1)) si la funcin es convexa en el intervalo o bien a partir de la recta que une los puntos (x0,f(x0)) y (x1, f(x1)/2) si la funcin es cncava en el intervalo. En la figura (10) se representa grficamente el mtodo de Hamming. Como hemos comentado, el mtodo de Hamming requiere determinar la concavidad o convexidad de la funcin en el intervalo de iteracin. Un mtodo relativamente sencillo para determinar la curvatura de la funcin consiste en evaluar la funcin en el punto medio del intervalo, f(xm) (en donde xm se calcula como en el mtodo de la biseccin) y comparar este valor con la media de los valores de la funcin en los extremos del intervalo, . Tenemos entonces que:

4. Resolucin de sistemas de ecuaciones lineales


El objetivo de este apartado es examinar los aspectos numricos que se presentan al resolver sistemas de ecuaciones lineales de la forma:

(42)

Se trata de un sistema de n ecuaciones con n incgnitas, x1, x2, ..., xn. Los elementos aij y bi son nmeros reales fijados. El sistema de ecuaciones (42) se puede escribir, empleando una muy til representacin matricial, como:

(43)

Entonces podemos denotar estas matrices por A, x y b de forma que la ecuacin se reduce simplemente a:

Ax=b

(44)

Los mtodos de resolucin de sistemas de ecuaciones se pueden dividir en dos grandes grupos:

Los Mtodos exactos o algoritmos finitos que permiten obtener la solucin del sistema de manera directa. Los Mtodos aproximados que utilizan algoritmos iterativos e infinitos y que calculan las solucin del sistema por aproximaciones sucesivas. Al contrario de lo que pueda parecer, en muchas ocasiones los mtodos aproximados permiten obtener un grado de exactitud superior al que se puede obtener empleando los denominados mtodos exactos, debido

fundamentalmente a los errores de truncamiento que se producen en el proceso. De entre los mtodos exactos analizaremos el mtodo de Gauss y una modificacin de ste denominado mtodo de Gauss-Jordan. Entre los mtodos aproximados nos centraremos en el estudio de los mtodos de Richardson, Jacobi y Gauss-Seidel.

4.1 Mtodos de resolucin exacta

Antes de abordar el estudio de los mtodos de resolucin exacta de sistemas de ecuaciones lineales, analizaremos algunas propiedades y relaciones tiles que caracterizan a estos sistemas.
4.1.1 La factorizacin LU

Supongamos que A se puede factorizar como el producto de una matriz triangular inferior L con una matriz triangular superior U:
A = LU (51)

En este caso, el sistema de ecuaciones dado por (44) podra representarse en la forma:
LUx=b (52)

Si denominamos z a la matriz columna de n filas resultado del producto de las matrices Ux, tenemos que la ecuacin (52) se puede reescribir del siguiente modo:

Lz=b

(53)

A partir de las ecuaciones (52) y (53), es posible plantear un algoritmo para resolver el sistema de ecuaciones empleando dos etapas:

Primero obtenemos z aplicando el algoritmo de sustitucin progresiva en la ecuacin (53). Posteriormente obtenemos los valores de x aplicando el algoritmo de sustitucin regresiva a la ecuacin Ux = z

El anlisis anterior nos muestra lo fcil que es resolver estos dos sistemas de ecuaciones triangulares y lo til que resultara disponer de un mtodo que nos permitiera llevar a cabo la factorizacin A=LU. Si disponemos de una matriz A de , estamos interesados en encontrar aquellas matrices:

tales que cumplan la ecuacin (51). Cuando esto es posible, decimos que A tiene una descomposicin LU. Se puede ver que las ecuacin anterior no determina de forma nica a Ly a U. De hecho, para cada i podemos asignar un valor distinto de cero a lii o uii (aunque no ambos). Por ejemplo, una eleccin simple es fijar lii=1 para haciendo de esto modo que L sea una matriz triangular inferior unitaria. Otra eleccin es hacer U una matriz triangular superior unitaria (tomando uii=1 para cada i). Para deducir un algoritmo que nos permita la factorizacin LU de Apartiremos de la frmula para la multiplicacin de matrices:

(54)

En donde nos hemos valido del hecho de que lis=0 para s >i y usj=0 para s>j. En este proceso, cada paso determina una nueva fila de U y una nueva columna de L. En el paso k, podemos suponer que ya se calcularon las filas de U, al igual que las columnas Haciendo i=j=k en la ecuacin (54) obtenemos de L.

(55)

Si especificamos un valor para lkk (o para ukk), a partir de la ecuacin (55) es posible determinar un valor para el otro trmino. Conocidas ukk y lkk y a partir de la ecuacin (54) podemos escribir las expresiones para lak-sima fila (i=k) y para la k-sima columna (j=k), respectivamente:

(56)

(57)

Es decir, las ecuaciones (57) se pueden emplear para encontrar los elementos ukj y lik. El algoritmo basado en el anlisis anterior se denomina factorizacin de Doolittle cuando se toman los trminos lii = 1 para (L triangular inferior unitaria) y factorizacin de Crout cuando se toman los trminos uii=1 (U triangular superior unitaria). Una implementacin en pseudocdigo del algoritmo para llevar a cabo la factorizacin LU se muestra en la figura (11).

Figure: Implementacin del algoritmo de la factorizacin LU.

Es interesante notar que los bucles que permiten el cmputo de la k-sima fila de U y de la k-sima columna de L se pueden llevar a cabo en paralelo, es decir, pueden evaluarse simultneamente sobre dos procesadores, lo que redunda en un importante ahorro del tiempo de clculo. Ejemplo: Encuentre las factorizaciones de Doolittle y Crout de la matriz:

La factorizacin de Doolittle es, a partir del algoritmo:

En vez de calcular la factorizacin de Crout directamente, la podemos obtener a partir de la factorizacin de Doolittle que acabamos de ver.

Efectivamente, si tenemos en cuenta que la matriz A es simtrica, es posible comprobar que se cumple la relacin: A = LU = UTLT por lo que la factorizacin de Crout resulta ser:

4.1.2 Mtodo de Gauss-Jordan

Como hemos visto, el mtodo de Gauss transforma la matriz de coeficientes en una matriz triangular superior. El mtodo de Gauss-Jordan contina el proceso de transformacin hasta obtener una matriz diagonal unitaria (aij=0 para cualquier ).

Veamos el mtodo de Gauss-Jordan siguiendo con el ejemplo empleado en el apartado anterior. Aplicando el mtodo de Gauss habamos llegado a la siguiente ecuacin:

Ahora seguiremos un procedimiento similar al empleado en el mtodo de Gauss. Tomaremos como pivote el elemento a44=-3; multiplicamos la cuarta ecuacin por y la restamos a la primera:

Realizamos la misma operacin con la segunda y tercera fila, obteniendo:

Ahora tomamos como pivote el elemento a33=2, multiplicamos la tercera ecuacin por y la restamos a la primera:

Repetimos la operacin con la segunda fila:

Finalmente, tomamos como pivote a22=-4, multiplicamos la segunda ecuacin por y la sumamos a la primera:

El sistema de ecuaciones anterior es, como hemos visto, fcil de resolver. Empleando la ecuacin (46) obtenemos las soluciones:

4.2 Mtodos iterativos

El mtodo de Gauss y sus variantes se conocen con el nombre de mtodos directos: se ejecutan a travs de un nmero finito de pasos y dan lugar a una solucin que sera exacta si no fuese por los errores de redondeo. Por contra, un mtodo indirecto da lugar a una sucesin de vectores que idealmente converge a la solucin. El clculo se detiene cuando se cuenta con una solucin aproximada con cierto grado de precisin especificado de antemano o despus de cierto nmero de iteraciones. Los mtodos indirectos son casi siempre iterativos: para obtener la sucesin mencionada se utiliza repetidamente un proceso sencillo.
4.2.1 Mtodo de Richardson

El mtodo de Richardson toma como matriz Q la matriz identidad (I). En este caso la ecuacin (63) queda en la forma:

Ix(k) = (I-A)x(k-1)+b = x(k-1)+r(k-1)

(64)

en donde r(k-1) es el vector residual definido mediante r(k-1)=b-Ax(k-1). La matriz identidad es aquella matriz diagonal cuyos elementos no nulos son 1, es decir:

y cumple que IA = A para cualquier valor de A; es decir, es el elemento neutro del producto matricial. De acuerdo con esto, la ecuacin (64) se puede escribir como:

x(k) = x(k-1) - Ax(k-1) + b = x(k-1) + r(k-1) en donde un elemento cualquiera del vector r(k-1) vendr dado por la expresin:

En la figura (13) se muestra un algoritmo para ejecutar la iteracin de Richardson. Este mtodo recibe tambin el nombre de mtodo de relajacin o mtodo de los residuos.

4.2.2 Mtodo de Jacobi

En la iteracin de Jacobi, se escoge una matriz Q que es diagonal y cuyos elementos diagonales son los mismos que los de la matriz A. La matriz Q toma la forma:

y la ecuacin general (63) se puede escribir como

Qx(k) = (Q-A)x(k-1) + b

(65)

Si denominamos R a la matriz A-Q:

la ecuacin (65) se puede reescribir como: Qx(k) = -Rx(k-1) + b El producto de la matriz Q por el vector columna x(k) ser un vector columna. De modo anlogo, el producto de la matriz R por el vector columna x(k-1) ser tambin un vector columna. La expresin anterior, que es una ecuacin vectorial, se puede expresar por necuaciones escalares (una para cada componente del vector). De este modo, podemos escribir, para un elemento i cualquiera y teniendo en cuenta que se trata de un producto matriz-vector:

Si tenemos en cuenta que en la matriz Q todos los elementos fuera de la diagonal son cero, en el primer miembro el nico trmino no nulo del sumatorio es el que contiene el elemento diagonal qii, que es precisamente aii. Ms an, los elementos de la diagonal de Rson cero, por lo que podemos eliminar el trmino i=j en el sumatorio del segundo miembro. De acuerdo con lo dicho, la expresin anterior se puede reescribir como:

de donde despejando xi(k) obtenemos:

que es la expresin que nos proporciona las nuevas componentes del vector x(k) en funcin de vector anterior x(k-1) en la iteracin de Jacobi. En la figura (14) se presenta un algoritmo para el mtodo de Jacobi.
Figure: Implementacin del mtodo de Jacobi.

El mtodo de Jacobi se basa en escribir el sistema de ecuaciones en la forma:

(66)

Partimos de una aproximacin inicial para las soluciones al sistema de ecuaciones y sustituimos estos valores en la ecuacin (66). De esta forma, se genera una nueva aproximacin a la solucin del sistema, que en determinadas condiciones, es mejor que la aproximacin inicial. Esta nueva aproximacin se puede sustituir de nuevo en la parte derecha de la ecuacin (66) y as sucesivamente hasta obtener la convergencia.
6.2.3 Mtodo de Gauss-Seidel

La iteracin de Gauss-Seidel se define al tomar Q como la parte triangular inferior de A incluyendo los elementos de la diagonal:

Si, como en el caso anterior, definimos la matriz R=A-Q

y la ecuacin (63) se puede escribir en la forma: Qx(k) = -Rx(k-1) + b

Un elemento cualquiera, i, del vector Qx(k) vendr dado por la ecuacin:

Si tenemos en cuenta la peculiar forma de las matrices Q y R, resulta que todos los sumandos para los que j > i en la parte izquierda son nulos, mientras que en la parte derecha son nulos todos los sumandos para los que . Podemos escribir entonces:

de donde despejando xi(k), obtenemos:

Obsrvese que en el mtodo de Gauss-Seidel los valores actualizados de xi sustituyen de inmediato a los valores anteriores, mientras que en el mtodo de Jacobi todas las componentes nuevas del vector se calculan antes de llevar a cabo la sustitucin. Por contra, en el mtodo de Gauss-Seidel los clculos deben llevarse a cabo por orden, ya que el nuevo valor xi depende de los valores actualizados de x1, x2, ..., xi-1. En la figura (15) se incluye un algoritmo para la iteracin de Gauss-Seidel.

Figure: Algoritmo para la iteracin de Gauss-Seidel.

5. Interpolacin
Nos centraremos ahora en el problema de obtener, a partir de una tabla de parejas (x,f(x)) definida en un cierto intervalo [a,b], el valor de la funcin para cualquier xperteneciente a dicho intervalo. Supongamos que disponemos de las siguientes parejas de datos:
x x0 x1 x2 y y0 y1 y2 xn yn

El objetivo es encontrar una funcin continua lo ms sencilla posible tal que

f(xi) = yi

(67)

Se dice entonces que la funcin f(x) definida por la ecuacin (67) es una funcin de interpolacin de los datos representados en la tabla. Existen muchas formas de definir las funciones de interpolacin, lo que da origen a un gran nmero de mtodos (polinomios de interpolacin de Newton, interpolacin de Lagrange, interpolacin de Hermite, etc). Sin embargo, nos centraremos exclusivamente en dos funciones de interpolacin: 1. Los polinomios de interpolacin de Lagrange. 2. Las funciones de interpolacin splines. Estas funciones son especialmente importantes debido a su idoneidad en los clculos realizados con ordenador.

5.1 Polinomios de interpolacin de Lagrange

Un polinomio de interpolacin de Lagrange, p, se define en la forma:

(68)

en donde tabulados

son polinomios que dependen slo de los nodos , pero no de las ordenadas es: . La

frmula general del polinomio

(69)

Para el conjunto de nodos , estos polinomios son conocidos como funciones cardinales. Utilizando estos polinomios en la ecuacin (68) obtenemos la forma exacta del polinomio de interpolacin deLagrange. Ejemplo: Suponga la siguiente tabla de datos:
x 5 -7 -6 0

y 1 -23 -54 -954

Construya las funciones cardinales para el conjunto de nodos dado y el polinomio de interpolacin de Lagrange correspondiente. Las funciones cardinales, empleando la expresin (69), resultan ser:

El polinomio de interpolacin de Lagrange es:

5.2 Interpolacin de splines Una funcin spline est formada por varios polinomios, cada uno definido sobre un subintervalo, que se unen entre s obedeciendo a ciertas condiciones de continuidad.

Supongamos que disponemos de n+1 puntos, a los que denominaremos nudos, tales que entero nudos en (i) en cada intervalo a k. (ii) S tiene una derivada de orden (k-1) continua en . , S es un polinomio de grado menor o igual . Supongamos adems que se ha fijado un . Decimos entonces que una funcin spline de grado k con es una funcin S que satisface las condiciones:

Los splines de grado 0 son funciones constantes por zonas. Una forma explcita de presentar un spline de grado 0 es la siguiente:

Los intervalos no se intersectan entre s, por lo que no hay ambigedad en la definicin de la funcin en los nudos. Un spline de grado 1 se puede definir por:

En las figuras (16) y (17) se muestran las grficas correspondientes a los splines de grado cero y de grado 1 respectivamente.

Figure: Spline de grado 0 con seis puntos. [scale=1.0]eps/spline-1

6. Integracin numrica
Dada una funcin f definida sobre un intervalo [a,b], estamos interesados en calcular
(74)

suponiendo que esta integral tenga sentido para la funcin f. La cuadratura o integracin numrica consiste en obtener frmulas aproximadas para calcular la integral J(f) de f. Estos mtodos son de gran utilidad cuando la integral no se puede calcular por mtodos analticos, su clculo resulta muy costoso y estamos interesados en una solucin con

precisin finita dada o bien slo disponemos de una tabla de valores de la funcin (es decir, no conocemos la forma analtica de f).
6.1 Integracin va interpolacin polinomial

Una estrategia muy til para calcular el valor numrico de la integral dada por la ecuacin (74) consiste en reemplazar fpor otra funcin g, fcil de integrar, que aproxima a f de forma adecuada. Si , se deduce que

Los polinomios son buenos candidatos para el papel de g. De hecho, g puede ser un polinomio que interpola a f en cierto conjunto de nodos5. Supongamos que deseamos calcular la integral (74). Podemos elegir una serie de nudos, en el intervalo [a,b] e iniciar un proceso de interpolacin de Lagrange (ver apartado 7.1 para una descripcin de los polinomios de interpolacin de Lagrange). El polinomio de grado menor o igual a n que interpola a f en los nudos es:
(75)

La integral (74) se puede escribir entonces como:

Es decir, tenemos una frmula general que se puede emplear para cualquier f y que tiene la forma:

(76)

en donde

6.2 Regla del trapecio

Si en la expresin (76) empleamos polinomios de grado n=1 y tomamos como nudos x0=a y x1=b, tenemos el caso ms sencillo posible, en donde los polinomios de interpolacin son:
=

por lo que:

La frmula de cuadratura correspondiente es:

Esta expresin se conoce como regla del trapecio y proporciona un resultado exacto para todas las funciones de grado menor o igual a 1.
6.3 Regla de Simpson

Empleando un razonamiento similar al anterior y tomando un polinomio de grado n=2 para interpolar a f, obtenemos la conocida regla de Simpson:
(77)

que es exacta para todos los polinomios de grado exacta para todos los polinomios de grado 3.

2 y curiosamente,

En los clculos prcticos se emplea, generalmente, la regla de Simpson compuesta, en la que el intervalo de integracin [a,b] se divide en un nmero par, n, de subintervalos. Tenemos entonces:

en donde h = (b-a)/n Aplicando la regla de Simpson (77) en cada uno de los subintervalos se obtiene la expresin final:

(78)