Вы находитесь на странице: 1из 46

INSTITUTO POLITECNICO NACIONAL

ESCUELA SUPERIOR DE CÓMPUTO

1
PROGRAMACION II

OBJETIVO: el estudiante analizara los principales algoritmos para emplear


técnicas numéricas básicas, mismas que deberá programar para aplicar sus
conocimientos en el uso del lenguaje “c” y así implementar los algoritmos.

CONTENIDO:

Unidad I: Aritmética de punto flotante y convergencia de algoritmos.

1.1Errores.
1.2Números de punto flotante.
1.3Programación de errores.

Unidad II: Algoritmos para dar solución a ecuaciones de una variable real.

2.1 Algoritmos de búsqueda de raíces.


2.2 Raíces de polinomios.

Unidad III: Algoritmos de interpolación.

3.1 Algoritmos de interpolación


3.2 Ajustes de curvas.

Unidad IV: Algoritmos para derivación e integración numérica.

4.1 Algoritmos para derivación.


4.2 Algoritmos de integración simple.
4.3 Algoritmos de integración compuesta.

Unidad V: Algoritmos para dar solución numérica a ecuaciones diferenciales


ordinarias.

5.1 Aspectos numéricos de los algoritmos por métodos numéricos.


5.2 Algoritmos basados en técnicas iterativas.

Unidad VI: Algoritmos para dar solución numérica a ecuaciones diferenciales


ordinarias.

6.1 Algoritmos por método de Taylor.


6.2 Algoritmos de Runge Kutta.

2
UNIDAD I: ARITMETICA DE PUNTO FLOTANTE

INTRODUCCION:

Métodos Numéricos son técnicas mediante las cuales es posible formular


problemas de tal forma que pueden resolverse usando operaciones aritméticas,
es decir descomponen el problema en un gran número de operaciones simples.

Ejemplo:

2007340039
X43
---------------
6022020117 20 multiplicaciones
8029360136 12 sumas
---------------
86315621677

• Cifras significativas o dígitos significativos:

Son el número de dígitos que pueden ser usadas con confianza es decir,
la cantidad de números que se designan formalmente la confiabilidad de
un valor numérico.

• Precisión:

Se refiere al número de cifras significativas que representan una


cantidad a la extensión de lecturas repetitivas de un instrumento que
mide una propiedad física.

• Exactitud:

Se refiere a la aproximación de un número o de una medida de un valor


al valor verdadero que presenta.

• Error:

Los métodos numérico empleados en la computación para obtener una


solución de un proceso real son solo una aproximación por lo que
siempre existe un error o una discrepancia, al valor verdadero de una
solución y el valor obtenido por un algoritmo computacional. Los errores
se pueden deber a las aproximaciones matemáticas que se realizan en el
cálculo, y pueden ser de dos tipos por truncamiento y por redondeo.
Para ambos tipos de errores la relación ente el valor exacto y el valor
aproximado esta dado por la siguiente ecuación

X´= x+ex
X´= valor aproximado
X = valor exacto
3
ex= error absoluto
• Error absoluto:

Es la diferencia entre el valor verdadero ya aproximación al valor


verdadero.

ex= |x´-x|

• Error relativo:

Es el cociente del error absoluto entre el valor verdadero. Es una forma


de normalizar los errores.

er= ex/x

Ejemplo:

Supóngase que se tiene que medir la longitud de un puente y sus remaches,


obteniéndose una dimensión de 9,999 cm para el puente y 9 cm para su
remache. Si los valores verdaderos son 10,000 cm para el puente y 10 cm para
el remache

a) Calcular el error absoluto.


b) Calcular el error relativo.

Error absoluto para el remache

℮x remache = |9 – 10| = 1 cm

℮x puente = |9,999 – 10,000|= 1 cm

Error relativo

℮x remache = 1cm/10cm = 0.1  ℮xremache = 10 %

℮x puente = 1/10,000 = 0.001  ℮xpuente = 0.01%

4
NUMEROS DE PUNTO FLOTENATE

En cálculos de ingeniera el intervalo de números pueden ser muy grandes, por


lo que se pierde precisión y exactitud sise emplean instrumentos de calculo
que pueda contener un número menor de cifras significativas.

Para representar ese intervalo de números grandes se usa la notación


científica.

1,000  1 x 103  I.E3


0.001 1 x 10 -3  I.E-3

n = números que se desea representar


n = ± m x R±l
n = ± m E ±l  en computación

m = mantisa o fracción
R = base del sistema numérico
e = exponente

L a recta de los números reales que pueden ser representados en una


computadora se divide en las siguientes 7 regiones.

1.- Números negativos grandes menores que – 0.999 X 1099 se llama


desbordamiento negativo.
2.- Números comprendidos entre – 0.999 X 1099 y – 0.100 X 10-99 son los
números negativos representables.
3.- Números negativos pequeños con una magnitud menor a – 0.100 X 10-99
son el subdesbordamiento negativo.
4.- cero
5.- Los números positivos con una magnitud menor a – 0.100 X 10-99 es el
subdesbordamiento positivo.
6.- Números positivos entre – 0.100 X 10-99 y – 0.999 X 1099 son los números
representables.
7.- Los números positivos grandes mayores a – 0.999 X 1099 se lamman
desbordamiento positivo.

Estanboard de aritmética de punto flotante IEEE 754-1985


Universidad de Berkeley- William Kahan.

Norma en México NMX - acuerdo industriales


NOM

5
El estándar define tres formatos.

Precisión sencilla con 32 bits, doble precisión con 64 bits y precisión extendida
de 80 bits. Los formatos de precisión simple y doble emplean la base dos para
fracciones y notación de exceso para exponentes. Los formatos se muestran en
las siguientes figuras.

Precisión sencilla

Precisióndoble

Ambos formatos comienzan con un bit de signo para el número en su totalidad:


