Subtemas 1.1 Concepto y trascendencia histórica del análisis numérico 1.2 Importancia del análisis numérico en la ingeniería A lo largo del tiempo, los análisis numéricos han sido desarrollados con el objeto de resolver problemas matemáticos cuya solución es difícil o en ocasiones imposible de resolver por medio de los análisis tradicionales. Las soluciones que ofrecen los análisis numéricos son aproximaciones de los valores reales y, por tanto, se tendrá un cierto grado de error que será conveniente determinar. Son herramientas muy poderosas utilizadas para la solución de problemas. Tienen la capacidad de manejar sistemas de ecuaciones grandes, no linealidades y geometrías complicadas las cuales son bastante comunes en la practica de la ingeniería y que, en ocasiones, son imposibles de resolverse de una manera analítica. Por lo tanto los análisis numéricos amplian la habilidad de quien los estudia para la solución de problemas. La gran mayoria de los análisis numéricos son procesos cíclicos o iterativos, en los cuales se repite una serie de pasos y estos se basan en las denominadas ecuaciones o fórmulas de recurrencia, las cuales relacionan dos o más elementos consecutivos de una sucesión de números, funciones, matrices, etc. 2.1 Aproximaciones. 2.1.1 Cifras significativas. Los números reales pueden expresarse con todas sus cifras o de forma aproximada. Por ejemplo: En la vida real, cuando utilizamos los números decimales, se deben dar con una cantidad adecuada de cifras significativas. Pero, ¿qué es una cifra significativa? Se llaman cifras significativas a aquellas con las que se expresa un número aproximado. Sería absurdo decir que los litros de agua que caben en un pantano son 13.504.956; diríamos que caben 13.504 millones de litros o 13,5 hm3. En este caso usamos tres cifras significativas. Tampoco tiene sentido decir que pesamos 75,345 kg porque sería más sensato decir que pesamos 75,3 kg, con tres cifras significativas. Para aproximar los números reales podemos utilizar el redondeo o el truncamiento. En el redondeo se debe tener en cuenta la primera cifra que se va a suprimir; si es menor que 5 se deja igual la última cifra que se conserva. Si la cifra que se va a suprimir es mayor o igual que 5, se aumenta en una unidad la última cifra que se conserva. En el truncamiento se suprimen las cifras decimales a partir de la dada. Dado el número 2,3473: 2,347 es el redondeo a las milésimas. 2,35 es el redondeo a las centésimas. 2,34 es el truncamiento a las centésimas. 2.1.2 Exactitud y precisión. 2. Algunas definciones básicas Es importante distinguir desde el principio la diferencia entre exactitud y precisión: 1. Exactitud es el grado en el cual la información de un mapa o en una base de datos digital se muestra verdadera o con valores aceptables. La exactitud es un asunto perteneciente a la cualidad de los datos y al número de errores contenidos en un conjunto de datos o mapa. Analizando una base de datos de un SIG, es posible considerar la exactitud horizontal y vertical con respecto a la posición geográfica, tanto atributiva y conceptual, como en la agudeza lógica. o El nivel de exactitud requerido puede variar enormemente de unos casos a otros. o Producir y compilar una gran exactitud en los datos puede ser muy difícil y costoso. 2. Precisión hace referencia a la medida y exactitud de las descripciones en las base de datos de un SIG. Los atributos de información precisos pueden especificar la características de los elementos con gran detalle. Es importante observar, no obstante, que los datos precisos - no importando el cuidado en su medida - pueden ser inexactos. Los topógrafos pueden cometer errores, o bien los datos pueden ser introducidos en las bases de datos incorrectamente. o El nivel de precisión requerido puede variar enormemente de unos casos a otros. Los proyectos de ingeniería como el de una carretera, y las herramientas de construcción, requieren una muy precisa medida, de milímetros a decenas de centímetros. Análisis demográficos de las tendencias del electorado pueden prescindir de esta precisión mediante un código postal o de circunscripción. o Obtener datos altamente precisos puede ser verdaderamente difícil y costoso. Topografiar cuidadosamente las localizaciones requiere de compañías específicas para la recogida de la información. Gran precisión no es indicativo de gran exactitud y tener gran exactitud no implica gran precisión. Pero gran exactitud y gran precisión son bastante expresivas. Los usuarios de los SIG no son siempre conscientes en el uso de los términos. En ocasiones ambos términos son intercambiables lo que resulta contraproducente. Dos términos adicionales son igualmente usados: 1. Calidad de los datos hace referencia a la relativa exactitud y precisión de una base de datos particular en un GIS. Estos hechos están a menudo documentados en los informes de calidad. 2. Error acompaña tanto a la imprecisión de los datos como a su inexactitud. 3. Tipos de error El error posicional es el que más a menudo concierne a los SIG, pudiendo afectar a diferentes características de la información almacenada en un bases de datos. 3.1. Exactitud y precisión posicional Es aplicable tanto a la posición horizontal como a la vertical. Exactitud y precisión están en función de la escala en la que ha sido creado el mapa (impreso o digital). Los mapas estándar empleados por el Servicio Geológico de los Estados Unidos (USGS) especifican que: "se requiere una exactitud horizontal del 90 % en todos los puntos tomados que deben de estar entre 1 y 30 pulgadas (2,54 y 76.2 cm) para mapas de escala superior a 1:20.000 y entre 1 y 50 pulgadas (2,54 y 127 cm) para mapas de escala inferior a 1:20.000" Precisiones estándar para algunas escalas de mapas 1:1.200 ± 3,33 pies (± 1,015 m) 1:2.400 ± 6,67 pies (± 2,033 m) 1:4.800 ± 13,33 pies (± 4,063 m) 1:10.000 ± 27,78 pies (± 8,467 m) 1:12.000 ± 33,33 pies (± 10,159 m) 1:24.000 ± 40,00 pies (± 12,192 m) 1:63.360 ± 105,60 pies (± 32,187 m) 1:100.000 ± 166,67 pies (± 50,80 m) (Nota: 1 pie = 30,48 cm = 0,3048 m) Esto significa que cuando nosotros vemos un punto en un mapa, tendremos esta probabilidad de que se encuentre dentro de cierto área. Esto se hace extensivo a las líneas. Por otra parte, están los peligros de la falsa exactitud y de la falsa precisión, que son leídos en la información locacional desde los mapas con niveles de exactitud y precisión bajo los cuales han sido creados. Esto es un verdadero peligro en los ordenadores, puesto que permite a los usuarios aumentar y reducir las vistas en un número infinito de escalas. Exactitud y precisión están unidos a la escala original del mapa y no cambia aunque se use el zoom para aumentar o reducir la vista. Estas operaciones pueden incluso hacer creer falsamente- que la exactitud y la precisión son mejores. 3.2. Exactitud y precisión de los atributos Los datos no espaciales unidos a la localización pueden ser inexactos o imprecisos. La inexactitud puede ser consecuencia de errores de distinto tipo. Los datos no espaciales pueden variar mucho también en precisión. La información precisa de los atributos describen fenómenos con gran detalle. Por ejemplo, la descripción precisa de una persona que vive en una dirección particular puede incluir género, edad, ingresos, ocupación, nivel de educación y muchas otras características. Una descripción imprecisa puede incluir sólo los ingresos o sólo el género. 3.3. Exactitud y precisión conceptual Los SIG dependen sobretodo de la abstracción y la clasificación de los fenómenos del mundo real. Los usuarios determinan que cantidad de información debe usarse y como ésta debe ser clasificada en categorías apropiadas. En ocasiones, los usuarios pueden usar inapropiadas categorías o una clasificación errónea de la información. Por ejemplo, la clasificación de ciudades por el comportamiento del voto electoral es una vía inadecuada para estudiar la fertilidad de las parejas; fallos en la clasificación de las líneas de alto voltaje puede limitar la efectividad en el diseño de un SIG en la construcción de las infraestructuras eléctricas. Aún empleando correctas categorías los datos pueden estar mal clasificados. Un estudio de los sistemas de drenaje puede necesitar de una clasificación de las corrientes y ríos por su "orden", atendiendo su jerarquía al lugar donde una corriente particular desagua en el sistema tributario de la red. Los canales individuales pueden estar mal clasificados si los tributarios están mal localizados. Por ello, algunos estudios pueden no requerir un tipo preciso de categorización del orden de las corrientes. Todo lo más que pueden necesitar es la localización y el nombre de las corrientes fluviales, sin tener en cuenta el orden. 3.4 La lógica de la exactitud y precisión La información almacenada en una base de datos puede estar ilógicamente introducida. Por ejemplo, los permisos necesarios para construir una subdivisión residencial en un plano de inundación pueden necesitar comparar la proposición con el mapa del plano de inundación. Por lo tanto, la construcción puede ser posible en algunas zonas del plano de inundación pero su uso no será conocido hasta que las variaciones de la inundación potencial hayan sido registradas y puedan ser usadas en la comparación. La cuestión es, pues, que la información almacenada en la base de datos de un SIG puede ser usada y cuidadosamente comparada, si produce resultados útiles. Los SIG están normalmente incapacitados para avisar a los usuarios cuando se produce una inapropiada comparación o si los datos han sido utilizados incorrectamente. Algunas reglas de uso pueden ser incorporadas en el diseño de un SIG, como sucede con los "sistemas expertos", pero los desarrolladores necesitarían estar seguros que las reglas empleadas corresponden al mundo real de los fenómenos que ellos modelan. Finalmente señalar, cometeremos una equivocación si creemos que una gran exactitud y una gran precisión de la información es necesario para todas las aplicaciones de los SIG. La necesidad de exactitud y precisión puede variar radicalmente dependiendo del tipo de información codificada y del nivel de medida necesario para una particular aplicación. Son los usuarios los que deben determinar el alcance de su trabajo. Excesiva exactitud y precisión no sólo es costoso, sino también puede resultar un gran engorro. 4. Fuentes de inexactitud e imprecisión Son muchas las fuentes de error que pueden afectar la calidad del conjunto de datos de un SIG. Esto, que resulta muy obvio, puede no ser tan difícil de discernir. Algunas de ellas serán automáticamente identificadas por el mismo SIG, pero es responsabilidad del usuario su prevención. Algunos casos particulares puede necesitar de comprobaciones específicas de error, porque los propios SIG son capaces de inducir al usuario una falsa sensación de exactitud y precisión sin garantizar la validez de los datos. Por ejemplo, suavizar cambios en las líneas fronterizas, en las curvas de nivel y en las zonas de cambio de los mapas de coropletas es una "elegancia que falsea" la realidad. En realidad, estas cuestiones son a menudo "vagas, graduales o azarosas" (Burrough 1986). Hay una imprecisión inherente en la cartografía como resultado de los procesos de proyección y la necesaria distorsión producida en algunos de sus datos (Koeln et all, 1994); una imprecisión que puede continuar a través de los procesos aplicados con los SIG. Los usuarios de los SIG deben ser capaces, no sólo de reconocer el error, sino el grado de error tolerable y asumible del sistema. Burrough (1986) divide las fuentes de error en tres grandes categorías: 1. Fuentes de error obvias. 2. Errores resultantes de la variación natural de las mediadas originales. 3. Errores surgidos en los procesamientos. Generalmente los dos primeros errores son más fáciles de detectar que aquellos errores del tercer tipos, surgidos al procesar los datos, por permanecer un tanto escondidos y ser difíciles de identificar. Burrough divide estos grupos principales en distintas categorías, tratadas a continuación. 2.2 Errores. En los cálculos numéricos el optimista pregunta qué tan precisos son los resultados calculados; el pesimista pregunta que tanto error se ha introducido. Desde luego, las dos preguntas corresponden a lo mismo. Solo en raras ocasiones los datos proporcionados serán exactos, puesto que suelen originarse en procesos de medida. De modo que hay un error probable en la información de entrada. Además el propio algoritmo introduce error, quiza redondeos inevitables. La información de salida contendrá entonces error generado por ambas fuentes. Los errores numéricos se generan con el uso de aproximaciones para la representación de las operaciones y cantidades matemáticas. Como en el caso de representar la fracción 1/3 en numeros decimales, es bien sabido que el resultado generará una serie interminable de numeros(1/3 = 0.33333...), al elegir utilizar solo una cantidad de numeros se esta cometiendo un error, posteriormente veremos que este tipo de error es conocido como error de truncamiento. 2.2.1 Errores de redondeo. A lo largo del tiempo, los métodos numéricos han sido desarrollados con el objeto de resolver problemas matemáticos cuya solución es difícil o en ocasiones imposible de resolver por medio de los métodos tradicionales. Las soluciones que ofrecen los métodos numéricos son aproximaciones de los valores reales y, por tanto, se tendrá un cierto grado de error que será conveniente determinar. Son herramientas muy poderosas utilizadas para la solución de problemas. Tienen la capacidad de manejar sistemas de ecuaciones grandes, no linealidades y geometrías complicadas las cuales son bastante comunes en la practica de la ingeniería y que, en ocasiones, son imposibles de resolverse de una manera analítica. Por lo tanto los métodos numéricos amplian la habilidad de quien los estudia para la solución de problemas. La gran mayoria de los métodos numéricos son procesos cíclicos o iterativos, en los cuales se repite una serie de pasos y estos se basan en las denominadas ecuaciones o fórmulas de recurrencia, las cuales relacionan dos o más elementos consecutivos de una sucesión de números, funciones, matrices, etc. 2.2.2 Errores de propagación. La propagación ocurre cuando un error conduce a otro. Por ejemplo, si un punto de registro del mapa se ha convertido a digital en una cobertura y después se utiliza para colocar una segunda cobertura, la segunda cobertura propagará el primer error. De esta manera, un solo error puede conducir a otro y separarse hasta que corrompe los datos a través del proyecto entero del SIG. Para evitar este problema utilice el mapa de la escala más grande para colocar sus puntos. 2.2.3 Error numérico total. Este error es solamente el resultado de la suma del error de redondeo y de truncamiento. 3.1 Método de intervalos. 3.1.1 Métodos de posición falsa. Se trata de encontrar la raíz de una ecuación. La ecuación tiene la forma f(x), es decir, es una función de x. Además, f(x) esta definida en el intervalo [a,b]. Figura 3.5.- Intervalo de f(x). El método de la interpolación lineal inversa, requiere varias condiciones: 1.- f(a)*f(b) < 0 Es decir, que el producto de la función de x, f(x), evaluada en a, f(a), multiplicada por la función de x, f(x), evaluada en b, f(b), sea negativo (menor a cero). 2.- Que la función f(x) se aproxime por otra función L(x). f(x) es aproximadamente igual a L(x) Donde L(x) es: L(x) = f(a) + (x-a)*S Donde: S=Pendiente S= [f(b)-f(a)] / (b-a) -a) *[(f(b)-f(a)) / (b-a)] De lo que en realidad se trata es de que L(x) sea igual a cero para cuando x sea igual a la raíz que se busca, o sea cuando x=C. L(x)=L(C)=0 Sin embargo como hicimos L(x)=0 para cuando x=C, es decir cuando x sea igual a la raíz que se anda buscando, entonces la ecuación de arriba se debe de escribir como: donde C es la raíz que se anda buscando Después se calcula f(C) para ver su valor. Si se obtiene cero, no se debe avanzar más, pero en caso de no ser así, se realiza lo siguiente: Se calcula f(C)*f(a) si este producto es menor a cero (negativo), entonces ahora C equivaldrá a b, y se repite el cálculo para encontrar una nueva C. En el caso de que f(C)*f(b) sea la que haya dado el producto menor a cero, o sea negativo, entonces ahora a equivaldrá a c, y se repite el cálculo para encontrar una nueva C. A este método, se le conoce como: Método de la falsa posición. Figura 3.6.- Multiplicación de funciones. Ejercicio: Encontrar la raíz de f(x)=cosx por el método de la falsa posición en el intervalo Solución: a=1, b=2 f(a=1)=cos 1 = 0.5403 f(b=2)=cos 2 = -0.4161 f(a)*f(b) < 0 (0.5403)*(-0.4161) C_ant= 99999 para arrancar Itera=0 Encontrado= False fa=f(a=1)=0.5403 fb=f(b=2)=-0.4161 fc=f(Cact=1.5649)= cos(1.5649)= 0.005896 f(Cact)= 0.005896 ¿no es igual a 0? no ERA (Cact=1.5649, C_ant = 99999)= 1.5649 fC*f(a) < 0 a = Cact= 1.5649 b=2 Itera = 1 C_ant <-- Cact = 1.5649 fa=f(a=1.5649)=0.005896 fb=f(b=2)= -0.4161 f(Cact=1.5709)= cos(1.5709)= - 0.0001036 f(C)= - 0.0001036 no es igual a 0 ERA (C_act=1.5709, C_ant = 1.5649)= (1.5709 - 1.5649) / 1.5709 = 0.0038194 fC*f(a) < 0 (a = a =1.5649 b = Cact = 1.5709 Itera = 2 C_ant = 1.5709 f(a=1.5649) = 0.005896 f(b=1.5709)=cos 1.5709 = -0.0001036 f(Cact=1.5707)=cos (1.5707)= -0.00000006629 f(Cact)*f(a) ¿ es igual? no Raíz = 1.5707 Tarea: 1) Sea f(x)=x2-6 con [2,3] encontrar la raíz por el método de la falsa posición con =0.001. R= 2.45454 Figura 3.7.- Diagramas de flujo de la Interpolación lineal inversa 3.1.2 Método de la bisección. Este método parte de una función F(x) y un intervalo [x1, x2] tal que F(x1) y F(x2) tienen signos contrarios. Si la función es continua dentro de este intervalo, entonces existe una raíz de F(x) entre x1 y x2. Una vez determinado el intervalo [x1, x2] y asegurada la continuidad de la función en dicho intervalo, se valúa ésta en el punto medio xm del intervalo (véase la figura 2.1). Si F(xm) y F(x1) tienen signos contrarios, se reducirá el intervalo de x1 a xm, ya que dentro de estos valores se encuentra la raíz buscada. Al repetir este proceso, hasta logar que la diferencia entre los dos últimos valores de xm sea menor que la tolerancia prefijada, el último valor xm será una buena aproximación de la raíz. 1. Escojanse los valores iniciales de tal forma que la función cambie de signo sobre el intervalo. 2. La primera aproximación a la raiz se determina como Xm=(X1+X2)/2. 3. Realizar las siguientes evaluaciones y determinese en que subintervalo cae la raiz: a. Si F(X1)*f(Xm)<0 entonces la raiz se encuentra dentro del primer intervalo. b. Si F(X1)*f(Xm)>0 entonces la raiz se encuentra dentro del segundo intervalo. 4. Calculese una nueva aproximación a la raiz mediante Xm. 3.1.3 Método de dos puntos y orden de convergencia. 3.2 Métodos abiertos. 3.2.1 Método de punto fijo. El método de punto fijo es parte de una serie de métodos los cuales son llamados métodos abiertos, se basan en formulas que requieren de un solo valor x o de un par de ellos pero que no necesariamente encierran a la raíz. Como tales, algunas veces divergen o se alejan de la raíz a medida que se crece el número de iteraciones. Sin embargo, Cuando los métodos abiertos convergen, en general lo hacen mucho más rápido que los métodos que usan intervalos. Se empieza el análisis de los métodos abiertos con una versión simple que es útil para ilustrar su forma general y también para demostrar el concepto de la convergencia. Como se menciono anteriormente, los métodos abiertos emplean una formula que predice una aproximación a la raíz. Tal formula se puede desarrollar para la iteración del punto fijo, rearreglando la ecuación f(x)=0 de tal forma que x quede al lado izquierdo de la ecuacion: X = g (x).......(1) Esta transformacion se puede llevar a cabo por medio de operaciones algebraicas o simplemente agregando x a cada lado de la ecuación original. La utilidad de la ecuación (1) es que proporciona una formula para predecir un valor de x en función de x. De esta forma, dada una aproximación inicial a la raíz, xi, la ecuacion (1) puede ser utilizada para obtener una nueva aproximación xi+1, expresada por la formula iterativa: Xi+1 = g(xi).......(2) 3.2.2 Método de Newton-Raphson. Formula de recurrencia: METODO DE NEWTON SEGUNDO ORDEN El método de Newton-Raphson o simplemente el método de Newton, es uno de los métodos numéricos para resolver un problema de búsqueda de raíces f(x)=0 más poderosos y conocidos. Figura 3.11.- Aproximaciones con tangentes sucesivas. Esta figura muestra como se obtienen las aproximaciones usando tangentes sucesivas. Comenzando con la aproximación inicial xo, la aproximación x1 es la intersección con el eje x de la línea tangente a la gráfica de f en (xo,f(xo)). La aproximación x2 es la intersección con el eje de las x de la línea tangente a la gráfica de f en (x1,f(x1)) y así sucesivamente. Figura 3.12.- Aproximaciones conociendo los valores xI´s. m=tan i,f(xi)). Lo que en realidad se desea saber es cuanto vale xi+1 para tomarlo en cuenta para la siguiente iteración, y así seguiría sucesivamente, hasta obtener la raíz. Ejemplo: Encontrar la raíz de f(x)=x5+x2=9 con un valor inicial de xo=1.5 y Solución: f(x)= x5+x2-9 f´(x)= 5*x4+2*x f(xo=1.5)= (1.5)5+(1.5)2 - 9 = 0.84375 f´(xo=1.5)=5* (1.5)4+2*(1.5)= 28.3125 x1 = xo - f(xo) / f´(xo)= 1.5 - (0.84375 / 28.3125) = 1.4701986755 ERA (x1, xo)= f(x1 =1.4701)= (1.4701)5+(1.4701)2 - 9 = 0.03027251527 f´( x1 =1.4701)=5*(1.4701)4+2*(1.4701)= 26.300465906 x2 = x1 - f(x1) / f´(x1)= 1.4701 - (0.03027 / 26.3004) = 1.4690476496 ERA (x2, x1)= f(x2 =1.469)= (1.469)5+(1.469)2 - 9 = 0.0004339341 f´( x2 =1.469)=5*(1.469)4+2*(1.469)= 26.2250948663 x3 = x2 - f(x2) / f´(x2)= 1.469 - (0.00043 / 26.2250) = 1.46903110316 ERA (x3, x2)= 3=1.46903110316 3.2.3 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. Sin embargo, la forma funcional de f(x) dificulta en ocasiones el cálculo de la derivada. En estos casos es más útil emplear el método de la secante. 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, la pendiente de la recta) por una aproximación de acuerdo con la expresión: Sustituyendo esta expresión en la ecuación (29) del método de Newton, obtenemos la expresión del método de la secante que nos proporciona el siguiente punto de iteración: Figura: Representación geométrica del método de la secante. [scale=0.9]eps/secante En la siguiente iteración, 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). En la figura (8) se representa geométricamente este método. En general, el método de la secante presenta las mismas ventajas y limitaciones que el método de Newton-Raphson explicado anteriormente. 3.3 Raíz de polinomios. 3.3.1 Método de Newton-Raphson para raíces complejas. Formula de recurrencia: METODO DE NEWTON SEGUNDO ORDEN El método de Newton-Raphson o simplemente el método de Newton, es uno de los métodos numéricos para resolver un problema de búsqueda de raíces f(x)=0 más poderosos y conocidos. Figura 3.11.- Aproximaciones con tangentes sucesivas. Esta figura muestra como se obtienen las aproximaciones usando tangentes sucesivas. Comenzando con la aproximación inicial xo, la aproximación x1 es la intersección con el eje x de la línea tangente a la gráfica de f en (xo,f(xo)). La aproximación x2 es la intersección con el eje de las x de la línea tangente a la gráfica de f en (x1,f(x1)) y así sucesivamente. Figura 3.12.- Aproximaciones conociendo los valores xI´s. m=tan =f´(x) pendiente de la recta que pasa por (xi,f(xi)). m=tan = Cateto opuesto / Cateto adyacente = Lo que en realidad se desea saber es cuanto vale xi+1 para tomarlo en cuenta para la siguiente iteración, y así seguiría sucesivamente, hasta obtener la raíz. Ejemplo: Encontrar la raíz de f(x)=x5+x2=9 con un valor inicial de xo=1.5 y = 0.001. Solución: f(x)= x5+x2-9 f´(x)= 5*x4+2*x f(xo=1.5)= (1.5)5+(1.5)2 - 9 = 0.84375 f´(xo=1.5)=5* (1.5)4+2*(1.5)= 28.3125 x1 = xo - f(xo) / f´(xo)= 1.5 - (0.84375 / 28.3125) = 1.4701986755 ERA (x1, xo)= (que no es menor a ) f(x1 =1.4701)= (1.4701)5+(1.4701)2 - 9 = 0.03027251527 f´( x1 =1.4701)=5*(1.4701)4+2*(1.4701)= 26.300465906 x2 = x1 - f(x1) / f´(x1)= 1.4701 - (0.03027 / 26.3004) = 1.4690476496 (que no es menor a ) ERA (x2, x1)= f(x2 =1.469)= (1.469)5+(1.469)2 - 9 = 0.0004339341 f´( x2 =1.469)=5*(1.469)4+2*(1.469)= 26.2250948663 x3 = x2 - f(x2) / f´(x2)= 1.469 - (0.00043 / 26.2250) = 1.46903110316 ERA (x3, x2)= (que sí es menor a ) Raíz= x3=1.46903110316 Subtemas 4.1 Sistemas de ecuaciones lineales. 4.1.1 Método de Gauss. El proceso de eliminación de Gauss consiste en realizar transformaciones elementales en el sistema inicial ( intercambio de filas, intercambio de columnas, multiplicación de filas o columnas por constantes, operaciones con filas o columnas, . . . ), destinadas a transformarlo en un sistema triangular superior, que resolveremos por remonte. Además, la matriz de partida tiene el mismo determinante que la matriz de llegada, cuyo determinante es el producto de los coeficientes diagonales de la matriz. Gracias a un teorema, podemos afirmar que, si la matriz A es estrictamente diagonal dominante, es decir, si puede llevar a cabo. , entonces, el método de Gauss se El método de Gauss normal, presenta dos problemas, el primero proviene de encontrar en alguna de las sucesivas etapas, algún coeficiente diagonal igual a cero y el segundo es debido a los errores de redondeo que se pueden producir en este método. El primer método que se presenta usualmente en álgebra, para la solución de ecuaciones algebricas lineales simultáneas, es aquel en el que se eliminan las incógnitas mediante la combinación de las ecuaciones. Este método se conoce como Método de Eliminación. Se denomina eliminación Gaussiana si en el proceso de eliminación se utiliza el esquema particular atribuido a Gauss. Utilizando el método de Gauss, un conjunto de n ecuaciones con n incógnitas se reduce a un sistema triangular equivalente (un sistema equivalente es un sistema que tiene iguales valores de la solución), que a su vez se resuelve fácilmente por "sustitución inversa"; un procedimiento simple que se ilustrará con la presentación siguiente. El esquema de Gauss empieza reduciendo un conjunto de ecuaciones simultáneas, tal como se muestra en (2), a un sistema triangular equivalente como: (6) en el cual los superíndices indican los nuevos coeficientes que se forman en el proceso de reducción. La reducción real se logra de la siguiente manera: 1. La primera ecuación (2) se divide entre el coeficiente de X1 en esa ecuación para obtener: (7) 2. La ec. (7) se multiplica entonces por el coeficiente de X1 de la segunda ecuación (2) y la ecuación que resulta se resta de la misma, eliminando así X1. La ec. (7) se multiplica entonces por el coeficiente de X1 de la tercera ecuación (2), y la ecuación resultante se resta de la misma para eliminar X1 de esa ecuación. En forma similar, X1 se elimina de todas las ecuaciones del conjunto excepto la primera, de manera que el conjunto adopta la forma: (8) 3. La ecuación utilizada para eliminar las incógnitas en las ecuaciones que la siguen se denomina Ecuación Pivote. En la ecuación pivote, el coeficiente de la incógnita que se va a eliminar de las ecuaciones que la siguen se denomina el Coeficiente Pivote (a11 en los pasos previos). 4. Siguiendo los pasos anteriores, la segunda ecuación (8) se convierte en la ecuación pivote, y los pasos de la parte 1 se repiten para eliminar X2 de todas las ecuaciones que siguen a esta ecuación pivote. Esta reducción nos conduce a: (9) 5. A continuación se utiliza la tercer ecuación (9) como ecuación pivote, y se usa el procedimiento descrito para eliminar X3 de todas las ecuaciones que siguen a la tercer ecuación (9). Este procedimiento, utilizando diferentes ecuaciones pivote, se continúa hasta que el conjunto original de ecuaciones ha sido reducido a un conjunto triangular tal como se muestra en la ec. (6). 6. Una vez obtenido el conjunto triangular de ecuaciones, la última ecuación de este conjunto equivalente suministra directamente el valor de Xn (ver ec. 6). Este valor se sustituye entonces en la antepenúltima ecuación del conjunto triangular para obtener un valor de Xn-1, que a su vez se utiliza junto con el valor de Xn en la penúltima ecuación del conjunto triangular para obtener un valor Xn-2 y asi sucesivamente. Este es el procedimiento de sustitución inversa al que nos referimos previamente. EJEMPLO Para ilustrar el método con un conjunto numérico, apliquemos estos procedimientos a la solución del siguiente sistema de ecuaciones: X1 + 4 X2 + X3 = 7 X1 + 6 X2 - X3 = 13 (10) 2 X1 - X2 + 2 X3 = 5 Utilizando como ecuación pivote la primera ecuación (el coeficiente pivote es unitario), obtenemos: X1 + 4 X2 + X3 = 7 2 X2 - 2 X3 = 6 (11) 9 X2 + (0) X3 = -9 A continuación, utilizando la segunda ecuación del sistema (11) como ecuación pivote y repitiendo el procedimiento, se obtiene el siguiente sistema triangular de ecuaciones: X1 + 4 X2 + X3 = 7 2 X2 - 2 X3 = 6 (12) - 9 X3 = 18 Finalmente mediante sustitución inversa, comenzando con la última de las ecs. (12) se obtienen los siguientes valores: X3 = -2 X2 = 1 X1 = 5 DESVENTAJAS DEL MÉTODO DE ELIMINACIÓN 1. DIVISIÓN ENTRE CERO Una de sus desventajas es que durante el proceso en las fases de eliminación y sustitución es posible que ocurra una división entre cero. Se ha desarrollado una estrategia del pivoteo para evitar parcialmente estos problemas. Ésta se deja como investigación al alumno. 2. ERRORES DE REDONDEO La computadora maneja las fracciones en forma decimal con cierto número limitado de cifras decimales, y al manejar fracciones que se transforman a decimales que nunca terminan, se introduce un error en la solución de la computadora. Este se llama error por redondeo. Cuando se va a resolver solamente un pequeño número de ecuaciones, el error por redondeo es pequeño y generalmente no se afecta sustancialmente la presición de los resultados, pero si se van a resolver simultáneamente muchas ecuaciones, el efecto acumulativo del error por redondeo puede introducir errores relativamente grandes en la solución. Por esta razón el número de ecuaciones simultáneas que se puede resolver satisfactoriamente con el método de eliminación de Gauss, utilizando de 8 a 10 dígitos significativos en las operaciones aritméticas, se limita generalmente a 15 o 20. 3. SISTEMAS MAL CONDICIONADOS La obtención de la solución depende de la condición del sistema. En sentido matemático, los sistemas bien condicionados son aquellos en los que un cambio en uno o más coeficientes provoca un cambio similar en la solución. Los sistemas mal condicionados son aquellos en los que cambios pequeños en los coeficientes provocan cambios grandes en la solución. Una interpretación diferente del mal condicionamiento es que un rango amplio de respuestas puede satisfacer aproximadamente al sistema. Ya que los errores de redondeo pueden inducir cambios pequeños en los coeficientes, estos cambios artificiales pueden generar errores grandes en la solución de sistemas mal condiconados. 4.1.2 Método de Gauss-Jordan. Este es un método bastante útil y sencillo para solucionar sistemas de ecuaciones algebraicas lineales, consiste en obtener sistemas equivalentes a partir del sistema original dado, usando operaciones elementales sobre los renglones de la matriz ampliada del sistema. Este metodo consiste en hacer igual a uno a la diagonal principal de la matriz cuadrada y obtener una matriz de la forma: Ecuación (1) Los pasos a seguir para la obtención de sistemas equivalentes con el método Gauss-Jordan son: Seleccionar un elemento diferente de cero como pivote; éste debe ser algún elemento de la matriz de coeficientes. Convertir en uno el elemento pivote mediante operaciones elementales. Convertir en ceros todos los elementos de la columna donde se encuentra el elemento pivote. Seleccionar un nuevo pivote, el cual no debe estar ni en el renglón ni en la columna donde se encontraba(n) el(los) pivote(s) anterior(es). Repetir los pasos anteriores hasta obtener una matriz de coficientes formada solamente con unos y ceros; en caso necesario intercambiar renglones para obtener la matriz identidad. En el sistema de ecuaciones correspondiente a ésta última matriz se observará la solución. Veamos el siguiente ejemplo, se resolverá el sistema de ecuaciones mediante el método de Gauss jordan. Del siguiente circuito encontrar las corrientes I1, I2, I3. Como el problema nos pide encontrar las corrientes: Malla 1 Malla 2 Malla 3 Las ecuaciones encontradas son entonces: En forma de matriz tenemos: Ahora debemos tener la matriz como la de la ecuación (1)para esto multiplicamos la primer fila de la matriz por el inverso del primer término: De acuerdo a la ecuación (1) se requiere de un cero en la posición que indica la flecha. Para esto se multiplica la primera fila por 3 y el resultado se suma con la segunda fila tal como se muestra a continuación: Ahora debemos tener un uno en donde indica la flecha, para ello se multiplica toda la fila por 13/121: La matriz queda de la siguiente forma: De acuerdo a la ecuación (1) es necesario tener un cero en la posición que indica la flecha Para ello multiplicamos la segunda fila por 6 y al resultado le sumamos la tercera fila como se muestra a continuación: El siguiente paso es tener un cero en la posición indicada,esto se logra multiplicando la fila tres por 78/121 y al resultado obtenido se suma con la segunda fila: Ahora por ultimo debemos tener un cero en la posición indicada y para esto se repite el paso anterior, multiplicamos la fila dos por 3/13 y al resultado obtenido lo sumamos con la primera fila. Como se puede observar tenemos una matriz igual a la ecuación (1) y el valor de las incognitas son: El método de Gauss-Jordan debería ser exacto ya que es en método directo, mas no es así, esto se debe a que se presentan errores de redondeo en el desarrollo del mismo. 4.1.3 Método de Gauss-Seidel. Este método similar al de Jacobi, la única diferencia existente esta en que el de Gauss-Seidel se acerca a la solución más rápidamente, siempre y cuando exista convergencia. Supongase que se ha dado un conjunto de "n" ecuaciones: [A][x]=[c] Si los elementos de la diagonal principal son diferentes de cero, la primera ecuación se puede resolver para x1 la segunda para x2, etc. lo cual lleva a: La solución trivial puede servir de valor inicial, esto es todas las x valen cero. Estos ceros se sustituyen en las ecuaciones para obtener el valor de x1= C1/ a11;luego la x1se sustituye mas la constante y así sucesivamente. 4.2 Sistemas de ecuaciones no lineales. 4.2.1 Método de Newton-Raphson para sistemas no lineales. Este método es similar al de la Secante, la diferencia esencial radica en que en la Secante se utiliza el método de diferencias divididas para aproximar f '(x). El método de NewtonRaphson asume que la función f(x) es derivable sobre un intervalo cerrado [a,b]. Entonces f(x) tiene una pendiente definida y una única línea tangente en cada punto en [a,b]. La tangente en (x0,f(x0)) es una aproximación a la curva de f(x) cerca del punto (x0,f(x0) ). Enconsecuencia, el cero de la línea tangente es una aproximacióndel cero de f(x). Calculamos la primera aproximación, x1, como el cero de la línea tangente en un punto inicial x0 dado. Calculamos la segunda aproximación, x2, como el cero de la línea tangente en la primera aproximación x1. Siguiendo el esquema mostrado más abajo, las primeras dos aproximaciones de raíces usando el método Newton-Raphson, se buscancon el mismo criterio del método de la Bisección: Repitiendo el mismo proceso obtenemos cada vez mejores aproximacionesde la raíz de la función f(x). Derivación de la fórmula Sea x0 la adivinanza inicial. La pendiente en x 0 esta dada por f '(x0). La ecuación de la línea tangente en x0 esta dada por: y - f(x0) = f'(x0) (x - x0) --- (1) La primera aproximación x1 es obtenida como la raíz de (1). Así (x1,0) es un punto sobre la ecuación (1). De aquí, 0 - f(x0) = f'(x0) (x1 - x0) Esto es, x1 - x0 = -f(x0) / f'(x0 ) Esto es, x1 = x0 - f(x0) / f'(x0 ) Por construcción similar obtenemos xn+1 = xn - f(xn) / f'(xn) Algoritmo de Newton-Raphson INPUTS: Aproximación inicial x0 Tolerancia T Máximo número de iteraciones N0 OUTPUTS: Un valor aproximado de la raíz OR un mensaje de error Step1: Set i = 1 Step2: While i <= N0 do Steps 3-6 Step3: Find x = x0 - f(x0) / f'(x0) Step4: If |x - x0 | < T Then OUTPUT(x); STOP. Step5: Set i = i+1 Step6: Set Step7: x0 = x OUTPUT("El método falló luego de N0 iteraciones'). STOP Definición: Orden de Convergencia Sean x0, x1, x2. . . una secuencia que converge a r y sea en = xn - r. Si existe un número m y una constante C (distinta de cero), tal que: lim |en+1| ----|en|m = C cuando n -> infinito, entonces m es llamado orden de convergencia de la secuencia y C el error asintótico constante. Para m = 1,2,3, la convergencia se dice lineal, cuadr´{atica y cúbica respectivamente. Análisis de Convergencia Sean x0, x1, x2,x. . . ,xn,xn+1 las aproximaciones en sucesivas iteraciones. Sea r el verdadero valor de la raíz. Asignemos al error en la n-ésima iteración como en. Entonces: en = xn - r y en+1 = xn+1 - r = xn - f(xn)/f'(xn) - r = xn - r - f(xn)/f'(xn) = en - f(xn)/f'(xn) = (en f'(xn) - f(xn))/f'(xn) ---(1) Ahora, expandiendo f(xn - en) en serie de Taylor obtenemos, f(xn - en) = f(xn) - f'(xn)en + (f"(c)/2) f(r) = f(xn) - en f'(xn) + (f"(c)/2) en2 0 = f(xn) - en f'(xn) + (f"(c)/2) en2 en f'(xn) - f(xn) = (f"(c)/2) en2 ---(2) en2 De ecuación (1) y (2) obtenemos, en+1 = Esto es, De aquí Esto es, (f"(c)/2) en2 / f'(xn) = (1/2) (f"(c)/ f'(xn)) en2 en+1 = C en2, where C = (1/2)(f"(c)/f'(xn)) |en+1| <= |C| |en|2 |xn+1 - r| <= |C| |xn - r|2 Por lo que Newton-Raphson es un método que converge cuadráticamente 4.3 Valores característicos 4.3.1 Método iterativo para determinar valores característicos os métodos numéricos iterativos se suelen caracterizar por lanzar una suposición y después refinarla sucesivamente para obtener soluciones cada vez más complejas. Sin embargo, la mayoria de los métodos no son correctos -es decir, pueden no dar el mínimo verdadero- y algunos ni son completos -puede que no terminen-. La terminación en estos métodos se denomina convergencia; y en aquellos métodos que la convergencia no está asegurada -es decir, que no se sepa cuando acabar el método- podemos añadir condiciones adicionales de convergencia. Sin embargo, la correctitud es un problema más grave, ya que no es posible asegurar que encontraremos el mínimo global en la mayor parte de las funciones con la totalidad de los métodos. De hecho, ningún método asegura que, dado un mínimo local y una función arbitraria, ese mínimo es el mínimo global. Para la mayoría de las matrices A, los métodos iterativos o de aproximaciones sucesivas requieren de mayores cálculos que los requeridos por el método de Gauss-Jordan, para llegar a un grado de aproximación preestablecido. Sin embargo, cuando los elementos no nulos de la matriz se acumulan a lo largo de su diagonal principal, siendo los elementos de la misma los mayores en valor absoluto, como ocurre al resolver ecuaciones diferenciales por medio de diferencias finitas, las técnicas iterativas pueden compararse favorablemente con los métodos directos, por lo que se refiere a la cantidad total de cálculos. Además, debido a los métodos iterativos usan relativamente poca parte de la memoria de una computadora, son particularmente ventajosas para resolver sistemas de gran numero de ecuaciones. 5.1 Interpolación. 5.1.1 Diferencias divididas de Newton para la interpolación de polinomios. Un análisis de interpolación se puede generalizar en el ajuste de un polinomio de n-ésimo orden a los n+1 puntos. El polinomio de n-ésimo orden es: (11) Al igual que con las interpolaciones lineales y cuadráticas, se usan los puntos en la evaluación de los coeficientes b0, b1, ... , bn. Se requieren n + 1 puntos para obtener un polinomio de n-ésimo orden: X0, X1, ... , Xn. Usando estos datos, con las ecuaciones siguientes se evalúan los coeficientes: b0 = f (X0) b1 = f [X1, X0] b2 = f [X2, X1, X0] (12) ... bn = f [X n, Xn-1, ..., X1, X0] En donde las evaluaciones de la función entre corchetes son diferencias divididas finitas. Por ejemplo, la primera diferencia dividida finita se representa generalmente como: (13) La segunda diferencia dividida finita, que representa la diferencia de dos primeras diferencias divididas finitas, se expresa generalemte como: (14) De manera similar, la n-ésima diferencia dividida finita es: (15) Estas diferencias se usan para evaluar los coeficientes de la ecuación (12), los cuales se sustituyen en la ecuación (11), para obtener el polinomio de interpolación: f n (X) = f(X0) + (X-X0) f[X1, X0] + (X-X0)(X-X1) f[X2, X1, X0] + (16) ...+ (X-X0)(X-X1)...(X-Xn-1) f[Xn, Xn-1,...,X1, X0] Al cual se le llama Polinomio de Interpolación con Diferencias Divididas de Newton. Se debe notar que no es necesario que los datos usados en la ecuación (16) estén igualmente espaciados o que los valores de la abscisa necesariamente se encuentren en orden ascendente, como se ilustra en el ejemplo 3.3 Todas las diferencias pueden arreglarse en una tabla de diferencias divididas, en donde cada diferencia se indica entre los elementos que la producen: i Xi f(Xi) Primera Segunda Tercera 0 X0 f(X0) f(X1, X0) f(X2, X1, X0) f(X3, X2, X1, X0) 1 X1 f(X1) f(X2, X1) f(X3, X2, X1) 2 X2 f(X2) f(X3,X2) 3 X3 f(X3) EJEMPLO 3.3 Usando la siguiente tabla de datos, calcúlese ln 2 con un polinomio de interpolación de Newton con diferencias divididas de tercer orden: X f(X) 1 0.000 0000 4 1.386 2944 6 1.791 7595 5 1.609 4379 SOLUCIÓN: El polinomio de tercer orden con n = 3, es. Las primeras diferencias divididas del problema son: Las segundas diferencias divididas son: La tercera diferencia dividia es: Los resultados para f(X1, X0), f(X2, X1, X0) y f(X3, X2, X1, X0) representan los coeficientes b1, b2 y b3 Junto con b0 = f (X0) = 0.0, la ecuación da: f 3 (X) = 0 + 0.46209813 (X-1) - 0.0518731 (X-1)(X-4) + 0.0078655415 (X-1)(X4)(X-6) Arreglando la tabla de diferencias X f [X] f1[] f2[] f3[] 1.0 0.00000000 0.46209813 - 0.051873116 0.0078655415 4.0 1.3862944 0.20273255 - 0.020410950 6.0 1.7917595 0.18232160 5.0 1.6094379 Con la ecuación anterior se puede evaluar para X = 2 f 3 (2) = 0.62876869 lo que representa un error relativo porcentual del e% = 9.3%. Nótese que la estructura de la ecuación (16) es similar a la expresión de la serie de Taylor en el sentido de que los terminos agregados secuencialmente consideran el comportamiento de orden superior de la función representada. Estos términos son diferencias divididas finitas, y por lo tanto, representan aproximaciones a las derivadas de orden superior. En consecuencia, como sucede con la serie de Taylor, si la función representativa es un polinomio de n-ésimo orden, el polinomio interpolante de n-ésimo orden bajado en n + 1 llevará a resultados exactos. El error por truncamiento de la serie de Taylor es: (17) en donde es un punto cualquiera dentro del intervalo (Xi, Xi+1). Una relación análoga del error en un polinomio interpolante de n-ésimo orden está dado por: (18) En donde es un punto cualquiera dentro del intervalo que contiene las incógnitas y los datos. Para uso de esta fórmula la función en cuestión debe ser conocida y diferenciable. Y usualmente, este no es el caso. Afortunadamente existe una fórmula alternativa que no requiere conocimiento previo de la función. En vez de ello, se usa una diferencia dividida finita que aproxima la (n+1)-ésima derivada: Rn = f [X, Xn, Xn-1, ... , X1, X0](X-X0)(X-X1)..(X-Xn) (19) en donde f(X, Xn, Xn-1, ... , X0) es la (n+1)-ésima diferencia dividida. Ya que la ecuación (19) contiene la incognita f(X), ésta no se puede resolver y obtener el error. Sin embargo, si se dispone de un dato adicional f(Xn+1), la ecuación (19) da una aproximación del error como: (20) 5.1.2 Polinomio de Lagrange. Dada una función y = f(x) cuya tabla en una serie de pares coordenados, aproximar sobre esta función un polinomio y= Pr (x) que pase por todos y cada uno de los puntos que definen a esa función. TABLA X Y X1 y1 X2 y2 X3 y3 . . . . Xk yk X y=? Xk+1 yk+2 . . Xn yn El polinomio de interpolación de Lagrange, simplemente es una reformulación del polinomio de Newton que evita los cálculos de las diferencias divididas. Este se puede representar concretamente como: (21) en donde: (22) En donde denota el "producto de". Por ejemplo, la versión lineal (n = 1) es: (23) y la versión de segundo orden es: (24) al igual que en el método de Newton, la versión de Lagrange tiene un error aproximado dado por: (25) La ecuación (21) se deriva directemente del polinomio de Newton. Sin embargo, la razon fundamental de la formulación de Lagrange se puede comprender directamente notando que cada término Li(X) será 1 en X=Xi y 0 en todos los demas puntos. Por lo tanto, cada producto Li(X) f(Xi) toma un valor de f(Xi) en el punto Xi. Por consiguiente la sumatoria de todos los productos, dada por la ecuación (21) es el único polinomio de n-ésimo orden que pasa exactamente por los n+1 puntos. Ejemplo 1 Úsese un polinomio de interpolación de Lagrange de primer y segundo orden para evaluar ln 2 en base a los datos: i X f(X) 0 1.0 0.000 0000 1 4.0 1.386 2944 2 6.0 1.791 7595 Solución: El polinomio de primer orden es: y, por lo tanto, la aproximación en X = 2 es de manera similar, el polinomio de segundo orden se desarrolla como: Como se expresaba, ambos resultados son similares a los que se obtuvieron previamente usando la interpolación polinomial de Newton. En resumen, para los casos en donde el orden del polinomio se desconozca, el método de Newton tiene ventajas debido a que profundiza en el comportamiento de las diferentes fórmulas de orden superior. Ademas la aproximación del error dada por la ecuación (20), en general puede integrarse fácilmente en los cálculos de Newton ya que la aproximación usa una diferencia dividida. De esta forma, desde el punto de vista de cálculo, a menudo, se prefiere el método de Newton. Cuando se va a llevar a cabo sólo una interpolación, ambos métodos, el de Newton y el de Lagrange requieren de un esfuerzo de calculo similar. Sin embargo, la versión de Lagrange es un poco más fácil de programar. T ambien existen casos en donde la forma de Newton es mas susceptible a los errores de redondeo. Debido a esto y a que no se requiere calcular y almacenar diferencias divididas, la forma de Lagrange se usa, a menudo, cuando el orden del polinomio se conoce a priori. 5.2 Aproximación. 5.2.1 Polinomial con números cuadrados. 2.5 Ajuste de un Polinomio por Mínimos Cuadrados (Regresión Polinomial) Pág 216 [Libroweb]. Supongamos que existe una relación funcional y = f(x) entre dos cantidades x y y, con f desconocida y se conocen valores yk que aproximan a f(xk), es decir, f(xk) = yk + k donde k = 0,1, 2, …..n con k desconocido. Se trata de recuperar la función f a partir de los datos aproximados yk, k = 0, 1, …n. Este problema se conoce como un problema de “ajuste de datos” o “ajuste de curvas” (caso discreto). Trabajaremos básicamente el caso en el que f es una función polinómica. Si f es una función polinómica, digamos f(x) = pm(x), entonces el problema se convierte en: Dados n+1 puntos (xo, yo),(x1, y1),…..(xn, yn) con x0, x1, ….., xn números reales distintos, se trata de encontrar un polinomio Pm(x) = a0 + a1x + a2x2 + ….. + am xm, con m<n que “mejor se ajuste” a los datos. Lo de “mejor ajuste” se entenderá en el sentido de que: 2 n p x y m k k k 0 1 2 Sea mínimo, es decir, que 2 n p m x k y k k 0 (1) Este criterio de mejor ajuste, como ya se mencionó antes, se conoce como mínimos cuadrados, y el método para obtener los polinomios que mejor se ajustan según mínimos cuadrados se llama Regresión polinomial. 2.5.1 Regresión polinomial Supongamos que se conocen los datos (xo, yo),(x1, y1),…..(xn, yn) con x0, x1, ….., xn números reales distintos, y se desea encontrar un polinomio Pm(x) = a0 + a1x + a2x2 + ….. + am xm, con m<n tal que: n 2 n S(a 0 , a 1 ,.....,a m ) p m x k y k a 0 a 1 x k a 2 x 2k ,.....,a m x mk y k k 0 2 k 0 sea mínima. P1) El grado m del polinomio pm(x) se puede escoger previamente con base en algún resultado teórico, alguna expectativa o por la aplicación que se le pretenda dar al polinomio. En cualquier caso estamos “libres” de elegir el grado que parezca mejor. En muchos casos el grado será uno y el polinomio obtenido se llamará la recta que mejor se ajusta o la recta de mínimos cuadrados para la tabla de datos. P2) Volviendo a la función S(a0, a1, ….., am), una condición necesaria para la existencia de un mínimo relativo de esta función es que las derivadas parciales de S(a0, a1, ….., am) con respecto a aj, j = 0, 1, 2, …,m sean cero. Resultan entonces las siguientes m+1 ecuaciones lineales en las incógnitas a0, a1, ….., am : n S 2 a 0 a 1 x k a 2 x 2k ..... a m x mk y k 0 a 0 k 0 n S 2 a 0 a 1 x k a 2 x 2k ..... a m x mk y k x k 0 a 1 k 0 n S 2 a 0 a 1 x k a 2 x 2k ..... a m x mk y k x 2k 0 a 2 k 0 .......... n S 2 a 0 a 1 x k a 2 x 2k ..... a m x mk y k x kj 0 a j k 0 ............ n S 2 a 0 a 1 x k a 2 x 2k ..... a m x mk y k x mk 0 a m k 0 P3) Si en las ecuaciones anteriores cancelamos el 2, desarrollamos los paréntesis y usamos que n a k 0 0 n 1a 0 , obtenemos: n n 2 n m n 1 a x a x a ..... x k a m 0 k 1 k 2 k 0 k 0 k 0 n n n n m 1 2 3 x a x a x a ..... x k a m k 1 k 2 k 0 k 0 k 0 k 0 k 0 n n n n x 2 a x 3 a x 4 a ..... x m 2 a k 0 k 1 k 2 k m k 0 k 0 k 0 k 0 . . n n n n x j a x 1 j a x 2 j a ..... x m j a k m k 0 k 0 k 0 k 1 k 0 k 2 k 0 n n 1 m n 2 m n mm m x k a 0 x k a 1 x k a 2 ..... x k a m k 0 k 0 k 0 k 0 n yk k 0 n x k yk k 0 n x 2k y k k 0 ... ... n j x k yk k 0 ::: n m x k yk k 0 P4) Este es un SEL de m+1 ecuaciones lineales en las m+1 incógnitas a0, a1, ….., am, que se llama Sistema de Ecuaciones Normales. Este sistema de ecuaciones normales se puede escribir en forma simplificada como sigue: m n n i 0 k 0 k 0 a i x ik j x kj y k con j 0,1,....,.m P5) Estas ecuaciones se pueden reproducir a partir de: p m x k a 0 a 1 x k a 2 x 2k ,.....,a m x mk y k j P6) Multiplicando a ambos lados por x k , j = 0, 1, …, m, a 0 x kj a 1 x k x kj a 2 x 2k x kj ,.....,a m x mk x kj y k x kj a 0 x kj a 1 x 1k j a 2 x 2k j ,.....,a m x mk j x kj y k P7) Sumando sobre k n n n m m k 0 k 0 k 0 k 0 k 0 a 0 x kj a 1 x 1k j a 2 x 2k j ..... a m x mk j x kj y k con j 0,1,2,....., m Nota : No se recomienda usar la regla de Kramer para resolver el SEL anterior, porque la regla de Kramer es fuertemente inestable. Ejemplo 1: Calcular el polinomio de grado 1. Solución: P1) En el caso particular en que m = 1, p1(x) = a0 + a1x es la recta de mínimos cuadrados donde a0 y a1 se obtienen resolviendo el sistema lineal de dos ecuaciones con dos incógnitas: n n 0 n 1 x a x a yk k 0 k 1 k 0 k 0 k 0 SEL 2x2 n 1 n n 1 n 2 x k a 0 x k a 1 x k y k k 0 k 0 k 0 P2) Que equivale a la vista en mínimos cuadrados, si se intercambia R1 R2, seguida de un intercambio de C1 C2 queda exactamente la misma ecuación: n 2 n xi xi a i 1 i 1 n b n xi i 1 P2’) Si no se realizan los intercambios queda: n a n b x i i 1 P3) Con m = 1: xi i 1 n 2 xi i 1 n 1 1 n x i yi i 1 n yi i 1 n yi i 1 n x i yi i 1 1 p m x k a 0 a 1 x k a 2 x 2k ,.....,a m x mk y k p1 x k a 0 a 1 x 1k y k p1 x k a 0 a 1 x k y k o bien y icalc a 1 x k a 0 Ejemplo 2: 2 Calcular el polinomio de grado 2. Solución: P1) En el caso particular en que m = 2, p2(x) = a0 + a1x + a1x2 es la parábola de mínimos cuadrados donde a0 y a1 se obtienen resolviendo el sistema lineal de tres ecuaciones con tres incógnitas: n 3 0 n 3 n 3 2 n 3 x a x a x a yk k 0 k 1 k 2 k 0 k 0 k 0 k 0 n 1 n 3 n 3 n 3 n 3 SEL 3x3 x k a 0 x 2k a 1 x 3k a 2 x k y k k 0 k 0 k 0 k 0 n 3 n 3 n 3 n 3 2 3 4 2 x k a 0 x k a 1 x k a 2 x k y k k 0 k 0 k 0 k 0 P2) Ambas ecuaciones representan un SEL de 3x3, así que puede escribirse como: Ax z, donde a 11 a 12 a 13 a0 z1 A a 21 a 22 a 23 x a1 z z2 a a z 31 a 32 a 33 2 3 P3) Identificando las partes y escribiendo la ecuación matricial del SEL de 3x3: n 3 n 3 0 n 3 n 3 x k x k x 2k yk k 0 k 0 k 0 a 0 k 0 n 3 n 3 n 3 n 3 2 3 x k x k x k a 1 x k y k k 0 k 0 kn 03 a 2 kn 03 n 3 n 3 3 4 2 x2 k xk xk x k yk k 0 k 0 k 0 k 0 P4) Calculando el vector de incógnitas: 1 n 3 n 3 0 n 3 n 3 x k x k x 2k y k k 0 k 0 k 0 a 0 kn 03 n 3 n 3 n 3 2 3 1 a1 x k x k x k x k y k k 0 k 0 k 0 a kn 03 n 3 n 3 n 3 2 2 3 4 2 x k x k x k x k yk k 0 k 0 k 0 k 0 Esta matriz puede ser calculada en Excel y en MATLAB con suma facilidad. P3) Se calcula entonces la recta con m = 2: p m x k a 0 a 1 x k a 2 x 2k ,.....,a m x mk y k p 2 x k a 0 a 1 x 1k a 2 x 2k y k p1 x k a 0 a 1 x k a 2 x 2k y k o bien y icalc a 2 x 2k a 1 x k a 0 2 2.5.2 Cálculo del error en Mínimos Cuadrados o Regresión Polinomial Una manera de medir el error para estimar la bondad de ajuste según mínimos cuadrados, es a través de: n 1) El error E p m x k y k 2 k 0 o n 2) El error cuadrático medio p x y E RMS k 0 2 m k k n 1 5.2.2 Multilineal con mínimos cuadrados. 2.5 Aproximación Multilineal con Mínimos Cuadrados (Regresión Polinomial) Pag 367 [NID95]. Con frecuencia se tienen funciones de más de una variable; esto es, f(u,v,z). Si se sospecha una funcionalidad lineal en las distintas variables; es decir, si se piensa que la función y = a0 + a1u + a2v + a3z puede ajustar los datos de la tabla siguiente: Puntos u v z y 1 u1 v1 z1 f(u1, v1, z1) 2 u2 v2 z2 f(u2, v2, z2) 3 u3 v3 z3 f(u3, v3, z3) n un vn zn f(un, vn, zn) Se puede aplicar el método de los mínimos cuadrados para determinar los coeficientes a0, a1, a2 y a3 que mejor aproximen la función de varias variables tabulada. El procedimiento es análogo al descrito anteriormente y consiste en minimizar la función 2 n a i 1 0 a1ui a2 vi a3 z i yi que derivada parcialmente con respecto de cada coeficiente por determinar: coeficientes a0, a1, a2 y a3 e igualada a cero cada una, queda: n n 2 a a u a v a z y 2a 0 a 1 u i a 2 v i a 3 z i y i 1 0 0 1 i 2 i 3i i a 0 i 1 i 0 n n 2 a a u a v a z y 2a 0 a 1 u i a 2 v i a 3 z i y i u i 0 0 1 i 2 i 3i i a 1 i 1 i 0 n n 2 a a u a v a z y 2a 0 a 1 u i a 2 v i a 3 z i y i v i 0 0 1 i 2 i 3i i a 2 i 1 i 0 n n 2 a a u a v a z y 2a 0 a 1 u i a 2 v i a 3 z i y i z i 0 0 1 i 2 i 3i i a j i 1 i 0 Sacamos el 2 de las sumatorias: n 2 i 0 n a 0 a 1u i a 2 v i a 3 z i y i 1 0 2 a 0 a 1u i a 2 v i a 3 z i y i ui 0 2 a 0 a 1u i a 2 v i a 3 z i y i vi 0 2 a 0 a 1u i a 2 v i a 3 z i y i zi 0 i 0 n i 0 n i 0 Eliminando el 2 al pasarlo al otro miembro: n a k 0 n 0 a 1u i a 2 v i a 3 z i y i 1 0 a 0 a 1u i a 2 v i a 3 z i y i u i 0 a 0 a 1u i a 2 v i a 3 z i y i v i 0 a 0 a 1u i a 2 v i a 3 z i y i z i 0 k 0 n k 0 n k 0 Ecuaciones que re-arregladas generan el SEL siguiente: n n n n n a 1 a u a v a z yi 0 1 i 2 i 3 i i 0 i 0 i 0 i 0 in0 n n n n 2 a u a u a u v a u z u i yi i 1 i 2 i i 3 i i 0 i 0 i 0 i 0 i 0 i 0 SEL 4x4 n n n n n a 0 v i a 1 v i u i a 2 v i2 a 3 v i z i v i y i i 0 i 0 i 0 i 0 i 0 n n n n n 2 a 0 z i a 1 z i u i a 2 z i v i a 3 z i z i y i i 0 i 0 i 0 i 0 i 0 Ejercicio 1: A partir de un estudio experimental acerca de la estabilización de arcilla muy plástica, se observó que el contenido de agua para moldeo con densidad óptima dependía linealmente de los porcentajes de cal y puzolana mezclados con la arcilla. Se tuvieron así los resultados que se dan abajo. Ajuste una ecuación de la forma: y = a0 + a1u + a2v a los datos de dicha tabla. Agua (%) Cal (%) Puzolana (%) y u v 27.5 2.0 18.0 28.0 3.5 16.5 28.8 4.5 10.5 29.1 2.5 2.5 30.0 8.5 9.0 31.0 10.5 4.5 32.0 13.5 1.5 Solución 1: P1) Seleccionamos las ecuaciones que se emplearán en este problema. Dado que son dos variables u y v, el SEL es siguiente: n n n n a 1 a u a v yi 1 i 2 i 0 i 0 i 0 i 0 i 0 n n n n SEL 3x3 a 0 u i a 1 u i2 a 2 u i v i u i y i i 0 i 0 i 0 i n0 n n n a 2 v a v u a v vi yi i 1 i i 2 i 0 i 0 i 0 i 0 i 0 P2) Se realizan todas las sumatorias en Excel. Sumas i 1 2 3 4 5 6 7 7 % u 2.00 3.50 4.50 2.50 8.50 10.50 13.50 45.00 % v 18.00 16.50 10.50 2.50 9.00 4.50 1.50 62.50 Agua = y, Cal = u, Puzolana = y % y u^2 uv 27.50 4.00 36.00 28.00 12.25 57.75 28.80 20.25 47.25 29.10 6.25 6.25 30.00 72.25 76.50 31.00 110.25 47.25 32.00 182.25 20.25 206.40 407.50 291.25 v^2 324.00 272.25 110.25 6.25 81.00 20.25 2.25 816.25 uy 55.00 98.00 129.60 72.75 255.00 325.50 432.00 1367.85 P3) Se calcula la matriz A y el vector de términos independientes: A 45.00 407.50 291.25 7 45.00 62.50 62.50 291.25 816.25 z 206.40 1367.85 1789.65 P4) Se calcula la matriz inversa A 1 : A 1 1.9337 -0.144587 -0.096473 -0.145 0.014105 0.006038 -0.096 0.006038 0.006458 P5) Calculamos el SEL: A 1 1.9337 -0.144587 -0.096473 -0.145 0.014105 0.006038 -0.096 0.006038 0.006458 z 206.4 1367.85 1789.65 = ai 28.69171 0.256939 -0.096068 P6) ycal = a0 + a1u + a2v ===> ycal = 28.69171 + 0.256939 u - 0.096068 v P6) Se calculan los nuevos valores de yCal: i 1 2 3 4 5 6 7 Datos Originales y ycal y v u 27.5 18.0 2.0 28.0 16.5 3.5 28.8 10.5 4.5 29.1 2.5 2.5 30.0 9.0 8.5 31.0 4.5 10.5 32.0 1.5 13.5 ynueva 27.5 28.0 28.8 29.1 30.0 31.0 32.0 Solución 2: P1) Seleccionamos las ecuaciones que se emplearán en este problema. Dado que son dos variables u y v, el SEL es siguiente: n n n n a 0 1 a 1 u i a 2 v i y i i 0 i 0 i 0 ni 0 n n n SEL 3x3 a 0 u i a 1 u i2 a 2 u i v i u i y i i 0 i 0 i 0 i n0 n n n a 2 v a v u a v vi yi i 1 i i 2 i 0 i 0 i 0 i 0 i 0 P2) Cuya ecuación matricial es: vy 495.00 462.00 302.40 72.75 270.00 139.50 48.00 1789.65 n n n ui vi n yi i 1 i 1 a 0 i 1 n n n n 2 Aai b u i u i u i vi a1 u i v i i 1 i 1 i n1 a 2 i n1 n n 2 v i u i vi vi v i yi i 1 i 1 i 1 i 1 P3) Calculamos los elementos de la matriz A: n n a11 1 n 7 a12 u i 45 i 1 i 1 n a21 = a12 a22 = u i 1 2 i 407.50 n a13 v i 62.50 i 1 n a 23 u i vi 291.25 i 1 n a33 vi2 816.25 i 1 a31 = a13 a32 = a23 P4) Calculamos los elementos del vector de términos independientes: n n i 1 i 1 b1 y i 206.40 b2 u i v i 291.25 n b3 v i yi 1789.65 i 1 P5) Formamos la ecuación matricial para el cálculo de ai usando la inversa: n n ai u i i n1 v i i 1 n ui i 1 n u i 1 n 2 i u v i 1 i i vi i 1 n u i vi i 1 n 2 vi i 1 n 1 n yi i 1 n u i vi i n1 vy i i i 1 45.00 62.50 7 ai 45.00 407.50 291.25 62.50 291.25 816.25 1 206.40 291.25 1789.65 28.69171 ai 0.256939 0.096068 P6) El conjunto solución es: C.S. = (a0 , a1, a2) = ( 28.69171, 0.256939, -0.096068) P8) Lo que significa que, la línea de regresión que esta ajustada al conjunto de datos es: ycal = a0 + a1u + a2v ===> ycal = 28.69171 + 0.256939 u - 0.096068 v P9) Calculamos ahora los yical , los cuales se resumen en la siguiente tabla: 5.3 Ajuste por interpolación segmentaria (Spline) Una función 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 . Supongamos además que se ha fijado un entero . Decimos entonces que una función spline de grado k con nudos en función S que satisface las condiciones: es una (i) en cada intervalo , S es un polinomio de grado menor o igual a k. (ii) S tiene una derivada de orden (k-1) continua en . Los splines de grado 0 son funciones constantes por zonas. Una forma explícita de presentar un spline de grado 0 es la siguiente: Los intervalos no se intersectan entre sí, por lo que no hay ambigüedad en la definición de la función en los nudos. Un spline de grado 1 se puede definir por: En las figuras (16) y (17) se muestran las gráficas 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 Figure: Spline de grado 1 con seis puntos. [scale=1.0]eps/spline-2 6.1 Integración. 6.1.1 Método del trapecio Un enfoque simple para evaluar la integral de una función es considerarla como el área bajo la línea de la recta que conecta los valores de la función en los extremos del intervalo de integración, tal como se aprecia en la figura (1), la fórmula para determinar esta área es: figura1 A causa de que el área bajo la línea es un trapecio, a esta expresión se le conoce como regla trapezoidal. Recuérdese de geometría que la fórmula para calcular el área de un trapecio es multiplicar la altura por el promedio de las bases (vease figura 2a). En esta ocasión el concepto es el mismo pero el trapecio se encuentra sobre uno de sus lados (vease figura 2b); por esta razón la razón de la estimación de la integral se presenta como: donde para la regla trapezoidal la altura media es el promedio de los valores de la función en los extremos, o (f(a) + f(b))/2. figura 2a figura 2b EJEMPLO: LA velocidad de caída de un paracaidista está definida por la siguiente función del tiempo: donde v(t) es la velocidad en metros por segundo, g es la constante gravitacional de 9.8 m/s2, m es la masa del paracaidista igual a 68.1 Kg, y c es el coeficiente de arrastre de 12.5 kg/s. Puede desarrollarse una gráfica dela función sustituyendo los parámetros y varios valores de t en la igualdad para obtener: t,s v, m/s 0 0.00 2 16.40; 4 27.77 6 35.64 8 41.10 10 44.87 12 47.49 14 49.30 16 50.56 Utilícese el método trapezoidal para determinar cuánto ha caido el paracaidista después de 12 s. SOLUCION: Podemos calcular la velocidad integrando como sigue: o, sustituyendo la función y los valores establecidos, Empleando el cálculo puede evaluarse analíticamente esta integral para obtener el resultado exacto de 381.958 m, el cual permite juzgar la precisión de la aproximación por la regla trapezoidal. A fin de aplicar la regla trapezoidal, los valores de los puntos extremos pueden sustituirse en la ecuación (1) con lo cual se obtiene: que representa un porcentaje relativo de error de La causa de este gran porcentaje de error es evidente en la descripción gráfica de la figura (3). Nótese que el área bajo la línea recta ignora una parte significativa de la parte integral sobre la línea. 6.1.2 Método de Simpson. Además de aplicar la regla trapezoidal con segmentos cada vez más finos, otra manera de obtener una estimación más exacta de una integral, es la de usar polinomios de orden superior para conectar los puntos. Por ejemplo, si hay un punto medio extra entre f(a) y f(b), entonces los tres puntos se pueden conectar con un polinomio de tercer orden. A las fórmulas resultantes de calcular la integral bajo estos polinomios se les llaman Reglas de Simpson. REGLA DE SIMPSON 1/3 La Regla de Simpson de 1/3 proporciona una aproximación más precisa, ya que consiste en conectar grupos sucesivos de tres puntos sobre la curva mediante parábolas de segundo grado, y sumar las áreas bajo las parábolas para obtener el área aproximada bajo la curva. Por ejemplo, el área contenida en dos franjas, bajo la curva f(X) en la figura 1, se aproxima mediante el área sombreada bajo una parábola que pasa por los tres puntos: (Xi , Yi) (Xi+1, Yi+1) (Xi+2, Yi+2) Figura 1 Por conveniencia al derivar una expresión para esta área, supongamos que las dos franjas que comprenden el área bajo la parábola se encuentran en lados opuestos del origen, como se muestra en la figura 2. Este arreglo no afecta la generalidad de la derivación. La forma general de la ecuación de la parábola de segundo grado que conecta los tres puntos es: (7) La integración de la ec. (7) desde hasta proporciona el área contenida en las dos franjas mostradas bajo la parábola. Por lo tanto: (8) Figura 2 La sustitución de los límites en la ec. (8) produce: (9) Las constantes a y c se pueden determinar sabiendo que los puntos , (0, Yi + 1 ), y deben satisfacer la ec. (7). La sustitución de estos tres pares de coordenadas en la ec. (7) produce: (10) La solución simultánea de estas ecuaciones para determinar las constantes a, b, c, nos lleva a: (11) La sustitución de la primera y tercera partes de la ec. (11) en la ec. (9) produce: (12) que nos da el área en función de tres ordenadas Yi, Y i+1, Y i+2 y el ancho de una franja. Esto constituye la regla de Simpson para determinar el área aproximada bajo una curva contenida en dos franjas de igual ancho. Si el área bajo una curva entre dos valores de X se divide en n franjas uniformes (n par), la aplicación de la ec. (12) muestra que: (13) Sumando estas áreas, podemos escribir: (14) o bien (15) en donde n es par. La ec. (15) se llama Regla de Simpson de un Tercio para determinar el área aproximada bajo una curva. Se puede utilizar cuando el área se divide en un número par de franjas de ancho . Si la función f(X) se puede expresar como una función matemática continua que tiene derivadas continuas f ' a , el error que resulta de aproximar el área verdadera de dos franjas bajo la curva f(X) comprendida entre Xi-1 y Xi+1 mediante el área bajo una parábola de segundo grado, se demuestra que es: (16) Este error por truncamiento es la cantidad que se debe agregar al área aproximada de dos franjas, que se obtiene mediante la regla de un tercio de Simpson, para obtener el área real bajo la curva en ese intervalo. El término mostrado del error por truncamiento generalmente no se puede valuar en forma directa. Sin embargo, se puede obtener una buena estimación de su valor para cada intervalo de dos franjas suponiendo que es suficientemente constante en el intervalo (se supone que las derivadas de orden superior son despreciables) y valuando para . La estimación del error por truncamiento para toda la integración se obtiene sumando las estimaciones correspondientes a cada dos franjas. Si la estimación del error total por truncamiento es mayor de lo que se puede tolerar, se deben utilizar intervalos de dos franjas menores. Considerando el error por redondeo que también aparece, existe un ancho óptimo de la franja para obtener un error total mínimo en la integración. 6.1.3 Método de Newton-Cotes. La regla del trapecio y de Simpson son ejemplos de una clase de métodos denominados fórmulas de Newton-Cotes. Existen dos categorías de fórmulas de Newton-Cotes: Abiertas y cerradas. La fórmula cerrada de (n+1) puntos de Newton-Cotes utiliza los nodos xi=xo+ih para i=0,1,2,…,n, donde xo=a y xn=b y h= (b-a)/n. Figura 5.24.- Figura de Newton-Cotes A esta fórmula se le llama cerrada, porque los extremos del intervalo cerrado [a,b] se incluyen como nodos. La fórmula cerrada de (n+1) puntos de Newton-Cotes adopta la forma: Algunas de las fórmulas cerradas comunes de Newton-Cotes son: 1.- La regla del trapecio 2.- La regla de Simpson de 1/3 3.- La regla de Simpson de 3/8 En las fórmulas abiertas de Newton-Cotes, los nodos xi=xo+ih se usan para cada i=0,1,2,…,n donde h= (b-a)/(n+2) y xo=a+h y xn=b-h. Los extremos se marcan haciendo: a=x-1 y b= xn+1 Figura 5.25.- Newton-Cotes abierta Las fórmulas abiertas de Newton-Cotes contiene todos los nodos usados para hacer las aproximaciones dentro del intervalo abierto (a,b). Las fórmulas se convierten en: Algunas de las fórmulas abiertas de Newton-Cotes comunes son: La regla del punto medio. (Pag 196) donde x-1< < x1 Regla del punto medio n=0 donde x-1< < x2 Regla del punto medio n=1 donde x-1< < x3 Regla del punto medio n=2 donde x-1< < x4 Regla del punto medio n=3 En términos generales, las fórmulas de Newton-Cotes no son adecuadas para utilizarse en intervalos de integración grande. Para estos casos se requieren fórmulas de grado superior, y los valores de sus coeficientes son difíciles de obtener. Además, las fórmulas de Newton-Cotes se basaron en los polinomios interpolantes que emplean nodos con espacios iguales, procedimiento que resulta inexacto en intervalos grandes a causa de la naturaleza oscilatoria de los polinomios de grado superior. Para poder resolver este problema se utiliza la integración numérica compuesta, en la cual se aplican las fórmulas de Newton-Cotes de bajo orden. Estos son los métodos de mayor uso. Ejemplos de estos métodos son: La regla compuesta de Simpson y la regla compuesta del Trapecio. En la integración de Romberg se usa la regla compuesta del Trapecio para obtener aproximaciones preliminares y luego el proceso de extrapolación de Richardson para mejorar las aproximaciones. Las fórmulas de Newton-Cotes se derivaron integrando los polinomios interpolantes. En todas las fórmulas de Newton-Cotes se emplean valores de la función en puntos equidistantes (igual distancia entre un punto y otro). Esta práctica es adecuada cuando las fórmulas se combinan para formar las reglas compuestas sin embargo, esta restricción puede afectar considerablemente la exactitud de la aproximación. La cuadratura Gaussiana selecciona los puntos de la evaluación de manera óptima y no en una forma igualmente espaciada. Se escogen los nodos x1, x2,…xn en el intervalo [a,b] y los coeficientes c1,c2,…,cn para reducir en lo posible el error esperado que se obtiene al efectuar la aproximación: En esta fórmula de aproximación de la integral, los coeficientes c1,c2,…,cn son arbitrarios y los nodos x1, x2,…xn están restringidos solo por la especificación de que se encuentren en [a,b], el intervalo de la integración. Un ejemplo de método de cuadratura, es el método de Gauss-Legendre. 6.2 Diferenciación. 6.2.1 Extrapolación de Richardson. Extrapolacion de Richardson: Denotamos aqui por In cualquier fórmula numérica para aproximar I(f), e.g., la fórmula del Trapezoide ó la regla de Simpson. La correspondiente fórmula asintotica del método nos garantiza que para alguna constante C donde p es el orden de convergencia del método, e.g., p=2 para el método del Trapezoide y p=4 para el de Simpson. Podemos escribir ahora que Despejando para I(f) obtenemos que lo cual se conoce como la fórmula de extrapolación de Richardson y se puede demostrar que i.e., el orden de la fórmula original se duplicó. Ejemplo 1: Consideramos nuevamente el computo de cuyo valor exacto es 0.693147 correcto a seis cifras. El siguiente programa en MATLAB implementa el método de extrapolación de Richardson para la regla del trapezoide: n=2; x=linspace(1,2,3); y=1./x; iaproxn=trapz(x,y); for i=2:5 n=2*n; x=linspace(1,2,n+1); y=1./x; iaprox2n=trapz(x,y); richard=(4*iaprox2n-iaproxn)/3; disp(['n=' num2str(n) ', iaprox2n=' num2str(iaprox2n,6) ',richard=' num2str(richard,6)]) iaproxn=iaprox2n; end Los resultados fueron como sigue: n I2n R2n 4 0.697024 0.693254 8 0.694122 0.693155 16 0.693391 0.693148 32 0.693208 0.693147 Aqui podemos ver que ya para n=32 la fórmula de Richardon tiene ya seis cifras correctas. Para el método del trapezoide la fórmula de Richardson es de orden O(h4) y no requiere derivadas de la función f(x) en comparación con la fórmula corregida. <> La fórmula de extrapolación de Richardson se puede ahora utilizar en forma recursiva generando formulas de orden cada vez más alto (se duplica en cada etapa). La fórmula resultante por este procedimiento se conoce como la fórmula de integración numérica de Romberg 7.1 Solución de ecuaciones diferenciales ordinarias 7.1.1 Métodos de Euler El método de Euler es uno de los más fáciles de utilizar para la solución de ecuaciones diferenciales de primer orden; este consiste en integrar la ecuación diferencial: entre un punto que es xi y el siguiente; esto es: Al integrar el lado izquierdo de la ecuación anterior tenemos: Ahora integrando el lado derecho de la ecuación, obtenemos: de aqui tenemos que: Al sustituir f(x) por una función de dos variables f(x, y) e integrar entre un punto cualquiera, xi, y el siguiente, xi+1, se obtiene: El método de Euler consiste en integrar el lado derecho de la primera expresión obtenida, tomando en cuenta solamente el primer factor de la ecuación anterior, obteniendose: Sustituyendo en la primera ecuación: despejando yi+1 ; Ahora veamos un ejemplo detallado utilizando el método de Euler. EJEMPLO : Resolver la ecuación diferencial siguiente por el método de Euler y'-2 x y = x con condiciones iniciales y(0.5) = 1, en el intervalo Solución: tenemos que: por lo tanto Ahora usando la ecuación (1) para i=0, en donde: Ahora bien: con h = 0.1. Al sustituir estos valores: Ahora se hace el proceso para i=1, obteniendose. Al sustituir valores: Se sigue realizando el mismo procedimiento para i= 2, 3, 4, tal como se ve acontinuación: Por lo que la solución de la ecuación diferencial en el intervalo x y(x) 0.5 1.00000 es: 0.6 1.15000 0.7 1.34800 0.8 1.60672 0.9 1.94380 1.0 2.38368 Si resolvemos la ecuación mediante un método directo se obtendrá el siguiente resultado: Al tabular la solución que se obtiene en el intervalo comparación con el método de Euler tendremos: Euler Exacta y(x) y(x) y realizar una x 0.5 1.00000 1.00000 0.6 1.15000 1.17442 0.7 1.34800 1.40687 0.8 1.60672 1.71547 0.9 1.94380 2.12601 1.0 2.38368 2.67550 7.1.2 Métodos de Runge-Kutta El método de Runge - Kutta es un método de resolución de sistemas de ecuaciones diferenciales, que se obtienen integrando la ecuación diferencial y'=f(x, y) en el intervalo y aproximando nodos: ecuación: mediante una fórmula de cuadratura con Así, obtenemos la En este momento nos encontramos con una dificultad, que es que no se conocen los valores de . Por lo que no podemos evaluar el segundo miembro de la ecuación ( 1 ). Para remediar esta dificultad, integramos la ecuación diferencial en aproximamos .Y , mediante una formula de cuadratura con los nodos Así, obtenemos la ecuación: . Por tanto, si denotamos los coeficientes por: ( Coeficientes independientes de h ), tenemos que un método de Runge - Kutta es aquel que se escribe de la forma: siendo EJEMPLO Resolver el siguiente ejemplo mediante el método de Runge- Kutta. y'= 1/2 ( 1+x ) y 2 , y(0)=1 De la condición inicial se tiene que para x = 0, y = 1; además, h = 0.1. Sustituyendo estos valores se tiene: De aqui tenemos: Los valores de las ki obtenidas en esta solución son: y luego Repitiendo los mismos pasos se obtienen los datos presentados en la siguiente tabla: x 0 y 1 k1 k2 k3 k4 0.5000 0.5516 0.5544 0.6127 0.1 1.0554 0.6126 0.6782 0.6823 0.7575 0.2 1.1236 0.7575 0.8431 0.8494 0.9494 0.3 1.2085 0.9492 1.0647 1.0745 1.2121 0.4 1.3158 1.2119 1.3735 1.3896 1.5872 0.5 1.4545 1.5868 1.8234 1.8517 2.1509 7.2 Solución de sistemas de ecuaciones diferenciales ordinarias Problema de Valor Inicial y Método de Euler Las ecuaciones diferenciales aparecen naturalmente al modelar situaciones físicas en las ciencias naturales, ingeniería, y otras disciplinas, donde hay envueltas razones de cambio de una ó varias funciones desconocidas con respecto a una ó varias variables independientes. Estos modelos varían entre los más sencillos que envuelven una sola ecuación diferencial para una función desconocida, hasta otros más complejos que envuelven sistemas de ecuaciones diferenciales acopladas para varias funciones desconocidas. Por ejemplo, la ley de enfriamiento de Newton y las leyes mecánicas que rigen el movimiento de los cuerpos, al ponerse en terminos matemáticos dan lugar a ecuaciones diferenciales. Usualmente estas ecuaciones estan acompañadas de una condición adicional que especifica el estado del sistema en un tiempo o posición inicial. Esto se conoce como la condición inicial y junto con la ecuación diferencial forman lo que se conoce como el problema de valor inicial. Por lo general, la solucón exacta de un problema de valor inicial es imposible ó dificil de obtener en forma analítica. Por tal razón los métodos numéricos se utilizan para aproximar dichas soluciones. Comenzaremos discutiendo los métodos para ecuaciones escalares y luego generalizamos los mismos a sistemas de ecuaciones. El Método de Euler: Considere el problema de valor inicial para la función (desconocida) y(t) descrito por: Defina para n0 los siguientes cantidades: Para cualquier j0, tenemos por el Teorema de Taylor que podemos escribir: Eliminando los terminos O(h2) obtenemos la aproximación: Denotamos ahora por yj una aproximación de y(tj). Entonces motivado por la aproximación de arriba definimos las aproximaciones {yj} por la recursión: lo que se conoce como el método de Euler. La cantidad la cual descartamos en la serie de Taylor para obtener las aproximaciones, se llama el error de truncación o local del método de Euler y esta intimamente relacionada con la convergencia del método. De hecho si definimos los errores absolutos por ej=y(tj)-yj, entonces restando la expansión de Taylor y la formula del método se obtiene que Suponiendo ahora que f cumple una Condición de Lipschitz uniforme en t, i.e., para alguna constante L, entonces se puede verificar que de la recursión de los errores obtenemos que: (*) lo que prueba que el método tiene un orden de convergencia global O(h). La implementación en MATLAB del método de Euler es relativamente simple. Hacemos esto mediante una subrutina llamada feuler que recibe en la secuencia de llamada el nombre de la subrutina que calcula la función f, y los datos t0, b, y0, n. Esta subrutina devuelve dos vectores con las t's y las y's aproximadas. Veamos: function [tvals,yvals]=feuler(f,t0,b,y0,n) h=(b-t0)/n; tvals=zeros(1,n+1); yvals=zeros(1,n+1); index=[0:1:n]; tvals=t0+h*index; yvals(1)=y0; for i=2:n+1 yvals(i)=yvals(i-1)+h*feval(f,tvals(i-1),yvals(i-1)); end Usamos ahora esta subrutina en el siguiente ejemplo. Ejemplo 1: Considere el problema de valor inicial cuya solución exacta es y(t)=(t+1)5e-t. Definimos la siguiente función en MATLAB que evalúa el lado derecho de la ecuación diferencial: function f=etest(t,y); f=5*y/(t+1)-y; Ahora resolvemos este problema para n=20 y gráficamos la solución numérica junto con la exacta para comparar los resultados usando las siguientes instrucciones en MATLAB: [t,y]=feuler('etest',0,4,1,20); yy=(t+1).^5.*exp(-t); plot(t,y,'x',t,yy) Las soluciones numéricas se ilustran en la figura por las "x". Note que las aproximaciones numéricas no coinciden con la solución exacta y que el error aumenta según aumenta la "t". Esto es lo usual y no contradice el estimado del error (*) de arriba donde el error puede crecer hasta exponencial con respecto al largo del intervalo. Para controlar el error lo primero que se hace es disminuir la h, i.e., aumentar la n. Para este ejemplo mostramos los resultados de disminuir h sucesivamente para la aproximación de y(4)= 57.2364 a las cifras mostradas. Obtuvimos lo siguiente: n yn y(4)-yn 20 42.4723 14.7640 40 48.3445 8.89186 80 52.2842 4.95215 160 54.6108 2.62556 320 55.8827 1.35365 640 56.5488 0.687527 1280 56.8899 0.346503 2560 57.0624 0.173945 Vemos aqui que definitivamente la aproximación mejora según aumenta la "n" pero la convergencia es bastante lenta. De hecho la aproximación numérica tiene apenas un error relativo de 3x10-3 para n=2560, i.e., h=4x10-4. <> El ejemplo anterior muestra que aunque el método de Euler es convergente según la "h" tiende a cero, la convergencia del método puede ser bien lenta requiriendo un "h" excesivamente pequeño para un error satisfactorio en las aproximaciones. Al usar un "h" excesivamente pequeño en los calculos podemos tener acumulación de errores debido a la aritmética finita similar al fenomeno que observamos en la diferenciación numérica. Esta situación mejora o se puede evitar al considerar métodos con un orden de convergencia más alto como los llamados métodos Runge-Kutta que discutimos más adelante. Otra noción bien importante en adición a la de convergencia de un método numérico es la de estabilidad absoluta. En este caso la "h" se mantiene fija y nos interesa determinar cúan sensitivo es el método numérico a variaciones en la condición inicial y0. Ejemplo 2: Considere el problema de valor inicial cuya solución exacta es y(t)=0. Resolvemos el mismo problema de valor inicial pero con la condición inicial cambiada a y(1)=10-4 y usamos h=0.05 en el método de Euler. La solución calculada fué como sigue donde mostramos el valor absoluto de la misma: Podemos ver que un error inicial de 10-4 produjo un error de más de 1025 en la aproximación de y(10). En este caso calcular con h=0.025 o n=360 aproximadamente, produce resultados satisfactorios. <> El ejemplo anterior se generaliza a la ecuación , donde . La solución de este problema es para alguna constante C. Estas soluciones son acotadas para todo "t". La región de estabilidad absoluta S de un método se define por el conjunto de las "h" tal que las soluciones numéricas sean acotadas al aplicarse al problema prueba . En el caso del método de Euler tenemos que al aplicar este al problema prueba, el método reduce a: Vemos aqui que las soluciones numéricas estan acotadas para todo "j" si y solo si , i.e., . Ejemplo 3: En el Ejemplo 2 donde =-50, el requisito de implica que . Claramente h=0.05 no cumple con esta condición mientras que h=0.025 si la satisface. <> El método de Euler generaliza en forma directa a sistemas de ecuaciones diferenciales. La teoria de convergencia global y de estabibilidad absoluta que discutimos en el caso de una ecuación, aplica palabra por palabra al caso de sistemas. En la subrutina feuler descrita antes solo hay que añadir una instrucción para determinar el tamaño del sistema. Hicimos un cambio también para que en lugar de "n" la subrutina reciba "h". La subrutina queda ahora como: function [tvals,yvals]=feuler(f,t0,b,y0,h) n=floor((b-t0)/h)+1; m=length(y0); tvals=zeros(1,n+1); yvals=zeros(m,n+1); index=[0:1:n]; tvals=t0+h*index; yvals(:,1)=y0; for i=2:n+1 yvals(:,i)=yvals(:,i-1)+h*feval(f,tvals(i-1),yvals(:,i-1)); end Esta subrutina puede ser usada exactamente como antes para el caso de una ecuación. Veamos un ejemplo numérico de un sistema de ecuaciones y como lo resolvemos con feuler. Ejemplo 4: Considere el siguiente modélo simplificado del corazón donde x(t) representa el largo de una cierta fibra ó musculo del corazón y s(t) representa un estimulo aplicado: Aqui y p son parámetros del modélo. El lado derecho del sistema lo evaluamos mediante la siguiente subrutina en MATLAB: function f=heart(t,y); % % y(1) representa x(t) y y(2) representa s(t) % global mheart pheart f=zeros(2,1); f(1)=mheart*(-y(2)-y(1)^3/3+pheart*y(1)); f(2)=y(1)/mheart; Note el uso de la instrucción global que declara las variables mheart y pheart como variables globales las cuales son accesibles por cualquier rutina o programa con una instrucción global igual. Usamos las condiciones iniciales x(0)=0, s(0)=-1 y los valores de =0.5 y p=1. Aproximamos la solución con la siguiente secuencia de instrucciones en MATLAB: global mheart pheart mheart=0.5; pheart=1; [t,y]=feuler('heart',0,10,[0,-1]',0.1); plot(t,y(1,:),t,y(2,:)) xlabel('t');ylabel('x(t),s(t)'); title('Modelo del corazon: x(t) en amarillo, s(t) en violeta.') lo cual produce la siguiente gráfica: No comentamos sobre las interpretaciones físicas de estas graficas pero si mencionamos que el método de Euler es efectivo en este problema ya que las soluciones no varian muy rapidamente en el intervalo en cuestión. <> Para resolver ecuaciones diferenciales de orden mayor de uno hacemos primero un cambio de coordenadas para convertir la ecuación dada a un sistema de primer orden. Luego usamos el método de Euler para sistemas según descrito arriba. Ejemplo 5: Considere el problema de valor inicial para la siguiente ecuación de orden dos: Haciendo la sustitución ó cambio de variables x1(t)=x(t), x2(t)=x'(t), entonces el problema de arriba es equivalente al siguiente sistema de primer orden: Este sistema puede resuelto de forma similar al que resolvimos en el Ejemplo 4. <> Ejercicios: 1. La ecuación diferencial que modela el proceso de desintegración de un material radioactívo esta dada por: donde k es una constante caracteristica del isótopo radioactívo. Para x0=50 y k=0.05 resuelva este problema de valor inicial en el intervalo [0,10] con h=1,0.1,0.01. Compare sus resultados con la solución exacta que es x(t)=50 exp(-0.05t). 2. Convierta la ecuacion diferencial de orden dos dada por a un sistema de orden uno. Resuelva el sistema resultante en el intervalo [1,4] si las condiciones iniciales son x(1)=1/2, x'(1)=-1/2. La solución exacta en este problema es x(t)=1/(1+t2). Métodos Runge-Kutta La convergencia lenta del método de Euler y lo restringido de su región de estabilidad absoluta nos lleva a considerar métodos de orden de convergencia mayor. En clase mencionamos que en cada paso el método de Euler se mueve a lo largo de la tangente de una cierta curva que esta "cerca" a la curva desconocida o buscada. Los métodos RungeKutta extienden esta idea geométrica al utilizar varias derivadas o tangentes intermedias, en lugar de solo una, para aproximar la función desconocida. Los métodos Runge-Kutta más simples se obtienen usando dos de estas derivadas intermedias. Métodos Runge-Kutta de dos Evaluaciones: Aqui buscamos métodos o fórmulas numéricas de la forma: Note que apesar de que en la fórmula se perciven tres f's, el método envuelve solo dos evaluaciones ya que dos de estas f's tienen los mismos argumentos. La idea ahora es determinar los parámetros de modo que el método tenga orden de convergencia lo más alto posible. Un análisis del error local de esta fórmula basado en el Teorema de Taylor muestra que el orden más alto que puede tener esta fórmula es dos y que esto puede ocurrir si y solo si: Es decir si cumplen con estas condiciones, entonces ej=y(tj)-yj=O(h2) para toda j. Algunos casos especiales de estas fórmulas son: 1. Método de Heun: Aqui se toma de modo que el método reduce a: Para propositos de hacer cálculos es mejor escribir esta fórmula como: 2. Método del Punto Medio: Aqui se toma de modo que el método reduce a: Veamos ahora una implementación en MATLAB del método de Heun. Note que en el ciclo "for" tenemos exactamente dos evaluaciones de "f". Tenemos pues: function [tvals,yvals]=heun(f,t0,b,y0,h) n=floor((b-t0)/h)+1; m=length(y0); k1=zeros(1,m); tvals=zeros(n+1,1); yvals=zeros(n+1,m); index=[0:1:n]'; tvals=t0+h*index; yvals(1,:)=y0; h2=h/2; for i=2:n+1 k1=feval(f,tvals(i-1), yvals(i-1,:)); yvals(i,:)=yvals(i-1,:)+h*k1; yvals(i,:)=yvals(i-1,:)+h2*(k1+feval(f,tvals(i),yvals(i,:)); end Ejemplo 1: Consideremos aqui las ecuaciones diferenciales que se obtienen de las leyes de Newton aplicadas al problema de dos cuerpos. Suponemos aqui que uno de los cuerpos es mucho más masivo que el otro de modo que su movimiento es descartable, e.g., la tierra y un satélite. Suponemos también que el movimiento es en un plano. Como la fuerza gravitacional es inversamente proporcional a la distancia entre los cuerpos, tenemos tomando todas las constantes envueltas como uno, que la posición (x(t),y(t)) del cuerpo pequeño esta dada por el sistema de ecuaciones diferenciales: Tomamos como condiciones iniciales que este es un sistema de orden dos, tenemos que hacer la sustitución: . Debido a lo cual tranforma el sistema de arriba al siguiente sistema de orden uno: Definimos ahora la siguiente subrutina en MATLAB que evalua el lado derecho de este sistema: function f=satelite(t,u) f=zeros(1,4); denom=(u(1)^2+u(3)^2)^1.5; f(1)=u(2); f(2)=-u(1)/denom; f(3)=u(4); f(4)=-u(3)/denom; Ahora calculamos y graficamos la solución del problema de valor inicial con la siguiente secuencia de instrucciones en MATLAB. Note que graficamos el conjunto de puntos (x(t),y(t)) para los t's generados en lugar de (t,x(t)) y (t,y(t)). Tenemos pues: [t,y]=heun('satelite',0,10,[0.4,0,0.1,2],0.01); plot(y(:,1),y(:,3)) xlabel('X');ylabel('Y'); title('Solucion particular del problema de dos cuerpos') Note que la curva es efectivamente una elipse aunque esto se acentua en la gráfica por que los ejes tienen unidades de largo distintas. <> Métodos Runge-Kutta de más de dos Evaluaciones: Aunque el método de Heun fué bastante efectivo en el ejemplo anterior, nos interesa encontrar métodos de orden aún más alto que no requieran h's muy pequeñas. Vimos aqui que un método Runge-Kutta de dos evaluaciones intermedias genera un método de orden dos. Es razonable pensar que tres o cuatro evaluaciones intermedias producen métodos Runge-Kutta de ordenes tres y cuatro respectivamente. Este el caso pero ya para cinco evaluaciones no obtenemos necesariamente métodos Runge-Kutta de orden cinco pero si con seis evaluaciones. Un ejemplo de un método Runge-Kutta de orden cuatro de cuatro evaluaciones es el llamado método Runge-Kutta clásico definido por las fórmulas: MATLAB cuenta con dos subrutinas intrinsecas para la solución de problemas de valor inicial: ode23 y ode45. ode23 utiliza una combinación de un método Runge-Kutta de orden dos con otro de orden tres. La combinación de estos métodos permite el poder estimar el error en la aproximación numérica en cada paso y asi la subrutina puede ajustar el largo de paso "h" en forma dinámica para mantener el error global menor de una tolerancia especificada por el usuario. Estos métodos se dicen que son adaptativos ó de largo de paso variable. La subrutina ode45 es similar a ode23 pero utiliza una combinación de métodos de ordenes cuatro y cinco de cinco y seis evaluaciones respectivamente. La secuencia de llamada de ambas rutinas es idéntica y requiere del nombre de la función f, los tiempos inicial y final, la condición inicial, la tolerancia para los computos, y un indicador de si la rutina imprime o no los resultados calculados en la ventana de MATLAB. Normalmente este indicador se toma como cero que es su valor por omisión. Por ejemplo un computo similar al del Ejemplo 1 lo podemos realizar remplazando la llamada a Heun por: [t,y]=ode23('satelite',0,10,[0.4,0,0.1,2],0.0001); donde la solución se calcula con un error global de 0.0001. La misma instrucción con ode45 produce la gráfica: Las esquinas en esta gráfica se deben a que como ode45 usa un método de orden mayor, esto le permite dar pasos más largos en "t" lo que al graficar produce las esquinas. Este trazado lo podemos mejorar usando splines cúbicos como sigue: [t,y]=ode45('satelite',0,10,[0.4,0,0.1,2],0.0001); tt=linspace(0,10,200); xx=spline(t,y(:,1),tt); yy=spline(t,y(:,3),tt); plot(xx,yy) xlabel('X');ylabel('Y'); title('Solucion particular del problema de dos cuerpos con ode45 (grafica con splines)') lo cual resulta en la mejor gráfica: Ejercicios: 1. Resuelva el siguiente problema de valor inicial usando las subrutinas ode23 o ode45: donde y Examine los efectos en los cálculos de la tolerancia especificada por el usuario. Grafique las soluciones calculadas como funciones de "t" y en el plano x-y. 2. Las ecuaciones de Lorenz estan dadas por el siguiente sistema de ecuaciones diferenciales: donde s, r, b son parámetros del sistema. Usando ode45 con una tolerancia de 0.000005 resuelva las ecuaciones de Lorenz para s=10, r=126.52, b=8/3 con las condiciones iniciales x(0)=-7.69, y(0)=-15.61, z(0)=90.39. Grafique las soluciones calculadas como funciones de t. Grafique las soluciones x(t), z(t) en el plano x-z. Para los valores de s, r, b dados el sistema de Lorenz posee lo que se conoce como comportamiento "caótico". 7.3 Solución de ecuaciones diferenciales parciales 7.3.1 Método de las diferencias finitas La integración hacia adelante paso a paso de ecuaciones diferenciales de orden superior puede también efectuarse sustituyendo en la ecuación diferencial, y sus condiciones iniciales, las derivadas por fórmulas numéricas de derivación consistentes; es decir, todas ellas con el mismo orden de error. La ecuación en diferencias finitas así obtenida, deberá aplicarse repetidamente en los puntos pivotes y resolverse en términos de la solución previamente obtenida, con el mismo procedimiento en los puntos pivote anteriores y resolverse en términos de la solución previamente obtenida, con el mismo procedimiento en los puntos pivote anteriores. Resolver por diferencias finitas: y''-y'-2y=0; y(0)=0.1; y'(0)=0.2 Sustituyendo la primera y segunda derivadas que aparecen en la ecuación diferencial, por fórmulas numéricas de derivación con errores del orden h2, se obtiene para el i-ésimo pivote: Teniendo en cuenta que h=0.1, se llega a por lo que (8-34) Para las condiciones iniciales, se obtiene (8-35) entonces (8-36) Aplicando (8-34) en los puntos x0, x1, x2,…,teniendo en cuenta (8-35) y (8-36), se tiene Para x0=0, y1=2.126y0-1.105y-1 Teniendo en cuenta (8-35) y (8-36) y1=2.126(0.1)-1.105(y1-0.04) =0.213-1.105 y1 + 0.04 2.205 y1=0.257 por lo tanto y1=0.117 (8-37) Para x1=0.1, y2=2.126y1-1.105y0 Teniendo en cuenta (8-35) y (8-37) y2=2.126(0.117)-1.105(0.1) =0.138 Para x2=0.2, y3=2. 126(0.138)-1.105(0.117) =0.164 Para x3=0.3, y4=2. 126(0.164)-1.105(0.1) =0.196 Para x4=0.4, y5=2. 126(0.196)-1.105(0.164) =0.235 Para x5=0.5, y6=2. 126(0.235)-1.105(0.196) =0.283 7.2.1. ECUACIONES PARCIALES PARABOLICAS Un caso típico de este tipo de ecuación lo constituye el problema de la transmisión del calor en una sola dirección, representada por la ecuación (9-12) cuando el flujo es en la dirección x, siendo t el tiempo, u la distribución de la temperatura que es función de x , t y a una constante que depende de la conductividad térmica, densidad y calor específico del material. Las fórmulas numéricas de derivación que se utilizan son: (9-13) (9-14) El análisis ocurre en el punto j, en el instante i, deseandose la temperatura en ese punto en el instante que sigue, i+1. Sustituyendo las ecuaciones (9-13) y (9-14) en (9-12), se tiene: de donde (9-15) La solución es estable para el caso en el cual el término no excede el valor de 0.5. La estabilidad garantiza la validez de los resultados e indica que la diferencia entre la solución numérica y la solución exacta; es decir, el error total, tiende a disminuir conforme la integración avanza o por lo menos que la velocidad de crecimiento de este error es menor que la velocidad de crecimiento de la solución. 7.3.2 Método del elemento finito. El sistema de ecuaciones (1) se resuelve empleando el método del elemento finito. Los potenciales eléctricos se aproximan por un modelo discreto compuesto de un conjunto de funciones continuas definidas sobre un número finito de subdominios. En los electrodos se tienen dos tipos de fronteras: a) Condiciones de frontera para el potencial fijo donde el potencial está especificado, y b) Condiciones de frontera para potencial flotante donde el potencial es desconocido. Un método de Elemento Finito resuelve el sistema de ecuaciones a partir de la obtención del estado estacionario de la funcional de Laplace. La funcional tiene la forma [1] El potencial eléctrico V se expresa por una combinación lineal de funciones de forma