P. 1
Análisis numérico

Análisis numérico

|Views: 587|Likes:
Publicado porJavier Lopez

More info:

Published by: Javier Lopez on Oct 19, 2010
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as DOC, PDF, TXT or read online from Scribd
See more
See less

06/12/2013

pdf

text

original

Análisis numérico

El análisis numérico o cálculo numérico es la rama de las matemáticas que se encarga de diseñar algoritmos para, a través de números y reglas matemáticas simples, simular procesos matemáticos más complejos aplicados a procesos del mundo real.

Introducción general
El análisis numérico es una rama de las matemáticas cuyos límites no son del todo precisos. De una forma rigurosa, se puede definir como la disciplina ocupada de describir, analizar y crear algoritmos numéricos que nos permitan resolver problemas matemáticos, en los que estén involucradas cantidades numéricas, con una precisión determinada. En el contexto del cálculo numérico, un algoritmo es un procedimiento que nos puede llevar a una solución aproximada de un problema mediante un número finito de pasos que pueden ejecutarse de manera lógica. En algunos casos, se les da el nombre de métodos constructivos a estos algoritmos numéricos. El análisis numérico cobra especial importancia con la llegada de los ordenadores. Los ordenadores son útiles para cálculos matemáticos extremadamente complejos, pero en última instancia operan con números binarios y operaciones matemáticas simples. Desde este punto de vista, el análisis numérico proporcionará todo el andamiaje necesario para llevar a cabo todos aquellos procedimientos matemáticos susceptibles de expresarse algorítmicamente, basándose en algoritmos que permitan su simulación o cálculo en procesos más sencillos empleando números.

Conceptos generales
A partir de aquí, aparece un concepto adicional, el de error. Este concepto aparece como consecuencia de la naturaleza finita de los ordenadores que solo pueden operar con números representados de forma finita. Definido el error, junto con el error admisible, pasamos al concepto de estabilidad de los algoritmos. Muchas de las operaciones matemáticas pueden llevarse adelante a través de la generación de una serie de números que a su vez alimentan de nuevo el algoritmo (feedback). Esto proporciona un poder de cálculo y refinamiento importantísimo a la máquina que a medida que va completando un ciclo va llegando a la solución. El problema ocurre en determinar hasta cuándo deberá continuar con el ciclo, o si nos estamos alejando de la solución del problema. Finalmente, otro concepto paralelo al análisis numérico es el de la representación, tanto de los números como de otros conceptos matemáticos como los vectores, polinomios, etc. Por

ejemplo, para la representación en ordenadores de números reales, se emplea el concepto de coma flotante que dista mucho del empleado por la matemática convencional.

Aplicaciones
En general, estos métodos se aplican cuando se necesita un valor numérico como solución a un problema matemático, y los procedimientos "exactos" o "analíticos" (manipulaciones algebraicas, teoría de ecuaciones diferenciales, métodos de integración, etc.) son incapaces de dar una respuesta. Debido a ello, son procedimientos de uso frecuente por físicos e ingenieros, y cuyo desarrollo se ha visto favorecido por la necesidad de éstos de obtener soluciones, aunque la precisión no sea completa. Debe recordarse que la física experimental, por ejemplo, nunca arroja valores exactos sino intervalos que engloban la gran mayoría de resultados experimentales obtenidos, ya que no es habitual que dos medidas del mismo fenómeno arrojen valores exactamente iguales. Otro motivo que ha propiciado el auge del análisis numérico ha sido el desarrollo de los ordenadores. El aumento brutal de la potencia de cálculo ha convertido en posibles y en eficientes a algoritmos poco dados a su realización a mano.

Problemas
Clasificación según su dimensión
Los problemas de esta disciplina se pueden dividir en dos grupos fundamentales:

Problemas de dimensión finita: aquellos cuya respuesta son un conjunto finito de números, como las ecuaciones algebraicas, los determinantes, los problemas de valores propios, etc. Problemas de dimensión infinita: problemas en cuya solución o planteamiento intervienen elementos descritos por una cantidad infinita de números, como integración y derivación numéricas, cálculo de ecuaciones diferenciales, interpolación, etc.

Clasificación atendiendo a su naturaleza o motivación
Asimismo, existe una subclasificación de estos dos grandes apartados en tres categorías de problemas, atendiendo a su naturaleza o motivación para el empleo del cálculo numérico:
• •

1) Problemas de tal complejidad que no poseen solución analítica. 2) Problemas en los cuales existe una solución analítica, pero ésta, por complejidad u otros motivos, no puede explotarse de forma sencilla en la práctica.

3) Problemas para los cuales existen métodos sencillos pero que, para elementos que se emplean en la práctica, requieren una cantidad de cálculos excesiva; mayor que la necesaria para un método numérico.

Áreas de estudio
El análisis numérico se divide en diferentes disciplinas de acuerdo con el problema a resolver.

Cálculo de los valores de una función
Uno de los problemas más sencillos es la evaluación de una función en un punto dado. Para polinomios, uno de los métodos más utilizados es el algoritmo de Horner, ya que reduce el número de operaciones a realizar. En general, es importante estimar y controlar los errores de redondeo que se producen por el uso de la aritmética de punto flotante.

Interpolación, extrapolación y regresión
La interpolación resuelve el problema siguiente: dado el valor de una función desconocida en un número de puntos, ¿cuál es el valor de la función en un punto entre los puntos dados? El método más sencillo es la interpolación lineal, que asume que la función desconocida es lineal entre cualquier par de puntos sucesivos. Este método puede generalizarse a la interpolación polinómica, que suele ser más precisa pero que sufre el llamado fenómeno de Runge. Otros métodos de interpolación usan otro tipo de funciones interpoladoras dando lugar a la interpolación mediante splines y a la interpolación trigonométrica. Otros métodos de interpolación utilizando derivadas sucesivas de la función son mediante los polinomios de Taylor y la aproximación de Padé. La extrapolación es muy similar a la interpolación, excepto que ahora queremos encontrar el valor de la función desconocida en un punto que no está comprendido entre los puntos dados. La regresión es también similar, pero tiene en cuenta que los datos son imprecisos. Dados algunos puntos, y una medida del valor de la función en los mismos (con un error debido a la medición), queremos determinar la función desconocida. El método de los mínimos cuadrados es una forma popular de conseguirlo.

Resolución de ecuaciones y sistemas de ecuaciones
Otro problema fundamental es calcular la solución de una ecuación o sistema de ecuaciones dado. Se distinguen dos casos dependiendo de si la ecuación o sistema de ecuaciones es o no lineal. Por ejemplo, la ecuación 2x + 5 = 3 es lineal mientras que la ecuación 2x2 + 5 = 3 no lo es. Mucho esfuerzo se ha puesto en el desarrollo de métodos para la resolución de sistemas de ecuaciones lineales. Métodos directos, i.e., métodos que utilizan alguna factorización de la

matriz son el método de eliminación de Gauss, la descomposición LU, la descomposición de Cholesky para matrices simétricas (o hermíticas) definidas positivas, y la descomposición QR. Métodos iterativos como el método de Jacobi, el método de GaussSeidel, el método de las aproximaciones sucesivas y el método del gradiente conjugado se utilizan frecuentemente para grandes sistemas. En la resolución numérica de ecuaciones no lineales algunos de los métodos más conocidos son los métodos de bisección, de la secante y de la falsa posición. Si la función es además derivable y la derivada se conoce, el método de Newton es muy utilizado. Este método es un método de iteración de punto fijo. La linealización es otra técnica para resolver ecuaciones no lineales.

Descomposición espectral y en valores singulares
Bastantes problemas importantes pueden ser expresados en términos de descomposición espectral (el cálculo de los vectores y valores propios de una matriz) o de descomposición en valores singulares. Por ejemplo, el análisis de componentes principales utiliza la descomposición en vectores y valores propios.

Optimización
Los problemas de optimización buscan el punto para el cual una función dada alcanza su máximo o mínimo. A menudo, el punto también satisface cierta restricción. Ejemplos de ,problemas de optimización son la programación lineal en que tanto la función objetivo como las restricciones son lineales. Un método famoso de programación lineal es el método simplex. El método de los multiplicadores de Lagrange puede usarse para reducir los problemas de optimización con restricciones a problemas sin restricciones.