0 para el positivo y el 1 para el negativo. Luego viene el exponente que usa
exceso 127 para el caso de la presentación sencilla y exceso de 1023 para el
caso de precisión doble. Los exponentes mínimo (0) y máximo (255 y 254)
respectivamente) no se usa los números normalizados tienen usos especiales.
Luego están las fracciones de 25 y 52 bits respectivamente.

CONCEPTO PRESICION PRESICION PRESICION


SENCILLA DOBLE EXTENDIDA
SIGNO 1 1 1
EXPONENTE 8 11 15
FRACCION 23 52 64
TOTAL 32 64 80
SISTEMA DE EXCESO EXCESO 1023 EXCESO 16,383
EXPONENTE
BASE 2 2 2
INTERVALO DEL -126 A +127 -1022 A -16,382 A +16,383
EXPONENTE +1023
N° NORMALIZADO 1.755-38 2.225-308 34931
MAS PEQUEÑO
N° NORMALIZADO 1.70138 8.988307 64931
MAS GRANDE
N° DIGITOS 7 16 19

Presentación de la IEEE 754

6
NORMALIZADO

DESNORMALIZADO

CERO

INFINITO

NINGUN NÚMERO

EJERCICIO:

Convertir al formato IEEE 754 1985, precisión sencilla.

1) 6.12510= 110.001

6/2 = 3 0 3/2 = 1  1 ½=01

0.125 * 2 = 0.256 0 0.256 * 2 = 0.5 0 0.5 * 2 = 1.0


1

Signo = 02 (positivo)
Exponente = 1.1001 X
Exponente = 1.1001 X 22
= 2 + 127 = 12910= 1000 00012
Fracción = 10012
IEEE =

7
PROGRAMA PARA LA CONVERSION IEEE 754 1985 A DECIMAL EN BORLAND
C++

/decimal  IEEE/
Void_main (){
Float *a;
Printf
Scanf (“%f”, & a);
printf(“IEEE = %p (hexa)”, a);
}

/IEEE  decimal/

Void main () {
Int * a;
Float *s;
Printf
Scanf (“%x%x”, a++,a);
S= (float *)a;
Printf (“DEC=%g”, *s);
}

OPERACCIONES ARITMETICAS CON LA NORMA IEEE 754.

SUMA.

1) Son exponentes iguales .


2) Son números des normalizados.

1 X 101 + 1 X 102 = 11010

RESTA.

Cuando se restan dos números casi iguales se produce un error relativo grande.

División.

8
Cuando se puede dividir entre un número muy pequeño puede causar sobre
flujo.

Errores de salida.

Se puede presentar al emplear un formato erróneo al momento de realizar una


impresión.

Void main (){


float a = 3.1215326534, b = 0.0000006;
pintf (“%f, %f, %1.3f, %1.3f, %g, %g, a,b,a,b,a,b”);

*propagación de errores

Suma.

Se presentan errores porque hay una longitud finita de los números.

Error|(a’+b´)-(a+b)|
Resta Error |(a’-b´)-(a-b |
Multiplicación el error depende del número de operaciones
División suma y resta que se realicen

Inestabilidad.

La inestabilidad en un cálculo es un fenómeno que se produce cuando los


errores de redondeo individuales se propagan a través del cálculo. Un problema
que es inherentemente inestable se dice que está mal condicionado.

9
UNIDAD 2: SOLUCION DE ECUASIONES NO LINEALES.

Solución de problemas --- Método analítico grafico numérico.

En la práctica de la ingeniera y ciencias es muy frecuente tener que resolver


ecuaciones de la forma f(X) =0, es decir, es necesario conocer los valores de X
que hacen cero a la ecuación. A estos valores se les conoce como ceros o
raíces de la ecuación. En general se aplican tres métodos.

Método numérico analítico.

Consiste despejar la variable X en función de f(X).

Ecuación cuadrática
x=-b±b2-4ac2a
Método numérico grafico.

Se traza la grafica de f (X) en fusión de X y se buscan los puntos donde la curva


corta al eje X.

Este método presenta las siguientes inconveniencias:

La grafica resulta difícil de elaborar.


Los valores obtenidos no son muy precisos y es
posible que las raíces nunca se encuentren.

Método numérico.

Generan una sucesión de valores que si aproximan a la solución son métodos


más generales que los analíticos y más precisos que los gráficos.

 Teorema: Cambio de signos.

Si un intervalo cerrado [a,b] la función f(X) es continua y además f(a) tiene


signo opuesto a f(b), es decir, existe un cambio de signo, entonces por lo
menos existe una raíz en el intervalo [a,b]. Si no se cumple no dice nada del
número de raíces.

 Teorema:

Toda ecuación algebraica admite al menos una raíz real o compleja.


Corolario:
Toda ecuación algebraica de grado n admite n raices reales o complejas.

10
 Teorema: Raices complejas.

Si una ecuacion algebraica admite al numero (a+bi) como su raiz, su complejo


conjugada (a-bi) tambien lo es.

Regla de los signos o de Descartes. Se emplea para determinar el numero de


raices positivas, negativas o nulas de una ecuacion algebraica. Si la ecucion
carece de temino independiente pero tiene el termino de primer grado posee
una raiz nula, si carece del termino independiente y del termino de primer
grado pero posee el termino de segundo grado tiene dos raices nulas, etc.

El numero de raices positivas de una ecuacion f(X) = 0 es igual al numero de


cambios de signo en el polinomio o es menor que este en un numero par. Para
raices negativas es igual al numero de cambios de signo de la funcion f(-X) = 0
ó es menor que ese numero en un numero par.

Ejemplos:

Determinar el nimer de raices nulas, positivas y negativas de:

3x3-6x+7= 0
Analisis:
a) Nulas.
Tiene cero raices nulas porque tiene el termino independiente.
b) Positivas.
[+,-,+] => dos cambios de signo
Tiene 2 o´0 raices positivas
c) Negativas.
F(X)= 0 3x3-6x+7= 0
[-,*,+] => 1 cambio de signo
Tiene 1 o´-1 raices negativas

