Académique Documents
Professionnel Documents
Culture Documents
PUNTO FIJO
Encuentre la raz real positiva de f(x) = ln(x) x + 2 = 0, usando el mtodo del punto fijo, con tolerancias
o errores menores a 10-4, 10-5 y 10-6 para la variable x, con un punto inicial x0 = 3.5.
SOLUCIN:
1. Despejando x, se tiene: x= ln(x) + 2, donde g(x) = ln(x) + 2 y g(x) = 1/x.
2. Copie el archivo ecua_PuntoFijo.m a una carpeta creada en MATLAB y bralo para escribir la funcin
g(x) y su derivada g(x). Grbelo y cierre dicho archivo m.
3. Copie a la misma carpeta el archivo PuntoFijo.m.
4. Escriba en el workspace lo siguiente:
>> PuntoFijo(100)
Arch. Ecuacin = ecua_PuntoFijo
Error = 0.0001
Valor inicial xo = 3.5
Se obtiene el siguiente resultado:
METODO DE PUNTO FIJO
Arch. Ecuacin = ecua_PuntoFijo
Error
= 0.0001
Valor inicial xo = 3.5
Mtodos Numricos
Pgina 1
------------------------------------------------ite.
Xn
Xn+1
distancia
------------------------------------------------0
3.5000000
1
3.5000000 3.2527630 0.2472370
2
3.2527630 3.1795048 0.0732582
3
3.1795048 3.1567255 0.0227793
4
3.1567255 3.1495352 0.0071902
5
3.1495352 3.1472549 0.0022803
6
3.1472549 3.1465306 0.0007243
7
3.1465306 3.1463005 0.0002302
8
3.1463005 3.1462273 0.0000731
------------------------------------------------La raz es = 3.146227303
ans =
3.1462
Tambin se puede escribir:
>> Sol=PuntoFijo(100,'ecua_PuntoFijo',0.0001,3.5)
Sol =
3.1462
Si se quiere saber la cantidad de iteraciones realizadas, entonces se escribe:
>> [Sol,ite]=PuntoFijo(100,'ecua_PuntoFijo',0.0001,3.5)
Sol =
3.1462
ite =
8
En forma general, la frmula es la siguiente: [Sol,ite]=PuntoFijo(MaxIte,'Nombre_Archivo',error,xo)
Cuando no se cumple el criterio de convergencia, entonces se tiene (x0 = 1):
>> PuntoFijo(100,'ecua_PuntoFijo',0.0001,1)
xo No cumple con el criterio de convergencia |g(x)|<1
Mtodos Numricos
Pgina 2
MTODO DE LA SECANTE
1. Copie a una carpeta de MATLAB los archivos Secante.m y MetodoSecante.m
2. En el workspace escribir lo siguiente:
>> MetodoSecante(100);
METODO DE LA SECANTE
Arch. Ecuacin = Secante
Error
= 0.0001
Valor de Xo = 3
Valor de X1 = 3.5
---------------------------------------------------------ite.
Xn
Xn+1
Xn+2
f(Xn+2)
---------------------------------------------------------0 3.00000 3.50000
1 3.00000 3.50000 3.14257 2.00000
2 3.50000 3.14257 3.14611 0.00247
---------------------------------------------------------La raiz es = 3.14611
Otra forma de calcular la raz de manera directa es:
>> sol=MetodoSecante(100,'Secante',0.0001,3,3.5)
sol =
3.1461
Mtodos Numricos
Pgina 3
MTODO DE LA BISECCION
1. Copie a una carpeta de MATLAB los archivos Biseccion.m y MetodoBiseccion.m
2. Encuentre una raz para y = f(x) = x3 + 2x2 + 10x 20, Error = 0.001; xi = 1; xD = 2.
3. En el workspace escribir lo siguiente:
>> MetodoBiseccion(100);
METODO DE LA BISECCION
Arch. Ecuacin = Biseccion
Error
= 0.001
Valor de xi = 1
Valor de xd = 2
---------------------------------------------------------ite.
Xi
Xd
Xm
f(Xm)
---------------------------------------------------------0 1.00000 2.00000
1 1.00000 2.00000 1.50000 2.87500
2 1.00000 1.50000 1.25000 -2.42188
3 1.25000 1.50000 1.37500 0.13086
4 1.25000 1.37500 1.31250 -1.16870
Mtodos Numricos
Pgina 4
MTODOS ACELERADOS
MTODO DE STEFFENSEN - AITKEN
(
Mtodos Numricos
Pgina 5
10 1.60121 1.72840
0.127186
11 1.72840 5.28538
3.556982
12 5.28538 1.59650
3.688884
13 1.59650 1.60267
0.006175
14 1.60267 1.76737
0.164699
15 1.76737 1.59626
0.171115
16 1.59626 1.59627
0.000015
17 1.59627 1.59667
0.000402
18 1.59667 1.59626
0.000418
---------------------------------------------------------La raiz es = 1.59626
Otra forma de calcular la raz de manera directa es:
>> sol=MetodoSteffensen(100,'Steffensen',0.001,1)
sol =
1.5963
>> NewtonRaphson_SegundoOrden(100);
METODO DE NEWTON RAPHSON 2do ORDEN
Arch. Ecuacin = NewtonRaphsonSegundoOrden
Error
= 0.001
Valor de Inicio Xo = 1
------------------------------------------------ite.
Xn
Xn+1
f(Xn+1)
------------------------------------------------0 1.00000
1 1.00000 1.36728 -0.032140
2 1.36728 1.36917
0.007708
3 1.36917 1.36881 -0.000008
------------------------------------------------La raiz es = 1.36881
Otra forma de calcular la raz de manera directa es:
>> sol=NewtonRaphson_SegundoOrden(100,'NewtonRaphsonSegundoOrden',0.001,1)
sol =
1.3688
Mtodos Numricos
Pgina 6
Mtodos Numricos
Pgina 7
Para cambiar la funcin y = f(x) tiene que editar los Archivos Script desde MATLAB. Estos archivos son los
siguientes:
ecua_PuntoFijo.m
NewtonRaphson.m
Secante.m
FalsaPosicion.m
Biseccion.m
Steffensen.m
NewtonRaphsonSegundoOrden.m
Mtodos Numricos
Pgina 8