[editar] Evaluación de integrales
Artículo principal: Integración numérica

La integración numérica, también conocida como cuadratura numérica, busca calcular el valor de una integral definida. Métodos populares utilizan alguna de las fórmulas de Newton–Cotes (como la regla del rectángulo o la regla de Simpson) o de cuadratura gaussiana. Estos métodos se basan en una estrategia de "divide y vencerás", dividiendo el intervalo de integración en subintervalos y calculando la integral como la suma de las integrales en cada subintervalo, pudiéndose mejorar posteriormente el valor de la integral obtenido mediante el método de Romberg. Para el cálculo de integrales múltiples estos métodos requieren demasiado esfuerzo computacional, siendo útil el método de Monte Carlo.

[editar] Ecuaciones diferenciales

búsqueda En análisis numérico. traducido y publicado como . la enciclopedia libre Saltar a navegación. el método de Newton (conocido también como el método de Newton-Raphson o el método de Newton-Fourier) es un algoritmo eficiente para encontrar aproximaciones de los ceros o raíces de una función real. bien ecuaciones diferenciales ordinarias. Contenido [ocultar] • • • • • • • • • • 1 Historia 2 Descripción del método 3 Obtención del Algoritmo 4 Convergencia del Método 5 Estimación del Error 6 Teorema de Convergencia Local del Método de Newton 7 Ejemplo 8 Codigo en MatLab 9 Referencias 10 Enlaces externos [editar] Historia El método de Newton fue descrito por Isaac Newton en De analysi per aequationes número terminorum infinitas (escrito en 1669. llevándola a un subespacio de dimensión finita. Método de Newton De Wikipedia.El análisis numérico también puede calcular soluciones aproximadas de ecuaciones diferenciales. También puede ser usado para encontrar el máximo o mínimo de una función. Para la resolución de ecuaciones diferenciales ordinarias los métodos más utilizados son el método de Euler y los métodos de Runge-Kutta. bien ecuaciones en derivadas parciales. publicado en 1711 por William Jones) y en De metodis fluxionum et serierum infinitarum (escrito en 1671. Es útil ver la derivación numérica. Esto puede hacerse mediante un método de los elementos finitos. Las ecuaciones en derivadas parciales se resuelven primero discretizando la ecuación. Los métodos utilizados suelen basarse en discretizar la ecuación correspondiente. encontrando los ceros de su primera derivada.

Una vez se ha hecho esto. Así. según el método. Nótese que el método descrito es de aplicación exclusiva para funciones de una sola variable con forma analítica o implícita cognoscible.Método de las fluxiones en 1736 por John Colson). Newton ve el método como puramente algebraico y falla al no ver la conexión con el cálculo. [editar] Obtención del Algoritmo Tres son las formas principales por las que tradicionalmente se ha obtenido el algoritmo de Newton-Raphson. y no consideraba las aproximaciones sucesivas xn. La abscisa en el origen de dicha recta será. . b]. sino que calculaba una secuencia de polinomios para llegar a la aproximación de la raíz x. entonces las probabilidades de que el algoritmo diverja aumentan. La relativa cercanía del punto inicial a la raíz depende mucho de la naturaleza de la propia función. La única manera de alcanzar la convergencia es seleccionar un valor inicial lo suficientemente cercano a la raíz buscada. Empezamos con un valor inicial x0 y definimos para cada número natural n Donde f ' denota la derivada de f. así como algoritmos que extienden el método de Newton a sistemas multivariables. Existen variantes del método aplicables a sistemas discretos que permiten estimar las raíces de la tendencia. La esencia del método de Viète puede encontrarse en el trabajo del matemático persa Sharaf al-Din al-Tusi. Se realizarán sucesivas iteraciones hasta que el método haya convergido lo suficiente. Finalmente. en el sentido de que su convergencia global no está garantizada. lo cual exige seleccionar un valor supuesto cercano a la raíz. su descripción difiere en forma sustancial de la descripción moderna presentada más arriba: Newton aplicaba el método solo a polinomios. Sea f : [a. Isaac Newton probablemente derivó su método de forma similar aunque menos precisa del método de François Viète. Sin embargo. b] -> R función derivable definida en el intervalo real [a. el método linealiza la función por la recta tangente en ese valor supuesto. se ha de comenzar la iteración con un valor razonablemente cercano al cero (denominado punto de arranque o valor supuesto). una mejor aproximación de la raíz que el valor anterior. etc. [editar] Descripción del método El método de Newton-Raphson es un método abierto. si ésta presenta múltiples puntos de inflexión o pendientes grandes en el entorno de la raíz. sistemas de ecuaciones.

y evaluamos en xn + 1: . por extensión con el método de la secante. En efecto. f (x0)) y cuya pendiente coincide con la derivada de la función en el punto. f'(x0). Matemáticamente: Ilustración de una iteración del método de Newton (la función f se demuestra en azul y la línea de la tangente está en rojo). f se reemplaza por una recta tal que contiene al punto (x0. el nuevo punto de iteración se tomará como la abscisa en el origen de la tangente (punto de corte de la tangente con el eje X). si por un punto de iteración trazamos la tangente a la curva. Así pues. Esto es equivalente a linealizar la función.La primera de ellas es una simple interpretación geométrica. La nueva aproximación a la raíz. En la ilustración adjunta del método de Newton se puede ver que xn + 1 es una mejor aproximación que xn para el cero (x) de la función f. atendiendo al desarrollo geométrico del método de la secante. se logra la intersección de la función lineal con el eje X de ordenadas. x1. es decir. Vemos que xn + 1 es una aproximación mejor que xn para la raíz x de la función f. podría pensarse en que si los puntos de iteración están lo suficientemente cerca (a una distancia infinitesimal). Una forma alternativa de obtener el algoritmo es desarrollando la función f (x) en serie de Taylor. para un entorno del punto xn: Si se trunca el desarrollo a partir del término de grado 2. entonces la secante se sustituye por la tangente a la curva en el punto.