Conclusiones:
La ecuacion tiene las siguientes raices: 0 nulas, 2 positivas y una negativa.

Metodos de biseccion.

Los metodos de biseccion se conocen tambien como metodos por intervalos


pues necesitan de dos valores para poder iniciar la busqueda de las raices. Uno
de los metodos mas antiguos se conoce como Metodo Balzano, metodo de
corte binario o metodo de particion en dos intervalos iguales, es un metodo de
busqueda incremental en donde el intervalo siempre se divide en dos. Si la
funcion cambia de signo sobre el intervalo, se evaua el valor de la funcion en el
punto medio. La posicion de la raiz se determina situandola en el punto medio
del subintervalo dentro del cual ocurre un cambio de signo. Este proceso se
repite hasta obtener una mejor aproximacion.
La estimacion del error relativo (er) del metodo de la biseccion se calcula de la
siguiente forma.

11
er= Xnueva-XanteriorXnueva

Criterios de paro.

1.- limitar el numero de iteracciones.


2.- en base al error relativo.
3.- si se llega a la solucion.

Ejemplo:

Determinar la raiz para f(X) = ex- x con un intervalo de inicio [0,1]

1) a=0 y b=1

x1a+b2= 0+12= 0.5

f(x1) = f(0.5) = e-0.5- 0.5 = 0.1065 => no hubo cambio de signo

nuevo intervalo [.1065,1]

∴a= 0.5 b=1

2) x2 = a+b2 = 0.5+12 = 0.75


f(x)2 e-.75- .75 = - 0.277=> cambio de signo

er = |.75- .5.75| = 33.33%


3) Hubo cambio de signo => [.5, .75]
x3= a+b2 = 0.5+.752 = 0.625
f(x)3= -0.08974
er= |.625-0 7.5.625| = 20%
4) No hubo cambio de signo [0.5, 0.625]

a = -0.5 b= 0.625
x4a+b2= 0.5+0.6252 = 0.5625
f(x)4 = 0.00728
Er = 11.11% => si hubo cambio de signo

5) [0.5625, 0.625]
x5 = 0.59375
f(x)5 = -0.04149 raiz => x3 = 0.59375
Er = 5.26% x0 = 0.56714329

PROGRAMA EN C PARA EL EMTODO DE BISECCION

12
# include math.h
folat f (float x){
return (exp(-x)-x);
}
void biseccion (float a, float b, float ex){
float xa,xn,fx,e;
int i;
xa= (a+b)/2;
for (i =0; i <100; i ++){
fx = f(xa);
If (fx ==0.){
printf (“raiz =%g ”, xa);
return;
}
if (fx <0.) b=xa;
else a= xa ;
xn = (a+b)/2;
If (xa! =0.){
e= fabs ((xn-xa)/xn) *100;
if (e<er){
printf (“raiz = %g “, xa);
return;
}
}
Xa = xn;
Printf (“la raiz no se encontro”);
}
Void main (){
Float a,d,e;
Scanf(%f %f %f “, &a, &b, &e);
}

13
METODO DEL PUNTO FIJO.

Es un metodo abierto, el cual requiere de solo un valor, para iniciar la


busqueda.
Si el metodo converge (se acerca a la raiz), lo hace mas rapido que el metodo
de la biseccion pero si no es probable que se alege.

F(x) = 0 =<> xi = g(xi –x)


Er =X1-Xi-1Xi

Ejemplo:

Hallar la raiz de f(X) = e-x – X tomando x0 =0


e-x- x
e-x = x
1) x1= e-0= 0  er = 1-0 1=100%
2) x2= e-1 = .3678  er = 0.3678-1 0.3678*100=171.88%
3) x3= e-.3678= .6922 er = .6922-0.3678 .6922*100=46.87%
4) x4= e-.6922 = 0.5004 er = .5004-06922..5004*100=38.327%
5) x5  er = 11.14%
6) x6  er = 5.9%
7) x7  er = 3.48%

METODO DE NEWTON -- RAPHSON.

Resolver una ecuasion de la forma f(X) = 0

F (Xi + 1 ) = f (Xi) + df (Xi)dXi (Xi + 1 – Xi) + d2f(Xi)dXi2 (Xi+1-Xi)22! + ……

F (Xi +1) = f (Xi) + df (Xi)dXi (Xi + 1 – Xi)


f (Xi+1) = f (Xi) + f1(Xi) (Xi + 1 – Xi)

fXi+1- f (Xi)f1(Xi) = (Xi +1 –Xi)

Xi +1 = fXi+1- f (Xi)f1(Xi) + Xi

f (Xi) + f1(Xi) (Xi + 1 – Xi) = 0


f1 (Xi)(Xi + 1 – Xi) = - f (Xi)
Xi +1 = Xi-fXif1(Xi)
Xi + 1 = Xi - -fXif1(Xi)
er = Xi+1-XiXi+1

Ejemplo: Determinar la raiz para f(x) = e-x- x para x0 =0

f´ (X) = ex-1

1) f (x0)=f 0= 1 x1= x0- f(x0)f1( x0)=0 12 = 0.5

14
er = 0.5-0 0.5 * 100 = 100%
2) er = 0.5662-0.5 0.5662 = 11.70%
3) er = 0.5671-0.5662 0.5671 = 0.1662%

METODO DE LA SECANTE.

f´(x) = f (Xi +1) – f (Xi)Xi-1-Xi

Xi +1 = Xi Xi-f(Xi )fXi-1 – f (Xi)Xi-1-Xi

Xi +1 = Xi – fXi( Xi-1-Xi)fXi-1- f (Xi)

er = Xi-XiXi+1 (100)

Determinar la raiz para f(X) = e-x- xpara x1 =0 y x0 =1

1) Xi = x0 – fx0( Xi-1-x0)fXi-1- f (x0)

f(Xi) = f(0) = 1
f (x0) = f (1) = - 0. 6321

x1=1--0.6321 0-1 1+0.6321 = 0.6127

