Universidad
Politcnica Salesiana
MTODOS
NUMRICOS
CON MATLAB
Ing.William Caiza
Mtodos Numricos
Ing. William Caiza
Copyright 2015 por Ing. William Caiza. Todos los derechos reservados.
Mtodos Numricos
Ing. William Caiza
Dedicatoria
ESTA PGINA ES OPCIONAL.
Mtodos Numricos
Ing. William Caiza
Agradecimientos
ESTA PAGINA ES OPCIONAL
Mtodos Numricos
Ing. William Caiza
CONTENIDO
CAPITULO I
ERRORES ......................................................................................................................... 7
NMEROS DECIMALES ........................................................................................ 7
NOTACIN BINARIA ............................................................................................. 5
DE DECIMAL (CON DECIMAL) A BINARIO .................................................... 10
ANLISIS DE ERRORES .............................................................................................. 5
ERROR DE TRUNCAMIENTO ................................................................................... 16
SERIE DE TAYLOR ..................................................................................................... 17
Teorema de Taylor................................................................................................... 10
CAPITULO II
RESOLUCIN DE ECUACIONES NO LINEALES ..................................................... 22
MTODO DE LA BISECCIN.- ................................................................................. 14
Algoritmo ................................................................................................................ 14
Error del Mtodo de Biseccin ................................................................................ 14
IMPLEMENTACIN DEL CDIGO EN MATLAB ............................................ 20
IMPLEMENTACIN DEL CDIGO EN MATLAB ........................................... 20
Mtodo de la Falsa Posicin.-..................................................................................... 50
Convergencia del Mtodo de Falsa Posicin ........................................................... 51
Interacin de Punto Fijo.- ........................................................................................... 52
Algoritmo de interacin del mtodo de punto fijo: ................................................. 53
Implementacin del Cdigo en Matlab ................................................................... 56
Mtodo de Newton-Raphson.- ..................................................................................... 57
TEOREMA: ............................................................................................................. 57
CAPITULO III
SISTEMAS DE ECUACIONES LINEALES .................................................................. 62
INTRODUCCIN........................................................................................................ 62
Operaciones Elementales de Fila ............................................................................... 67
Clculo de la matriz inversa........................................................................................ 67
Algoritmo ................................................................................................................ 67
Implementacin del Cdigo en Matlab ................................................................... 69
DEFINICIN: ............................................................................................................. 71
Teorema de Sustitucin Regresiva .............................................................................. 72
Implementacin del Cdigo en Matlab ................................................................... 74
TEOREMA: ............................................................................................................. 75
TEOREMA: ............................................................................................................. 75
ELIMINACIN GAUSSIANA Y PIVOTEO ................................................................. 75
OBSERVACIN: .................................................................................................... 75
TEOREMA: OPERACIONES ELEMENTALES CON LAS FILAS .................... 75
DEFINICIN: PIVOTEO Y MULTIPLICADORES ............................................. 76
ELIMINACIN DE GAUSS-JORDAN ........................................................................ 79
DEFINICIN: ......................................................................................................... 79
ALGORITMO: ........................................................................................................ 80
DESCOMPOSICIN L.U- FACTORIZACIN TRIANGULAR.................................. 84
CAPITULO IV................................................................................................................. 124
Mtodos Numricos
Ing. William Caiza
Mtodos Numricos
Ing. William Caiza
CAPITULO 1: INTRODUCCIN
1.1 Nmeros Decimales
Comnmente los seres humanos, realizamos los clculos aritmticos usando el sistema
numrico decimal (base 10); las computadoras hacen los clculos aritmticos usando el
sistema numrico binario (base 2).
Al traducir los tipos numricos existentes a notacin binaria queda claro que las
operaciones realizadas no necesariamente son exactas por lo tanto van acumulado
diferencias (errores) en cada una de las operaciones.
Mtodos Numricos
Ing. William Caiza
Notacin Binaria
10
11
100
101
110
111
1000
1001
= + + + + = {, }
, ejemplo = 3.141516 .
Mtodos Numricos
Ing. William Caiza
Todo nmero racional se puede clasificar en entero y fraccionario, los nmeros enteros se
clasifican en enteros positivos o naturales, cero y enteros negativos; los fraccionarios se
clasifican en decimal finito e infinito, de decimal finito si el residuo es cero.
Las fracciones de decimal infinito se clasifican en peridicas y semi-peridicas.
Las fracciones peridicas como 3,3333 = 3, 3 , se puede obtener su fraccin que es
igual al cociente cuyo numerador es igual al nmero menos la parte peridica (33-3), y el
denominador es tantos nueves como cifras (una) tenga la parte peridica (9).
3, 3 =
333
9
30
9
Mtodos Numricos
Ing. William Caiza
Ejemplo 1
Transformar el nmero de base 2 a un nmero en base 10
1 0 0 12 = 1 23 + 0 22 + 0 21 + 1 20 8 + 0 + 0 + 1 = 9
Ejemplo 2
Transformar el nmero de base 10 a un nmero en base 2
10010 = 1 1 0 0 1 0 02
100 2
0 50 2
0 25 2
1 12
0
2
6
0
2
3
1
2
1
Comprobacin:
1 1 0 0 1 0 02 = 1 26 + 1 25 + 0 24 + 0 23 + 1 22 + 0 21 + 0 20
= 64 + 32 + 0 + 0 + 4 + 0 + 0 100
Regla de transformacin de un nmero en notacin base 10 con decimales a
binario.
1. Se transforma la parte entera binaria.
2. Se sigue con la parte fraccionaria multiplicando por el nmero 2; si el
resultado es mayor o igual a 1 se anota un 1; si es menor que 1 se anota
un 0. (El producto se realiza con la parte original decimal y con la parte
fraccionaria de las sucesivas multiplicaciones, hasta que la parte
fraccionaria sea cero).
3. Despus de realizar cada multiplicacin, se coloca los nmeros obtenidos
en el orden de su obtencin.
4. Algunos nmeros se transforman en dgitos peridicos.
10
Mtodos Numricos
Ing. William Caiza
Ejemplo 3
Transformar 6,312510 a binario.
Parte Entera
610 =
6
0
2
3
1
Parte Fraccionaria
0,3125 2 = 0,625
0,625 2 = 1,25
0,25 2 = 0,5
0,5 2 = 1
02= 0
02= 0
2
1
0,3125 =
Verificacin:
Parte Entera
= 1 22 + 1 21 + 0 21
= 4+2+0
=
Parte Fraccionaria
= 0 21 + 1 22 + 0 23 + 1
24 + 0 25 + 0 26
1
1
= 0 + 4 + 0 + 16 + 0 + 0
4+1
5
=
=
= ,
16
16
, = ,
Ejemplo 4
Conversin de peridica (3.5)
3. 5 =
35 3 32
=
9
9
Verificamos
Parte Entera
32 9
50 3,55
50
=3.5
Ejemplo 5
11
Mtodos Numricos
Ing. William Caiza
325 32 293
=
90
90
=3.25
Ejemplo 6
5
Conversin de 1.3 + 3
13 5 39 + 50 89
+ =
=
10 3
30
30
Ejemplo 7
Conversin de 6.312510
6.3125
63125 12625 2525 505 101
10000 =
=
=
=
=
10000
10000
2000
400
80
16
Ejemplo 8
Conversin de 6.312510 a binario
Parte Entera
6 2
0 3 2
: 110
1 1
Parte Fraccionaria
0.3125*(2)= 0.625 =
0.625*(2)= 1.25 =
0.25*(2)= 0.5
=
0.5*(2)= 1
=
6.312510 = 110.01012
Ejemplo 9
a binario
Conversin de 5.341
5341 53 5288 2644
=
=
990
990
495
Parte Entera
5 2
1 2 2
0 1
: 101.
1012 = 1(2)2 + 0(2)1 + 1(2)0
4
+ 0
+1
=5
12
0
1
0
1
Mtodos Numricos
Ing. William Caiza
Parte Fraccionaria
0.341
0.341*(2)= 0.682 = 0
0.682*(2)= 1.364 = 1
0.364*(2)= 0.728 = 0
0.728*(2)= 1.456 = 1
0.456*(2)= 0.912 = 0
0.912*(2)= 1.824 = 1
0.824*(2)= 1.648 = 1
0.648*(2)= 1.296 = 1
0.296*(2)= 0.592 = 0
0.592*(2)= 1.184 = 1
0.184*(2)= 0.368 = 0
0.368*(2)= 0.736 = 0
0.736*(2)= 1.472 = 1
0.472*(2)= 0.944 = 0
0.944*(2)= 1.888 = 1
0.888*(2)= 1.776 = 1
Verificacin
= 01010111
0.341
= 1(2)2 + 1(2)4 + 1(2)6 + 1(2)7 + 1(2)8
=
1 1
1
1
1
+
+
+
+
+
4 16 64 128 250
64 + 16 + 4 + 2 + 1
87
=
256
256
13
Mtodos Numricos
Ing. William Caiza
.
Los nmeros decimales en coma flotante se normalizan, desplazando la coma
fraccionaria de manera que la parte entera del nmero siempre valga cero.
Ejemplo
346734556700 = 0.346734556700 1012
En la presente notacin no es necesario representar la base del nmero, ya que est
implcito en el formato y la parte entera de un nmero normalizado siempre es cero,
tampoco es necesario representarlo, con las acotaciones anteriores la representacin
en coma flotante es
Signo: +
Mantisa: 346734556700
Exponente: 12
Exponente (8 bits)
Ejemplo:
Dado el siguiente nmero en binario, expresarlo en punto flotante
0,0000101 = 0,101 24
La forma normalizada siempre tiene un 1 en la posicin ms a la izquierda, por lo que
no hay que almacenarlo, est implcito en la representacin.
Se podra aprovechar en la normalizacin otro bit, el 1 ms a la izquierda est en la
parte entera
0,0000101 = 0,101 24 = 1,01 25
Para simplificar el formato es necesario evitar la necesidad de un bit para el signo del
exponente, por lo cual el exponente se representa usando un formato denominado en
exceso, que consiste en sumar un desplazamiento al valor real del nmero.
Si utilizamos 8 bits para representar el exponente, hay 28 combinaciones posibles,
2551
desde 0 hasta 255, el desplazamiento ser
= 127, el formato de simple precisin
2
tiene un exponente de 8 bits en formato exceso 127, se utiliza para representar
exponentes con valores entre -126 y 127.
14
Mtodos Numricos
Ing. William Caiza
Ejemplo:
Si el exponente tiene un valor de -126, 0, 1, Cul es el valor normalizado del
exponente?
= 126 126 + 127 = 1 00000001
= 0 0 + 127 = 127 01111111
= 1 1 + 127 = 128 10000000
= 1 27+ + 0 26 + 0 25 + 0 24 + 0 23 + 0 22 + 0 21 + 0 20
= 128
Casos especiales
Si el exponente es -127, normalizando tenemos -127+127 =0, su correspondiente
binario es 00000000, se tiene los siguientes casos:
Si la mantisa tambin es cero se est representando el cero.
Si la mantisa es distinto de cero se trata de un nmero no normalizado,
supondremos que el bit implcito de la parte entera no es 1 sino 0, y el exponente
es -126
Si el exponente es 128, normalizando tenemos 128+127= 255, su correspondiente
binario es 11111111, se tiene los siguientes casos:
Si la mantisa es cero se est representando el infinito.
Si la mantisa es distinta de cero se est representando el resultado de una
operacin no vlida (NaN no es un nmero).
Ejemplo:
Dado el siguiente nmero binario +1011010010001 transformado en binario con coma
flotante
Es un nmero positivo, por lo que el bit del signo ser un 0.
Normalizando el binario 1011010010001 1,011010010001 212
Calculando el valor de la mantisa 011010010001
Calculando el valor del exponente y normalizando se tiene 12 12 + 127 =
139 10001011
1 bit
8 bits
10001011
23
bits
01101001000100000000000
Ejemplo:
Dado el siguiente nmero binario normalizado
1 bit
8 bits
10010001
23
bits
10001110001000000000000
15
Mtodos Numricos
Ing. William Caiza
El bit del signo es 1, por lo tanto es un nmero negativo, la mantisa nos proporciona la
magnitud del nmero 1, 10001110001, el valor del exponente se calcula de la siguiente
forma:
El exponente: 10010001 = 1 27 + 0 26 + 0 25 + 1 24 + 0 23 + 0 22 + 0 21 +
1 20 = 128 + 16 + 1 = 145 145 127 = 18
resumiendo obtenemos el siguiente nmero binario 1,10001110001 218
| |
100
||
| |
100
| |
16
Mtodos Numricos
Ing. William Caiza
= 1 + 2 +
4 6 8
+ + +
2! 3! 4!
() = () = () +
()()
1!
()()2
2!
()()3
3!
+. . . +
() ()()
Donde
Si a=0, tenemos la serie de McLaurin:
() = (0) + (0)() +
(0) 2
() (0)
+. . . +
+. ..
2!
!
Ejemplo a):
Encontrar la serie de McLaurin
() = ()
17
Mtodos Numricos
Ing. William Caiza
(0) = (0) = 0
() = cos(0) (0) = 1
() = () () = 0
() = cos() () = 1
() =
+ +
! ! !
Ejemplo b):
() = ()
(0) = cos(0) = 1
() = (0) (0) = 0
() = cos(0) (0) = 1
() = (0) (0) = 0
(4) () = cos(0) (4) (0) = 1
() = + +
! ! !
Ejemplo c):
Encuentre Sen (3.5), utilizando la serie de Taylor con 3 trminos
() = () = () +
() = (3.5)
(3.5)3 (3.5)5
(3.5) = 3.5
+
3!
5!
18
Mtodos Numricos
Ing. William Caiza
(3.5) = 0.73098
(3.5) = 0.35078
E = |0.35078 0.730981 |
= .
E =
|0.35078 0.730981 |
100
|0.35078|
= .
Ejemplo d):
() = ()
1)
2)
3)
4)
5)
1)
() = () +
Sen(a)(xa)2
2!
Cos(a)(xa)3
3!
Sen(a)(xa)4
4!
Cos(a)(xa)5
5!
2)
x3
x5
x7
Sen(x) = x 3! + 5! 7! +
Sen(3.45) = 3.45
x9
9!
+
= 0.284384
3!
5!
7!
9!
19
Mtodos Numricos
Ing. William Caiza
3)
(3)(3.453)2
2!
(3)(3.453)3
3!
Sen(3)(3.453)4
4!
= - 0.303788
4)
| 100
= |
0.303541 + 0.284381
| 100
0.30541
= . %
20
Mtodos Numricos
Ing. William Caiza
0.303541 + 0.303388
| 100
0.30541
= . %
5)
Conclusin:
Ejemplo e):
() = ()
1.- Encontrar la serie de Taylor del ()
2.- Encontrar el valor de la serie en x=3.45; a=3.4 con 5 trminos
() = = () +
1.
() =
() + () ( )
2
() () ( )2
+(
)
2!
4
2.
(3.45) =
(3.45 3.4)2
2!
(3.45) = 0,958967
= |
0.959204 0,958967
| 100
0.959204
= . %
21
+(
Mtodos Numricos
Ing. William Caiza
Ejemplo f):
Demostrar
() = = () + ()
(0) = = (0) = 0 = 1
() = = (0) =
() = 2 = (0) = 2
() = 3 = (0) = 3
(4) () = 4 = (4) (0) = 4
(5) () = 5 = (5) (0) = 5
22 33 44
= 1 + +
+
+
+. ..
2!
3!
4!
= (1
2 4 6
3 5
+
+ ) + (
+
+)
2! 4! 6!
3! 5!
= () + ()
Polinomio de Taylor para funciones de dos variables
Definicin sea : 2
= (, ) + (
(, )( ) +
(, )( ))
1!
1 2
2
2 2
( 2 (, )( )2 + 2 (, )( )2 +
(, )( )( ))
2!
22
Mtodos Numricos
Ing. William Caiza
1 3
3
3 3
( 3 (, )( )3 + 3 (, )( )3 + 2
(, )( )2 ( )
3!
3 3
+
(, )( )( )2 ) +. . ..
2
Ejemplo:
Dada la funcin de:
: 2
f(x, y) = sen(x)sen(y)
Encontrar el polinomio de Taylor de grado 3 asociado y evaluado (0,1 ; 0,15):
Entonces
para todo x [a,b], f(x) = () + (), donde () es el polinomio de Taylor
23
Mtodos Numricos
Ing. William Caiza
(+1) (())
() =
( )+1
( + 1)!
Es el residuo, con () entre c y x, el teorema no permite evaluar exactamente el
residuo, pero si permite acotarlo.
| ()|
|x c|+1
max| (+1) ()|
( + 1)!
t (x,c).
Ejemplo 5
Obtener el polinomio de Taylor de orden 2 de cos(x) alrededor de , acotar el
error para x=3 y calcular el error.
2 () = cos( ) ( )(x )
cos( )
( )2
2
1
2 () = 1 + ( )2
2
|3 |3
||
|()|; [3, ].
6
|| 0.0004731 (3)
|| 0.0004731 0.1411 = 0.0000668
Observacin:
Para calcular el valor de una funcin para x el valor de a, deber estar alrededor
de x.
Ejercicios propuestos
Ejercicios de notacin decimal
Escribir en notacin decimal las siguientes cantidades:
1. 374=
2. 17350=
3. 1,0243=
24
Mtodos Numricos
Ing. William Caiza
4. 745,36=
5. 1357, 924=
Series de Taylor
1. Calcular el polinomio de Taylor de la funcin () =
2. Calclese la serie de Taylor de () = ()
3. Encuentre una serie de Taylor para f(x)= cos(2x)
4.
Pginas web:
25
ex + ex
2
ex ex
2
1
1+x2
Mtodos Numricos
Ing. William Caiza
http://es.scribd.com/doc/102297219/Series-de-Taylor-Ejemplos-y-Problemas
http://www.wikimatematica.org/index.php?title=Series_de_Taylor_y_Maclaurin#Eje
mplo_.231
http://www4.ujaen.es/~cisneros/Documentos/Des_Taylor.pdf
26
Mtodos Numricos
Ing. William Caiza
Algoritmo de la biseccin
funcion=char(inputdlg('ingrese la funcion'));
f=inline(funcion);
x=-5:0.1:5;
n=length(x);
for i=1:n
y(i)=f(x(i));
end
plot(x,y);
hold on;
plot([-5 5],[0 0],'r');
grid on;
plot([0 0],[-5 5],'r');
j=-5;
for i=1:11
text(j,0,num2str(j));
j=j+1;
end
a=str2double(inputdlg('ingrese el valor de a'));
b=str2double(inputdlg('ingrese el valor de b'));
iteraciones=1;
j=1;
pmviejo=0;
while iteraciones<5
pm=((a+b)/2);
fa=f(a);
fb=f(b);
fpm=f(pm);
aa(j)=a;
bb(j)=b;
ppm(j)=pm;
errorf=abs(pm-pmviejo);
err(j)=errorf;
if fa*fpm<0
b=pm;
end
27
Mtodos Numricos
Ing. William Caiza
if fb*fpm<0
a=pm;
end
pmviejo=pm;
j=j+1;
iteraciones=iteraciones+1;
end
set(handles.uitable1,'data',[aa' ppm' bb' err']);
28
Mtodos Numricos
Ing. William Caiza
a) Si f(ai )f(Ci ) < 0 , entonces la raz se encuentra dentro del subintervalo, por lo
tanto bi = Ci , ai = ai ; y contine en el paso 2.
b) Si f(ai )f(Ci ) > 0 , entonces la raz se encuentra dentro del subintervalo superior,
por lo tanto ai = Ci , bi = bi ; y contine en el paso 2.
4. Si f(ai )f(Ci ) = 0 , la raz es igual a Ci , termina el clculo.
2.1.2 Error Del Mtodo de Biseccin
= |
%
|
y= -exp(x)tan(x)
200
150
100
50
0
0
0,5
1,5
2,5
3,5
-50
-100
Cuadro de datos:
f(ai )f(Ci ) > 0; ai = Ci , bi = bi
29
Mtodos Numricos
Ing. William Caiza
1.- Ingresamos una funcin a ser evaluada, utilizamos el comando char que
transforma lo que ingresamos mediante la funcin inputdlg en string.
2.- Ingresamos el intervalo en el cual deseamos encontrar una raz as como la
tolerancia admisible para encontrar la raiz, adems hacemos uso de la funcin
str2double que transforma un string a double o nmero.
3.- Creamos la funcin con inline4.- Usamos el comando while para definir las iteraciones que se van a realizar,
para este caso el nmero de iteraciones es menor que 10 y la tolerancia debe ser
menor al error.
5.- Aplicamos el algoritmo para obtener las races.
6.- y los resultados obtenidos enviamos a los objetos uitable, como se puede
observar en la ejecucin del programa.
30
Mtodos Numricos
Ing. William Caiza
(r2,y2)
r2
C1
(r2,y2)
Como en el mtodo de la biseccin, supongamos que f(a) y f (b) tienen distinto signo.
En el mtodo de la biseccin se usa el punto medio del intervalo [a, b] para llevar a
cabo, las iteraciones hasta obtener la raz.
Con el mtodo de la falsa posicin, suele conseguirse una aproximacin mejor
usando el punto (c, 0), en el que la recta secante L pasa por los puntos (a, f(a)), (b, f
(b)) y el eje x.
Para hallar la abscisa c, igualamos las dos frmulas para la pendiente m de la recta
secante L.
() ()
(1)
0 ()
31
(2)
Mtodos Numricos
Ing. William Caiza
() () ()
=
( )(() ()) = ()( )
()( )
()( )
+ =
() ()
() ()
( )( )
( ) ( )
= 1,2,3,
32
Mtodos Numricos
Ing. William Caiza
tan(x)*cos(x)
1,5
1
0,5
0
-4
-2
-0,5
-1
-1,5
Si f(c) y f (b) tienen distinto signo, entonces hay un 0 en [c, b]; por lo tanto c=a y
b=b.
Ejemplo 4: f(x)=ln(x^3+2)*tan(x)
Grfica de la funcin
33
Mtodos Numricos
Ing. William Caiza
Si f(c) y f (b) tienen distinto signo, entonces hay un 0 en [c, b]; por lo tanto c=a y b=b.
34
Mtodos Numricos
Ing. William Caiza
end
plot(handles.axes1,x,y1);
hold(handles.axes1,'on');
plot(handles.axes1,[-7 7],[0 0],'r');
plot(handles.axes1,[0 0],[-15 15],'r');
plot(handles.axes2,x,y2);
hold(handles.axes2,'on');
plot(handles.axes2,x,y3);
plot(handles.axes2,[-7 7],[0 0],'r');
plot(handles.axes2,[0 0],[-15 15],'r');
grid on;
Sea () = + y = .
Demuestre que para x=1 es un punto fijo:
(1) = 12 2(1) + 2 = 1 2 + 2 = 1
(1) = 1
35
Mtodos Numricos
Ing. William Caiza
= ()
Dado un problema de buscar una raz f (p)=0, podemos definir una funcin g, con
un punto fijo p de diversas formas, por lo tanto sea g(x) = x f(x) si la funcin g
tiene un punto fijo en p entonces, p es una raz de f(x):
10 3
10 3
|| =
4
4
10 3
4
(1)
= ()
( 2 + 4) = 10
10
+ 4
36
(2)
Mtodos Numricos
Ing. William Caiza
= ()
3 = 10 4 2
3
3
3 = 10 4 2
3
= 10 4 2 (3)
= g(x)
10 3
2
2 10 3
2
() = 0
2 10 3
=0
2
2 10 3 = 0
(2)2 = (10 3 )
4 2 = 10 3
3 + 4 2 10 = 0
= 0,1,2,3
37
Mtodos Numricos
Ing. William Caiza
e = |xrnuevo xranterior |
Ejemplo 6: resuelto en Excel
() = +
= +
= +
=
()
()
()
F(x)= = +
F(x)= =(&^+)
15
10
5
0
-4
-3
-2
-1
-5
-10
-15
-20
-25
38
Mtodos Numricos
Ing. William Caiza
Grfico de la ecuacin (2) en la cual las rectas se intersectan y las funciones convergen.
k
0
1
2
3
4
5
6
7
8
9
pk
2
0,75
1,78515625
1,12446938
1,71065425
1,23009637
1,66295816
1,29165893
1,62835032
1,3334784
pk+1=g(pk)
0,75
1,78515625
1,12446938
1,71065425
1,23009637
1,66295816
1,29165893
1,62835032
1,3334784
1,60175513
Pk
2
1,44224957
1,49047078
1,4827081
1,48391569
1,48372676
1,48375629
1,48375168
1,4837524
1,48375229
pk+1=g(pk)
1,44224957
1,49047078
1,4827081
1,48391569
1,48372676
1,48375629
1,48375168
1,4837524
1,48375229
1,4837523
0 ( )
(1) ;
1 0
39
= (0 ) (2)
Mtodos Numricos
Ing. William Caiza
(0 ) =
0 ( )
1 0
(1 0 ) (0 ) = (0 )
1 (0 ) 0 ( ) = (0 )
1 =
(0 ) + 0 (0 )
(0 )
1 = 0
(0 )
(0 )
Este proceso puede repetirse para obtener la sucesin {pk } que converge ap.
TEOREMA: Supongamos que la funcin f C2 [a, b] , es decir la funcin f debe
ser continua e integrable en el intervalo [a, b] y debe existir un nmero p [a, b]
tal que f (p)=0
= (1 ) = 1
(1 )
; = 1,2,
( )
1
-2
-1
-1 0
-2
-3
-4
-5
-6
() =
40
Mtodos Numricos
Ing. William Caiza
( )
+1 = ( )
+1 = 2
( )
(22 ) 0.7
+1 = 1.3137
2
2
+1 = ( )
+1 = 1.3137
= | |
(1.31372 ) 0.7
+1 = 1.415
2
1.3137
( )
+1 = ( )
+1 = 1.415
= | |
(1.4152 ) 0.7
+1 = 1.419
2
1.415
( )
+1 = ( )
(1.4192 ) 0.7
+1 = 1.419
+1 = 1.419
2
1.419
= | |
= |1.419 1.419| 0
41
Mtodos Numricos
Ing. William Caiza
funcion=char(inputdlg('ingrese la funcion'));
po=str2double(inputdlg('ingrese valor inicial para calcular la raiz'));
f=inline(funcion);
df=diff(sym(funcion));
dff=inline(df);
p(1)=po;
for i=1:5
p(i+1)=p(i)-(f(p(i))/(dff(p(i))));
end
x=[0:1:5];
set(handles.uitable1,'data',p');
plot(x,p);
42
Mtodos Numricos
Ing. William Caiza
Tanto f(x) como su derivada se aproxima a cero en la raz, esto afecta a los
mtodos de newton Rapshon y secante los cuales contienen derivada en el
numerador.
f(x)=(x-2)^2
30
25
20
15
10
5
0
-4
-2
43
Mtodos Numricos
Ing. William Caiza
Sea f(x)=(x-2) ^3, se puede apreciar en el grfico que el cero topa y corta
tangencialmente al eje de las x.
f(x)=(x-2)^3
20
10
0
-2
-1
-10
-20
-30
-40
El mtodo de Newton Raphson, tiene que ser modificado para ser utilizado en
races mltiples.
()
Sea = () (1)
( )
Y, +1 = ( ) (2)
( ) =
( ) ( )() ( )
( ( ))2
44
Mtodos Numricos
Ing. William Caiza
f(x)=(x-3)(x-1)^2
40
20
0
-3
-2
-1
-20
-40
-60
Ejercicio extra
Ponemos los siguientes botones para realizar una grfica varias funciones.
45
Mtodos Numricos
Ing. William Caiza
46
Mtodos Numricos
Ing. William Caiza
METODO DE LA BISECCION
5
4
3
2
1
0
-3
-2
-1
-1
-2
47
Mtodos Numricos
Ing. William Caiza
Ejercicios propuestos
1. Determine las races reales de f(x) = 2 + 7x 5x 2 + 16x 3
a) Grficamente.
b) Usando el mtodo de la biseccin para localizar la raz ms pequea.
Empleando los valores iniciales de xl = 0 y xu = 1 hasta que el error
estumado a se encuentre debajo de s =10%
Solucin:
xr=0,34375
2. Determine las races reales de la siguiente funcin:
f(x) = 26 + 82,3x 88x 2 + 45,4x 3 9x 4 + 0,65x 5
a) Grficamente.
b) Usando el mtodo de la biseccin para localizar la raz ms grande con
s = 10%, empleando los valores iniciales de xl = 0,5 y xu = 1
Solucin:
xr=0,59375
Falsa posicin
Ejercicios resueltos:
1.- Planteamiento del problema. Con el mtodo de la falsa posicin determine la
raz:
c
9.8(68.1)
f(c) =
(1 e(68.1)10 ) 40
c
Solucin. Se empieza el clculo con los valores iniciales xl = 12 y xu = 16.
Primera iteracin:
xl = 12
f(xl) = 6.0699
xu = 16
f(xu) = 2.2688
2.2688(12 16)
xr = 16
= 14.9113
6.0669 (2.2688)
Que tiene un error relativo verdadero de 0.89 por ciento.
Segunda iteracin:
f(xl) f(xr) = 1.5426
48
Mtodos Numricos
Ing. William Caiza
-2
-1
-0,5 0
-1
-1,5
-2
-2,5
Ejercicios propuestos
1. Determine la raz real de:
(0.8 0.3x)
x
Empleando tres iteraciones en el mtodo de la falsa posicin, con valores
iniciales de xa = 1 a xu = 3. Calcule el error aproximado a y el error
verdadero t en cada iteracin.
Solucin:
xr = 2,378601
a = 4,3
t = 5,7
f(x) =
49
Mtodos Numricos
Ing. William Caiza
(c,0)
secante
b) (, 0) (, ())
a) (, ()) (, ())
=
() ()
(1)
0 ()
(1)=(2)
() () ()
=
( )(() ()) = ()( )
()( )
()( )
+ =
() ()
() ()
Por lo tanto generalizando tenemos:
=
( )( )
( ) ( )
= 1,2,3, .
50
(2)
Mtodos Numricos
Ing. William Caiza
Ejemplo Excel:
Grfica de
la funcin
51
Mtodos Numricos
Ing. William Caiza
Cuadro del
Mtodo de la
Falsa Posicin
EJEMPLO 1:
Sea () = + y x=1. Demuestre que para x=1 es un punto fijo:
(1) = 12 2(1) + 2 = 1 2 + 2 = 1
(1) = 1
= ()
Dado un problema de buscar una raz f(p)=0, podemos definir una funcin g, con
un punto fijo p de diversas formas, por lo tanto sea () = () si la funcin g
tiene un punto fijo en p entonces la funcin definida es:
() = (),
Verifiquemos que f(x) tiene un cero en p
Si x=p es punto fijo g(p)=p
() = () = =
Ejemplo 2:
La ecuacin 3 + 4 2 10 = 0 tiene una raz nica en el intervalo de [1,2],
encuentre una expresin x=g(x)
3 + 4 2 10 = 0
52
Mtodos Numricos
Ing. William Caiza
4 2 = 10 3
( 2 + 4) = 10
10 3
2 =
4
10
|| =
4
10 3
10
2 + 4
(2)
= ()
(1)
3 = 10 4 2
3
3
3 = 10 4 2
3
= ()
= 10 4 2 (3)
= ()
(2)2 = (10 3 )
10 3
() =
2
2 10 3
() =
2
4 2 = 10 3
3 + 4 2 10 = 0
Algoritmo de interacin del mtodo de punto fijo:
+ = ( )
= , , ,
Ejemplo Excel:
53
Mtodos Numricos
Ing. William Caiza
() = +
Despejando x se obtienen 3 ecuaciones:
= +
= +
+
=
()
()
()
Mtodos Numricos
Ing. William Caiza
55
Mtodos Numricos
Ing. William Caiza
56
Mtodos Numricos
Ing. William Caiza
0 ( )
(1) ;
1 0
= (0 ) (2)
57
(1 )
; = 1,2,
(1 )
Mtodos Numricos
Ing. William Caiza
Ejemplo:
Aplicar el mtodo de Newton-Raphson para resolver la siguiente ecuacin:
= .
ln 2 0.7 = 0
() = ln 2 0.7
2
() =
( )
+1 = ( )
+1
(22 ) 0.7
= 2
+1 = 1.3137
2
2
( )
+1 = ( )
+1 = 1.3137
= | |
(1.31372 ) 0.7
+1 = 1.415
2
1.3137
( )
+1 = ( )
58
Mtodos Numricos
Ing. William Caiza
+1 = 1.415
= | |
(1.4152 ) 0.7
+1 = 1.419
2
1.415
( )
+1 = ( )
+1 = 1.419
= | |
(1.4192 ) 0.7
+1 = 1.419
2
1.419
= |1.419 1.419| 0
59
Mtodos Numricos
Ing. William Caiza
Ejemplo:
= ( )( + )
= 2 + 3 3
= 2 + 2 3
2
=
=
= 1
2 2(1)
= (1)2 + 2(1) 3
-1-2-3 = -4.
5
-3
-1
-4
SI x=2
F(3)= 4+4-3 =5
(2 , 5)
Encontramos la recta en x=2
m f(2)=2x+2
2(2)+2=6
y5=6(x2)
y 5 = 6 x 12
1) y = 6x 7
x
y
0 -7
1 1
60
Mtodos Numricos
Ing. William Caiza
1) En y = 0
0 =6x 7
7= 6x
X=7/6
Ahora encuentro la recta tg en x= 7/6.
(7/6 , f(7/6))
2
(76) = (76) + 2(76) 3
49/36 + 7/3 -3
49 + 84 108
=
36
(76) = 2(76) + 2
7
7+6
= +2=
=
3
3
=
( )
13 13(7) 25
=
+
3
18
36
Si y = 0 en 2
13
157
0=
3
36
157 13
=
36
3
=
= .
) =
61
Mtodos Numricos
Ing. William Caiza
CAPITULO III
SISTEMAS DE ECUACIONES LINEALES
INTRODUCCIN
Matriz escalonada
Para precisar las ideas sobre la forma especial de los sistemas que pueden resolverse por
el mtodo de sustitucin hacia atrs, se utiliza el concepto de matriz escalonada. As se
dira que un sistema con esta forma especial tiene como matriz aumentada una matriz en la
forma escalonada.
Es decir, la forma escalonada reducida se obtiene de una forma escalonada, haciendo cero
los elementos de la matriz arriba de los primeros unos de cada fila.
62
Mtodos Numricos
Ing. William Caiza
63
Mtodos Numricos
Ing. William Caiza
Aunque es claro, en este caso, que agregando filas nulas a la que tenga menos filas, se
pueden transformar en matrices equivalentes.
Teorema
64
Mtodos Numricos
Ing. William Caiza
65
Mtodos Numricos
Ing. William Caiza
Si las constantes a la derecha del igual en todas las ecuaciones son cero, se dice que el
sistema es homogneo, es decir, Ax = b se llama homogneo si b = 0 es el vector columna
de ceros. En este caso, se tiene que Rng (A) = RngA|0)
Porque ninguna operacin elemental sobre las filas de (A|0), puede cambiar los ceros que
forman la ltima columna de (A|0). As, en un sistema homogneo no pueden existir
ecuaciones inconsistentes.
As, el Rng (A) informa del nmero de ecuaciones que realmente aportan informacin para
resolver el sistema homogneo Ax = 0, o en otros trminos, El Rng (A) es:
66
Mtodos Numricos
Ing. William Caiza
] [
] [+1
+1 ] [
[()]
, ||
||
Ejemplo:
Calcular la matriz inversa:
1 1 3
=[ 2
1 4] || = (1 + 12 + 4) (3 + 8 2) || = 17 3 = 14
1 2 1
67
|| 0
Mtodos Numricos
Ing. William Caiza
1 1 3 1 0
[2
1 4| 0 1
1 2 1 0 0
0
1 1 3 1 0 0
1
0] 2 2 21 [0 3 2| 2 1 0] 2 2
3
1 3 3 21
0 1
4 1 0 1
[0
1 0
0 1
0 0
[
3 1
2 2
|
3 3
4 1
0
1
3
0
1 0
0 +
1
1
2
0 1
0]
3 3 2
1
[0 0
1
7 1
3
3 3
2| 2 1
3| 3 3
14 5
1
3 3
3
1
1
7
7
0
2
3
1 1 3
1 0
3
3
2
1
2 0 1
2||
0
2 2 + 3
3
3
0 0
3
3 5
1
3
1
[
14
14 14]
1
1
1
2
2
2
1 1 3
1
3
2
1
=[ 2
[0
1 4]
7
7
7
1 2 1
0
5
1
3
[ 14 14 14 ]
68
0
1]
3
3 3 ( )
14
1
1
1
2
2
2
0 3
2
1
0|
7
7
1 7
5
1
3
14
14 14 ]
Verificacin:
0 0
1 0]
0 1
Mtodos Numricos
Ing. William Caiza
1 9 5 33
1 9 5 33
3 1 |9) 2 1 (1 12 6 |42) 2/6
1 1 1 5
1 1 1 5
(1
1 9 5 33
1 9 5 33
(0 2 1 |7)
2 1 |7)
1 1 1 5 3 + 2 1 1
0 2 3 1
(0
1 9 5 33
1 9 5 33
(0 2 1 |7)
2 1 | 7 )
1 10 5 35 3/5 0 2 1 7 3 2
(0
1 9 5 33
2 1 |7) () = 2 < , ,
0 0
0 0
(0
=>
2 1 = 7
X 9y 5 z = 33
x = 33 + 9y 5z
7+
= 33 + 9 ( 2 ) 5
Donde
= 33 +
2y = 7 + z
= 33 +
63
2
63
2
+ 2 5
1
Sea z = t
129
= 2 2
{ = 7+ , :
2
=
69
Mtodos Numricos
Ing. William Caiza
=
Ejemplo:
70
Mtodos Numricos
Ing. William Caiza
3 2
= [1 1
1 3
1
1
]
;
=
[
1
2]
1
1
=
3 2
[1 1
1 3
31 + 22 + 3
1 1
1
1
1] [2 ] = [ 2 ] [ 1 + 2 3 ] = [ 2 ]
1 + 32 + 3
1 3
1
1
31 + 22 + 3 = 1
{ 1 + 2 3 = 2
1 + 32 + 3 = 1
DEFINICIN: Se dice que una matriz = [ ] triangular superior cuando sus elementos
verifican = 0, para >
Se dice que una matriz = [ ] , es triangular inferior cuando sus elementos verifican
= 0, para < .
Ejemplo:
11
= [21
31
12
22
32
13
23 ]
33
<
=
>
1
= [0
0
2
2
0
1
1]
1
[ ] = 0 >
MATRIZ TRIANGULAR INFERIOR
71
Mtodos Numricos
Ing. William Caiza
1
= [2
3
0
1
2
0
0]
4
[ ] = 0 <
(1)
11 1 + 12 2 + 13 3 + + 1 = 1
22 2 + 23 3 + + 2 = 2
2,2 2 + 2,1 1 + 2, = 2
1,1 1 + 1, = 1
=
; 0
Conocido , podemos utilizarla para encontrar 1
1 1,
1 =
1,1
As:
2 2,1 1 2,
2 =
2,2
3 2,2 2 3,1 1 3,
3 =
3,3
=
Generalizando tenemos:
=+1
=
Ejemplo
Aplicando el mtodo de sustitucin hacia atrs de una matriz 4X4
72
Mtodos Numricos
Ing. William Caiza
11 1 + 12 2 + 13 3 + 14 4 = 1
0
+ 22 2 + 23 3 + 24 4 = 2
0
+0
+ 33 3 + 34 4 = 3
0
+0
+ 43 3 + 44 4 = 4
4 =
3 =
4
44
(Constante y conocido)
3 34 4
33
2 23 3 24 4 2 (23 3 + 24 4 )
=
22
22
1 12 2 13 3 14 4 1 (12 2 + 13 3 +)
1 =
=
11
22
2 =
73
Mtodos Numricos
Ing. William Caiza
74
Mtodos Numricos
Ing. William Caiza
12 1 1
22 2 |2 ]
2
75
Mtodos Numricos
Ing. William Caiza
= , = , , ,
Multiplicador
Pivote
1
[2
4
3
= 2 21 =
= 3 31 =
Multiplicador
2
0
2
1
1
4
2
3
21
2
= = 2 ; 2 2 21 1
11
1
1
2
1
0
4
2
[
4
2
2
3 1
3
4 13
3| 28]
1 20
2 6
4 13
5| 2 ]
1 20
2 6
31
4
= = 4 ; 3 3 31 1
11
1
1
[0
0
3
= 4 41 =
2
1
4
2
6 2
1
3
13
4
5 | 2 ]
15 32
6
2
41
3
=
= 3 ; 4 4 41 1
11
1
76
Fila Pivote
Mtodos Numricos
Ing. William Caiza
1
[0
0
0
2
13
1 4
4
2 5 | 2 ]
6 2 15 32
45
7
6 14
Segunda columna
=
= 3 32 =
1
0
[
0
0
32
6 3
=
= ; 3 3 32 2
22
4 2
42
7
7
=
= ; 4 4 42 2
22
4
4
2
1 4
13
4
2 5
2
|
]
0 5 152 35
0 192 214 972
Tercera columna
=
= 4 43
1
0
[
0
0
2
1 4
13
4
2 5 | 2 ]
0 5 152 35
45
7
6 14
= 4 42 =
1
0
[
0
0
, = , ,
, = ,
19
43
19
=
= 2 =
; 4 43 3
33
5
10 4
2
1 4
13
4
2 5 | 2 ]
0 5 152 35
18
0
0 9
94 = 18 =
15
15
53 4 = 35 53 (2) = 35 =
2
2
42 + 23 54 = 2 42 + 2(4) 5(2) = 2 =
1 + 22 + 3 + 44 = 13 1 + 2(1) + 4 + 4(2) = 13 =
Ejemplo2
77
Mtodos Numricos
Ing. William Caiza
, = ,
3 2 + = 2
+ = 1
+ 2 + 3 = 1
,
Calculemos el rango
3 2 1
[1
1 1]
1 2
3
Primera columna
= 2 21 =
21
1 1
= = ; 2 2 21 1
11
3 3
2
1
5
4
[0
]
3
3
1 2
3
= 3 31 =
3 2
1
5
4
0
3
3
4
10
[0 3
3 ]
31
1
1
=
= ; 3 3 31 1
11
3
3
Segunda columna
=
= 3 32 =
, =
32
6 3
=
= ; 3 3 32 2
22
4 2
3 2
1
5
4
0
3
3
22
[0 0
5 ]
Calculemos el rango de la matriz ampliada
78
Mtodos Numricos
Ing. William Caiza
3 2 1 2
[1
1 1| 1]
1 2
3 1
=
, = ,
Primera columna
= 2 21 =
3
2
[ 0 5/3
1
2
21
1 1
= = ; 2 2 21 1
11
3 3
2
1
4/3| 5/3]
5/3
3
= 3 31 =
31
1
1
=
= ; 3 3 31 1
11
3
3
3 2
1
2
[0 5/3 4/3| 5/3]
0 4/3 10/3 5/3
Segunda columna
, =
32
6 3
= 3 32 =
=
= ; 3 3 32 2
22
4 2
=
3 2
1
2
0
5/3
4/3
5/3
[
|
]
0
0
22/5 1/3
El rango de A
Ran(A)=3
Ran(A|b)=3
m=3
ELIMINACIN DE GAUSS-JORDAN
DEFINICIN: es un algoritmo del lgebra lineal para determinar las soluciones de un
sistema de ecuaciones lineales, encontrar matrices e inversas. Un sistema de ecuaciones
se resuelve por el mtodo de Gauss cuando se obtienen sus soluciones mediante la
reduccin del sistema dado a otro equivalente en el que cada ecuacin tiene una incgnita
79
Mtodos Numricos
Ing. William Caiza
3
13
1
2
1
2
2| 2] 2
[3 2 4| 3]
[
0
2 3 2 4 3 3 3 51
2
5 1 1 4
17
5 1 1 4
[0 2
1
80
1
1
2
2
2
11| 9
2 2 ( )
13
2| 2
7 3
2 2 ]
Mtodos Numricos
Ing. William Caiza
1
0
[0
1
2
3
2
1
1
2
2
11| 9
1
13| 13
17
7
3
2
2
2 ]
10
1 + 3 1 0
13
[0 1
11
2 3 0 0
13
3
1 1 2
2
0
17
3 3 + 2
2
[0
0 1
0| 1]
1 2
10
7
13 13
1 0
13
11| 9
3 3 ( )
1
48 0 1
13| 13
48 96
[0 0
0
13 13 ]
0
10
7
13 13
11|| 9
13 13
1
2 ]
=
=
=
0 1
16 4
16 4
1
1 1 2 1 5
2 3 5
| ] [
| 3] 2 2 21 [
3
4 1 2 1
3
2 4 1 2
0
5
3
3 5
+ = =
8
2
2 8
9
1
9
1
= =
16
4
16
4
=
81
Mtodos Numricos
Ing. William Caiza
1
1
3
1
2 1 1
1 1
2 1 6
3
3
2
[
| ]
[
| ]
[
2| 4] 2 2 1 [
2| 2 ] 1
1 1 2
1
1 4 1
2
2 0 1 2 1
1
0
2
2
3
1
1
1 0
2( 1)
1 2
|
2 1 0
0 1
2
2
2
[
2 1 ]
1
2
1
1
1
1
2 1
2 | 2 ] ( 2 )
[
| ] 1 [1 2| 2] 2 2 1 [
2
4 2 2 2
2 1
2
4 2
2 1
0
2
2
1
1
1 0 2+
[1 2| 2 ] 1 1 2 [
|
]
1
0 1 1
2
0 1
2+
2+
4 2 0 4 2 2 4 2
|| =
i.
0 || = || = 2 = 2
ii.
< 0 || = || = 2 = 2
= 2
1 0 12
[
|
] 02
0 0 2
2
= 2
1 1 12
[
|
]
0 0 0
82
Mtodos Numricos
Ing. William Caiza
83
Mtodos Numricos
Ing. William Caiza
12
22
0
13
23 ]
33
11
= [21
31
0
22
32
0
0 ]
33
=
=
=
=
=
= [ ] (2)
= [ ] (1)
=
=
=
() ()
=
[ ]
Algoritmo cdigo mtodo LU
84
Mtodos Numricos
Ing. William Caiza
end
end
for i=1:n
B(i)=A(i,n+1);
end
U=zeros(n);%triangular superior
L=zeros(n);%triangular inferior
for j=1:n
L(j,j)=1;
end
for j=1:n
U(1,j)=A(1,j);
end
for i=2:n
for j=1:n
for k=1:i-1
s1=0;
if k==1
s1=0;
else
for p=1:k-1
s1=s1+L(i,p)*U(p,k);
end
end
L(i,k)=(A(i,k)-s1)/U(k,k);
end
for k=i:n
s2=0;
for p=1:i-1
s2=s2+L(i,p)*U(p,k);
end
U(i,k)=A(i,k)-s2;
end
end
end
Laux=L;
for i=1:n
Laux(i,n+1)=B(i);
end
for i=1:n
Sumatoria=0;
for p=1:i-1
Sumatoria=Sumatoria+Laux(i,p)*z(p);
end
z(i)=(Laux(i,n+1)-Sumatoria)/Laux(i,i);
end
Uaux=U;
for i=1:n
Uaux(i,n+1)=z(i);
end
85
Mtodos Numricos
Ing. William Caiza
for i=n:-1:1
sumat=0;
for j=i+1:n
sumat=sumat+Uaux(i,j)*x(j);
end
x(i)=(Uaux(i,n+1)-sumat)/Uaux(i,i);
end
set(handles.uitable1,'Data',A);
set(handles.uitable2,'Data',L);
set(handles.uitable3,'Data',U);
set(handles.uitable4,'Data',x);
end
MTODO DOOLITTLE`S
=
86
Mtodos Numricos
Ing. William Caiza
= [
= []
= [
11
] = [21
31
11
0
0 ][ 0
33
0
0
22
32
12
22
0
13
23 ]
33
=
11 11 = 8 =
11 12 = 6 =
11 13 = 2 =
21 11 = 4 =
21 12 +22 22 = 11 =
21 13 +22 23 = 7 =
31 11 = 4 =
31 12 +32 22 = 7 =
31 13 +32 23 + 33 33 = 6 =
1
0
1
1
2
1
1
[ 2
2
0
0
1]
8 6 2
[0 8 6]
0 0
2
=
=
= ()
= ()
Resolviendo (1)
1
1
2
1
[ 2
28
0|
| 40
1
6
1
]
2
Resolviendo (2)
87
2 1 + 2 = 40 14 + 2 = 40
=
1
1
2 + 3 = 33 14 + 13 + 3 = 33
2 1
2
=
Mtodos Numricos
Ing. William Caiza
8
[0
0
23 = 6 =
82 63 = 26 82 6(3) = 26
=
81 62 + 23 = 28 81 = 6(1)
2(3) + 28 =
6 2 28
8 6| 40]
0
2
6
] [ ] = []
+ = () () + () = =
Ejercicios Propuestos
Mtodo de la Matriz inversa
Calcule las siguientes matrices por el mtodo de la matriz inversa.
1) Calcular por el mtodo de Gauss la matriz inversa de:
88
Mtodos Numricos
Ing. William Caiza
Mtodo de Gauss
Resuelva las siguientes ecuaciones por el mtodo de Gauss
1)
2)
3)
4)
5)
Mtodo De Sustitucin
1)
2)
3)
4)
5)
89
Mtodos Numricos
Ing. William Caiza
(1)
(2)
(3)
(4)
(5)
90
Mtodos Numricos
Ing. William Caiza
Ejemplo 1:
= 0 + 1
y = 5 + 3x
; x=7
y=5+3(7)
y = 26.
1) Desconocidos
= 0 + 1 + 2 2
Se ajusta
a una parbola
recta
91
Mtodos Numricos
Ing. William Caiza
2
=1
92
Mtodos Numricos
Ing. William Caiza
= 0 + 1
1
2
.
1
2
.
Entonces,
= 0 + 1
0
1
(0 ) = 0
(1 ) = 1
1) , 0 , 1
=
Sea:
= +
=> =
= (0 + 1 )2
2
=1
= ( 0 + 1 )2
=1
0 +
1 ) + (
0 +
1 )2 ]
= [2 2 (
2
0 2
1 +
0 2 + 2
0
1 +
1 ]
= [2 2
=
93
Mtodos Numricos
Ing. William Caiza
3
1
6
1
10
1
5
2
10
2
12
2
5
3
10
3
10
3
8
2
Interpretacin 1
Interpretacin:
La interpretacin para generar un modelo de ajuste de los datos de la tabla anterior, el
tcnico deber definir inicialmente que variable lo va a tomar como independiente o
dependiente para el caso que estamos analizando, a los vendedores se los toma como
variable independiente y a los televisores vendidos como variable dependiente.
Verificacin
= . + .
Si x = 2 y = 8.9
Si x = 3 y = 10.4
94
Mtodos Numricos
Ing. William Caiza
Por lo tanto la diferencia es 10.4 8.9=1.5, lo cual comprueba que por el aumento de un
vendedor las ventas aumentan en 1.5 artculos.
Para comprobar si el modelo es adecuado o no, se debera calcular el coeficiente de
determinacin .
El cual nos indica que cantidad de la variabilidad del modelo est justificada, para el caso
R2 = 0.076 R2 = 7.6%, lo cual nos indica que es un porcentaje muy bajo de la
justificacin de su variabilidad por ende es un modelo no adecuado.
Como solo el 7.6% de la variabilidad est justificado, no se considera buen modelo.
Un modelo adecuado, para ser considerado en el anlisis debera tener al menos un 70%
del coeficiente de variabilidad ( ), el valor anterior se deduce de la experiencia en la
elaboracin de diferentes modelos.
Verificacin
= . +
= 2 = 7.9
= 3 = 8.9
8.9 7.9 = 1
Para cada aumento de vendedores las ventas aumentaran en 1, es decir, que si disminuyo
vendedores, las ventas tambin disminuirn en unidad, esto es de acuerdo a la funcin
encontrada.
=
El indica cuan bueno es el modelo lineal.
2 = 0.076 2 = 7.6%
Indica el porcentaje de la variabilidad que est justificado en el modelo lineal.
95
Mtodos Numricos
Ing. William Caiza
Interpretacin 2
Como solo el 7.6% de la variabilidad est justificado, no se considera buen modelo. Un
buen modelo es el que est entre el 70%.
Clculos en Excel
Suma
Promedio
y
3
6
10
5
10
12
5
10
10
8
79
7,9
xy
3
6
10
10
20
24
15
30
30
16
164
x^2
1
1
1
4
4
4
9
9
9
4
46
Vendedores Vs televisores
14
y = x + 5,9
R = 0,076
12
Televisores
x
1
1
1
2
2
2
3
3
3
2
20
2
10
8
6
4
2
0
0
Vendedores
B1=
B0=
1
5,9
96
Mtodos Numricos
Ing. William Caiza
1
( x)2
1
4.2.1 Propiedades
(xi 2 2xi x + x 2 ) = xi 2 2 xi x + x 2
97
Mtodos Numricos
Ing. William Caiza
= xi 2 2xnx + nx 2
= xi 2 2nx 2 + nx 2
=
Demostracin:
SCxy = (xi x)(yi y)
= (xi yi xyi yxi + xy)
= xi yi xyi yxi + xy
= xi yi nyx nyx + nxy
=
TEOREMA: Bajo los supuestos anteriores, demuestre:
=
Ejemplo 2
= 0
2
(
)
=0
Modelo: Min(SCE)
Sujeto a:
= 0
= 0
1
98
+
=
Mtodos Numricos
Ing. William Caiza
0 +
1 ))2
= (
)
= ( (
=1
=1
0 +
1 ) + (
0 +
1 )2 ]
= [2 2 (
0 2
1 +
0 2 + 2
0
1 +
1 ]
= [2 2
0 2
1 +
0 2 + 2
0
1 +
1 ]
= 2 2
( 2 + 2 2 + + 2 )
=
1
12
2
+
++
=0
=
+ 2
+ +
)
(
= 1 + 2 + +
=
=
2 +
2 + +
2 )
2 + + 2
= 21 + 2
=
+
2 + +
)
1 +
2 + +
=
= (1 + + )
=
:
+2
1 = 0
2 +2n
+
1 = 0 (1)
- +
0 +2
1 2 =0
2 + 2
0 +
1 2 =0 (2)
+
= 0
99
Mtodos Numricos
Ing. William Caiza
Ecuaciones Normales {
+
1 = 0
+
0 +
1 2 = 0
+
y
1
3,5
6
7
sumatoria
(1+3+5+6) 15
=4
(1+3.5+6+7) 17.5
( )( )
( )^2
1
3,5
6
7
-2,75
-0,75
1.25
1.8
-3,375
-0,875
1.44
2.625
297/32
21/32
65/32
189/32
17,5
143/8
121/16
9/16
25/16
81/16
59/4
1
3
5
6
15
143
1 = 8 = 1.212
59
4
0 =
175
15
1.212
= 0.17
4
4
= 0.17 + 1.212
Ejercicio 2
100
Mtodos Numricos
Ing. William Caiza
Prmedio
60
65
70
80
80
85
90
90
94
100
81,4
5
4
2
5
6
4
7
7
4,2
x-x
21,4
16,4
11,4
-1,4
-1,4
3,6
8,6
8,6
12,6
18,6
y-
(x-x)(y)
(x-x)^2
(yi-i)^2
(i-yi)^2
-3,2
68,48
457,96
1,1
0,01
10,24
9,61
-3,2
52,48
268,96
1,815
0,664225
10,24
5,688225
0,8
-0,2
-2,2
0,8
1,8
-0,2
2,8
2,8
-9,12
0,28
3,08
2,88
15,48
-1,72
35,28
52,08
219,2
129,96
1,96
1,96
12,96
73,96
73,96
158,76
345,96
1526,4
2,53
3,96
3,96
4,675
5,39
5,39
5,962
6,82
6,1009
0,0016
3,8416
0,105625
0,3721
1,9321
1,077444
0,0324
14,137994
= 81.4
2
(1 )
1 =14.134
= 4.2
2
(1 )
1 =31.229
1 =
(yi-)^2
0,64
2,7889
0,04
0,0576
4,84
0,0576
0,64 0,225625
3,24
1,4161
0,04
1,4161
7,84 3,104644
7,84
6,8644
45,6 31,229194
219.2
= 0.143
152.68
a.- Interpretacin
Hipertensin=f(ruido)
= 7.4402 + 0.143
b.- Si x=65
y = 0,1436x - 7,4895
R = 0,6903
6
5
= 7.4402 + 0.143(65)
= 1.815
Si x=66
2
1
= 7.4402 + 0.143(66)
= 1.958
0
0
20
40
60
80
100
Por cada nivel que aumenta en el ruido, la hipertensin aumenta a 0.143 unidades
101
120
Mtodos Numricos
Ing. William Caiza
(1) =
=
1
Adems conocemos la varianza Sx2 y su desviacin estndar Sx
= 2 =
( )2
= ( )( ) = ;
Por lo tanto la desviacin estndar de la variable y es:
1
=
1
Por lo tanto definimos al coeficiente de correlacin lineal mediante la siguiente expresin:
102
Mtodos Numricos
Ing. William Caiza
1
=
( ) .
=
=
( 1)
( 1).
=
.
16
1187
6
655
7
729
103
7
888
9
797
11
963
12
802
18
1551
20
1650
Mtodos Numricos
Ing. William Caiza
Respuesta: esto nos indica que por cada kg que aumente de peso el carro, el consumo de
combustible es 0,0134 por cada 100km.
(r) nos indica si existe relacin lineal entre el peso del carro y el consumo de combustible.
Algoritmo de Ajuste Curvas
function pushbutton1_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton1 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
n=str2double(inputdlg('Ingrese la cantidad de datos para el Ajuste Lineal'));
104
Mtodos Numricos
Ing. William Caiza
for i=1:2
for j=1:n
etiqueta=['Dato(' num2str(i) ';' num2str(j) ')'];
dato(j,i)=str2double(inputdlg(etiqueta));
end
end
%calculo de promedios
sumx=0;
for i=1:n
sumx=sumx+dato(i,1);
end
promx=(sumx/n);
sumy=0;
for i=1:n
sumy=sumy+dato(i,2);
end
promy=(sumy/n);
%suma de los xy
sumpxy=0;
for i=1:n
sumpxy=sumpxy+(dato(i,1)-promx)*(dato(i,2)-promy);
end
sumpxx=0;
for i=1:n
sumpxx=sumpxx+(dato(i,1)-promx)*(dato(i,1)-promx);
end
sumpyy=0;
for i=1:n
sumpyy=sumpyy+(dato(i,2)-promy)*(dato(i,2)-promy);
end
%calculo de r
r=sumpxy/sqrt(sumpxx*sumpyy);
beta1= (sumpxy/sumpxx);
beta0= promy-beta1*promx;
%calculo de r^2
for i=1:n
ytecho(i)=beta0+beta1*promx;
end
%condiciones
if r>=0.7
etiqueta='Relacion Lineal Fuerte';
end
if r<=0.7 & r>=0.5
etiqueta='Relacion Lineal debil';
end
if r<0.5 & r>-0.5
etiqueta='no existe Relacion Lineal ';
end
if r<-0.7 & r>=-0.5
etiqueta='Relacion lineal d ';
end
105
Mtodos Numricos
Ing. William Caiza
if r<=-0.7
etiqueta='R.L.F. ';
end
set(handles.uitable1,'Data',dato);
set(handles.text2,'String',etiqueta);
set(handles.uitable2,'Data',[ beta1 beta0 r ]');
plot(dato(:,1),dato(:,2),'r*');
hold on;
grid on;
plot([-10 10],[0 0],'r');
plot([0 0],[-10 10],'r');
%Grafico d ela funcion
syms x;
funcion=beta0+beta1*x;
f=inline(funcion);
x=[-1:0.1:7];
[fx cx]=size(x);
for i=1:cx
y(i)=f(x(i));
end
plot(x,y);
106
Mtodos Numricos
Ing. William Caiza
1
2
3
0 : = 0
1 : 0
= 0 =
2
2
0.9419102
1(0.9419)2
= 7,9313
107
Mtodos Numricos
Ing. William Caiza
Ejemplo 5
R2 = 0.85, indica que el 85% de la variacin del modelo lineal est justificada y que solo un
15% no est justificado debido a la aleatoriedad del fenmeno.
SCyy=SCE+SCR
( ) = (1 )
+ ( )2
=1
=1
=1
108
Mtodos Numricos
Ing. William Caiza
2 =
2 =
109
Mtodos Numricos
Ing. William Caiza
=
=
+ =
=
= 0 + 1
=
=
=
=
=
Coeficiente de determinacin ( )
0 +
(,)
(,)(,)
110
Mtodos Numricos
Ing. William Caiza
PROPIEDADES
1) Si = suma de los cuadrados de los xx
= ( )2 , demuestre que = 2 2
( 2 2 + 2 ) = 2 2 + 2
= 2 2 + 2
= 2 2 2 + 2
=
2) Si =suma de los cuadrados de los yy
=
)(
) =
3) = (
= ( )( )
= ( + )
= +
= +
=
TEOREMA: Bajo los supuestos anteriores
=
EJERCICIO
Demuestre:
Sabemos:
1 =
1 =
111
Mtodos Numricos
Ing. William Caiza
1 =
= 2 2
1 =
2 2
112
Mtodos Numricos
Ing. William Caiza
=
ln = ln
ln + ln = ln
ln = ln ln
= 0 + 1
=
=
=
=
=
113
Mtodos Numricos
Ing. William Caiza
La expresin anterior indica que el ingreso del docente (ID) es funcin de los aos de
servicio(AS), de los ttulos obtenidos (TO) y de las publicaciones hechas(PH), pudindose
tener la siguiente expresin lineal.
= + + , en la expresin es necesario conocer las constantes a, b y
c las mismas que se obtendrn mediante el mtodo de mnimos cuadrados como se
describe a continuacin:
= (1 , 2 , 3 , , )
0 +
0 1 +
0 2 +. . . +
0
=
Para el caso d funcin real de variable vectorial:
1 = 0 + 1 11 + 2 12 +. . . + 1 + 1
2 = 0 + 1 21 + 2 22 +. . . + 2 + 2
= 0 + 1 1 + 2 2 +. . . + +
= +
(1)
= 1 , 2 , , ,
= (+1) (+1) + 1
Ejemplo 6
Matricialmente la expresin (1) se puede representar de la siguiente manera:
1
1
1
1 11 12
(2 ) = (1 21 22 ) (2 ) + (2 )
3
3
1 31 32
3
1
1
0 1 11 2 12
( 2 ) = (0 1 21 2 22 ) + ( 2 )
3
3
0 1 31 2 32
1
0 + 1 11 + 2 12 + 1
(2 ) = (0 + 1 21 + 2 22 + 2 )
3
0 + 1 31 + 2 32 + 3
114
Mtodos Numricos
Ing. William Caiza
m=3;
n=str2double(inputdlg('Ingrese el numero de filas:'));
for i=2:m
for j=1:n
etiqueta=['Ingrese el valor X(',num2str(j),',',num2str(i),')'];
x(j,i)=str2double(inputdlg(etiqueta));
end
end
x(:,1)=1;
for i=1:n
etiqueta=['Ingrese el valor B(1,',num2str(i),')'];
y(i,1)=str2double(inputdlg(etiqueta));
end
total=(inv(x'*x)*(x'*y));
for i=1:n
ys(i,1)=(total(1,1)*x(i,1))+(total(2,1)*x(i,2))+(total(3,1)*x(i,3));
end
set(handles.uitable1,'Data',x);
set(handles.uitable2,'Data',y);
set(handles.uitable3,'Data',total);
set(handles.text1,'String',ys);
x=[x(:,2) x(:,3)];
plot3(x,y,ys,'*');
grid on;
axis on;
hold on;
rotate3d on;
plot3([min(x(:,1)) max(x(:,1))],[min(y) max(y)],[min(ys) max(ys)]);
Programa Ejecutado
115
Mtodos Numricos
Ing. William Caiza
Sea = 51 + 22 + 33
(1 , 2 , 3 ) = 51 + 22 + 33
5
=
(
2)
= ( ) =
1
( ) = (2 )
= 1 + 2 + 3
1
( ) = (2 ) =
3
= ;
( ) = 2
11 12 13 1
(1 2 3 ) = (12 22 23 ) (2 )
13 23 33 3
116
Mtodos Numricos
Ing. William Caiza
1
(11 1 + 12 2 + 13 3 + 12 1 + 22 2 + 23 3 ) + 13 1 + 23 2 + 33 3 = (2 )
3
2
2
11 1 + 12 2 1 + 13 3 1 + 12 1 2 + 22 2 + 23 3 2 + 13 3 1 + 23 3 2 +33 32
() = 2
= (12 22 23 ) (2 )
13 23 33 3
Demuestre que:
= 2 +
= ( ) ( )
= ( + () )( )
= ( )( )
=
Se debera demostrar que:
=
=
( )
=
= ( )
= ( )
= ( ( ) )
=
= 2 +
= 2 +
=
2 = ( )2 = ( 0 0 )2
117
Mtodos Numricos
Ing. William Caiza
= ( (0 + 0 ))2
2
=1
=1
= [ 2 2 (0 + )]2
=1
= [ 2 2 (0 + ) + (0 + 0 )2 ]
=1
= [ 2 2 0 2 + 0 + 20 1 + 1 2 ]
=1
2 =
= 0
0 1
0 1
= [2 20 1 21 + 0 + 20 1 2 + 1 1 2 ]
0
2
(20 1 +
1 +
20 1 2)
0
0
0
2 + 0 + 1 =0
118
Mtodos Numricos
Ing. William Caiza
for i=1:n
restx(i)=(x(i)-xbarra);
end
for i=1:n
resty(i)=(y(i)-ybarra);
end
for i=1:n
SCxy(i)=restx(i)*resty(i);
SCxx(i)=restx(i)*restx(i);
SCyy(i)=resty(i)*resty(i);
end
b1=num2str((sum(SCxy))/(sum(SCxx)));
etiqueta=['b1: ',num2str(b1)];
set(handles.text2,'String',etiqueta)
b0=num2str(ybarra-(str2double(b1)*xbarra));
etiqueta=['b0: ',num2str(b0)];
set(handles.text3,'String',etiqueta)
datos=[x' y' restx' resty' SCxy' SCxx' SCyy'];
set(handles.uitable1,'Data',datos);
etiqueta=['xbarra: ',num2str(xbarra)];
set(handles.text1,'String',etiqueta);
etiqueta=['ybarra: ',num2str(ybarra)];
set(handles.text4,'String',etiqueta);
etiqueta=['Y=',b0,'+',b1,'(x)'];
set(handles.text10,'String',etiqueta);
Programa Ejecutado
119
Mtodos Numricos
Ing. William Caiza
Ejercicios propuestos
Ajuste de curvas
1.- Ajustar los datos de la siguiente tabla:
X
5,1
8,8
Lecturas
sucesivas (xi)
L / mm
200
400
500
700
900
1000
60
120
150
210
260
290
1
9
5
2
12
5
3
6
1
4
9
4
5
7
2
6
9
2
7
5
1
8
9
3
9
7
3
10
3
1
11
10
4
12
6
2
13
11
5
14
4
2
15
13
5
120
Mtodos Numricos
Ing. William Caiza
5.- Ajustar una recta de mnimos cuadrados a los datos de la tabla que a continuacin se
indica, en los casos siguientes:
a).- X como variable independiente,
b).- Y como variable independiente.
Y hacer la grfica correspondiente
X
Y
1986
18
1987
20
1988
22
1989
24
1990
25
1991
26
1992
28
1993
30
1994
32
ventas
593,8
596
598,3
600,8
603,3
607,7
608,5
611,2
592,4
585,6
589
589,4
593,5
597,6
11
14
16
15
16
121
18
20
21
14
20
19
11
Mtodos Numricos
Ing. William Caiza
Rendimiento(y) 2
33
10
10
sy = 25,
sxy = 45.
Explicar
el
significado
de
los
parmetros.
b) Calcular el coeficiente de determinacin. Comentar el resultado e indicar el porcentaje
Edad
56 42 72 36 63 47 55 49 38 42
Presin 14.8 12.6 15.9 11.8 14.9 13.0 15.1 14.2 11.4 14.1
a) Calculad el coeficiente de correlacin lineal entre las variables y decid que indica.
b) Determinad la recta de regresin de Y sobre X, justificando la adecuacin de un
122
Mtodos Numricos
Ing. William Caiza
d.1) Presin sangunea de una mujer de 51 aos.
d.2) Presin sangunea de una nia de 10 aos.
d.3) Presin sangunea de un hombre de 54 aos.
1 1 2 3 4 5 5 6
13 15 18 19 21 16 20 14
11. Los datos siguientes forman parte de un anuncio publicado por un joyero de
Singapur en el peridico Strauss Times el 29 de febrero de 1992. Estos datos hacen
referencia al precio (en dlares de Singapur) de anillos que llevan un diamante. El
tamao de un diamante, que se indica en quilates (1 quilate=200 mg).
tamao 0.17 0.16 0.17 0.25
precio 355 328 350 675
tamao 0.16 0.17 0.16 0.17
precio 345 352 332 353
0.16
342
0.18
438
0.15
322
0.23
595
0.21
483
0.23
553
0.15
323
0.12
223
Ajustad un modelo lineal a estos datos y decidid si el ajuste obtenido es bueno. Comprobad
si se cumplen para los residuos las suposiciones de independencia y de varianza
constante.
12. Las Ecuaciones siguientes
,
Representan las rectas de regresin lineal de una distribucin estadstica vicariante. Hallad
los coeficientes de determinacin y de correlacin entre las variables X e Y.
123
Mtodos Numricos
Ing. William Caiza
CAPITULO IV
INTERPOLACIN
Interpolar significa estimar el valor desconocido de una funcin en un punto, tomando una
media ponderada de sus valores conocidos en puntos cercanos al dado.
En la interpolacin lineal, conocido como regla de 3 se utiliza un segmento rectilneo que
pasa por 2 puntos que se conocen.
Ajuste
Es una ecuacin que tiene la mnima dispersin en el eje y con respecto a los datos que
estn comparando.
1 () = 0 + 1 ( 0 )
()
2
= 0 + 1 ( 0 ) + 2 ( 0 )( 1 )
2 () = 1 () + 2 ( 0 )( 1 )
3 () = 2 () + 3 ( 0 )( 1 )( 2 )
() = () + ( )( )( ) ( )
124
Mtodos Numricos
Ing. William Caiza
Generalmente, se usa el 3 (), es decir:
() = 0 + 1 ( 0 ) + 2 ( 0 )( 1 ) + ( )( )( )
Dnde:
0 = [0 ]
1 = [1 , 0 ]
2 = [2 , 1 , 0 ]
3 = [3 , 2 , 1 , 0 ]
[
= , 1 , , 1 , 0 ]
DIFERENCIAS DIVIDIDAS
Diferencias divididas
La diferencia dividida de orden cero es:
[0 ] = (0 ) = 0
La diferencia dividida de orden 1 es:
(1 ) (0 ) [1 ] [0 ]
[0 , 1 ] =
=
1 0
1 0
La diferencia dividida de orden 2 es:
(2 ) (1 ) (1 ) (0 )
[1 , 2 ] [0 , 1 ]
2 1
1 0
]
[0 , 1 , 2 =
=
2 0
2 0
La diferencia dividida de orden 3 es:
[2 , 3 ] [1 , 2 ] [1 , 2 ] [0 , 1 ]
[1 , 2 , 3 ] [0 , 1 , 2 ]
3 1
2 0
]
[0 , 1 , 2 , 3 =
=
3 0
3 0
Relacin existente entre el polinomio de newton y las diferencias divididas
1 () = 0 + 1 ( 0 ) = [0 ] + [0 , 1 ]( 0 )
2 () = 0 + 1 ( 0 ) + 2 ( 0 )( 1 ) = [0 ] + [0 , 1 ]( 0 )+ [0 , 1 , 2 ](
0 )( 1 )
() = 1 () + [0 , 1 , . ]( 0 )( 1 ) . . ( )
0 = [0 ]
1 = [0 , 1 ]
2 = [0 , 1 , 2 ]
= [0 , 1 , 2 . ]
Ejemplo.Dados los siguientes 3 puntos, encontrar el polinomio de interpolacin.
(2,3),
(4,2), (6,1)
2 () = [0 ] + [0 , 1 ]( 0 ) + [0 , 1 , 2 ]( 0 )( 1 )
a) Resolviendo un sistema de ecuaciones (I. Inversa)
2 () = + +
125
Mtodos Numricos
Ing. William Caiza
3 = 4 + 2 +
2 = 16 + 4 +
1 = 36 + 6 +
=
1 = 1
1 =
X=1
4
= [16
36
2
4
6
1
1]
1
4
1 = [16
36
2 1
4 1
6 1
1
0
0
4
1 = [ 0
36
2
1
4 3
6
1
0 0
1 0]
0 1
1 0
0 1
0 0
0
0]
1
[ ][ ]
3 Diferencia [ , , ] =
4 Diferencia [ , , , ] =
([ ][ ])
( )
[ , ][ , ]
[ , , ][ , , ]
[ ][ ]
[ ][ ] [ ][ ]
[ , ][ , ] [ , ][ , ]
[ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ]
EJERCICIO
Dados los siguientes puntos 0 = 1, 1 = 4, 2 = 6, 3 = 5
126
Mtodos Numricos
Ing. William Caiza
(0 ) = 0
(1 ) = 1,386294
(2 ) = 1,791759
(3 ) = 1,609438
0 = 1
1 = 4
2 = 6
3 = 5
3 ( = 2) = ( = 2)
[1 ] [0 ] 1,386294 0
=
= ,
1 0
41
2 1
1 0
64
41
2 = [2 , 1 , 0 ] =
=
2 0
61
= ,
[3 ] [2 ] [2 ] [1 ] [2 ] [1 ] [1 ] [0 ]
3 2
2 1
2 1
1 0
3 1
2 0
3 = [3 , 2 , 1 , 0 ] =
3 0
1,609438 1,791759 1,791759 1,386294 1,791759 1,386294 1,386294 0
64
56
64
41
1
5
4
=
51
= ,
() = 0 + 1 ( 0 ) + 2 ( 0 )( 1 ) + ( )( )( )
= 0,462098(2 1) 0,0518731(2 1)(2 4) + 0,0078655(2 1)(2 4)(2 6)
= ,
127
Mtodos Numricos
Ing. William Caiza
TEMAS
Interpolantes definidos en Tramos. Interpolacin lineal y al adyacente ms cercano.
Interpolacin con trazadores (spline ) cuadrticos y cbicos . Determinacin de los
coeficientes. Error de truncacin y capacidad de filtrado. Trazadores con interpolacin
Hermtica, algoritmo Pchip . Curvas paramtricas. Curvas de Bzier, caractersticas,
polinomios de tercer orden con interpolacin hermtica, empalmes. Introduccin a las B Spline , caractersticas ms destacadas . Funciones de Matlab.
Dados los datos: (x i ,y i ), i = 0,1, 2, ..., n con x 0 ,< x 1 ,< x 2 , < ... < x n , determinar la
funcin f , tal que : f(x i ) = y i , i = 0, 1, 2, ..., n f es llamada la Funcin de Interpolacin o
Funcin Interpolante o Interpolante a secas . En forma adicional, dependiendo del tipo
de interpolacin, se pueden imponer otras restricciones como pendiente en
determinados puntos, concavidad, etc.
128
Mtodos Numricos
Ing. William Caiza
EJEMPLO TIPICO
Interpolacin Lineal que usa lneas rectas para interconectar puntos.
129
Mtodos Numricos
Ing. William Caiza
No hay buenas razones para escoger este mtodo en vez de interpolacin lineal (casi
tan simple como ste, pero con prdida de la continuidad), Si embargo en interpolacin
multivariada, esta opcin puede ser favorable por su velocidad y simplicidad.
SPLINE TRAZADORES
Consiste en emplear polinomios de bajo orden para conectar puntos adyacentes. (Trazador
o cinta de plomo)
Funciones Spline tpicas:
Spline lineal
() = +
Spline cuadrtica
() = 2 + +
Spline cbica
() = 3 + 2 + +
(4,4)
F0
f1
(7,4)
f2
(10,3)
(1,2)
*En [1, 4]
FORMULA:
() = +
42
( 1)
2=
41
2
2
2
4
= +2 = +
3
3
3
3
() = +
En [7 , 4]
() =
En [7 , 10]
130
Mtodos Numricos
Ing. William Caiza
34
( 7)
10 7
1
4 = ( 7)
3
1
7
= + +4
3
3
() = +
4=
SPLINE CUADRTICA
Se conectan dos puntos adyacentes con una parbola de orden 2. La funcin tiene
derivada primera continua.
131
Mtodos Numricos
Ing. William Caiza
Spline Lineal.- Una funcin spline de grado 1 que interpola los satos es
simplemente unir cada uno de los puntos mediante u n segmento de recta.
Dado n+1 puntos:
0 1
0 1
0 () = 0 + 0 ; (0 , 1 )
1 () = 1 + 1 ; (1 , 2 )
() =
1 () = 1 + 1 ; (1 , )
Ejercicio:
Interpolar con spline lineal los siguientes puntos:
f(1)=1
f(2)=0.5
f(4)=0.25
1,2
1
1; 1
0,8
0,6
2; 0,5
0,4
4; 0,25
0,2
0
0
.
( )
= + +
= +
= ( )
: =
. .
( )
= + +
= +
: . =
132
Mtodos Numricos
Ing. William Caiza
() = () +
() = +
() =
7; 2,5
2,5
2
1,5
4,5; 1
1
9; 0,5
0,5
0
0
1)
. + . + = (1)
. + . + = (2)
+ + = . (3)
+ + = . (4)
2)
+ + = . (5)
133
10
Mtodos Numricos
Ing. William Caiza
+ + = . (6)
3)
1 2 + 1 + 1 =
21 + 1 =
+ = + (7)
+ = + (8)
4)
21 + 1 =
=
= (9)
Respuestas:
=
=
= .
= .
= .
= .
= .
= ,
= .
134
Mtodos Numricos
Ing. William Caiza
2,5
7; 2,5
2
1,5
1
4,5; 1
0,5
0
0
135
Mtodos Numricos
Ing. William Caiza
+ + + = . (4)
3.
. + + = . + + (5)
4.
+ = + (6)
5.
+ = (7)
+ = (8)
Respuesta:
= .
= .
= .
= .
= .
= .
= .
= .
136
Mtodos Numricos
Ing. William Caiza
f(x)dx =
a
h
(f(x0 ) + f(x1 ) );
2
137
Mtodos Numricos
Ing. William Caiza
n=5
= +
=
-2 = 2
=
=
2da Verificacin de 1.
= + = + =
= ( )()
= + = + () =
74=3
= + = + () =
3=3
= + = + () =
= + = + () =
1ra Verificacin 1.
= ( )()
1ra Verificacin de 2.
X X 3 = ( 3), [0,5]
si t = 0
x5=1(03)
x = -3 + 5
138
Mtodos Numricos
Ing. William Caiza
x=2
2da Verificacin de 2.
X X 0 = ( 3), [0,5]
si t = 5
x2=1(50)
x=5+2
x=7
3ra Verificacin de 2.
X X 4 = ( 4), [0,5]
si t = 2
x6=1(24)
x=-2+6
x=4
() =
(() + ())
() = ()
: = 1
() () = 1 (); = 1
= (0 ) 0 () + (1 ) + 1 ()
139
Mtodos Numricos
Ing. William Caiza
1
0
= (0 )
+ (1 )
0 1
1 0
()
((0 ) + 4(1 ) + (2 ))
3
= () = 2 (), = 2
= (0 )
() + (1 ) 1() + (2 ) 2 ()
=0
0 () =
1 2
0 1 0 2
1 () =
0 2
1 0 1 2
2 () =
0 1
2 0 2 1
140
Mtodos Numricos
Ing. William Caiza
Ejemplo
Grafica
i.
ii.
1
() 2 (0 + 1 ) REGLA DEL TRAPECIO
0
2
() 3 (0 + 41 + 2 ) REGLA DE SIMPSON
0
iii.
3
()
iv.
4
() 45 (70 + 321 + 122 + 323 + 74 ) REGLA DE BOOLE
(0 + 31 + 32 + 3 ) REGLA DE 8 DE SIMPSON
INTEGRACION DE ROMBERG
Aun cuando la regla del trapecio es la frmula de Newton Cotes ms sencilla de aplicar,
hemos mostrado en las secciones anteriores que carece del grado de exactitud requerido
generalmente. La integracin de Romberg es un mtodo que tiene aplicaciones muy
variadas debido a que usa la regla del trapecio para dar aproximaciones preliminares y
luego aplicar el proceso de extrapolacin, para obtener correcciones a las aproximaciones.
Algoritmo de Romberg
141
Mtodos Numricos
Ing. William Caiza
Nivel 1
() ()
Donde,
hm : Integral ms exacta
he : Integral menos exacta
() = () | = (. + . ) = .
a) Nivel 0
= , =
; =
(=) =
[() + ()] = .
[() + ( ) + ()] = .
(= )
(. ) (. ) = .
Error:
=
|. . |
= . %
|. |
b) Nivel 0
= , =
(=) =
, =
[() + ()] = .
142
Mtodos Numricos
Ing. William Caiza
(= )
[() + ( ) + ()] = .
(= )
[() + ( ( ) + ( ) + ( )) + ()] = .
Nivel 1
() ()
(. ) (. ) = .
(. ) (. ) = .
Nivel 2
()
()
(. )
(. ) = .
|. . |
= %
|. |
Nivel 3
()
()
Ejemplo
Dado el mtodo del trapecio mltiple, tenemos:
() = [()] + () + 2 ( )
2
=1
=
; = + , ( = 0,1,2,3, , )
143
Mtodos Numricos
Ing. William Caiza
= +1 ; ( )
2
1
1
2
2
3
4
4
8
5 16
6 32
() = [() + () + 2 ( + )]
2
=1
Demostracin:
2
() = 2 () =
0
=0
(2 ) () = (0 ) (0 ) () + (1 ) (1 ) + (2 ) (2 ) ()
Donde:
(0 ) =
1
2
0 1 0 2
(1 ) =
0
2
1 0 1 2
(2 ) =
0
1
2 0 2 1
2
( 1) ( 2)
( 0)( 2)
(0 )
+ 1
+
2
0
0
2
+(2 )
() ( 1)
2
(0 ) 2
( ) 2
( 1)( 2) (1 ) ()( 2) + 20 ()( 1)
2
2
0
0
0
144
Mtodos Numricos
Ing. William Caiza
2
(0 ) 2 2
(2 ) 2 2
2
( 3 + 2) (1 ) ( 2) +
( )
2
2
0
0
0
(0 ) 3 3 2
( ) 3 2 2
3 2 2 2
2
(
+ 2| ) (1 ) (
| )+ 2 ( | )
0
2
3
2
3
2 0
2
3
2 0
(0 ) 2
( ) 2
4
( ) (1 ) ( ) + 2 ( )
2
3
3
2
3
((0 ) + 4(1 ) + (2 ) )
R. Simpson 1/3
=1
=1
= [( ) + 4 ( ) + 2 ( ) + ( ) ]
1
3
() = 8 (0 + 31 + 32 + 3 ) 8
0
Demostracin:
3
() = 3 =
0
=0
3 () = 0 0 () + 1 1 () + 2 2 () + 3 3 ()
Donde:
0 =
0 2 3
0 1 0 2 0 3
1 =
0 2 3
1 0 1 2 1 3
2 =
0 1 3
2 0 2 1 2 3
3 =
0 1 2
3 0 3 1 3 2
145
Mtodos Numricos
Ing. William Caiza
3
0 =
( 1) ( 2) ( 3)
2 3
3
() ( 2) ( 3)
+ 1
2
0
3
() ( 1) ( 3)
+ 2
2
0
3
( 1) ( 2) 0 3
+ 3
( 1)( 2)( 3)
3 2
6 0
0
3
3
+ 1 ( 2)( 3) 2 ( 1)( 3)
2 0
2 0
3
+ 3 ( 1)( 2)
6 0
0 3 2
( 3 3 + 2)( 3)
6 0
1 3 3
3 3 3
2
+
( 4 + 3) +
3 + 2
2 0
6 0
3
3 ()3 3 2 + 2
6 0
( ) 3
( ) 4 5 3
3
0 ( 3 6 2 + 11 6) + 1 [
+ 3 2 | ]
0
6
2
4
3
0
( ) 4 4 3 3 2 3
( ) 4
3
+ 2 [ +
+
| ] + 3 [ 3 + 2| ]
0
2
4
3
2 0
6
4
3
9
9
3
0 + 1 + 2 + 3
8
8
8
8
3
8
[0 + 31 + 32 + 3 ]
R. de 3/8 Simpson
146
Mtodos Numricos
Ing. William Caiza
end
for i=1:n
y(i)=f(x(i));
end
opcion=str2double(inputdlg('elija la opcion 1 o 2'));
switch opcion
case 1
h=x(2)-x(1);
integral=(f(x(2))-f(x(1)))*(h/2);
ex=x(1):0.1:x(2);
[fx cx]=size(ex);
for i=1:cx
ff(i)=f(ex(i));
end
plot([x(1)-5 x(2)+5],[0 0]);
hold on;
plot([0 0],[max(ff)+3 min(ff)-3]);
area(ex,ff);
set(handles.text2,'String',integral);
case 2
s=0;
[fx cx]=size(ex);
for i=1:cx
ff(i)=f(ex(i));
end
plot([x(1)-5 x(2)+5],[0 0]);
hold on;
plot([0 0],[max(ff)+3 min(ff)-3]);
area(ex,ff);
set(handles.text2,'String',integral);
case 2
s=0;
for i=2:n-1
s=s+2*f(x(i));
end
h=x(2)-x(1);
integral=(h/2)*(f(x(1))+s+f(x(n)));
set(handles.text2,'string',integral);
xx=x(1):0.1:x(n);
[fxx cxx]=size(xx);
for i=1:cxx
yy(i)=f(xx(i));
end
plot([x(1)-5 x(2)+5],[0 0]);
hold on;
plot([0 0],[max(ff)+3 min(ff)-3]);
area(xx,yy);
end
for i=1:n
etiqueta=['x(' num2str(i) ')='];
x(i)=str2double(inputdlg(etiqueta));
end
for i=1:n
y(i)=f(x(i));
end
147
Mtodos Numricos
Ing. William Caiza
h=x(2)-x(1);
integral=(f(x(2))-f(x(1)))*(h/2);
ex=x(1):0.1:x(2);
[fx cx]=size(ex);
for i=1:cx
ff(i)=f(ex(i));
end
plot([x(1)-5 x(2)+5],[0 0]);
hold on;
plot([0 0],[max(ff)+3 min(ff)-3]);
area(ex,ff);
148
Mtodos Numricos
Ing. William Caiza
() = = 1 () + 1 () + 1 () + 1 ()
() = (( ) + ( ) + ( ))
Ejemplo 1
7
Dado 3 2 , calcular:
a) Utilizar la Regla del Trapecio
b) Utilizar la Regla del Trapecio 3 veces
c) Utilizar la Regla del Trapecio 5 veces
RESOLUCION
a) =
7
73
1
=4
4
() = ((3) + (7)) = (9 + 49) = 116
2
2
3
b) =
73
3
4
3
4 13
1 = 3 + =
3
3
8 17
2 = 3 + =
3
3
3 = 3 + 4 = 7
7
() =
3
13
13
17
17
((3) + ( )) + ( ( ) + ( )) + ( ( ) + (7))
2
3
2
3
3
2
3
13
17
((3) + 2 ( ) + 2 ( ) + (7))
2
3
3
169
289
= (9 + 2 (
) + 2(
) + 49) = 106,518
2
9
9
=
c) =
73
5
4
5
149
Mtodos Numricos
Ing. William Caiza
4
19
1 = 3 + (1) =
5
5
4
23
2 = 3 + (2) =
5
5
4
27
3 = 3 + (3) =
5
5
4
31
4 = 3 + (4) =
5
5
4
5 = 3 + (5) = 7
5
7
() =
3
19
19
23
23
27
((3) + ( )) + ( ( ) + ( )) + ( ( ) + ( ))
2
5
2
5
5
2
5
5
27
31
31
+ ( ( ) + ( )) + ( ( ) + (7))
2
5
5
2
5
19
23
27
31
((3) + 2 ( ) + 2 ( ) + 2 ( ) + 2 ( ) + (7))
2
5
5
5
5
2
361
529
729
961
= (9 + 2 (
) + 2(
) + 2(
) + 2(
) + 49) = 105,76
5
25
25
25
25
=
150
Mtodos Numricos
Ing. William Caiza
hold on;
%eje y
plot([0 0],[min(y)-2 max(y)+2]);
%area de integracin
xx=x(1):0.1:x(n);
[fxx cxx]=size(xx);
for i=1:cxx
yy(i)=f(xx(i));
end
plot(xx,yy,'r');
area(xx,yy);
%para graficar los puntos x0...xn
for i=1:n
cadena(i)=num2str(x(i));
end
for i=1:n
text(x(i),0,cadena(i));
end
legend('Trapecio Mltiple');
151
Mtodos Numricos
Ing. William Caiza
n=2
() =
()
Demostrar que
2 0
=
=
2
2
(( ) + ( ) + ( ))
= 3 ((0 ) + 4(1 ) + (2 ))
2
Donde:
0 () =
1
2
;
0 1 0 2
1 () =
0
2
0
1
; 2 () =
1 0 1 2
2 0 2 1
2
1
2
0
2
() = (0 )
+ (1 )
0 1 0 2
1 0 1 2
+ (2 )
0
0
1
2 0 2 1
= 0 +
=
=
( 2)
= 0 (1) :
0 = 0 +
0 =
=0
( 3)
= 2 (1) :
2 = 0 +
2 0 =
2 =
=2
152
Mtodos Numricos
Ing. William Caiza
2
( 1) ( 2)
( 2)
( 1)
= (0 )
+ (1 )
+ (2 )
0
2
(0 ) ( 1)( 2) (1 ) ( 2) + (2 ) ( 1)
2
2
0
n=3
() =
(( ) + ( ) + ( ) + ( ))
Ejemplo 2
8
Dada 5 ()
a) Integrar mediante el trapecio
b) Integrar 5 veces mediante el trapecio
c) Integrar 5 veces simpson 1/3
RESOLUCION:
a) =
8
85
1
=3
3
() = ((5) + (8)) = ((5) + (8)) = 0.0456
2
2
5
Valor real
8
() = cos()85 = 0.429
5
Error
153
Mtodos Numricos
Ing. William Caiza
0.429 0.0456
= |
| = 0.89 100% = 89%
0.429
b) =
8
85
5
3
5
28
28
31
31
34
() = ((5) + ( )) + ( ( ) + ( )) + ( ( ) + ( ))
2
5
2
5
5
2
5
5
5
34
37
37
+ ( ( ) + ( )) + ( ( ) + (8))
2
5
5
2
5
3
28
31
34
37
=
((5) + 2 ( ) + 2 ( ) + 2 ( ) + 2 ( )) + (8) = 0.4162
10
5
5
5
5
0.429 0.4162
= |
| = 0.03 100% = 3%
0.429
c) =
8
85
4
3
4
() =
5
23
26
26
29
((5) + 4 ( ) + ( )) + ( ( ) + 4 ( ) + (8))
3
4
4
3
4
4
1
23
26
29
((5) + 4 ( ) + 2 ( ) + 4 ( ) + (8)) = 0.42997
4
4
4
4
Algoritmo de Simpson
function calcular_Callback(hObject, eventdata, handles)
% hObject handle to calcular (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
%CODIGO DEL PROGRAMA(CALCULO DE AREA)
f=inline(get(handles.fx,'string'));
a=str2num(get(handles.a,'string'));
b=str2num(get(handles.b,'string'));
n=str2double(get(handles.n,'string'));
h=(b-a)/n;
s=f(a)+f(b);
for i=2:n
x(i)=a+(i-1)*h;
s=s+2*f(x(i));
end
I=s*(h/2);
set(handles.area,'string',I)
%CODIGO PARA GRAFICA
for i=1:n+1
x(i)=a+(i-1)*h;
y(i)=f(x(i));
end
x=[x,b,a,a];
y=[y,0,0,f(a)];
fill(x,y,[0.8 0.4 0.9]);
for i=1:n+1
x(i)=a+(i-1)*h;
y(i)=f(x(i));
154
Mtodos Numricos
Ing. William Caiza
line([x(i),x(i)],[0,f(x(i))]);
end
hold on
ezplot(f,[min(x):0.2:max(x)])
ylabel('F(X)');
grid 'on'
set(handles.axes1,'xminorgrid','on');
set(handles.axes1,'yminorgrid','on');
155
Mtodos Numricos
Ing. William Caiza
() =
0
2
(70 + 321 + 122 + 323 + 74 )
45
Demostracin:
4
() = 4 () =
0
=0
4 () = 0 0 () + 1 1 () + 2 2 () + 3 3 () + 4 4 ()
Donde:
0 2 3 4
( 1) ( 2) ( 3) ( 4)
0 =
=
0 1 0 2 0 3 0 4
2 3 4
1 =
0 2 3 4
() ( 2) ( 3) ( 4)
=
1 0 1 2 1 3 1 4
2 3
156
Mtodos Numricos
Ing. William Caiza
2 =
0 1 3 4
( 1) ( 3) ( 4)
=
2 0 2 1 2 3 2 4
2 2
3 =
0 1 2 4
( 1) ( 2) ( 4)
=
3 0 3 1 3 2 3 4
3 2
4 =
0 1 2 3
( 1) ( 2) ( 3)
=
4 0 4 1 4 2 4 3
4 3 2
0 4
1 4
( 1)( 2)( 3)( 4)
( 2)( 3)( 4) +
24 0
6 0
2 4
4
( 1)( 3)( 4) 3 ( 1)( 2)( 4) +
4 0
6 0
4 4
( 1)( 2)( 3)
24 0
0 4 2
4
( 3 + 29( 2 7 + 12) 1 ( 3 5 2 + 6) ( 4) +
24 0
6 0
2 4 3
3 4 3
2
( 4 + 3) ( 4)
( 3 2 + 2)( 4) +
4 0
6 0
4 4 3
( 3 2 + 2)( 3)
24 0
0 4 4
1 4 4
3
2
( 10 + 35 50 + 24)
( 9 3 + 26 2 24) +
24 0
6 0
2 4 4
4
( 8 3 + 19 2 12) 3 ( 4 7 3 + 14 2 8) +
2 0
6 0
4 4 4
( 6 3 + 11 2 6) +
24 0
0 5 10 4 35 3 50 2
5 9 4 26 3 24 2 4
4
[
+
+ 24| ] 1 [
+
| ]
0
24 5
4
3
2
6 5
4
3
2 0
+
2 5 8 4 19 3 12 2 4
5 7 4 14 3 8 2 4
[
+
| ] 3 [
+
| ]
4 5
4
3
2 0
6 5
4
3
2 0
157
Mtodos Numricos
Ing. William Caiza
4 5 6 4 11 3 6 2 4
[
+
| ]
24 5
4
3
2 0
[ ] [ ] + [ ] [ ] + [ ]
[ + + + + ]
R. de Boole
Ejercicios propuestos
1.-Integre la funcin siguiente en forma tanto analtica como la regla de Simpson, con n=4 y
5. Analice los resultados.
5
(4x 3)3 dx
3
2.- Integre la funcin siguiente tanto en forma analtica como numrica. Emplee las reglas
del trapecio y de Simpson 1/3 para integrar numricamente la funcin. Para ambos casos,
utilice la versin de aplicacin mltiple, con n=4. Calcule los errores relativos porcentuales
para los resultados numricos.
3
x 2 ex dx
0
3.- Integre la funcin siguiente tanto analtica como numricamente. Para las evaluaciones
numricas use a) una sola aplicacin de la regla del trapecio, b) la regla de Simpson 1/3, c)
la regla de Simpson 3/8, d) la regla de Boole, e) el mtodo del punto medio, f) la frmula de
integracin abierta de 3 segmentos y 2 puntos, y g) la frmula de integracin abierta de 4
segmentos y 3 puntos. Calcule los errores relativos porcentuales de los resultados
numricos.
1
152x dx
0
4.- Integre la funcin que sigue tanto en forma analtica como numrica. Para las
evaluaciones numricas utilice, a) una sola aplicacin de la regla del trapecio; b) la regla de
Simpson 1/3; c) la regla de Simpson 3/8; d) aplicacin mltiple de las reglas de Simpson,
con n=5; e) la regla de Boole; f) el mtodo del punto medio; g) la frmula de integracin
abierta de 3 segmentos y 2 puntos, y h) la frmula de integracin abierta de 4 segmentos y
3 puntos.
158
Mtodos Numricos
Ing. William Caiza
3
(5 + 3cosx) dx
0
gm
gcd
tanh (
t)
cd
m
(8 + 4cosx)dx
0
a)en forma analtica; b)con una sola aplicacin de la regla del trapecio; c)con aplicacin
mltiple de la regla de trapecio, con n=2y4; d)con una sola aplicacin de la regla de
Simpson1/3; e con la aplicacin mltiple de la regla de Simpson1/3, con n=4; f)con una sola
aplicacin de regla de Simpson 3/8; g) con aplicacin mltiple de la regla de Simpson 3/8,
con n=5.
8.- Evalu la integral siguiente:
3
(1 ex )dx
0
a)en forma analtica; b)con una sola aplicacin de la regla del trapecio; c)con aplicacin
mltiple de la regla de trapecio, con n=2y4; d)con una sola aplicacin de la regla de
Simpson1/3; e con la aplicacin mltiple de la regla de Simpson1/3, con n=4; f)con una sola
aplicacin de regla de Simpson 3/8; g) con aplicacin mltiple de la regla de Simpson 3/8,
con n=5.
9.- Evalu la integral siguiente:
3
(1 ex )dx
0
a)en forma analtica; b)con una sola aplicacin de la regla del trapecio; c)con aplicacin
mltiple de la regla de trapecio, con n=2y4; d)con una sola aplicacin de la regla de
Simpson1/3; e con la aplicacin mltiple de la regla de Simpson1/3, con n=4; f)con una sola
aplicacin de regla de Simpson 3/8; g) con aplicacin mltiple de la regla de Simpson 3/8,
con n=5.
10.- Evalu la integral siguiente:
159
Mtodos Numricos
Ing. William Caiza
4
(1 x 4x 3 + 2x 5 )dx
2
a)en forma analtica; b)con una sola aplicacin de la regla del trapecio; c)con aplicacin
mltiple de la regla de trapecio, con n=2y4; d)con una sola aplicacin de la regla de
Simpson1/3; e con la aplicacin mltiple de la regla de Simpson1/3, con n=4; f)con una sola
aplicacin de regla de Simpson 3/8; g) con aplicacin mltiple de la regla de Simpson 3/8,
con n=5.
Referencia4: mtodos numricos para ingenieros (sexta edicin), autor: Steve C. Chapra,
pg.: 572
Las ecuaciones diferenciales son una parte muy importante del anlisis matemtico y
modelan innumerables procesos de la vida real. Una ecuacin diferencial es una relacin,
vlida en cierto intervalo, entre una variable y sus derivadas sucesivas. Su resolucin
permite estudiar las caractersticas de los sistemas que modelan y una misma ecuacin
160
Mtodos Numricos
Ing. William Caiza
= (, )
Ejemplo.Utilizando el mtodo de Euler calcule. = 2 1.2 En x [0,2] con = 0.25 y la condicin inicial (0) = 1
Inicialmente resolviendo analticamente la ecuacin diferencial tenemos:
= 2 1.2
161
Mtodos Numricos
Ing. William Caiza
= ( 2 1.2)
= ( 2 1.2)
3
ln =
1,2 +
3 3
= 3 1,2+
Encontrando el valor de c mediante la condicon iniciual y(o)=1, entonces
03
1 = 3 1,20+
1 =
1 =
=0
0
1
0
0,25
1
0,7
0,5
0,5009375
0,75 0,38196484
4
5
6
7
8
1 0,3210892
1,25 0,30503474
1,5 0,33267851
1,75 0,42000662
2 0,6155722
(, )
-1,2
-0,79625
0,47589063
0,24350259
0,06421784
0,11057509
0,34931244
0,78226233
1,72360216
+1
()
0,7
0,5009375
Error
1
0
0,7446 0,059897932
0,38196484
0,5721 0,124388219
0,3210892
0,4679 0,183661373
0,30503474
0,33267851
0,42000662
0,6155722
1,04647274
0,4203
0,4278
0,5091
0,7308
1,3056
0,236047593
0,286968824
0,346536024
0,425278299
0,528513939
0
1
2
3
0
1
2
3
h=1 pasos de 1
(, )
()
+1
2
3
5
6,40216371
6,70108186 5,55162279 12,2527046 13,6857774
16,3197819 11,6522387 27,9720207 30,1066952
37,1992489 25,4930811 62,69233 66,7839558
83,3377673 56,4612371 139,799004 65,8995022
+ = + ( , )
+ = +
162
Error
4,70108186
9,61870008
20,879467
46,1385184
4,71913255
Mtodos Numricos
Ing. William Caiza
+ =
` +
` +
` +
` +
= (+ , + )
= ( ; )
= 4 0,81 0.5 5
= ,
( , )(+ , + )
+ ,
= 4,7010815
+ = +
+ = + ,
+ = ,
Aplicando Laplace a la ecuacin
` = 4 0,8 0.5
() () + , () =
() + , () =
+
,
() + , () =
+ ,
,
()( + , ) =
() =
+ ,
,
+ ,
, ( + , )
=
+
0,8 ( + 0,5) 0,8 + 0,5
2 2,4 = + 0,5 + 0,8
+ =2
0,5 0,8 = 2,4
163
Mtodos Numricos
Ing. William Caiza
14 0,8 40 0,5
+
13
13
= 2 3+ 12 2 20 + 8,5
Desde x=0 hasta x=4 con un tamao de paso 0,5. La condicin inicial en x=0 es y=1.
Solucin
= 2 3 + 12 2 20 + 8.5
= (2 3 + 12 2 20 + 8.5)
= (2 3 + 12 2 20 + 8.5)
4
+ 4 3 10 2 + 8.5 +
2
04
1= 2 + 4(0)3 10(0)2 + 8.5(0) +
=1
= 0,5 4 + 4 3 10 2 + 8,5 + 1
=
Error:
=
= 3,21875 5,25 = 2,03125
O, expresada como error relativo porcentual, =-63,1.
En el segundo paso:
(1) = (0,5) + (0,5; 5,25)0,5
() = 5,25 + {2(0,5)3+ 12(0,5)2 20(0,5) + 8,5}
() = 5,875
Tabla de comparacin de los valores verdaderos y aproximados mediante el mtodo de
Euler.
Se utiliza la ecuacin + = + ( , ) para implementar el mtodo de Euler:
(0,5) = (0) + (0,1)0,5
Donde y(0)=1 y la pendiente estimada en x=0 es:
(0,1) = 2(0)3+ 12(0)2 20(0) + 8,5 = 8,5
164
Mtodos Numricos
Ing. William Caiza
Por lo tanto,
(0,5) = 1,0 + 8,5(0,5) = 5,25
La solucin verdadera en x=0,5 es:
= 0,5(0,5)4+ 4(0,5)3 10(0,5)2 + 8,5(0,5) + 1 = 3,21872
8
7
6
5
y verd
y euler
3
2
1
0
10
12
f(xi,yi)
0
165
yi+1
1
Mtodos Numricos
Ing. William Caiza
1
2
3
4
0.5
1
1.5
2
0.4798
0.2865
0.3737
2.7183
-1.5000
-0.3438
-0.0391
0.1099
0.2500
0.0781
0.0586
0.1135
3,0000
2,5000
EULER h=0,25
2,0000
EULER h=0,5
1,5000
Y REAL
PUNTO MEDIO
1,0000
RK CUARTO ORDEN
0,5000
0,0000
0
0,5
1,5
2,5
166
Mtodos Numricos
Ing. William Caiza
2
La cual va a ser la pendiente de la expresin de Euler
Resumen de las ecuaciones
+= + ( , ) (Predictor)
+ = +
(, )+(+, +)
(Corrector)
j1
(y y )
|Ea | = | i+1 j i+1 |
(y i+1)
167
Mtodos Numricos
Ing. William Caiza
()
()
f(xi , yi ) 2
h
2!
()
Encontrando f(xi , yi ) :
f(xi , yi ) =
df(xi , yi ) f dx f dy
=
+
dx
x dx y dx
f(xi , yi ) =
Yi+1
df f dy
+
()
dx y dx
df f dy h2
= Yi + f(xi , yi )h + ( + )
()
dx y dx 2!
g
g
+s +
x
y
f(xi + (p1 )h , yi + q11 (k1 )h) = f(xi , yi ) + p1 h x + q11 (k1 )h y + O(h2 ) (7)
Si = / tenemos:
168
Mtodos Numricos
Ing. William Caiza
a1+ a2 = 1
1
a2 p1 = 2
a2 q11 = 2
a1 = 1
1
= 1/2
2
p1 = 1
q11 = 1
Entonces:
1
1
Yi+1 = Yi + ( k1 + k 2 )h
2
2
k1 = f(xi , yi )
METODO HEUN
a2 p1 = 2
a2 q11 = 2
a1 = 1 1 = 0
p1 = 1/2
q11 = 1/2
Entonces:
Yi+1 = Yi + ( k 2 )h
k1 = f(xi , yi )
169
Mtodos Numricos
Ing. William Caiza
170
Mtodos Numricos
Ing. William Caiza
Yi+1 = Yi + dx|
1 d4 y
xi ,yi
4! dx4 xi ,yi
(xi+1 xi ) +
(xi+1 xi )4
1 d2 y
2!
dx2
xi ,yi
(xi+1 xi )2 +
1 d3 y
3! dx3 xi ,yi
(xi+1 xi )3 +
(2)
dy
171
Mtodos Numricos
Ing. William Caiza
Figura 7.9: Cuadro de datos del mtodo de runge kutta 4to orden
3,0000
2,5000
EULER h=0,25
2,0000
EULER h=0,5
1,5000
Y REAL
PUNTO MEDIO
1,0000
RK CUARTO ORDEN
0,5000
0,0000
0
0,5
1,5
2,5
Yi+1 = Yi +
1
(7k1 + 32k 3 + 12k 4 + 32k 5 + 7k 6 )h
90
172
Mtodos Numricos
Ing. William Caiza
Donde:
k1 = f(xi , yi )
1
1
k 2 = f (xi + h , yi + (k1 )h)
4
4
1
1
1
k 3 = f (xi + h , yi + (k1 )h + (k 2 )h))
4
8
8
1
1
k 4 = f (xi + h , yi (k 2 )h + (k 3 )h)
2
2
3
3
9
k 5 = f (xi + h , yi + (k1 )h + (k 4 )h)
4
16
16
3
2
12
12
8
(k 3 )h
(k 4 )h + (k 5 )h)
k 5 = f (xi + h , yi (k1 )h + (k 2 )h +
7
7
7
7
7
Ejemplo 6
Use el mtodo clsico de Runge-Kutta de 5to Orden para integrar numricamente la
siguiente ecuacin:
f(x;y) = -2x 3 + 12 x 2 20x + 8,5 desde x=0 hasta x=4, con un tamao de paso de 0,5.
Condicin inicial en x=0 y y=1.
173
Mtodos Numricos
Ing. William Caiza
Ejercicios propuestos
1.- Resuelva el siguiente problema de valor inicial en el intervalo de t=0 a 2, donde y (0) =
1. Muestre todos sus resultados en la misma grfica.
dy
= yt 3 1.5y
dt
b) Analticamente.
c) Mtodo de Euler con h=0.5 y 0.25.
d) Mtodo RK de cuarto orden con h=0.5.
2.- Resuelva el siguiente problema en el intervalo de x=0 a 1. Usando un tamao de paso
de 0.25 donde y (0)=1. Muestre todos sus resultados en la misma grfica.
dy
= (1 + 2x)y
dx
a) Analticamente.
b) Mtodo de Euler.
c) Mtodo de Heun sin el corrector.
d) Mtodo de Ralston.
e) Mtodo de RK de cuarto orden.
3.- Utilice los mtodos de a) Euler y b) Heun (sin iteracin) para resolver:
174
Mtodos Numricos
Ing. William Caiza
d2 y
t+y=0
dt 2
Donde y (0) = 2 y y (0) = 0. Resuelva de x = 0 a 4, con h = 0.1. Compare los mtodos por
medio de graficar las soluciones.
4.- Resuelva el problema siguiente con el mtodo de RK de cuarto orden:
d2 y
dy
+ 0.6 + 8y = 0
2
dx
dx
Donde y (0) = 4 y y (0) = 0. Resuelva de x = 0 a 5 con h= 0.5. Grafique sus resultados.
5.- Resuelva la ecuacin que se presenta a continuacin, de t = 0 a 3, con h = 0.1, con los
mtodos de a) Heun (sin corrector), y b) RK y Ralston de segundo orden:
dy
= y sen3 (t)
dx
y(0) = 1
y(0) = 1
= 2y + 4e1
dz
yz 2
=
dx
3
8.-El movimiento de un Sistema acoplado masa-resorte (como indica la figura) esta descrito
por la ecuacin diferencial ordinaria que sigue:
m
d2 x
dx
+ c + kx = 0
2
dt
dt
175
Mtodos Numricos
Ing. William Caiza
9.- Si se drena el agua desde un tanque cilndrico vertical por medio de abrir una vlvula en
la base, el lquido fluir rpido cuando el tanque este lleno y despacio conforme se drene.
Como se ve, la tasa a la que el nivel del agua disminuye es:
dy
= ky
dt
Donde k es una constante que depende de la forma del agujero y del area de la seccin
transversal del tanque y agujero de drenaje. La profundidad del agua y se mide en metros y
el tiempo t en minutos.
Si k = 0.006, determine cuanto tiempo se requiere para vaciar el tanque si el nivel de fluido
se encuentra en un inicio a 3m. Resuelva con la aplicacin de la ecuacin de Euler y
escriba un programa de computadora en Excel. Utilice un paso de 0.5 minutos.
10.-La siguiente es una ecuacin diferencial de Segundo orden con valor inicial:
d2 x
dx
+ (5x) + (x + 7)sen(wt) = 0
2
dt
dt
Donde:
dx
(0) = 1,5
dt
x(0) = 6
176
Mtodos Numricos
Ing. William Caiza
Referencia5: mtodos numricos para ingenieros (sexta edicin), autor: Steve C. Chapra,
pg.: 68
177
Mtodos Numricos
Ing. William Caiza
178
Mtodos Numricos
Ing. William Caiza
179
Mtodos Numricos
Ing. William Caiza
ANEXOS
Propiedades de Laplace
L{ f(t) + g(t) } = F(s) + G(s)
L{ a.f(t) } = a.F(s)
1
L{ f(at) } = ()
L{ eat.f(t) } = F(s-a)
L{ f(t-a) } = e-as.F(s)
L{ f (t) } = s.F(s) f(0)
L{ f (t) } = s2.F(s) s.f(0) f(1)
L{ 0 f(T). dt } =
()
F(s)
1
1
2
!
2+1
2
+ 2
2 + 2
1
1
()
cos()
()
( )
. ()
1
()
() ()
()
()
(). ()
180
Mtodos Numricos
Ing. William Caiza
( ())() = () (0) = () 2
( ())() = 2 () (0) (0) = 2 () 2 12
8
(8 )() = 8( )() =
+1
Aplicacin la transformada de Laplace a nuestra ecuacin obtenemos:
8
( 2 2 + 5)() 2 8 =
,
+1
Lo que implica:
2 2 + 10
() = 2
( 2 + 5)( + 1)
3( 1) + 2(4)
1
=
.
2
2
( 1) +
+1
Por lo tanto
3( 1) + 2(4)
1
() = 1 (
) ()
2
2
( 1) +
+1
1
() =
4
}
S 2 + 42
1
4
+ 4() = 2
5
( + 42 )
1
4
()( 2 + 4) = 2
5 ( + 42 )
4
1 20 + ( 2 + 42 )
2 + 36
2
()( + 4) = 2
+ =
=
( + 42 ) 5
5( 2 + 42 )
5( 2 + 42 )
1 2
( + 62 )
( 2 + 62 )
5
() =
() =
5( 2 + 42 )( 2 + 42 )
5( 2 + 42 )( 2 + 42 )
Aplicando la transformada Inversa de Laplace
1 2
( + 62 )
5
1 {()}
1
= {
}
5( 2 + 42 )( 2 + 42 )
2 () 0
181
Mtodos Numricos
Ing. William Caiza
Donde
0
() = {
0<3
3
0
1
<0
0
2
Esto implica
3 + 1
() = 2 2
3
( + 4)
3 + 1
() = 1 ( 2 2
3 ) ()
( + 4)
3 + 1
+
= + 2+ 2
+ 4)
+4
2 ( 2
Resolviendo se obtiene
3
= 4, = 4, = 4, = 4
Asi
3 + 1
31 1 1 3
1
=
+ 2 2
2
+ 4) 4 4
4 + 4 4 + 4
2 ( 2
() = 1 (
3 + 1
3 1
3
1
()
)
=
+
cos(2)
sin(2)
2 ( 2 + 4)
4 4
4
8
Por lo tanto
() = ( 3)( 3)
3 1
3
1
= ( + ( 3) cos(2( 3)) sin(2( 3))) ( 3)
4 4
4
8
182
Mtodos Numricos
Ing. William Caiza
Hallar:
{ + () + ()}
Por la propiedad de linealidad tenemos que:
{4 5 + 6 3 3(4) + 2(2)}
= 4{ 5 } + 6{ 3 } 3{(4)} + 2{cos(2)}
1
3!
4
=4
+6 43 2
+2 2
5
+ 16
+4
4
36
12
2
=
+
+
5 4 2 + 16 2 + 4
Hallar:
{( + ) + ()}
Por la propiedad de linealidad tenemos que:
{( + 2)2 + 4 (2)}
= {( + 2)2 } + { 4 cosh(2)}
= {( 2 + 4 + 4) } + { 4 cosh(2)}
= {( 2 } + 4{ } + 4{ } + { 4 cosh(2)}
Aplicando el primer teorema de la traslacin:
= {( 2 } + 4{ } + 4{ } + { 4 cosh(2)}
2!
4
4
+4
=
+
+
+
( 1)3 ( 1)2 1 ( + 4)2 4
5 4 + 29 3 + 9 2 21 + 20
=
( 1)3 ( + 2)( + 6)
183
Mtodos Numricos
Ing. William Caiza
Anexo de optimizacin
Multiplicadores de Lagrange
En los problemas de optimizacin, el mtodo de los multiplicadores de Lagrange, llamados
as en honor a Joseph Louis Lagrange, es un procedimiento para encontrar los mximos y
mnimos de funciones de mltiples variables sujetas a restricciones. Este mtodo reduce el
problema restringido con n variables a uno sin restricciones de n + k variables, donde k es
igual al nmero de restricciones, y cuyas ecuaciones pueden ser resueltas ms fcilmente.
Estas nuevas variables escalares desconocidas, una para cada restriccin, son llamadas
multiplicadores de Lagrange. El mtodo dice que los puntos donde la funcin tiene un
extremo condicionado con k restricciones, estn entre los puntos estacionarios de una
nueva funcin sin restricciones construida como una combinacin lineal de la funcin y las
funciones implicadas en las restricciones, cuyos coeficientes son los multiplicadores.
La demostracin usa derivadas parciales y la regla de la cadena para funciones de varias
variables. Se trata de extraer una funcin implcita de las restricciones, y encontrar las
condiciones para que las derivadas parciales con respecto a lasvariables independientes
de la funcin sean iguales a cero.
donde c es una constante. Podemos visualizar las curvas de nivel de f dadas por
para varios valores de dn, y el contorno de g dado por g(x, y) = c. Supongamos que
hablamos de la curva de nivel donde g= c. Entonces, en general, las curvas de nivel
de f y g sern distintas, y la curva g = c por lo general intersectar y cruzar muchos
contornos de f. En general, movindose a travs de la lnea g=c podemos incrementar o
disminuir el valor de f. Slo cuando g=c (el contorno que estamos siguiendo) toca
tangencialmente (no corta) una curva de nivel de f, no se incrementa o disminuye el valor
de f. Esto ocurre en el extremo local restringido y en los puntos de inflexin restringidos def.
184
Mtodos Numricos
Ing. William Caiza
Un ejemplo familiar puede ser obtenido de los mapas climatolgicos, con sus curvas de
nivel de presin y temperatura (isbaras e isotermas respectivamente): el extremo
restringido ocurrir donde los mapas superpuestos muestren curvas que se tocan.
Geomtricamente traducimos la condicin de tangencia diciendo que los gradientes
de f y g son vectores paralelos en el mximo. Introduciendo un nuevo escalar, ,
resolvemos
[(, ) ((, ) )] = 0
para 0.
Una vez determinados los valores de , volvemos al nmero original de variables y as continuamos
encontrando el extremo de la nueva ecuacin no restringida.
lo que es equivalente a
Demostracin
185
Mtodos Numricos
Ing. William Caiza
para todo v vector tangente a M en p (es decir, sea cual sea la direccin en la que nos desplacemos en M, el
incremento de f a primer orden es nulo) La anterior condicin significa que
es perpendicular al tangente
a M en p y dado que dim M=n-1 existe un nico vector perpendicular linealmente independiente que viene
dado por
el conjunto de vectores
186
de modo que al
Mtodos Numricos
Ing. William Caiza
187
Mtodos Numricos
Ing. William Caiza
188
Mtodos Numricos
Ing. William Caiza
Estructuras de control
Matlab se manejan principalmente tres estructuras de control:
Repeticin bajo condiciones: while ... end Se puede, pero no es habitual, utilizar
estas estructuras en la ventana de trabajo de Matlab.
Condicional
Si queremos ejecutar un conjunto de instrucciones en el caso de que se cumpla una
condicin, usaremos una estructura if.
La manera ms sencilla de usarla es la siguiente:
if expresin lgica 1
Conjunto de ordenes 1 (de Matlab )
end
El conjunto de ordenes 1 se ejecuta si la expresin lgica 1 es verdadera.
189
Mtodos Numricos
Ing. William Caiza
Control de flujo
MATLAB, al igual que la mayora de los lenguajes de programacin, incluye instrucciones
para el control del flujo de sus programas, incrementando de esta forma la potencia de los
clculos realizables.
Bucles FOR
Estos bucles permiten la ejecucin de un comando o grupo de comandos, un nmero fijo
predeterminado de veces. Por ejemplo:
for i=1:n, x(i)=0, end
Asigna el valor 0 a los n primeros elementos del vector x. Si n es menor que 1, el comando
central no se ejecutar ninguna vez. Si x no existe, o bien tiene menos de n elementos, se
reservar memoria adicional de forma automtica.
Una prctica comn es la utilizacin de bucles anidados:
for i=1:m
for j=1:m
A(i,j)=1/(i+j-1) ;
end
end
Es importante no olvidar que cada sentencia for debe concluir con su end correspondiente.
Bucles WHILE
Los bucles WHILE permiten la ejecucin de un comando o grupo de comandos un nmero
indeterminado de veces bajo el control de una condicin lgica. Esto es, los comandos se
ejecutarn mientras} se verifique dicha condicin.
Como ejemplo mostramos los comandos necesarios para averiguar cul es el primer
nmero entero cuyo factorial es un nmero de 100 dgitos:
n=1
while prod(1:n)< 1e100, n=n+1; end;
Sentencia IF
En su forma ms simple, la sentencia if se escribe en la forma siguiente (obsrvese que a
diferencia de C/C++/Java la condicin no va entre parntesis, aunque se pueden poner si
se desea):
if condicion
190
Mtodos Numricos
Ing. William Caiza
sentencias
end
Existe tambin la bifurcacin mltiple, en la que pueden concatenarse tantas condiciones
como se desee, y que tiene la forma:
if condicion1
bloque1
elseif condicion2
bloque2
else %opcin por defecto para cuando no se cumplen las condiciones 1 ni 2
bloque3
end
Donde la opcin por defecto else puede ser omitida: si no est presente no se hace nada
en caso de que no se cumpla ninguna de las condiciones que se han chequeado. Un
ejemplo de uso podra ser:
if I == J
A(I,J) = 2;
elseif abs(I-J) == 1
A(I,J) = -1;
else
A(I,J) = 0;
end
Es interesante aqu observar qu obtenemos al ejecutar las sentencias anteriores dentro de
dos bucles for anidados. Ejecutando help relop se puede obtener informacin sobre el
funcionamiento de los operadores relacionales utilizados en las sentencias de control.
Introduccin a la Interface Grfica de Usuario (GUI)
Desde el punto de vista de la programacin, una GUI es una visualizacin grafica de una o
ms ventanas que contienen controles, llamados componentes, que permiten a un usuario
realizar tareas en forma interactiva.
GUI es un entorno de programacin grfica, que ofrece Matlab para poder realizar y
ejecutar diversos programas, el entorno de Matlab tiene las caractersticas bsicas de
todos los programas visuales como Visual Basic o Visual C++.
Para poder realizar un programa en GUI, se debe seguir los siguientes pasos:
1. En la ventana principal de Matlab, se debe ejecutar el comando guide, obteniendo
la siguiente ventana
191
Mtodos Numricos
Ing. William Caiza
192
Mtodos Numricos
Ing. William Caiza
Figura A.1
Ejemplo 2:
El ejemplo hace uso del objeto axes, para graficar una funcin
193
Mtodos Numricos
Ing. William Caiza
Figura B.1
Ejemplo 3:
Se hace uso de dos objetos axes, en el cual se puede ver su uso para realizar grficos.
function pushbutton2_Callback(hObject, eventdata, handles)
% En este ejemplo mostramos como se grafican ms de una funcin.
x=linspace(0,10,100);
plot(handles.axes1,x,cos(x));
plot(handles.axes2,x,x.^2);
Figura B.2
Ejemplo 4:
En el ejemplo se muestra un men de opciones de colores, que al elegir nos muestra el color
seleccionado.
194
Mtodos Numricos
Ing. William Caiza
Primera forma:
function popupmenu1_Callback(hObject, eventdata, handles)
texto=get(handles.popupmenu1,'Value');
switch texto
case 1
color= 'y';
case 2
color='r'
case 3
color= [ 1 0 1];
end
set(handles.text1,'Backgroundcolor',color);
Segunda forma:
function popupmenu1_Callback(hObject, eventdata, handles)
clc;
contenido = get(hObject,'String');
valor =get(hObject,'Value');% El valor nmerico de la posicin
texto= contenido(valor)% muestra en contenido dentro de la matriz
switch cell2mat(texto)
case 'Amarillo'
color= 'y';
case 'Azul'
color='b';
case 'Verde'
color='g';
end
set(handles.text1,'Backgroundcolor',color);
Figura C.1
195
Mtodos Numricos
Ing. William Caiza
Ejemplo 5:
En este ejemplo mostramos una lista con operaciones aritmticas, ingresando los nmeros n1=5 y
n2=10, procedemos a seleccionar una de las operaciones y ver su resultado.
function listbox1_Callback(hObject, eventdata, handles)
contenido=get(hObject,'string');
a=get(hObject,'Value');
operaciones=contenido(a);
n1=5,n2=10;
switch cell2mat(operaciones)
case 'Suma'
res=n1+n2;
case 'Resta'
res=n1-n2;
case 'Multiplicacin'
res=n1*n2;
case 'Divisin'
res=n1/n2;
end
set(handles.text1,'string',res);
Figura D.1
Ejemplo 5:
Se hace uso de radiobutton, para elegir comidas y se traslada el pedido a un text.
function pushbutton1_Callback(hObject, eventdata, handles)
196
Mtodos Numricos
Ing. William Caiza
elige_valor = get(handles.uipanel1,'SelectedObject');
elige_cadena=get(elige_valor,'String')
set(handles.text2,'String',elige_cadena)
Ejemplo 6:
% En este ejemplo se muestra como con el uso de Radio Button se puede cambiar el
tamao de letra en un mensaje.
197
Mtodos Numricos
Ing. William Caiza
Figura E.1
3. Radio Button: Indica una opcin que puede ser seleccionada y realiza una accin
determinada. Button Group: Solo se puede tener un Button Group en la Gui, permite
exclusividad de seleccin con los radio button.
198
Mtodos Numricos
Ing. William Caiza
grid off;
end
Figura F.1
3. Check Box: Indica el estado (on off) de un atributo.
Toggle Button: Un botn con solo 2 estados (on off)
G) Realizaremos un ejemplo de cmo usar el Slider.
% En este ejemplo se muestra como poder aumentar o disminuir la ampliacin de una
grfica con el uso de Slide.
1. Creamos una nuevo Gui y colocamos cada elemento que usaremos.
2. Realizamos el algoritmo que muestre la funcin de cada elemento
function slider1_Callback(hObject, eventdata, handles)
A=get(hObject,'Value');
x=linspace(0,10,100);
y=A*sin(A*x)
plot(x,y);
199
Mtodos Numricos
Ing. William Caiza
Figura G.1
3. Slider: Una barra que nos permite deslizarnos para aumentar o disminuir el rango
de valores.
200
Mtodos Numricos
Ing. William Caiza
Figura H.1
201
Mtodos Numricos
Ing. William Caiza
Descripcin:
1. Al valor1 le asignamos el contenido del objeto edit1, mediante la funcin,
str2double realiza la transformacin de string a un valor numrico; get es la
funcin por medio de la cual obtenemos los valores ingresados por el usuario, cuyos
componentes son: handles.edit1, la instruccin anterior indica a la funcin get,
que el valor extrado ser del objeto edit1, string el comando indica que el valor
extrado ser una cadena.
202
Mtodos Numricos
Ing. William Caiza
203
Mtodos Numricos
Ing. William Caiza
Descripcin:
1. Asignamos a la variable n, el nmero de datos a realizarse las operaciones, se
idntica manera al programa anterior, se utiliza la funcin str2double para pasar de
cadena a nmero como se verifica en la instruccin: str2double(inputdlg(Cuantos
nmeros desea ingresar));
2. Utilizamos el comando for end, para poder ingresar los datos al programa.
3.- En la tercera lnea creamos la variable etiqueta por medio del cual se da una
mejor visualizacin al ingreso de los datos.
4.- Utilizamos la variable s como inicializador de la suma de los nmeros ingresados,
mediante la cual podemos realizar la suma de los datos.
5.- calculamos el promedio, utilizando la suma anterior dividida para el nmero de
datos ingresados.
6.- usamos el comando set para poder visualizar los resultados como indica el
siguiente cdigo: set(handles.txt3, string,etiqueta).
204
Mtodos Numricos
Ing. William Caiza
205
Mtodos Numricos
Ing. William Caiza
mul=mul*x(i)
end
set(handles.text1,'string',mul);
Ejecucin del programa
Suma
Multiplicacin
Pushbutton3
1. En la primera lnea de cdigo importamos los datos del edit1
2. En la segunda lnea de cdigo importo el dato ingresado del Listbox1, el cual ser mi
dato antiguo.
206
Mtodos Numricos
Ing. William Caiza
3. En la tercera lnea creo mu nuevo dato concatenando verticalmente los datos del
Listbox1 con el comando strvcat.
4. En la cuarta lnea imprimo mis datos concatenados en el Listbox1.
Pushbutton1
1. En la primera lnea de cdigo creo un acumulador que este igualado a 0, mientras
que en la segunda lnea meto en una variable a los datos encontrados en el Listbox
2. Creo un bucle con un For que empiece desde 1 y recorra hasta el nmero de datos
ingresados en el Listbox
3. Dentro del for acumulo los datos (acum=acum+ datos), de esta manera los datos
quedan sumados.
Pushbutton4
1. En la primera lnea de cdigo creo una variable que este igualado a 1 ya que con
esta variable vamos a realizar las multiplicaciones y la multiplicacin por 0 es 0,
mientras que en la segunda lnea meto en una variable a los datos encontrados en el
Listbox
2. Creo un bucle con un For que empiece desde 1 y recorra hasta el nmero de datos
ingresados en el Listbox
3. Dentro del for multiplico los datos (mul=mul*datos), de esta manera los datos
quedan multiplicados.
Ejemplo4: Importacin y exportacin de datos entre Ecxel y Matlab
Con la funcin xlsread Matlab importa automticamente los datos del archivo de Excel y
con xlswrite exportamos los datos hacia Excel.
Cdigo:
% --- Executes on button press in pushbutton1.
function pushbutton1_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton1 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
Ruta=inputdlg('Ingrese ruta de archivo xlsx(con extensin)');
set(handles.text2,'string',Ruta);
A=cell2mat(Ruta);
B=xlsread(A);
set(handles.uitable1,'data',B);
% --- Executes on button press in pushbutton2.
function pushbutton2_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton2 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
B=get(handles.uitable1,'data');
Ruta2=inputdlg('Ingrese ruta de destino (con extensin):');
set(handles.text3,'string',Ruta2);
C=cell2mat(Ruta2);
xlswrite(C,B);
207
Mtodos Numricos
Ing. William Caiza
Descripcin
Botn 1:
1.- En la primera lnea de cdigo usamos la funcin inputdlg para ingresar por un cuadro de
dilogo la direccin del archivo a leer, presentamos la direccin en la segunda lnea.
2.- En la tercera lnea usamos la funcin cell2mat en la variable ruta para convertir el vector
tipo cell a vector normal.
3.- En la cuarta lnea usamos la funcin xlsread para importar los datos desde la ruta
ingresada.
4.- En la quinta lnea presentamos los datos importados en una tabla de datos.
Botn 2:
1.- En la primera lnea obtenemos los datos de la tabla.
2.- En la segunda lnea ingresamos la ruta de destino para nuestro nuevo archivo y
presentamos la misma en la tercera lnea.
3.- En la cuarta lnea usamos la funcin cell2mat para convertir el vector tipo cell a vector
normal.
4.- En la quinta lnea exportamos el archivo, con la funcin xlswrite, a la ruta ingresada con
los datos obtenidos.
208
Mtodos Numricos
Ing. William Caiza
x=xi:0.1:xf;
[f1 c]=size(x);
for i=1:c
y(i)=f(x(i));
end
plot(handles.axes1,x,y ,'g');
hold on;
209
Mtodos Numricos
Ing. William Caiza
Descripcin
1) Usamos la funcin (char) para convertir la funcin en una cadena de caracteres y
poder evaluarla
2)
3)
4)
5)
La funcin hold on, nos permite dibuja barias lneas en una misma figura.
La funcin lebel podemos poner nombre a los ejes de la grafica
210
Mtodos Numricos
Ing. William Caiza
211
Mtodos Numricos
Ing. William Caiza
212
Mtodos Numricos
Ing. William Caiza
datos1=[x' y'];
datos2=[xi xf'];
213
Mtodos Numricos
Ing. William Caiza
214
Mtodos Numricos
Ing. William Caiza
215
Mtodos Numricos
Ing. William Caiza
Descripcin:
1.- En la primera lnea de cdigo creamos una sentencia if (de condicin) para obtener el
valor numrico del elemento checkbox ( 1 como verdadero y cero como falso).
2.- Se enva un cuadro de mensaje, con la sentencia msgbox, enviando Seleccionado si
es nmero 1 No seleccionado si es cualquier otro nmero.
216
Mtodos Numricos
Ing. William Caiza
(1 , 2 , . . , ) = 0
Al igual que se hizo en el caso de una variable, supongamos que en un dominio cerrado D
IRn f (x) es una funcin de clase (C2(D))n. Y supongamos adems que la ecuacin
anterior admite una solucin x en el dominio D. Para cualquier otro vector x(0) D ,
denotando por _x al vector tal que como = 0 + . la expresin del desarrollo en serie
de Taylor nos permitira afirmar, para cada una de las ecuaciones del sistema, que existen
valores _j [0, 1] (j = 1, 2, .., n) tales que:
0 = ( ) = ( (0) + )
1
217
Mtodos Numricos
Ing. William Caiza
suficientemente cerca de la solucin (es decir si es suficientemente pequeo) los
1
( (0) )
pensarse que aunque (1) sea diferente de ser un vector ms prximo a que (0)
pues lo hemos obtenido aproximando el valor x que nos llevaba de (0) a Con ello el
mtodo de Newton-Raphson propone repetir este proceso de forma recursiva hasta estar lo
suficientemente cercanos a la solucin buscada. Ms concretamente el mtodo de NewtonRaphson consiste en:
Dado un vector (0) , generar la sucesin:
(+1) = () [Jf ( () )]
( () )}
=0
Sobre este mtodo, en primer lugar, puede observarse que si denotamos por:
() = [Jf ( () )]
()
218
Mtodos Numricos
Ing. William Caiza
x, y D
x, y D
Demostracin.
Siendo x e y dos vectores genricos de D denotemos por q(t) a la funcin vectorial
dependiente de un nico parmetro real definida por:
() = ( + ( ))
Esta funcin, habida cuenta de las hiptesis realizadas sobre f es derivable t [0,1]. As,
denotando por z = y + t (x y) se tiene que:
219
Mtodos Numricos
Ing. William Caiza
() =
( + ( + ) ( )) ( + ( ))
() = lim
0
( + ( )) ()
= [Jf ()]( )
0
= lim
De donde:
() (0) = [Jf ()] [Jf ()]( )
[Jf ()] [Jf ()] =
= [Jf ( + ( )))] [Jf ()]
t 2
1
()
(0)
( () (0)
x, y D
Con ayuda de este lema puede procederse a presentar y demostrar el siguiente teorema:
Teorema 3.6. Siendo D un cerrado de y siendo f : D D una aplicacin de clase
( ()) para la que, utilizando alguna norma vectorial y para la norma matricial a
ella subordinada, se verifican las dos hiptesis siguientes:
220
Mtodos Numricos
Ing. William Caiza
x, y D
x, y D
(() )}
obtenida a partir
=
(+) ()
() ()
(+) () = [ (() )]
y como de:
(+1) = () [Jf ( () )]
( () )
Se deduce que:
1
( () ) = [Jf ( () )] ( (+1) = () )
Se tiene, utilizando el lema presente, que:
(+1) () ( () ) = ( () ) ( () ) [Jf ( () )]
( (+1) () )
2
() (1)
2
El teorema anterior nos muestra que la relacin entre la norma del vector diferencia entre
las aproximaciones halladas en las iteraciones (i+1) e i es proporcional (con factor =
al cuadrado de la norma del vector diferencia entre las aproximaciones halladas en las
iteraciones i e (i 1). Pero por s solo este teorema no nos justifica que el mtodo converja.
221
Mtodos Numricos
Ing. William Caiza
2
Simplemente nos indica que si en algn momento () (1) < (1/C) entonces se
habr logrado una sucesin de Cauchy y, al estar en un completo, por ello una sucesin
convergente. Para acabar de obtener un resultado que garantice la convergencia es
necesario imponer ms condiciones en el mtodo. Como por ejemplo las que se recogen
en el teorema siguiente que, junto a las hiptesis a) y b) del teorema anterior aade una
nueva:
Teorema 3.7. Siendo D un cerrado de y siendo f : D D una aplicacin de clase
( ()) para la que, utilizando alguna norma vectorial y para la norma matricial a
ella subordinada, se verifican las dos hiptesis siguientes:
1) IR+ / () [ ()]
x, y D
x, y D
(() )}
obtenida a partir de
=
(() )}
que es una
=
donde =
()
(1) 2
< 1.
POR NEWTON
Este mtodo se basa en utilizar el desarrollo de Taylor. Escribimos x1 = x0 + x,
f (x1) = f (x0) + f (x0) x + o (x2) , y suponiendo que f (x1) = 0, queda
1 = 0
(0 )
( )
222
Mtodos Numricos
Ing. William Caiza
( )
( )
Otro modo de obtener este metodo consiste en suponer que f : [a, b] R es continua en
[a, b] y tal que f 00(x) no cambia de signo en [a, b] con f (a)f (b) < 0. El proceso para
encontrar un x tal que f (x) = 0 consiste en lo siguiente: 1) Fijamos c = a o b, tal que f (c)f
00(x) > 0, x (a, b). 2) x0 = c. 3) Hallamos la ecuacion de la tangente que pasa por (x0, f
(x0)) y el punto de corte de dicha tangente con el eje X. El proceso se repite hasta
conseguir una sucesion de aproximaciones que converge a la raiz de f (x) = 0.
La ecuacin de la recta tangente a la curva y = f (x) en (xn1, f (xn1)) viene dada por
y = f (xn1) + f 0 (xn1)(x xn1) .
La abscisa del punto de interseccin de la recta tangente con el eje X,
xn = xn1 f (xn1) f 0(xn1) ,
y mediante esta relacin obtenemos una sucesin, {xn} n=1 de aproximaciones al valor
de la raz buscada. El error que se comete en la iteracin n-sima sera
| r xn |< M 2m | xn xn1 | ,
Donde 0 < m | f (x) | y | f 00(x) | M, x (a, b)
223
Mtodos Numricos
Ing. William Caiza
Suponemos que se quiere buscar una raz de la funcin f (x) = x 3 + 4x 2 10 en [1, 2].
Se pueden hacer diferentes elecciones de la funcin (x), por ejemplo,
a) 1(x) = x 3 4 2 + 10;
1
Ejercicio
Calcular el vector (k) de la iteracin k-sima cuando k=4 si se utiliza el mtodo de NewtonRaphson en la resolucin del sistema no lineal: 2 xcos( y ) = 0, 2 ysin( x ) = 0, tomando
x(0) = [0,0]T. Calcular en cada iteracin k el valor de la estimacin del error absoluto ||e(k)||
= || x(k) x(k1) || y tambin del error relativo || x(k) x(k1) || / || x(k) ||. Dar los
resultados con cuatro decimales exactos.
Queremos resolver un sistema de ecuaciones del tipo: f1(x1,x2,...,xn) = 0, f2(x1,x2,...,xn) =
0 , ... fn(x1,x2,...,xn) = 0 donde las funciones fi(x), i=1,2,...,n son arbitrarias. Llamando
entonces a F(x) = [f1(x),f2(x), ..., fn(x)]T queremos resolver F(x) = 0, con F:Rn Rn . Si se
usa el mtodo de Newton-Raphson, esto se traduce en usar el esquema iterativo:
x(k+1) = x(k) (J(x(k)))1 F(x(k)), k=0,1,2,...
J(x(k)) = [
fi(x)
xj
x = (k)
, 1 i, j n, la matriz de Jacobi.
Por tanto, al resolver el sistema por Newton-Raphson, debemos resolver en cada iteracin
el sistema lineal: J(x(k)) vc(k) = F(x(k)) y obtener luego la siguiente iteracin usando este
vector de correccin recin calculado: x(k+1) = x(k) + vc(k) En nuestro caso la funcin es:
224
Mtodos Numricos
Ing. William Caiza
F(x) =[
2 x cos( y )
]
2 y sin( x )
y la matriz de Jacobi:
J(x) =[
2 sin( y )
]
cos( x ) 2
1
0
] , F(x0 ) = [ ]
0
2
2 0
]
1 2
1
()(0) = [ ]
0
A continuacin viene la grfica donde aparecen las funciones que intervienen en el sistema,
el punto de interseccin pedido, la iteracin solicitada en el enunciado y el conjunto de
puntos calculados en las diferentes iteraciones. La aproximacin inicial aparece con un
pequeo crculo rojo.
225
Mtodos Numricos
Ing. William Caiza
Ejercicio 2
Sea la ecuacin no lineal siguiente:
() = 3 cos() = 0
a) Aplicando el mtodo de Newton encontrar la raz prxima al valor 0 = 1.0 con una
precisin de 102.
Mtodo de Newton-Raphson.
() = 3 cos() = 0
0 = 1
Formula:
(1 )
( 1)
(1 )
1 3 cos[1 ]
1 3 cos[1 ]
= 1
=
+
1
31 2 sin[1 ]
31 2 + sin[1 ]
= 1
Tabla de datos
0
1
2
3
-1
-0.880333
-0.865684
-0.865474
( )
0.459698
0.045351
0.000632
1.289200x107
( )
-3.841471
-3.095909
-3.009766
-3.008539
Donde
() = () =
Remplazamos el 0 = 1, en la ecuacin para obtener el valor de ( )
226
Error [%]
13.59
16.92
0.02
Mtodos Numricos
Ing. William Caiza
227
Mtodos Numricos
Ing. William Caiza
EJERCICIO 3
Representacion de la funcin () = () = . Aplicando el mtodo de Newton
encontrar el cero de la funcin
()
1
=
+
2
5
Prximo al valor de 0 = 1.5, iterando hasta que se cumpla que el error sea menor que
103
Frmulas
(1 )
= 1
(1 )
(
)
1
+ e
(3 + 10(1 + ) 5 [ ])
2
5
= 1
=
1
5( +2 )
2
Tabla de datos
0
1
2
3
1.5
1.177243
1.213457
1.214065
( )
-0.179602
0.026539
0.000431
1.177954x107
Error [%]
27.41
2.98
0.05
()
(1.5) =
()
1
+ (1.5) = .
2
5
228
Mtodos Numricos
Ing. William Caiza
( )
(1.5)
1
+ e1.5
2
= 1 5
= .
1
1.5
2(1.5)
ERROR
| 1 |
100%
| |
|0.322757 1.5|
=
100% = . %
|0.322757|
=
()
Problema 1. Aplquese el mtodo de Punto Fijo para sistemas no lineales para aproximar el sistema
de ecuaciones no lineales siguiente, iniciando el mtodo en el punto inicial
P0 = (1(0) , 2(0) , 3(0) )= (0.1, 0.1, 0.1) e iterando hasta que
Pi+1 - Pi 105
1 (1, 2, 3) = 3 1 (2 3) 1/2 = 0,
2 (1, 2, 3) = 12 81 (2 0.1)2 + 3 + 1.06 = 0,
3 (1, 2, 3) = + 20 3 + (10 3)/ 3 = 0.
1
229
Mtodos Numricos
Ing. William Caiza
1
(2 3) + 3 1 + 2
0
1 (1, 2, 3) = [12 81 (2 0.1)2 + 3 + 1.06]=[0]
1
0
+ 20 3 + + (3 + 10 )
1
3 ]
El lmite de P es:
(0)
(0)
(0)
lim() = = (1 , 2 , 3 )
(0)
1
=
(0)
2
(0)
[ 3 ]
cos(((21) ) ((31) )) + 1 )
2
1
((1) ) + ((1) ) + 1.06 0.1
1
3
9
(1)
[20
((1
(1)
)(2
) + 1 (3 + 10
)) ]
Solucin.
Resolviendo por el mtodo de punto fijo multivariable, con sustituciones simultaneas, primero
se despejaran de las ecuaciones las variables de la siguiente forma:
1
1
g1=x1=3 cos(2 3 ) + 6
1
g3=x3= 20 1 2
103
60
Para verificar que el sistema converge se debern cumplir con las siguientes condiciones en las
formulas con derivadas parciales:
1
2
3
21
1
|
|+|
|+|
|= 0+|
| + | 2 1 2 | < 1
1
2
3
20
1812 + (3 ) + 1.06
1
2
3
1
1
|
|+|
|+|
| = | 3 (2 3 )| + 0 + | 2 1 2 | < 1
1
2
3
3
20
1
2
3
1
cos(3 )
|
|+|
|+|
| = | 3 (2 3 )| + |
|+0<1
2
1
2
3
3
181 + (3 ) + 1.06
Luego de probar algunos valores se tomarn como valores iniciales:
1 0 ,2 0 ,3 0 = 0.1,0.1,0.1
230
Mtodos Numricos
Ing. William Caiza
1ra iteracin
2da iteracin
(2)
1
(2)
1
1
(1) (1)
cos(2 3 ) + = 0.499996
3
6
1
(3(1) )2 + (3(1) ) + 1.06 0.1 = 0000028
9
(1) (1)
1
10 3
(1)
3 = 1 2
= 0.524101
20
60
=
(2)
(1) 2
(1) 2
(2)
(2)
(1) 2
= (1 1 ) + (2 2 ) + (3 3 ) = 0.009473
Luego evaluando las derivadas parciales para determinar la convergencia del mtodo:
Table de datos
0
1
2
3
4
5
0.1
0.499983
0.499981
0.500000
0.500000
0.500000
0.1
0.020176
-0.000028
-0.000028
0.000000
0.000000
-0.1
-0.524101
-0.524106
-0.523598
-0.523598
-0.523599
= 0.5
y=0
z = 0.523599
= 7.1107
231
0.745561
0.020204
0.000508
2.8105
7.1107
Mtodos Numricos
Ing. William Caiza
232
Mtodos Numricos
Ing. William Caiza
233