se ha de cumplir que f(xn + 1) = 0. Así. hay que indicar que el método de Newton-Raphson puede interpretarse como un método de iteración de punto fijo.Si además se acepta que xn + 1 tiende a la raíz. . con m la multiplicidad de la raíz. se puede considerar el siguiente método de iteración de punto fijo: Se escoge h (x) de manera que g'(r)=0 (r es la raíz buscada). Dado que g'(r) es: Entonces: Como h (x) no tiene que ser única. Derivados de Newton-Raphson destacan el método de Ralston-Rabinowitz.). obtenemos el algoritmo. el método de Newton-Raphson pierde su convergencia cuadrática y pasa a ser lineal de constante asintótica de convergencia 1-1/m.e. Sin embargo. Finalmente. por lo menos. si la raíz buscada es de multiplicidad algebraica mayor a uno (i. se escoge de la forma más sencilla: Por tanto. cuadrático. triple. Existen numerosas formas de evitar este problema.. imponiendo subíndices: Expresión que coincide con la del algoritmo de Newton-Raphson [editar] Convergencia del Método El orden de convergencia de este método es.. como pudieran ser los métodos de aceleración de la convergencia tipo Δ² de Aitken o el método de Steffensen. dada la ecuación f(x) = 0. sustituyendo en la expresión anterior. que restaura la convergencia cuadrática sin más que modificar el algoritmo a: . una raíz doble. luego.

Esto significa que si en algún momento el error es menor o igual a 0. Se detiene el proceso iterativo cuando este error relativo es aproximadamente menor que una cantidad fijada previamente. [editar] Estimación del Error Se puede demostrar que el método de Newton-Raphson tiene convergencia cuadrática: si α es raíz.Evidentemente. la convergencia del método se demuestra cuadrática para el caso más habitual en base a tratar el método como uno de punto fijo: si g'(r)=0. está sujeto a las particularidades de estos métodos. entonces: para una cierta constante C. resultando: Su principal desventaja en este caso sería lo costoso que pudiera ser hallar g(x) y g'(x) si f(x) no es fácilmente derivable. este método exige conocer de antemano la multiplicidad de la raíz. Por ello también se puede modificar el algoritmo tomando una función auxiliar g(x) = f(x)/f'(x). lo cual no siempre es posible. Así. Nótese de todas formas que el método de Newton-Raphson es un método abierto: la convergencia no está garantizada por un teorema de convergencia global como podría estarlo en los métodos de falsa posición o de bisección. es necesario partir de una aproximación inicial próxima a la raíz buscada para que el método converja y cumpla el teorema de convergencia local. Por otro lado. En la práctica puede servir para hacer una estimación aproximada del error: Error relativo entre dos aproximaciones sucesivas: Con lo cual se toma el error relativo como si la última aproximación fuera el valor exacto. entonces la convergencia es cuadrática. a cada nueva iteración doblamos (aproximadamente) el número de decimales exactos. . y g' '(r) es distinto de 0.1. Sin embargo.

3*x^2) } var x := 0. Si . En particular.3x2. x6 es correcto para el número de decimales pedidos. ilustando la convergencia cuadrática. esto es: function newtonIterationFunction(x) { return x .x^3) / (-sin(x) . [editar] Ejemplo Consideremos el problema de encontrar un número positivo x tal que cos(x) = x3. entonces la sucesión xn con .[editar] Teorema de Convergencia Local del Método de Newton Sea que si . entonces la convergencia es cuadrática. entonces existe un r>0 tal verifica que: para todo n y xn tiende a p cuando n tiende a infinito. En pseudocódigo.5 Los dígitos correctos están subrayados. Comenzaremos probando con el valor inicial x0 = 0. Sabemos que f '(x) = -sin(x) . Si además . Ya que cos(x) ≤ 1 para todo x y x3 > 1 para x>1.x3. deducimos que nuestro cero está entre 0 y 1. Podemos ver que el número de dígitos correctos después de la coma se incrementa desde 2 (para x3) a 5 y 10. Podríamos tratar de encontrar el cero de f(x) = cos(x) .(cos(x) . y .5 for i from 0 to 99 { print "Iteraciones: " + i .

:).:). Vo(2. vsal=[xo. El programa siguiente hace el cálculo para una superficie. syms x1 syms x2 syms x3 V=['sin(x1)+2^x2+log(x3)-7'.x1).x2).:)=eval(V(1. % error xo=x1.:)). salida(i.x3)]. diff(V(3.diff(V(1.:). salida=ones(n.:). Vo(3.x1).:)=[diff(V(1. % error relativo porcentual ea=[[abs((x1-xo)/x1)]]*100.x3)].x2). %Se calcula el Jacobiano en ese punto .:)=eval(V(3.:)=eval(V(2.1)=i.'3*x1+2*x2-x3^3+1 '.diff(V(2. %se calcula H en ese punto Vo(1. DV(2.x3)].:)). %se da el valor de partida: x1=0. salida(i.:)).:).2)=x1. x_1o=[x1.print "Valor aproximado: " + x xold := x x := newtonIterationFunction(x) if x = xold { print "Solución encontrada!" break } } [editar] Codigo en MatLab Programa escrito en Matlab para hallar las raíces usando el método de NEWTONRAPHSON disp ('NEWTON-RAPHSON') xo=input('Valor inicial =').x1].4)=ea. diff(V(2.x3].3)=er.x1).:). disp(num2str(salida)).:). er=[[abs((xo-x1)/xo)]]*100.x2.:). salida(i. %se calcula el jacobiano: DV(1. n=input ('numero de iteraciones=').:)=[diff(V(2. DV(3.'x1+x2+x3-5 '].:)=[diff(V(3. x2=4. % matiz de salida de datos for i=1:n x1=xo-[(exp(-xo)-xo)]/[(-exp(-xo)-1)].4). diff(V(1. end disp('ite raiz er ea').:).diff(V(3. x3=2. salida(i.x2).

x2. Vo(3. %se define a = n. x3=x_1(3). a=n.:)). %se calcula el siguiente valor de iteración x_1=[x1.:)=eval(V(1. Introducción La ciencia y la tecnología describen los fenómenos reales mediante modelos matemáticos. no siempre es posible aplicar métodos analíticos clásicos por diferentes razones: • • No se adecúan al modelo concreto.:)). end x1=x_1(1). si se cumple condicion de error antes. if er<.DV1=eval(DV). Su aplicación resulta excesivamente compleja.:)).x3]-DV_1*Vo. x_1=[x1.x2.:)=eval(V(2. así como de su evolución futura. Vo(1.0001 a=i. %cantidad de iteraciones maxima: n=50. end a x_1 cambia METODOS NUMERICOS . %se calcula la Inversa del JAcobiano en ese punto DV_1=DV1^-1. x_1o=[x1. Desafortunadamente. break. x2=x_1(2). Vo(2. for i=1:n %error relativo entre aproximaciones sucecivas er=norm(x_1-x_1o)/norm(x_1). DV1=eval(DV).x3]. La matemática aplicada es la rama de las matemáticas que se dedica a buscar y aplicar las herramientas más adecuadas a los problemas basados en estos modelos.x3]-DV_1*Vo.:)=eval(V(3. DV_1=DV1^-1. . El estudio de estos modelos permite un conocimiento más profundo del fenómeno.x2.

Otra fuente de este tipo de errores tiene su origen en la imprecisión de los datos físicos: constantes físicas y datos empíricos. conducen a soluciones aproximadas que son siempre numérica. El importante esfuerzo de cálculo que implica la mayoría de estos métodos hace que su uso esté íntimamente ligado al empleo de computadores. Los que son consecuencia del método empleado para encontrar la solución del problema. se incluyen aquellos en los que la definición matemática del problema es sólo una aproximación a la situación física real. por ejemplo. Dentro del grupo de los primeros. Estos errores son normalmente despreciables. Errores El concepto de error es consustancial con el cálculo numérico.• • La solución formal es tan complicada que hace imposible cualquier interpretación posterior. De hecho. En aquellos casos en que estos errores no son realmente despreciables. Los errores asociados a todo cálculo numérico tienen su origen en dos grandes factores: • • Aquellos que son inherentes a la formulación del problema. Simplemente no existen métodos analíticos capaces de proporcionar soluciones al problema. nuestra solución será poco precisa independientemente de la precisión empleada para encontrar las soluciones numéricas. tres son sus fuentes principales: 1. Sin embargo. El empleo de computadores ha reducido enormemente la probabilidad de que este tipo de errores se produzcan. el que se comete al obviar los efectos relativistas en la solución de un problema de mecánica clásica. En estos casos son útiles las técnicas numéricas. En el caso de errores en la medida de los datos empíricos y teniendo en cuenta su carácter generalmente aleatorio. Esta fuente de error es bien conocida por cualquiera que haya realizado cálculos manualmente o empleando una calculadora. En todos los problemas es fundamental hacer un seguimiento de los errores cometidos a fin de poder estimar el grado de aproximación de la solución que se obtiene. sin el desarrollo que se ha producido en el campo de la informática resultaría difícilmente imaginable el nivel actual de utilización de las técnicas numéricas en ámbitos cada día más diversos1. que mediante una labor de cálculo más o menos intensa. no es . Equivocaciones en la realización de las operaciones (errores de bulto). En lo que se refiere al segundo tipo de error (error computacional). su tratamiento analítico es especialmente complejo pero imprescindible para contrastar el resultado obtenido computacional-mente.

Más aún. Generalmente. • Solución de la ecuación f(x) = 0 por el método de Newton-Raphson: proceso iterativo que. la otra fuente de error de importancia es aquella que tiene su origen en el hecho de que los cálculos aritméticos no pueden realizarse con precisión ilimitada. 2. sin embargo. 2. ya que resulta de truncar un proceso infinito para obtener un proceso finito. la probabilidad de que se haya cometido un error de bulto no puede ser ignorada. Por último. Seno x) empleando sólo n términos de los infinitos que constituyen la expansión en serie de Taylor. estamos interesados en estimar.1 Definiciones Ahora que disponemos de una idea correcta de qué es el error y de cual es su origen. algunas operaciones aritméticas pueden dar lugar a la aparición de errores (las divisiones pueden producir números que deben ser redondeados y las multiplicaciones dar lugar a más dígitos de los que se pueden almacenar). como error por truncamiento. no conocemos el valor de una cierta magnitud y hemos de conformarnos con un valor aproximado x. sino mediante algún tipo de aproximación. este error en cualquier procedimiento numérico. como la empleada en la regla del trapezoide. Cuando no resulta posible verificar que la solución calculada es razonablemente correcta.despreciable la probabilidad de que el programador cometa uno de estos errores (calculando correctamente el resultado erróneo). no es esta la fuente de error que más nos va a preocupar. para operar con ellos es necesario redondearlos. Para estimar la magnitud de este error necesitamos dos definiciones básicas: Error absoluto . converge sólo cuando el número de iteraciones tiende a infinito. El error que se introduce al redondear un número se denomina error de redondeo. • Denominaremos a este error. en general. o al menos acotar. Muchos números requieren infinitos decimales para ser representados correctamente. El error causado por resolver el problema no como se ha formulado. Incluso en el caso en que un número pueda representarse exactamente. la presencia de bugs no detectados en el compilador o en el software del sistema no es inusual. en todas sus formas. Generalmente está causado por la sustitución de un infinito (sumatorio o integración) o un infinitesimal (diferenciación) por una aproximación finita. podemos formalizar el concepto de error. • Resolución de una ecuación diferencial reemplazando las derivadas por una aproximación (diferencias finitas). • Aproximación de la integral de una función por una suma finita de los valores de la función. Algunos ejemplos son: El cálculo de una función elemental (por ejemplo. Obviamente. Sin embargo. 3.

un número que: . es tal que: . se emplea la expresión: (3) En general. no conocemos el valor de este error. si el error de redondeo. tiene una representación decimal infinita. al que denominaremos x(d). Podemos decir que x ha sido adecuadamente redondeado a un número con d decimales. tal (4) o bien: (5) De acuerdo con este formalismo. tenemos que un numero se representará del siguiente modo: = = (6) 2.2 Dígitos significativos Sea x un número real que. esto es. en general.de x: (1) Error relativo de x: (2) En la práctica. sino sólo de una acotación de su valor. ya que no es habitual disponer del valor exacto de la magnitud.

El error cometido en este caso es: (9) y que.4785 = En el segundo caso. Ejemplo 2: Exprese el número x=35.478 = y no la siguiente: x(3) = 35.47846 truncado a cuatro (x(4)) y tres (x(3)) decimales. conduce a peores resultados que el método anterior.(8) Ejemplo 1: Exprese el número x=35. la aproximación correcta es: x(3) = 35. en donde simplemente se eliminan los dígitos de orden inferior. Otra forma de obtener el número de cifras significativas es mediante truncamiento. Solución: en el primer caso obtenemos: x(4) = 35. no es correcto redondear por exceso cuando el dígito anterior es 5 y proviene de un acarreo previo. Calcular el error cometido. Calcular el error cometido.47846 correctamente redondeado a cuatro (x(4)) y tres (x(3)) decimales. .479 = Es decir. en general.

veamos cual es el efecto que cada una de las operaciones básicas tiene sobre el error final cuando se aplican sobre dos números y : = = = = (10) (11) (12) (13) Cuando el problema consiste en calcular el resultado y = f(x)tenemos la siguiente fórmula aproximada de propagación del error: (14) .3 Propagación de errores Cuando se resuelve un problema matemático por métodos numéricos y aunque las operaciones se lleven a cabo exactamente.Solución: x(4) = 35.478 = 2.4784 = x(3) = 35. Para estudiar como se propaga en error. Es importante tratar de conocer el efecto que sobre el resultado final del problema tiene cada una de las operaciones realizadas. obtenemos una aproximación numérica del resultado exacto.

Solución: El error cometido. se puede calcular mediante: Sustituyendo valores.En el caso más general.a¿Con qué exactitud podemos Solución: Primero resolveremos el sistema de ecuaciones por reducción: . 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? . de acuerdo con la ecuación (15). la fórmula aproximada de propagación del error maximal es: (15) Ejemplo 3: Determinar el error máximo cometido en el cálculo y = x1 x22 para y . en que una función depende de más de una variable ( ). b = 1 / a y d = b .

Primero. calcularemos el error asociado a cada una de las variables y los términos de la expresión anterior: Sustituyendo valores. sustituyendo valores. obtenemos el siguiente resultado: Una forma mucho más adecuada de resolver este problema consiste en sustituir en la expresión (16) los valores de b y d por sus correspondientes expresiones en función de a.Ecuaciones que conducen a la siguiente expresión para el producto: (16) Resolveremos ahora el problema por dos métodos. conduce al resultado: . obtenemos que el producto y el error asociado vienen dados por: que. Sustituyendo y operando.

¿Con qué exactitud es necesario medir el radio de una esfera para que su volumen sea conocido con un error relativo menor de 0. pero también (lo que es más importante) en cómo el número representado es almacenado: en formato fijo (también denominado 'entero') o en punto flotante2 (denominado 'real'). calcular el módulo de Young y el intervalo de error. 2. la flexión s que ésta experimenta viene dada por la expresión: en donde E es una constante que depende sólo del material denominada módulo de Young.71 mm. Prácticamente todos los computadores permiten al programador elegir entre varias representaciones o 'tipos de datos'. Conociendo que una fuerza de 140 Kp aplicada sobre una barra de 125 cm de longitud y sección cuadrada de 2. Los diferentes tipos de datos pueden diferir en el número de bits empleados. En general. Aritmética de computadores Los computadores no almacenan los números con precisión infinita sino de forma aproximada empleando un número fijo de bits (apócope del término inglés Binary Digit) o bytes (grupos de ocho bits). Si sobre el extremo libre aplicamos una fuerza F perpendicular a la barra. 2.01%? ¿Cuantos decimales es necesario emplear para el valor de ? Soluciones: cifras decimales. 3. permitiendo que algunos errores se cancelen mutuamente.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.4 Ejercicios adicionales 1.5 cm produce una flexión de 1. menor será el error cometido. . El número debe expresarse al menos con seis Supongamos una barra de hierro de longitud l y sección rectangular fija por uno de sus extremos. . cuanto menor sea el número de pasos intermedios que efectuemos para alcanzar la solución. Suponer que los datos vienen afectados por un error máximo correspondiente al de aproximar por truncamiento las cifras dadas.

Por ejemplo. Por estos motivos. .1 Aritmética de punto fijo Un entero se puede representar empleando todos los bits de una palabra de computadora. en una máquina con longitud de palabra de 32 bits. Por ejemplo: En general. negativo o cero). un número real x distinto de cero. la aritmética de punto fijo se emplea muy raramente en cálculos no triviales. La solución no esté fuera del rango del número entero más grande o más pequeño que se puede representar (generalmente con signo). cualquier número real puede expresarse mediante la denominada notación científica normalizada.1) y 231 .2 Números en punto flotante 3. con la salvedad de que se debe reservar un bit para el signo. En estos casos se dice que se comete un error de desbordamiento por exceso o por defecto (en inglés: Overflow y Underflow) y es necesario recurrir a técnicas de escalado para llevar a cabo las operaciones.1 Notación científica normalizada En el sistema decimal.3. 3.1 = 2147483647. Las operaciones aritméticas entre números enteros son también 'exactas' siempre y cuando: 1. 2. La división se interpreta que da lugar a un número entero. despreciando cualquier resto. Para expresar un número en notación científica normalizada multiplicamos o dividimos por 10 tantas veces como sea necesario para que todos los dígitos aparezcan a la derecha del punto decimal y de modo que el primer dígito después del punto no sea cero. se representa en notación científica normalizada en la forma: (17) en donde r es un número tal que y n es un entero (positivo. Un número representado en formato entero es 'exacto'. los enteros están comprendidos entre -(231 .2.

Para ilustrar este punto.Exactamente del mismo modo podemos utilizar la notación científica en el sistema binario.2. entonces es un número de máquina en el MARC-323 La restricción de que |m| no requiera más de 7 bits significa que: . Dado que la mantisa siempre se representa normalizada. es decir. el primer bit en q es siempre 1. se toman de forma que el bit más significativo (el primer bit) sea siempre '1'. Si además puede representarse exactamente con |m| ocupando 7 bits y |q| ocupando 24 bits. En un ordenador binario tanto q como m estarán representados como números en base 2. pero con ciertas restricciones sobre el número de dígitos de q y m impuestas por la longitud de palabra disponible (es decir. en la representación binaria empleada se cumplirá que: 3. Se dice que un número real expresado como aparece en la ecuación (18) y que satisface la ecuación (19) tiene la forma de punto flotante normalizado. por lo que no es necesario almacenarlo proporcionando un bit significativo adicional. los bits se acomodan del siguiente modo: Signo del número real x: Signo del exponente m: Exponente (entero |m|): Mantisa (número real |q|): 1 bit 1 bit 7 bits 23 bits En la mayoría de los cálculos en punto flotante las mantisas se normalizan. el número de bits que se van a emplear para almacenar un número). En este caso. la mantisa q cumple siempre la ecuación (19). tenemos que: (18) donde m es un entero. Esta forma de almacenar un número en punto flotante se conoce con el nombre de técnica del 'bit fantasma'.2 Representación de los números en punto flotante En un ordenador típico los números en punto flotante se representan de la manera descrita en el apartado anterior. Para representar un número en punto flotante en el MARC-32. El número q se denomina mantisa y el entero m exponente. Por lo tanto. Puesto que la mantisa q está normalizada. consideraremos un ordenador hipotético que denominaremos MARC-32 y que dispone de una longitud de palabra de 32 bits (muy similar a la de muchos ordenadores actuales).

32. obtenemos: . obtenemos: En cuanto a los otros dos números. y 12542.29301 en base 2 empleando esta notación de punto fijo y notación de punto flotante MARC-32 con 32 bits. por lo que en muchos casos debemos recurrir a programas escritos en aritmética de doble precisión e incluso de precisión extendida. Este no es un intervalo de valores suficientemente generoso. ya que el bit menos significativo de la mantisa representa unidades de . la MARC-32 puede manejar números tan pequeños como 10-38 y tan 38 grandes como 10 .5 representado en punto flotante en el MARC-32 (longitud de palabra de 32 bits) se almacena en la memoria del siguiente modo: Ejemplo 5: Suponga un ordenador cuya notación de punto fijo consiste en palabras de longitud 32 bits repartidas del siguiente modo: 1 bit para el signo. obtenemos: Si expresamos el error como la diferencia entre el valor y el número realmente almacenado en el ordenador. Por ejemplo: 0. Calcule el error de almacenamiento cometido en cada caso.Ya que . Por tanto. Represente los números 26.32 en binario se escribe del siguiente modo: Empleando las representaciones comentadas. 15 bits para la parte entera y 16 bits para la parte fraccionaria. los números expresados mediante más de siete dígitos decimales serán objeto de aproximación cuando se almacenen en el ordenador. Como q debe representarse empleando no más de 24 bits significa que nuestros números de máquina tienen una precisión limitada cercana a las siete cifras decimales. Solución: El número 26.

Figure: Evolución de la separación entre dos números consecutivos en función del exponente. Por ejemplo. f.Antes de entrar con detalle en la aritmética de los números en punto flotante. Supongamos que p. De modo análogo. sea 24. es interesante notar una propiedad de estos números de especial importancia en los cálculos numéricos y que hace referencia a su densidad en la línea real. En el intervalo (exponente f = 0) es posible representar 224 números igualmente espaciados y separados por una distancia 1/224.30]. es siempre preferible comparar la diferencia relativa a la magnitud de los números. pero su densidad en este caso es 2f/224. el número de bits de la mantisa. pero el espaciado entre dos números sucesivos es de sólo . De este hecho se deriva inmediatamente una regla práctica: cuando es necesario comparar dos números en punto flotante relativamente grandes. En la figura (1) se representa gráficamente la separación entre dos números consecutivos en función del exponente f en el rango f = [20. en cualquier intervalo hay 224 números equiespaciados. de . entre 220 = 1048576 y 221 = 2097152 hay 224 = 16777216 números.

Todo lo anterior. Redondeo por exceso: Aumentamos en una unidad el último bit remanente a24 y después eliminamos el exceso de bits como en el caso anterior. scale=0. Si representamos el número mediante: en donde cada ai es 0 ó 1 y el bit principal es a1 = 1. entonces el número de máquina x* más cercano a x satisface la desigualdad: (20) que se puede escribir de la siguiente forma: . Un número de máquina se puede obtener de dos formas: • • Truncamiento: descartando todos los bits excedentes . se resume diciendo que si x es un número real distinto de 0 dentro del intervalo de la máquina. Después analizaremos las cuatro operaciones aritméticas básicas y finalmente ampliaremos el estudio a un cálculo más complejo.3.la representación en punto flotante de un número real. 3. El número resultante. x' es siempre menor que x (se encuentra a la izquierda de x en la recta real). clip=true. de forma exacta en un ordenador.7]eps/expon 3.1 Números de máquina aproximados Estamos interesados en estimar el error en que se incurre al aproximar un número real positivo x mediante un número de máquina del MARC-32.3 Aritmética de punto flotante En este apartado analizaremos los errores inherentes a la aritmética de los números de punto flotante. Primero consideraremos el error que surge como consecuencia de que los números reales no se pueden almacenar. [bb=55 60 455 410. aplicado al caso del MARC-32. en general.

x = = Por tanto. x e y.3.x' y x'' . Calculamos ahora las diferencias x .x' x'' .x para estimar cual es el error cometido: x .Ejemplo 6: ¿Cómo se expresa en binario el número x = 2/3? ¿Cuáles son los números de máquina x' y x'' próximos en el MARC-32? El número 2/3 en binario se expresa como: Los dos números de máquina próximos. el número más próximo es fl(x) = x'' y los errores de redondeo absoluto y relativo son: |fl(x) . Expresaremos esta operación como: . que producen un resultado normalizado de l-dígitos.2 Las operaciones básicas Vamos a analizar el resultado de operar sobre dos números en punto flotante normalizado de l-dígitos de longitud. cada uno con 24 bits. son: x' = x'' = en donde x' se ha obtenido por truncamiento y x'' mediante redondeo por exceso.x| = = 2-25 < 2-24 3.

La operación de multiplicar dos números expresados en punto flotante implica sumar los exponentes y multiplicar las mantisas. ó . Supondremos que en cada caso la mantisa del resultado es primero normalizada y después redondeada (operación que puede dar lugar a un desbordamiento que requeriría renormalizar el número). redondear de este modo da lugar a un intervalo máximo del error de: (21) y un error relativo máximo en el intervalo: (22) Analizaremos ahora el error generado por cada una de las operaciones básicas: Multiplicación. El valor de la mantisa redondeada a p bits. Teniendo en cuenta sólo la mantisa. se define como (de una forma más rigurosa que en el caso anterior): en donde la función redondeo por defecto es el mayor entero menor o igual a x y la función redondeo por exceso es el menor entero mayor o igual a x.en donde op es +. -. Para números enteros. esta función se traduce en la bien conocida regla de sumar 1 en la posición p + 1. Para analizar el error de esta operación supongamos dos números: Tenemos entonces que el producto será: xy = qx qy 2fx + fy en donde el valor de la mantisa se encontrará en el rango: . qr. Si la mantisa resultante no está normalizada. Después. es necesario redondear la mantisa a p bits. se recurre a renormalizar el resultado ajustando adecuadamente el exponente.

División. Por tanto. Tenemos entonces: en donde. mientras que los exponentes se restan. como máximo. Esto es: Puesto que ambas mantisas satisfacen la ecuación (18). el valor del cociente estará acotado entre los límites: Aplicando un análisis similar al empleado en el caso de la multiplicación. la cota del error relativo en la multiplicación es la misma que la que surge por redondear la mantisa. la normalización del producto qx qy implica un desplazamiento a la derecha de. que es el error de redondeo.ya que tanto x como y satisfacen la ecuación (19). tenemos: Por tanto. de acuerdo con la ecuación (22). Para llevar a cabo la división en punto flotante. obtenemos: . cumple la ecuación (21). La mantisa redondeada será entonces uno de estos dos posibles valores: en donde . se divide la mitad de la mantisa del numerador por la mantisa del denominador (para evitar cocientes mayores de la unidad). una posición.

Desafortunadamente. en el mejor de los casos. tenemos: Es decir.en donde. La mantisa resultante es sumada (o restada) y el resultado se normaliza y después se redondea. La operación de suma o resta se realiza del siguiente modo: se toma la mantisa del operando de menor magnitud (supongamos que es y) y se desplaza fx . el resultado final indica que la cota máxima del error cometido en la adición y la sustracción viene dado por: En conclusión. los errores de redondeo se acumulan a medida que aumenta el número de cálculos. Adición y sustracción. el error absoluto del resultado es no mayor de 1 en el bit menos significativo de la mantisa. Sin embargo. Si en el proceso de calcular un valor se llevan a cabo N operaciones aritméticas es 4 posible obtener.fy posiciones a la derecha. de acuerdo con la ecuación (22). como en el caso anterior. por lo que se produce una cancelación parcial). un error de redondeo total del orden de (que coincide con el caso en que los errores de redondeo están aleatoriamente distribuidos. Sin embargo. es la misma que la que surge por redondear la mantisa. este error puede crecer muy rápidamente por dos motivos: . por lo que no lo vamos a ver en detalle. Es decir: El análisis del error cometido en esta operación es más complejo que los estudiados hasta ahora. la cota máxima del error relativo en la división. en todas las operaciones aritméticas elementales en punto flotante.

dando lugar a un resultado en el cual los únicos bits significativos que no se cancelan son los de menor orden (en los únicos en que difieren). En este caso. en cuyo caso el error de redondeo se puede aproximar a . En circunstancias especialmente desfavorables pueden existir operaciones que incremente espectacularmente el error de redondeo. son pequeños. • Veamos con un ejemplo los problemas comentados anteriormente. Puede parecer que la probabilidad de que se de dicha situación es pequeña. sin embargo. es preferible calcular previamente: . En efecto. pero da pésimos resultados al estimar la raíz menor en valor absoluto. En estos casos. este fenómeno se da cuando se calcula la diferencia entre dos números muy próximos. la ecuación (23) evalúa bien la raíz más grande en valor absoluto. La solución del problema pasa por emplear una expresión mejor condicionada. el valor del discriminante es muy próximo al valor de b: por lo que la diferencia viene afectada de un error de redondeo importante. Por otra parte.• Es muy frecuente que la regularidad del cálculo o las peculiaridades del computador den lugar a que el error se acumule preferentemente en una dirección. c o ambos. Generalmente. Hay dos formas de calcular las soluciones de la familiar ecuación cuadrática: ax2 + bx + c = 0 que son: (23) (24) Cualquiera de estas dos expresiones da problemas cuando a. algunas expresiones matemáticas fomentan este fenómeno. la ecuación (24) calcula bien la raíz menor (siempre en valor absoluto) pero no la raíz más grande.

4 Desbordamiento por exceso y desbordamiento por defecto En la discusión anterior. obtenemos: Sin embargo. hemos ignorado la posibilidad de que el resultado de una operación del punto flotante pueda no ser representable mediante el esquema fijo (l-bits) empleado por el ordenador. empleando la expresión (24): Por último.(25) y las dos raíces a partir de valor de q como: (26) Ejemplo: Calcular las raíces de la siguiente ecuación cuadrática: ax2 + bx + c = 0 siendo: Solución: Empleando la ecuación (23). empleando las expresiones (25) y (26) se obtienen ambas soluciones correctas: 3. La magnitud más grande que puede representarse mediante la fórmula general (18) es: (27) .

3. en el caso del desobordamiento por defecto. Un desbordamiento por exceso de punto flotante (overflow en inglés) se origina cuando el resultado de una operación de punto flotante tiene una magnitud mayor que la representada por la ecuación (27). las siguientes operaciones aritméticas dan lugar a desbordamiento por exceso: El desbordamiento por defecto (underflow en inglés) se produce cuando el resultado de una operación en punto flotante es demasiado pequeño.1) y M es la mantisa que tiene todos sus bits puestos a 1 ( M = 1 .1 = 127). Veamos brevemente este fenómeno y el problema relacionado con este: el 'condicionamiento' del método o del problema. como para que se pueda expresar en la forma dada por la ecuación (18). El desbordamiento por exceso es casi siempre resultado de un error en el cálculo. aunque no nulo. La mejor forma de ver este fenómeno es a través de un ejemplo.en donde F es el mayor exponente positivo representable (generalmente 27 .5 Condicionamiento y estabilidad La 'inestabilidad' en un cálculo es un fenómeno que se produce cuando los errores de redondeo individuales se propagan a través del cálculo incrementalmente.224). Ejemplo: Con q = 8 (y por tanto F = 27 . Supongamos el siguiente sistema de ecuaciones diferenciales: . Por ejemplo. con q=8 resulta -F = -128. Sin embargo. la siguiente operación aritmética da lugar a desbordamiento por defecto: . en muchas ocasiones es posible continuar el cálculo reemplazando el resultado por cero. El número más pequeño representable suponiendo que siempre trabajamos con mantisas normalizadas es en donde -F es el exponente negativo más grande permitido (generalmente -2-q-1). Ejemplo: Con q = 8 (y por tanto -F = -128).

de a1 dará lugar a que el término ex domine sobre el término e-x para valores suficientemente grandes de x (ver figura (2)). La conclusión que se obtiene es que no es posible calcular una solución al sistema de ecuaciones diferenciales anterior que. las soluciones son exactas. para valores suficientemente grandes de x.que tiene la siguiente solución general: En el caso particular en que las condiciones iniciales de nuestro problema son: y1(0) = -y2(0) = 1 es posible determinar que el valor de las constantes a1 y a2 es: a1 = 0 & y & a2 = 1 Hasta este punto. Ya que a1 multiplica a un exponencial creciente cualquier valor. supongamos que el sistema de ecuaciones anterior se resuelve empleando un método numérico cualquiera con el fin de calcular los valores de las funciones y1 y y2 en una secuencia de puntos y que el error del método da lugar a un valor de . por pequeño que sea. no de lugar a un error arbitrariamente grande en relación con la solución exacta. Sin embargo. Figure: Representación gráfica de las funciones y = .

. Si f(x) es una función polinómica de grado 1 ó 2.7]eps/sinu El problema anterior se dice que es inherentemente inestable. resolver sistemas de ecuaciones lineales y diferenciales. Sin embargo. toma en los extremos del intervalo [a. Para polinomios de grado 3 ó 4 es necesario emplear métodos complejos y laboriosos. etc. En el caso en que f(x) sea una función algebraica (polinómica) de grado n y coeficientes reales. podemos afirmar que tendrá n raíces reales o complejas.. al menos. se dice que está 'mal condicionado' (illconditioned).b] valores de signo opuesto. entonces la función admite. conocemos expresiones simples que nos permitirán determinar sus raíces. si f(x) es de grado mayor de cuatro o bien no es polinómica. valores propios de matrices. una raíz en dicho intervalo. f(x).e-x e en donde se pone de manifiesto que ambas funciones difieren rápidamente a partir de un cierto valor de la ordenada x. Su importancia radica en que si podemos determinar las raíces de una ecuación también podemos determinar máximos y mínimos. La propiedad más importante que verifican las raíces racionales de una ecuación algebraica establece que si p/q es una raíz racional de la ecuación de coeficientes enteros: . 4. [scale=0. Existen una serie de reglas que pueden ayudar a determinar las raíces de una ecuación: • • • El teorema de Bolzano. o empleando una terminología más común en cálculo numérico. que establece que si una función continua. Cálculo de raíces de ecuaciones El objeto del cálculo de las raíces de una ecuación es determinar los valores de x para los que se cumple: f(x) = 0 (28) La determinación de las raíces de una ecuación es uno de los problemas más antiguos en matemáticas y se han realizado un gran número de esfuerzos en este sentido. La determinación de las soluciones de la ecuación (28) puede llegar a ser un problema muy difícil. no hay ninguna fórmula conocida que permita determinar los ceros de la ecuación (excepto en casos muy particulares).

Estos métodos trabajan del siguiente modo: a partir de una primera aproximación al valor de la raíz. determinamos una . por lo que sólo nos puede servir a modo de orientación. (que es además la única raíz racional de la ecuación).1 = 0 Primero es necesario efectuar un cambio de variable x = y/3: y después multiplicamos por 32: y3 + 3y2 -3y -9 = 0 con lo que los candidatos a raíz del polinomio son: Sustituyendo en la ecuación. Ejemplo: Pretendemos calcular las raíces racionales de la ecuación: 3x3 + 3x2 .entonces el denominador q divide al coeficientes an y el numerador p divide al término independiente a0. este método es muy poco potente. obtenemos que la única raíz real es y = -3.x . Lógicamente. La mayoría de los métodos utilizados para el cálculo de las raíces de una ecuación son iterativos y se basan en modelos de aproximaciones sucesivas. es decir.

A partir de este punto se va reduciendo el intervalo sucesivamente hasta hacerlo tan pequeño como exija la precisión que hayamos decidido emplear. por lo que sabemos que existe. Está basado directamente en el teorema de Bolzano explicado con anterioridad. 4. Figure: Diagrama de flujo correspondiente a la .1 Método de la bisección Es el método más elemental y antiguo para determinar las raíces de una ecuación.x1]tal que f(x0)f(x1) < 0. Consiste en partir de un intervalo [x0. al menos.aproximación mejor aplicando una determinada regla de cálculo y así sucesivamente hasta que se determine el valor de la raíz con el grado de aproximación deseado. una raíz real.

9]eps/bisecc El algoritmo empleado se esquematiza en la figura (3). que representa las cifras significativas con las que queremos obtener la solución y dos valores de la variable independiente. es necesario suministrar al programa el número máximo de iteraciones MaxIter. Repetimos el proceso hasta alcanzar la convergencia (hasta que ) o bien hasta que se excede el número de iteraciones permitidas (Iter > MaxIter).implementación del método de la bisección. Reemplazamos el nuevo valor obtenido y repetimos el proceso. Se sigue de este modo una estrategia general al efectuar cálculos numéricos que indica que es mejor calcular una cantidad añadiendo un pequeño término de corrección a una aproximación obtenida previamente. Por ejemplo. partimos de un valor inicial x0 y calculamos una nueva aproximación x1=g(x0). definida en la forma g(x)=f(x)+x. el método de las aproximaciones sucesivas reemplaza esta ecuación por una equivalente. • • • . x=g(x). el término número de cifras significativas con las que obtenemos el resultado. Una vez que se comprueba que el intervalo de partida es adecuado. representa el 4. Inicialmente.x1]. . Esto da lugar a una sucesión de valores converge. De este modo. Para encontrar la solución. tales que cumplan la relación f(x0)f(x1) < 0. [scale=0. la tolerancia . existen valores de x0 y x1 para los cuales xm calculado mediante se sale del intervalo [x0. La convergencia ( ) se calcula mediante la expresión . x0 y x1. tendrá como límite la solución del problema. en un computador de precisión limitada. Dos operaciones representadas en el esquema de la figura (3) requieren una explicación adicional: • El punto medio del intervalo se calcula como en lugar de emplear .2 Método de las aproximaciones sucesivas Dada la ecuación f(x) = 0. que si . lo dividimos en dos subintervalos tales que y y determinamos en qué subintervalo se encuentra la raíz (comprobando de nuevo el producto de las funciones). en cuyo caso es necesario imprimir un mensaje de error indicando que el método no converge.

Es fácil comprobar que el método sólo 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). puede obviarse fácilmente.9]eps/as-1 • • • En la figura (4) se representa la interpretación geométrica del método.9]eps/as-2 . adecuado. [scale=0.• Figure: Interpretación geométrica del método de las aproximaciones sucesivas. Sin embargo. Un ejemplo de este caso se muestra en la figura (5). Esta condición. La intersección de esta solución con la recta y=x nos dará un nuevo valor x1 más próximo a la solución final. el método puede divergir fácilmente. que a priori puede considerarse una severa restricción del método. Partimos de un punto inicial x0 y calculamos y = g(x0). Para ello basta elegir la función g(x) del siguiente modo: • • de forma que tomando un valor de cumpla la condición de la derivada. siempre podemos hacer que g(x) • Figure: Demostración gráfica de que el método de las aproximaciones sucesivas diverge si la derivada g'(x) > 1. [scale=0.

Si f'' existe y es continua. sea r un cero de f y sea x una aproximación a r tal que r=x+h. Si x está próximo a r (es decir hes pequeña).4.3 Método de Newton Este método parte de una aproximación inicial x0 y obtiene una aproximación mejor. por el teorema de Taylor tenemos: 0 = f(r) = f(x+h) = f(x) + hf'(x) + O(h2) en donde h=r-x. es razonable ignorar el término O(h2): 0 = f(x) + hf'(x) por lo que obtenemos la siguiente expresión para h: (32) (31) (30) A partir de la ecuación (32) y teniendo en cuenta que r=x+h es fácil derivar la ecuación (29). x1. Efectivamente. dada por la fórmula: (29) La expresión anterior puede derivarse a partir de un desarrollo en serie de Taylor. .

Figure: Dos situaciones en las que el método de Newton no funciona adecuadamente: (a) el método no alcanza la convergencia y (b) el método converge . x1. Veamos como podemos obtener la ecuación (29) a partir de lo dicho en el párrafo anterior.9]eps/new-1 El método de Newton tiene una interpretación geométrica sencilla. haciendo y=0 y despejando x obtenemos la ecuación de Newton-Raphson (29). La ecuación de la recta que pasa por el punto (x0. De hecho. se obtiene de la intersección de la función linear con el eje X de ordenadas. f'(x0).f(x0) = f'(x0)(x-x0) (33) de donde. f se reemplaza por una recta tal que contiene al punto (x0. como se puede apreciar del análisis de la figura (6). La nueva aproximación a la raíz. es decir.Figure: Interpretación geométrica del método de Newton.f(x0)) y cuya pendiente coincide con la derivada de la función en el punto.f(x0)) y de pendiente f'(x0) es: y . el método de Newton consiste en una linealización de la función. [scale=0.

Sin embargo. El método de la secante parte de dos puntos (y no sólo uno como el método de Newton) y estima la tangente (es decir. En estos casos es más útil emplear el método de la secante.9]eps/new-2 El método de Newton es muy rápido y eficiente ya que la convergencia es de tipo cuadrático (el número de cifras significativas se duplica en cada iteración). [scale=0.hacia un punto que no es un cero de la ecuación. obtenemos la expresión del método de la secante que nos proporciona el siguiente punto de iteración: (35) . la forma funcional de f(x) dificulta en ocasiones el cálculo de la derivada. 4.4 Método de la secante El principal inconveniente del método de Newton estriba en que requiere conocer el valor de la primera derivada de la función en el punto. la convergencia depende en gran medida de la forma que adopta la función en las proximidades del punto de iteración. En la figura (7) se muestran dos situaciones en las que este método no es capaz de alcanzar la convergencia (figura (7a)) o bien converge hacia un punto que no es un cero de la ecuación (figura (7b)). la pendiente de la recta) por una aproximación de acuerdo con la expresión: (34) Sustituyendo esta expresión en la ecuación (29) del método de Newton. Sin embargo.

como en el método de la bisección. Presenta además.x1]. la evaluación de derivada alguna. x2. [x0. parte de dos puntos que rodean a la raíz f(x) = 0. En la figura (8) se representa geométricamente este método. Este método calcula el siguiente punto de iteración a partir de la expresión: 4. En la figura (9) se representa geométricamente este método.5 Método de Steffensen El método de Steffensen presenta una convergencia rápida y no requiere. la ventaja adicional de que el proceso de iteración sólo necesita un punto inicial. es decir. se toma aquel que cumpla f(x)f(x2) < 0.x2] y [x2. Este método. emplearemos los puntos x1 y x2para estimar un nuevo punto más próximo a la raíz de acuerdo con la ecuación (35).6 Método de la falsa posición El método de la falsa posición pretende conjugar la seguridad del método de la bisección con la rapidez del método de la secante. La asignación del nuevo intervalo de búsqueda se realiza como en el método de la bisección: entre ambos intervalos.9]eps/secante En la siguiente iteración. [scale=0.Figure: Representación geométrica del método de la secante. como en el caso del método de la secante. . 4. En general. La siguiente aproximación. el método de la secante presenta las mismas ventajas y limitaciones que el método de Newton-Raphson explicado anteriormente. dos puntos x0 y x1tales que f(x0)f(x1) < 0. se calcula como la intersección con el eje X de la recta que une ambos puntos (empleando la ecuación (35) del método de la secante).

[scale=0.9]eps/falpos La elección guiada del intervalo representa una ventaja respecto al método de la secante ya que inhibe la posibilidad de una divergencia del método. Figure: Modificación del método de la falsa posición propuesta por Hamming. Por otra parte y respecto al método de la bisección. una vez iniciado el proceso iterativo.Figure: Representación geométrica del método de la falsa posición. mejora notablemente la elección del intervalo (ya que no se limita a partir el intervalo por la mitad). La aproximación a la raíz se toma a partir del punto de intersección con el eje X de la recta que une los puntos ( x0. Para obviar este problema. el método de la falsa posición tiene una convergencia muy lenta hacia la solución. se ha . [scale=0.9]eps/hamming Sin embargo. uno de los extremos del intervalo tiende a no modificarse (ver figura (9)). f(x1)/2) si la función es cóncava en el intervalo (figura b).f(x1)) si la función es convexa en el intervalo (figura a) o bien a partir de la recta que une los puntos (x0.f(x0)/2) y (x1. Efectivamente.f(x0)) y (x1.

Como hemos comentado.propuesto una modificación del método. f(x1)/2) si la función es cóncava en el intervalo. . Ejemplo: En el caso del método de Newton. la expresión (37) se escribiría del modo: en tanto que para el método de Steffensen resulta ser: .f(x0)) y (x1. denominada método de Hamming. Tenemos entonces que: 5. En la figura (10) se representa gráficamente el método de Hamming. Según este método. Un método relativamente sencillo para determinar la curvatura de la función consiste en evaluar la función en el punto medio del intervalo. Puntos fijos e iteración funcional El método de Newton y el de Steffenson son ejemplos de procedimientos mediante los cuales se calcula una sucesión de puntos empleando una fórmula de recurrencia como la siguiente: xn+1 = F(xn) (37) El algoritmo definido de este modo se denomina iteración funcional.f(x0)/2) y (x1. el método de Hamming requiere determinar la concavidad o convexidad de la función en el intervalo de iteración.f(x1)) si la función es convexa en el intervalo o bien a partir de la recta que une los puntos (x0. la aproximación a una raíz se encuentra a partir de la determinación del punto de intersección con el eje X de la recta que une los puntos ( x0. f(xm) (en donde xm se calcula como en el método de la bisección) y comparar este valor con la media de los valores de la función en los extremos del intervalo.

. Sin embargo. por tanto. primero escribimos xn en la forma: . Como hemos visto en el apartado anterior.. aquellos casos Es fácil comprobar que si F es continua se cumple la siguiente relación entre F y s: Tenemos. Para ello. conocido como teorema de la aplicación contractiva se puede demostrar fácilmente. 3. como por ejemplo la sucesión 1. Entonces F tiene un punto fijo. estamos interesados en aquellos casos para los que existe para los que se cumple: . que F(s)=s y denominamos a s punto fijo de la función F. Podemos considerar al punto fijo como un valor al que se fija la función durante el proceso iterativo. Más aún. En este caso.. que se obtiene con x0=1 y F(x)=3x.La fórmula (37) puede utilizarse para generar sucesiones que no convergen. Las aplicaciones contractivas cumplen una propiedad de gran importancia. con frecuencia un problema matemático puede reducirse al problema de encontrar un punto fijo de una función. El enunciado anterior. Se dice que una transformación es contractiva si existe un número menor que 1 que satisfaga la relación: (38) para todos los puntos x e y en el dominio de F. Es decir. 9.. que se puede expresar del siguiente modo: Sea F una aplicación contractiva que va de un conjunto cerrado a C. este punto fijo es el límite de toda sucesión que se obtenga a partir de la ecuación (37) con cualquier punto inicial . 27. nos limitaremos a analizar el caso más sencillo en que F envía en sí mismo algún conjunto cerrado y además se trata de una aplicación contractiva.

la sucesión converge tal como establece el teorema de la aplicación contractiva expresado anteriormente. basta con demostrar que la serie (39) converge. supongamos que existen dos puntos fijos. tenemos: . podemos escribir: (40) La relación expresada por (40) puede repetirse para obtener: (41) Para comprobar que la sucesión (39) converge. de modo que a partir de la expresión (41) obtenemos: Es decir. vemos que la sucesión [xn]converge si y sólo si la serie converge.De acuerdo con la expresión anterior. Comprobemos ahora que el punto fijo es efectivamente único. Por otra parte. Para ello. x e y. usando la propiedad de las aplicaciones contractivas expresada por (38) junto con la ecuación (37). De acuerdo con la relación (38). Para demostrar que esta serie converge. podemos utilizar el criterio de comparación.

x1. xn. Los elementos aij y bi son números reales fijados. Para comprobar que la función anterior es contractiva. Ejemplo: Demuestre que la sucesión [xn] definida recursivamente de acuerdo con: es contractiva y tiene un punto fijo. es decir. si el punto fijo es único. como: . la sucesión debe converger a un único punto fijo. empleando una muy útil representación matricial. de acuerdo con el teorema de la aplicación contractiva. x2... la única forma de que la ecuación anterior se cumpla es si |x-y| = 0.Ya que es un número finito menor que uno. Resolución de sistemas de ecuaciones lineales El objetivo de este apartado es examinar los aspectos numéricos que se presentan al resolver sistemas de ecuaciones lineales de la forma: (42) Se trata de un sistema de n ecuaciones con n incógnitas. cuyo valor es 2 (compruébelo). 6. . El sistema de ecuaciones (42) se puede escribir. calculemos la diferencia entre dos términos cualesquiera de la sucesión anterior: (por la desigualdad triangular).. Por tanto.

1 Métodos de resolución exacta Antes de abordar el estudio de los métodos de resolución exacta de sistemas de ecuaciones lineales. analizaremos algunas propiedades y relaciones útiles que caracterizan a estos sistemas. 6.(43) Entonces podemos denotar estas matrices por A. en muchas ocasiones los métodos aproximados permiten obtener un grado de exactitud superior al que se puede obtener empleando los denominados métodos exactos. Los Métodos aproximados que utilizan algoritmos iterativos e infinitos y que calculan las solución del sistema por aproximaciones sucesivas. Al contrario de lo que pueda parecer. . debido fundamentalmente a los errores de truncamiento que se producen en el proceso. Entre los métodos aproximados nos centraremos en el estudio de los métodos de Richardson. De entre los métodos exactos analizaremos el método de Gauss y una modificación de éste denominado método de Gauss-Jordan. Jacobi y Gauss-Seidel. x y b de forma que la ecuación se reduce simplemente a: Ax=b (44) Los métodos de resolución de sistemas de ecuaciones se pueden dividir en dos grandes grupos: • • Los Métodos exactos o algoritmos finitos que permiten obtener la solución del sistema de manera directa.

You're Reading a Free Preview

Descarga
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->