er = 0.6127-1 0.6127 (100) = 63 .21%

2) x2 = x1 – fx1(x0 -x1)f x0- f(x1)

fx0= -0.6321
fx1= f ( 0.6127) = -0. 0708

x2=0.5638
er = 8.67%

RAICES DE POLINOMIOS.

Teorema fundamental del algebra establece que para cada polinomio de grado
“n” con coefisientes reales o complejos, tiene exactamente “n” raices.

Ejemplo: encontrar las raices.

f(x)= (1-x)5
(1-x)5=0
5 raices  X1,2,3,4,5 = 1

Se puede encontrar las raices de un polinomio como f(x) = a1+a2 + a3+ ….


+an+1 xn, en metodos numericos el polinomio debe de estar normalizado es
decir, el coeficiente de xn=1.

15
a1an+1+ a2xan+1x+ a2x2an+1+ ….+ xn = 0

∴ b1+ b2x+ b3 x2+….+ xn=0

a) Polinomios de sgundo orden

F(x) = a1+ a2x +a3x2

x=-a2±a22-4(a1)(a3)2(a3)

Ejemplo:
f(X) = 10 + 2x +x4

x1,2=-2±4-402 = -2±-362 x1= -1+3i x2= -1-3i

16
COTAS DE RAICES.

Permite fijar los valores minimo y maximo en donde pueden estar las raices.

Teorema de la cota maxima.


Si los coeficientes de la tabla de divisiones sinteticas son todos no negativas,
entonces el valor en el cual se evalua el polinomio es una cota maxima para
todas las raices.

Teorema de la cota minima.


Si los coeficientes de la tabla de divisiones sinteticas son todos signos
alternados, entonces el valor en el cual se evalua el polinomio es unas cota
minima para todas sus raices.

Ejemplo:

Determina se el siguiente polinomio f(x) = x5- 9x4+ 4x3 +35x2-21x-24 puede


ser acotada en x1= -2 y x2 = 9

x0 = -2 cumple como cota minima del polinomio.

f(-2) = -25- 9(-2)4+ 4(-2)3 +35(-2)2-21-2-24= -50

x1=9 cumple como cota maxima del polinomio.

METODO DE HORNER PARA ENCONTRAR RAICES DE POLINOMIOS.

17
A medida que se encuentran las raices de un polinomio, se puede ir
simplificando el polinomio, al eliminar las raices que ya se han determinado a
este procedimiento se le llama defacion y se basa en el siguiente teorema:

Si evaluamos un polinomio en un valor que sea la raiz, entonces los


coeficientes de la tabla de divisiones sinteticas, correspondientes a los
coeficientes dan polinomios de grado n-1, el cual tiene todas las raices del
polinomio general eceptuando aquella en donde se evalua.

Ejemplo:
Determina las raices del sig. Polinomio f(x) = f(x) = x3+ 6x-20
Se observa que tiene una raiz x0 = 2

x1,2=-2±4-402 = -2±-362 ∴
x0=2 x1= -1+3i x2= -1-3i

METODOLOGIA PARA HALLAR LAS RAICES DE UN POLINOMIO.

1) Determinar cuantas raices exiten mediante T.F.A.


2) Clasificar las raices según su tipo usando la regla de los signos de
Descartes.
3) Hallar una primera aproximacion a cada raiz, esto se puede hacer
calculando los limites superiror e inferiror del intervalo que contiene
todas las raices.
4) Se pueden hacer pruebas mediante divicion sintetica . si se detectan
cotas maximas y minimas se puede reducir el intervalo de busqueda. Sis
e hallan n -2 intervalos es posible usar metodos numericos. Cada vez
que se encuentre una raiz se reduce el polinomio usando division
sintetica.
5) Se puede verificar las raices halladas.

18
UNIDAD III: INTERPOLACION DE ANALISIS Y AJUSTE DE CURVAS.

 f(x) = xn+ axn-1…

INTERPOLACION.

Una funcion de interpolacion es aquella que pasa atraves de los puntos dados
como datos, pero que permite determinar el valor de un punto que no esta en
la tabla de valores.

Interpolacion lineal.

Este tipo de interpolacion supone que existe un punto en una linea recta entre
dos puntos adyacentes.

La ecuacion es

Y = yk + (x-xk)(xk+1-xk) (yk+1 –yk)

Ej. Dada la funcion

X Y
0 2
Z 8
4 64
6 212
8 506
10 992
Hallar el valor en x=32

Y = 8 + 3*2-2(64-8)(4-2)

Y = 40.4

19
20
Funcion en C.

Float lineal (float x [], float g[], int n , float xx){

Int i ;
Float yy;
For (i=1 ; I ≤ n ; i ++)
If (x[i] > xx){
Yy = [i-1] + (xx-x[i-1] * (y[i] –y[i-1] / (x[1]-x [i-1]);
Break ;
}
Return(yy);
}

DIFERENCIAS FINITAS ADELANTADAS.

Dada una funcion f (x) en donde:

x0 x1= x0+ h x2= x0+2h …… xn= x0+nh

Todas igualmente espaciadas, existen:

y0, y1, y3,…… yn

Es decir

Se llaman primeras diferencias finitas a

a0= y1 -y0 a1= y2 -y1 …….. an=yn -yn

Se respresenta por: ∆ yi

Se llaman 2do diferencias finitas a la a diferencia de las primeras deiferencias


finitas.

b0= a1-a0 b1= a2-a1 …………… bn-2= an-an-1

Se representa por ∆2 yi
21
Se llaman 3er diferencias finitas a las diferencias de las segunadas
deiferencias finitas.

c0= b1-b0 c1= b2-b1 …………… cn-3= bn-bn-1

Se representa por: ∆3 yi

Corolario.

Sin proceso de diferencias sucesivas de una funcion, una de estas diferencias


se vuelve constante o casi constante se dice que ese conjunto de los valores
corresponden al poliomio de grado igual al orden de la diferencia constantes.

Ejemplo:

Hallar el grado del polinomio del siguiente conjunto.

X Y ∆1 yi ∆2 yi ∆3 yi
0 2 6
2 8 54 48
4 64 150 96 48
6 212 294 144 48
8 506 486 192 48
10 992

El polinomio es de grado 3
Todo este espacio H

 Interpolacion de Newton.

yk= y0+ k∆ yi+ k(k-1)2! ∆2 yi+ kk-1k-23! ∆3 yi+ ………

Donde :

Yk es el valor que se desea obtener.


Xk es el valor para el cual se necesita obtener Yk.
Y0 es el vlalor inmediato de y.
X0 es el valor inmediato anterior de X.

22
Ejemplo:
X Y
0 2
2 8
4 64
6 212
8 506
10 992
Encontrar os valores para x = 3.2 y x = -1

x0=2
xk=2
n= 2

K = xn-x0n= 3.2-22=0.6

Yk = 8+ 0.6 (54) + 0.60.6-1(48)2!+ 0.60.6-10.6-2483!

Yk = 8+ 32.4 – 5.76 + 2.688 = 37.328

La interpolacion de Newton no da la funcion solo disminuye el errer en la lineal.

La interpolacion de Lagrange si se puede aplicar a funciones tabulares con


valore de x que sean equidistantes.
Para hacer la interpolacion se escoge un polinomio que pase por todos los
puntos de la tabla. Si se tienen dos puntos el polinomio de grado 1. Cuando se
tienen 3 puntos el polinomio es de grado 2, cuando se tiene n puntos, el grado
es de n-1. Para el siguiente polinomio de n puntos.

y = a0 xn-1+ a1 xn-2+ a2 xn-3+ ……+ an-2 xn-1

Este polinomio puede escribirse como:

Las constantes A, A1, A2, A3, …. An se determinan graficamente de la sig.


Forma.

y=A1x-x2x-x3x-x4……x-xn+
y=A2x-x2x-x3x-x4……x-xn+
y=A3x-x2x-x3x-x4……x-xn+
.
.
.

23
y=Anx-x2x-x3x-x4……x-xn-1+

24
Las constantes A1, A2,A3,……An se determinan graficamente de la siguiente
forma.

Si se hace x = x1, entonces:

A1=yx-x2x-x3x-x4……x-xn
Si se hace x = x2, entonces:
A2=yx-x2x-x3x-x4……x-xn
Si se hace x = x3, entonces:
A3=yx-x2x-x3x-x4……x-xn

Sustituyendo las constantes en el polinomio queda

y=y1 x-x2x-x3x-x4……x-xnx1-x2x1-x3x1-x4……x1-xn+
y2 x-x2x-x3x-x4……x-xnx2-x2x2-x3x2-x4……x2-xn+
y3 x-x2x-x3x-x4……x-xnx3-x2x3-x3x3-x4……x3-xn+
.
.
.
yn x-x2x-x3x-x4……x-xn-1xn-x2xn-x3xn-x4……xn-xn-1+

Ejemplo:

Hallar “y” para x= 2

X Y
0 2
1 3
4 18
6 38

NO REQUIERE INTERVALOS EQUIDISTANTE

25
METODO DE NEVILLE.

Dada una tabla de valores xy se desea encontrar el valor en xa que no se


encuentra en la tabla se emplea el siguiente procedimiento.

1. S e ordena la tabla de mayor a menor respecto a la cercania del punto


de interpolacion xa. calculando la cercania con el punto de interpolacion
de xa.
Se calcula (x,y) xa
Cercania x= |xa -xi|
2. Se calcula el resto de las columnas Pij hasta que solo exista un valor. Se
emplea la sig. Ecuacion.

Pij= xa –xiPij , i-j+ xi+j-xaPi,j-1xi+j-xi

3. El valor de la ultima columna correspondiente al valor buscado de la


interpolacion.

Ejemplo:

Hallar el valor de “y” para x=3 dada la tabla.

X Y
0 0
1 1
4 16
-1 1
1. CERCANIA 0 = |3 - x0| =3
2. CERCANIA 1 = |3 - x1| =2
3. CERCANIA 2 = |3 - x2| =1
4. CERCANIA 3 = |3 - 1| =4

Ordenar la tabla respecto a la cercania.

xi Pi0 Pi1 Pi2 Pi3


4 16 11 9 9
1 1 3 9
0 0 -3
-1 1

Punto P01

26
Pij= xa –xiPij , i-j+ xi+j-xaPi,j-1xi+j-xi

P01= 3-41+1-3169(1-4) =11

P11= 3
P21= -3
P02= 9
P12=9
P22=9
AJUSTE DE CURVAS.

Se emplea para determinar un valor intermedio de datos contenidos en una


tabla mediante una funcion, permite obtener una ecuacion que representa a la
curva.

Metodo de Gauss donde para resolver sistemas de ecuaciones lineales


(directas).

Consiste en la manipulacion de una matriz aumentada formada por la


submatriz de coeficientes S el vector de terminos endependientes B y la matriz
identidad I de orden n, donde n es el numero de ecuaciones del sitema. El
metodo de eliminacion de Gauss-Jordan consiste de n pasos, cada uno formado
de:

A) Normalizacion en donde se trabaja con la fila


B) Redaccion en donde se trabaja con la columna.

Ejemplo:

Resolver el siguiente sistema de ecuaciones.

4x1+2x2+x3=11
-x1+2x2 =3
2x1+x2+4x3=16

2(1) +2(2)+3(3) = 11 2(1) +2 +12 =16


2 + 4 + 9 =11 2+2+12=16
6 + 9 ≠ 11 16=16

27
-2 + 2(2) = 3
2≠3

Matriz aumentada.
42 1 -120214 100010001

x1=1 ; x2=2 ; x3=3

METODO DE MINIMOS CUADRADOS PARA AJUSTE DE CURVAS

Los datos o errores aleatorios en el sistema de medicion, por lo que siempre


existe la necesidad de ajustar esos datos. El metodo de minimos cuadrados
trata de minimizar esos errores obteniendo una funcion que es una curva
suave que se aproxima a todos los puntos mediate el siguiente procedimiento:

Se tiene una tabla de la siguiente forma:

Se grafican los puntos se trata de


pasar por todos los puntos o reducir al
minimo los reciduos.

Se propone una funcion polinomial cuya grafica es una curva suave que se
acerca a los puntos

Y = f(x) = a0+ a1x + a2x²+…+ amxm

El metodo de minimos cuadrados trata de obtener la minima suma del


cuadrado de los reciduos
Rj = yi-f(xi) se sustituye en el polinomio Ri.

Ri=yi= ( a0+ a1x + a2x²+…+ amxm)

Despues se suma todas las diferencias.

i=1nRi2= i=1n{yi- ( a0+ a1x + a2x²+…+ amxm)}²

Para reducir al minimo el error de la sumatoria se igualan a 0 los primeras


derivadas a todos y cada uno de los parametros de la ecuacion anterior.

∂∂aji=1nRi2= i=1n{yi- ( a0+ a1x + a2x²+…+ amxm)}²

Con m = 1,2,3…
J = 0,1,2,….

a) Para una recta m = 1 y n = #datos


Ecuacio de una recta => y = a0 + a1x

28
Se obtiene :
n a0 + a1 i=1nxi = i=1nyi

29
UNIDAD 5: ALGEBRA LINEAL.

En ingeneria es comun que los sistemas se expresen como un conjunto de


ecuasiones, por lo que la solucion de forma eficiente se puede realizar
mediante metodods numericos. Los metodos de soluciones de sistemas de
ecuaciones lineales se divide en dos grupos:

1. Los metodos exactos o algoritmos iterativos e finitos y que colocan la


solucion del sistema por aproximaciones sucesivas.
2. Los metodos exactos o algortimos finitos son los que permiten obtener la
solucion de manera directa.

Entre los metodos aproximados se tienen los metodos de Richardson, Jacobi,


Gauss-Seidel. Algunos ejemplos de los metodos exactos son el metodo de
Gauss y su varacion Gauss-Jordan.

Un metodo indirecto de lugar aa una asociacion de vectores que idealmente


converge a la solucion. Para obtener estas aproximaciones regularmente se usa
calculo sensillo.

Sistema de ecuaciones:

Es un conjunto de ecuaciones que debe de resolverse simultaneamente.

= b1
= b2
= b3
.
.
.
= bn

Un sistema de ecuasiones se puede representar de una forma matricial.

30
31
TEOREMA DE SOLUCION DE ECUASIONES LINEALES.

Si b = 0 para i=1,2,3,4,…n se dice que el sistema de ecuasiones es homogenio


, la unica solucion es xi=0 con i=1,2,3,4,…n .

Si por lo menos una bi ≠0 el sisitema es no homogenio y Xi tendra algun valor.

Si cualquier ecuacion es una combinacion lineal de cualquier otra se dice que


el sistema es linealmente dependiente.

Si ninguna ecuacion es dependiente de otra el sistema es lineal independiente.

Al determinante formado por aij se llama determinante caracteristico del


sistema (Δ).

Si el determinante caracteristico es igual con cero el sistema de ecuaciones es


dependiente.

Si el determinante caracteristico es diferente a cero el sisitema es


independiente.

Si el sistema es independiente y no homogeneo existe una solucion unica para


el sisitema.

Si el sisitema es dependiente y homogeneo la unica solucion es xi=0.

Si el sistema es dependiente y homogéneo no existe solución.

Si el sistema es dependiente y no homogéneo no existe solución.

Cualquier solución del sistema puede multiplicarse para dar una constante sin
que el sistema se altere.

Cualquier ecuación o ecuación modificada puede sumarse termino a término a


otra ecuación sin alterar la igualdad ni la solución del sistema.

ALGORITMOS POR METODOS DIRECTOS.

Los métodos directos son aquellos que determinan la solución en un número


determinado de pasos. Estos métodos son los más usados por que
proporcionan una solución analítica. Algunos ejemplos son el método de
eliminación de Gauss.

Método de eliminación de Gauss.


Método de eliminación de Gauss-Jordán.
Método de Matrices.
Regla de Cramer.
Método de Montante.
32
METODO DE ELIMINACION GAUSSIANA.

Consiste en dos pasos:

1.- Eliminación hacia adelante. Se maneja la ecuaciones para eliminar una


incógnita de una ecuación. Se termina cuando queda una ecuación con una
variable.

2.- Sustituyendo hacia atrás: Se resuelve la ecuación y se sustituye hacia


atrás en las ecuaciones restantes.

Se tiene

33
METODOS INDIRECTOS O METODOS ITERATIVOS.

Los métodos iterativos son aquellos que obtienen la solución por aproximación.

Estos métodos, son propiamente numéricos los cuales obtienen una solución
mediante una aproximación a la solución del problema. Los métodos iterativos
obtienen solución del problema. Los métodos iterativos obtienen una sucesión
de vectores que se aproximan a la solución del sistema. Estos métodos
requieren de un criterio de convergencia para determinar cuando se detienen.
Se puede usar el error relativo, para presentar el problema de que se tiene que
realizar una división de vectores, por eso se utiliza la siguiente ecuación.

1) Criterio de convergencia
C.Ck= |xk- xk-1||xk|

K = iteración.
|| || = norma vetorail.
xk = vector en la iteración K
xk-1 = vector de iteración k-1

||x|| =i=1nxi2

||x|| = i=1nxi norma Euclidiana

2) Segundo criterio de convergencia numero de iteraciones

METODO DE JACOBI.

Consiste en despejar xi de la ecuación y sustitur en cada una de las


ecuaciones del vector inicial propuesto. El método se representa de la siguiente
forma.

xik+1= bi – j=1, j≠i naijXjkaij

K = iteración
xk+1 = aprox. Al vector solución en la iteración k+1.
xjk= aprox. Al vector solución en la iteración k.

Ejemplo: resolver Valor


inicial
34
x3 =[1,1,1]
4x1+ 2x2+ x3=11 …. (1)
-x1+ 2x2=3 ….. (2)
2x1+ x2+ 4x3=16 …. (3)

Despejar x1 de (1)

x1=11-2x2+ x34  x1 2

Despejar x2 de (2)

x2=3+ x12  x2 2

Despejar x1 de (1)

x3=16-2x1+ x24  x3 134

1: x0 [1,1,1] => x1 [2,2,13/4]


2: x1[2,2,13/4] =>x2 [15/16, 5/2 , 5/2]
3: x2 [15/16, 5/2 , 5/2] => x3 [7/8 , 63/32, 73/32]
4: x3 [7/8 , 63/32, 73/32] => x4 [ 133/128, 31/16, 393/128]
5: x4 [ 133/128, 31/16, 393/128] => [519/512, 517/256, 767/256]

Suposición de x0.

I) x0 =[0,0,….0]
II) x0 = [1,1,…1]
III) x0 = b1b11, b2b22,…. bnbnn

35
FUNCION JACOBI.

Void jacobi (float a [100][100], float b [100], float x[100], int n ){

Int I,j,i+j;
Float y, er, xx[100];

/suposicion vector inicial caso II/

For (i =1 , i<=n; i++ ){


If (a[i][i] I =0)
X[i] = b[i] / a [i][i];
Else x[i] =1;

Despejar ecuaciones

For (i+=1 ; i+<=1000; I ++){


For (I =1 ; i<= n; j++)
xx [j] = x[j];
for (i=1; i<= ; i++){
y = b[i];
for (j = 1 ; j< =n ; j++)
y =y –a [i][j] *xx [j]
y = y / a[i][j];
er= fabs ((X[i] –y / y );
x [i] =y;
}
If (er <= 0.000001)
break;
}
}

METODO DE GAUSS-SEIDEL
36
Tan pronto se van obteniendo los valores de las variables se sustituyen en el
cálculo actual.

4x1+ 2x2+ x3=11


-x1+ 2x2+ =3
2x1+ x2+ 4x3=16

Tomando un vector inicial = x0[1,1,1]

x1= bi+ ∑a11


x1= 11-(2x2+ x3)4
x2= 3+ x12

x1= 16-2(x1)+ x24


Iteración

1 x0 = [1,1,1]
x1= 11-(2+1)4 =2

x2= 3+22 =52


x3=16-22+52=19/2
x1 = [2 , 5/2 , 19/2]

37
UNIDAD VI: ECUASIONES DIFERENCIALES ORDINARIAS

En la práctica de laingeniera y ciencias es frecuente que los fenómenos


estudiados se representen como ecuaciones que impliquen el cambio de una
variable respecto a otra. Por lo regular esas derivadas se encuentran referidas
al tiempo o al espacio.

Los problemas de EDO se clasifican en problemas con condiciones iníciales y


problemas con condiciones de frontera.

Dado que la solución de la ecuación diferencial es una función y que los


métodos numéricos es una función y que los métodos numéricos solo obtienen
números, la solución se obtiene como una tabla de la solución de la ecuación.

ALGORITMOS POR METODOS DE TAYLOR.

Problemas con condiciones iníciales de una EDO de primer orden.


y1 x= f(g,x)
y(x0) = v0
Donde f(g,y) es la función de y en tanto x la relación entre X y Y se obtiene al
encontrar los coeficientes de la serie de Taylor en la que se desarrolla y
relaciona a X.

En el punto x = x0

Y(x) = y(x0) + y1 (x0) (x-x0) + y2x02! (x - x0)² + y3x03! (x - x0) + …. por


series de Taylor

Hacemos h = x - x0

Y(h) = y (x0) + y1(x0)h + y2 (x0) h22! + y3 (x0) h33! + ….

Debido a que y (x0) es la condición inicial el primer termino se conoce a partir


de la condición inicial. El segundo termino se obtiene al sustituir x y y en la
ecucion.

y1 xf(y,x)
Las derivadas de segundo orden o superior se obtienen al derivar
sucesivamente la ecuación de la primera derivada y sustituir x.

38
Ejemplo:

Encontrar la solución para [0,68] con h = 0.1 de

y1 x= -2x-y -3e-x - 2x +2
y(0) = -1
yIx0= y1 0= -20= -20=1
yII (x0) = -2 -y1= -2-1=3
yIII(x0) = -yII = 3
yIV x0= -yIII=3

Y(h) = y x0 + yIx0h + yII (x0) h22! +yIII (x0) h33! + yIV (x0) h44!

H Y(h) Y(x)
0.0 -1 -1
0.1 -0.9145 -0.914
5
0.2 -0.8562 -0.856
2
0.3 -0.8225 -0.822
5
0.4 -0.811 -0.811
0.5 -0.820 -0.820
0.6 -0.8482 -0.848
2
0.7 -0.8985 -0.898
5
0.8 -0.9552 -0.955
2

El problema es que hay que calcular derivadas a mano.

METODO DE EULER.

Tomando los dos primeros términos de la serie de Taylor.

39
Y(h) = y x0 + yIx0h

yi+1- yin= yi1


yi+1= yi + yih  f(xi, yi)
yi+1= yi+ f(xi, yi)h
Solo para EDO
dydx=f(x,y)

Se precede un nuevo valor de y


usando la pendiente ya que la
primera derivada ofrece la estimación de la pendiente en xi y yi.

40
Ejemplo:

Con el método de Euler obtenga la solución para dydx= -2x3+ 12x2- 20x+85

Desde x =0 , x = 2 con h = 0.5

C.I. : en x=0 y =1 y(o) =1


y(0.5) = y(0) + f (0,1) (0.5)
y(0.5) 0= 5.28

yi+1= yi+ f(xi, yi)h

f(1)=5.25 + F (0.5, 5.25)h


f(1) = 5.875

X f(y)
0 100
0. 5.25
5 0
1 5.87
5
1. 5.12
5 5
2 4.50
0

METODO DE EULER-GAUSS.

Igual la de Euler, con correcciones.

y1=f(x,y) se usa el método del trapecio para integrar.

yi+1 (presendida) = yi + h yi  Euler


yi+1 (corregida) = yi +1/2h yi1+ yi+11presendida

Tiene más error que el método de Taylor por que se trunca en el Segundo
termino pero menos que la de Euler por la corrección.

41
Ejemplo:

y1=12(1+x)y2

Se conoce y (0) = 1 en el intervalo x=0 a x = 0.5 con h =0.1

Para x0 =0 => y0 = y(0) = 1


Para x1 = 0.1 => y1(presedida) = y0 + h y01
y1= 1+ 0.1 (1/” (1+0) (1)² =1.05
y1(corregida) = y0+12 h y01+ y1presedida1 = 1.055315

Para x4x2=0.2 => y2(presedida)= y1+ y11


y11=121+0.11.0553152= 1.116572
y2(presedida)= y1+12h {y11+ y2presedida1=1.123347

x3=0.3=> y3(presedida)= y2+ hy21=1.199062


y3(corregida)= y2+12h {y2+ y3(corregida)=1.207932
x4=0.4=> y3(presedida)= y3+ hy31=1.296265594
y4(corregida)= 1.432557
X yi
0 1
0. 1.05531
1 9
0. 1.12334
2 7
0. 1.20793
3 2
0. 1.31475
4 5
0. 1.43255
5 7

PROGRAM EN C

Void euler-gauss (float xi, float xf, float h, float yi)

Int i = 1;
While (xi<xf){
Printf (“%g”, yi);
Yi = yi +h (f(xi,yi)+f(xi+h, yi + h *f(xi,yi)))/2;
42
Xi = xi +h;
i++;
}
}
Float f ( float x, float y ) {
Return (0.5 x (1 +x) *y*y);
}

43
METODO DE TAYLOR DE ORDEN MAYOR.

Resuelven una ecuación de orden superior por ejemplo:

yII =3+x-y2 con y(0) =1 y y10=-2

ALGORITMO DE RANGE-KUTTA.

Para obtener este método se toma in incremento en y como el promedio


ponderado de dos estimacione de incremento denominados k1 y k2 por lo que
en la ecuación dydx f(x,y) tenemos yn+1=yn+ ak1+ bk2 (*) en donde k1=
hf(xn, yn)(*) K2 =hf(xn+ αh, yn+ βk1 (*).

Si se piensa que los valores de k1 y k2 son estimaciones de cambio en y


cuando x avanza por h, entonces es posible utilizar la estimación de Euler para
Δy; también es posible estimar aproximaciones por fracciones de α y β de h y
de la primera estimación Δy k1, por lo hay que elegir cuatro parámetros A,B,
α y β , esto se logra asiendo considir las ecuaciones (*) con la serie de Taylor
donde las derivadas se escriben en términos de f a partir de dydx f(x,y):

Yn+1 = yn hf(xn, yn) + h2f (xn,yn)2+…..+


Como:
dydx fx+fy ∴ Yn+1 = yn hf(xn, yn) + h2f (xn,yn)2  (**)

Se sustituye k1 y k2

∴ yn+1 = yn ahfxn, yn+ bhf(xn+ αh, yn+chf(xn+ βh, yn)


Se desarrolla la serie de Taylor
f(xn+ αh, yn+ βhf xn, yn=f+fxαh+fyβhfn

Sustituimos (*) en (**)

yn+1 = yn+ a+bh fn+ h2αbfx+ βbfyfn debe ser idéntica a (**)

Se deben igualar las ecuasiones con auto similitud

a + b=1
α b= 0.5 con a = 3/2 , b =1/3, α= 3/2 y β = 3/2
β b = 0.5

∴ yn+1 = yn+23k1+13k2
k1= hfxn, yn Metodo de Euler-Gauss
k2 =hfxn+23h, yn+23k

44
METODO DE RENGER-KUTTA DE ORDEN 1.

Se obtiene igualando la serie de Taylor se obtienen once ecuaciones con trece


incógnitas.

yn+1 = yn+16 (k1+2k2+ 2k3+ k4)

k1= hfxn, yn
k2 =hfxn+12h, yn+12k1
k3 =hfxn+12h, yn+12k2
k4 =hfxn+h, yn+k3

Ejemplo:

Resolver y1121+xy2 ; y0=1, x=0, ax=0.5 y con h=0.1

Para x = 0 => y0 = 1
Para x1=0.1=> k1 = 0.1f(0.1)=(0.1)(1/2 (1+0)(1)² = 0.05
k2 = 0.0551578
k3 =0.0554357
k4 =0.0612670

y1=1.055409

y2=1.123595535

y3=1.20346

y4=1.31579

45
RANGE-KUTTA-FEHLBERG.

yn+1= yn +16135 k1+665612825 k3+2856156430 k4-950k5+25 k6

k1= hfxn, yn
k2 =hfxn+14h, yn+14k1
k3 =hfxn+38h, yn+332k1+932k2
k4 =hfxn+1215h, yn++19322197k1-72002197k2+72962197k3

Ejemplo:

Resolver y1121+xy2con y 0=1 para x=0 a x=0.3 con h=0.1

Para x0=0 y0 = 1
Para x1= 0.1 k1=0.052539257
k2=0.0539141
k3=0.0539141
k4=0.0603087
K5=0.0612908
k6=0.0552408
y1=1.0554089

Para x = 0.2 k1=0.0539141


k2=0.0612638
k3=0.0644879
k4=0.0603087
K5=0.0612908
k6=0.0552408
y1=1.0554089

Para x3=0.3 k1=0.612908


k2=0.052539257
k3=0.0539141
k4=0.0603087
K5=0.0612908
k6=0.0552408
y1=1.0554089

46

Вам также может понравиться