DEBER MTODOS NUMRICOS
5.1 sese el mtodo de Newton-Raphson para determinar la raz
mayor de:
f ( x )=0.875 x 2+1.75 x +2.625
x i=3.1
. Realcese los clculos
s =0.01
. Tambin verifquese los
Emplese un valor inicial de
hasta que
sea menor del
errores en la respuesta final.
2
Sea la funcin f ( x )=0.875 x +1.75 x +2.625
tenemos que:
En la grfica podemos ver que la funcin corta en dos partes al eje x por
lo que tendramos dos races, pero el problema solo nos pide la raz
mayor.
La frmula que vamos a utilizar para calcular el valor de las
aproximaciones ser:
Siendo la funcin
inicial
x i+1=x i
f ( xi )
f '( xi )
f ' ( x )=1.75 x +1.75
la primera derivada de la funcin
Solucin: El valor de la raz mayor es
x i=3
ya que el error porcentual
es inferior al error pedido al principio.
12
Sea f ( 3 ) =1.75 x 10
5.2 Determnese las races reales de:
f ( x )=2.1+6.21 x 3.9 x 2 +0.667 x 3
a) Grficamente
b) Usando el mtodo de Newton-Raphson hasta que
Sea la funcin
f ( x )=2.1+6.21 x 3.9 x +0.667 x
s =0.01
tenemos que:
En la grfica podemos observar que tenemos que la funcin corta al eje
x en tres ocasiones por lo que vamos a tener 3 valores de races.
La primera derivada de la funcin es
f ' (x )=6.217.8 x +2.001 x 2
Xi = 0.5
Xi = 2
Xi = 3
Los valores de Xi se han tomado segn se acercan a la raz.
Soluciones:
x i=0.46263285
Raz 1:
f ( 0.46263285 ) =9,7744 x 1010
Raz 2:
x i=1.98364208
f ( 1.98364208 )=2.6198 x 107
Raz 3:
x i=3.43078685
f ( 3.43078685 )=3,7994 x 107
5.3 Emplese el mtodo de Newton-Raphson para determinar las
races reales de:
2
3
4
5
f ( x )=23.33+79.35 x88.09 x + 41.6 x 8.68 x +0.658 x Usando el valor
inicial de a)
x i=3.5
; b)
x i=4.0
y c)
x i=4.5
. Prubense y sense
los mtodos grficos para explicar cualquier peculiaridad en los
resultados.
Como nos muestra la figura la grfica corta al eje x en 5 puntos,
resultndonos 5 races, pero solo vamos a calcular el valor de las
pedidas por el ejercicio.
La primera derivada de la funcin es
f ' (x)=79,35176,18 x +124,8 x 234,72 x 3 +3,29 x 4
Xi = 3.5
Xi = 4
Xi = 4.5
Soluciones:
x i=3.84408306
Raz 1:
f ( 3.84408306 ) =0
Raz 2:
x i=3.84408306
f ( 3.84408306 ) =0
Raz 3:
x i=0.56220287
f ( 0.56220286 ) =4,86 x 1016
Los valores de las races se asemejan a los valores del grafico de la
funcin.
5.4 Determnese la raz real menor de:
f ( x )=9.36 21.963 x +16.2965 x 23.70377 x3
a) Grficamente
b) Usando el mtodo de la secante, hasta un valor de
correspondiente a tres cifras significativas.
La grfica nos muestra 3 races pero el ejercicio nos pide calcular la
menor de ellas por lo que nuestro intervalo a trabajar ser entre [0.9;
1.1].
La primera derivada de la funcin es:
f ' (x)=21,963+32,593 x11,11131 x
Solucin:
La menor de las races toma un valor de
x i1 =1,11960202
con un valor de
f ( x i1 )=3.11 x 1014
5.5) Localcese la raz positiva de:
f ( x)=0.5 xsen x
Donde x est dada en radianes. sese un mtodo grafico y
despus calclese tres interacciones con el mtodo de Newtonx i=2.0
Raphson con un valor inicial de
para calcular la raz.
Reptanse los clculos pero con un valor inicial de
x i=1.0
sese el mtodo grafico para explicar los resultados.
La grafica nos muestra dos races
una positiva y otra negativa pero el
ejercicio nos pide calcular solo el
valor de la positiva.
La primera derivada derivada de la funcin es:
Xi = 2
Xi = 1
Solucin:
f ' (x)=0,5cos (x)
Podemos concluir que en ambas tablas pese a haber hecho con dos valores
distintos de Xi el resultado es el mismo
x i=1,89549427
coincidiendo con el de
la grfica.
5.6) Encuntrese la raz positiva de
f ( x)=x 4 8.6 x 335.51 x 2 + 464 x 998.46
Usando el mtodo de la secante. Emplease los valores inciales
x i1 =7
x i=9
de
y
y calclese cuatro interacciones.
Calclese
e interprtense los resultados.
En la grfica podemos observar que tenemos dos valores de races pero solo
vamos a calcular la positiva con el mtodo de la secante.
Aplicamos la frmula de:
como valores de
x i1 =7
x
x
x
f ( i1)f ( i)
Como dice el ejercicio utilizamos
f ( i)(x i1x i )
x i+1=x i
y
x i=9 , y calculamos el error absoluto
Solucin: El valor de la raz es de
absoluto de 0.00010415.
x i+1=7,36550030382753
con un error
5.7 Realcense los mismos clculos del problema 5.6 pero
usando el mtodo de Newton-Raphson con un valor inicial de
x i=7.
f ( x)=x 4 8.6 x 335.51 x 2 + 464 x 998.46
x i=7
Solucin: Como en el mtodo anterior, el valor de la raz es el mismo y
el error absoluto es un 0.015 mayor al mtodo anterior.
Este mtodo realiza menor nmero de iteraciones.
5.8) Encuntrense la raz cuadrada positiva de 10 usando tres
iteraciones con:
a) El mtodo de Newton-Raphson, con un valor inicial de
x i=3.
b) El mtodo de la secante, con valores de
x i=3.2
x i1 =3
5.9) Determnese la raz real de:
f ( x )=
10.6 x
x
Usando tres iteraciones y el mtodo de la secante con valores
inciales de:
x i1 =1.5
x i=2.0 . Calclese el error aproximado
despus
de la segunda y la tercera
iteracin.
En la grfica podemos apreciar que tenemos dos races pero solo vamos
a calcular el valor de la raz real en tres iteraciones, adems de calcular
el error absoluto.
Sean:
x i1 =1.5
x i=2.0
Solucin: Al calcular el valor de la raz hemos obtenido un valor de Xi =
1.66 con un error absoluto de 0.04
5.10) Determinase la raz de:
3
f ( x )=x 100
Con el mtodo de la secante, con
Es =0.1 .
Solucin: El
valor de la raz
es de Xi =
4.642
5.11) Determinase la raz real mayor de:
f ( x )=x 36 x 2 +11 x6
a) Grficamente
Como
podemos observar
grficamente tenemos el valor de tres races pero solo vamos a calcular
la raz real mayor.
b) Usando el mtodo de la biseccin dos interacciones,
x i=2.5
x u=3.6
c) Usando el mtodo de la regla falsa dos interacciones,
x u=3
.6
x i=2.5
d) Usando el mtodo de Newton-Raphson (dos interacciones,
La primera derivada de la funcin es:
Xi = 3.6 y E%
x i=3.6
f ( x )=3 x 12 x +11
=0
e) Usando el mtodo de la secante (dos interacciones,
x i1 =2.5
x i=3.6
Solucin: Podemos comprobar que grficamente y utilizando el mtodo
de Newton Raphson nos va el mismo valor de la raz Xi = 3 y el E% =
0.
5.12) sese el mtodo de Newton - Raphson para determinar
todas las races de
f ( x )=x 2 +5.78 x 11.4504
con
s=0.001
La primera derivada de la funcin es:
f ' ( x )=2 x+ 5.78
Xi 1=1.5
Xi 1=7.5
Soluciones:
Raz 1= 2 f(2) = 3,5352E-06
Raz 2= -7
f(-7)=-1,9278E-05
5.13) Determnese la raz real ms pequea de:
f ( x )=9.3621.963 x+ 16.2965 x 23.70377 x 3
a) Grficamente
b) Usando el mtodo de biseccin (dos iteraciones,
x l=0.5
c) Usando el mtodo de la regla falsa (dos iteraciones,
x l=0.5
d) Usando el mtodo de Newton Raphson (dos iteraciones,
e) Usando el mtodo de la secante (dos iteraciones
x u=1.1 )
x u=1.1 )
x i=0.5 )
x i1 =0.5 , y
5.14) Determnese la raz positiva real ms pequea de:
x i=1.1 )
f ( x )=4 x 24.8 x +57.04 x 56.76 x+ 20.57
a) Grficamente
b) Usando el mtodo disponible ms eficiente. Emplense los valores iniciales
de
x l=x i1=0.5
x u=x i=0.5
y realcense los clculos hasta que
El valor de la raz menor es 1,11928979.
5.15) Determnense las races de
f ( x )=x 33.2 x 21.92 x +9.216
a) Grficamente
s=15
b) Usando el mtodo disponible ms
con
eficiente
s=0.1
Soluciones:
Raz 1 = -1,6
Raz 2 = 2,40319993
5.16) Reptase el problema 5.12 pero usando el mtodo de Newton
Raphson modificado.
f ( x )=x +5.78 x 11.4504
Primera derivada
f ' ( x )=2 x+ 5.78 x
Segunda derivada
f ' ' ( x )=2 x
Soluciones:
Raz 1 = 1,56
Raz 2 = -7,34
5.17) Reptase el problema 5.12 pero usando el mtodo de la secante.
f ( x )=x +5.78 x 11.4504
Soluciones:
Raz 1 = 1,56
Raz 2 = -7,34
5.18) Desarrllese un programa para el mtodo de Newton-Raphson
basado en la figura 5.4 y en la seccin 5.2.3. Prubese el programa
duplicando los clculos del ejemplo 5.3
Cdigo de Programacin, Lenguaje JAVA, programa NetBeans 8.0.1
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package javaapplication3;
import [Link];
/**
*
* @author Fabrizzio
*/
public class JavaApplication3 {
/**pu
* f(x)=-23,33 + 79,35x - 88,09x^2 + 41,6x^3 - 8,68x^4 + 0,658x^5
* f'(x)= 79,35-176,18x+124,8x^2-34,72x^3+3,29x^4
*/
public static void main(String[] args) {
Scanner sc = new Scanner([Link]);
double temp,temp1,temp2,y,n,y2,temp3,y3,temp4,anterior,y4;
[Link]("Introduce un nmero entero: ");
n = [Link]();
anterior=n;
y4=100;
for(int i = 1;y4!=0; i++){
n=anterior;
temp=(([Link]((double)n,(double)5))*(0.658))+
(([Link]((double)n,(double)4))*(-8.68));
temp1=(([Link]((double)n,(double)3))*(41.6))+
(([Link]((double)n,(double)2))*(-88.09));
temp2=(([Link]((double)n,(double)4))*(3.29))+
(([Link]((double)n,(double)3))*(-34.72));
temp3=(([Link]((double)n,(double)2))*(124.8))+
(([Link]((double)n,(double)1))*(-176.18));
y2=temp2+temp3+79.35;
y=temp+temp1-23.33+(n*79.35);
temp4=(y/y2);
y3=n-temp4;
if(i>1)
y4=(([Link](anterior-y3))/n)*100;
[Link]("f("+n+")= "+y+"\n");
[Link]("f'("+n+")= "+y2+"\n");
[Link](""+n+" + 1= "+y3+"\n\n");
[Link]("E%= "+y4+"\n\n");
anterior=y3;
}
}
}
5.19) sese el programa desarrollado en el problema 5.18 y
duplquense los clculos del ejemplo 5.5. Determnese la raz usando
un valor inicial de Xi = 0.5. Realcense 5, 10, 15 o ms iteraciones
hasta que el error relativo porcentual exacto sea menor del 0.1%.
Grafquense los errores relativos porcentuales exacto y aproximado
contra el numero de iteraciones sobre papel semilogaritmico.
Interprtense los resultados.
Cdigo de Programacin, Lenguaje JAVA, programa NetBeans 8.0.1
*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package javaapplication8;
import [Link];
/**
*
* @author Fabrizzio
*/
public class JavaApplication8 {
/**f(x)= 0,5x-sen(x)
* f'(x)= 0,5-cos(x)
* @param args the command line arguments
*/
public static void main(String[] args) {
Scanner sc = new Scanner([Link]);
double temp2,y,n,y2,temp3,y3,temp4,anterior,y4, temp5;
[Link]("Introduce un nmero entero: ");
n = [Link]();
anterior=n;
y4=100;
for(int i = 1;y4!=0; i++){
n=anterior;
temp2=[Link](n);
temp3= [Link](n);
temp5=(0.5*n);
y2= 0.5-temp2;
y=temp5-temp3;
temp4=(y/y2);
y3=n-temp4;
if(i>1)
y4=(([Link](anterior-y3))/n)*100;
[Link]("f("+n+")= "+y+"\n");
[Link]("f'("+n+")= "+y2+"\n");
[Link](""+n+" + 1= "+y3+"\n\n");
[Link]("E%= "+y4+"\n\n");
anterior=y3;
}
}
5.20) sese el programa desarrollado en el problema 5.18 para
resolver los problemas 5.1 al [Link] todos los casos, realcense los
clculos dentro de la tolerancia de Es = 0.001%.
Cdigo de Programacin, Lenguaje JAVA, programa NetBeans 8.0.1
package javaapplication1;
import [Link];
import [Link];
import [Link];
/**
*
* @author Fabrizzio
*/
public class JavaApplication1 {
/**pu
* f(x)= -0.875x^2+1.75x+2.625
* f'(x)= -1,75x+1,75
*/
public static void main(String[] args) {
Scanner sc = new Scanner([Link]);
double temp,temp2,y,n,y2,temp3,y3,temp4,anterior,y4;
[Link]("Introduce un nmero entero: ");
n = [Link]();
anterior=n;
y4=100;
for(int i = 1;y4!=0; i++){
n=anterior;
temp=([Link]((double)n,(double)2))*(-0.875);
temp2=(1.75*n);
temp3=(-1.75*n);
y2=temp3+1.75;
y=temp+temp2+2.625;
temp4=(y/y2);
y3=n-temp4;
if(i>1)
y4=(([Link](anterior-y3))/n)*100;
[Link]("f("+n+")= "+y+"\n");
[Link]("f'("+n+")= "+y2+"\n");
[Link](""+n+" + 1= "+y3+"\n\n");
[Link]("E%= "+y4+"\n\n");
anterior=y3;
}
}
RESOLUCION DE LOS EJERCICIOS UTILIZANDO PROGRAMACIN
Ejercicio 1
%Newton-Raphson
%Xi=3.5 y E%=0.01%
clear
clc
syms x
cf= -(0.875*(x^2))+(1.75*x)+2.625;
f=inline(cf);
der=diff(cf,x);
df=inline(der);
xi= 3.1;
tol=0.01
error=100;
n=1;
disp('
n
x
E% ')
disp('
0
3.1
100')
while (error>=tol)
x1 = xi - f(xi)/ df(xi);
error=abs((x1-xi)/x1)*100;
xi=x1;
fprintf('\t%i
\t%3.5f
\t%f\n',n
error);
n=n+1;
end
, xi,
Ejercicio 2
% Newton-Raphson
% xi=0
clear
clc
syms x
cf= -2.1+(6.21*x)-(3.9*(x^2))+(0.667*(x^3));
f=inline(cf);
der=diff(cf,x);
df=inline(der);
xi= 0.5;
tol=0.01
error=100;
n=1;
disp('
n
xi
error ')
disp('
0
0.5
100')
while (error>=tol)
x1 = xi - f(xi)/ df(xi);
error=abs(((x1-xi)/x1)*100);
xi=x1;
fprintf('\t%i
\t%3.5f
\t%f\n',n
error);
n=n+1;
end
% xi=2
syms x
cf= -2.1+(6.21*x)-(3.9*(x^2))+(0.667*(x^3));
f=inline(cf);
der=diff(cf,x);
df=inline(der);
xi= 2;
tol=0.01;
error=100;
n=1;
, xi,
disp(' ');
disp(' ');
disp(' ');
disp('
n
xi
error ')
disp('
0
2
100')
while (error>=tol)
x1 = xi - f(xi)/ df(xi);
error=abs(((x1-xi)/x1)*100);
xi=x1;
fprintf('\t%i
\t%3.5f
\t%f\n',n
error);
n=n+1;
end
%xi=3
syms x
cf= -2.1+(6.21*x)-(3.9*(x^2))+(0.667*(x^3));
f=inline(cf);
der=diff(cf,x);
df=inline(der);
xi= 3;
tol=0.01;
error=100;
n=1;
disp(' ');
disp(' ');
disp(' ');
disp('
n
xi
error ')
disp('
0
3
100')
while (error>=tol)
x1 = xi - f(xi)/ df(xi);
error=abs(((x1-xi)/x1)*100);
xi=x1;
fprintf('\t%i
\t%3.5f
\t%f\n',n
error);
n=n+1;
end
, xi,
, xi,
Ejercicio 3
% Newton-Raphson
% xi=3.5
clear
clc
syms x
cf= -23.33+(79.35*x)-(88.09*(x^2))+(41.6*(x^3))-(8.68*(x^4))
+(0.658*(x^5));
f=inline(cf);
der=diff(cf,x);
df=inline(der);
xi= 3.5;
tol=0.0000001;
error=100;
n=1;
disp('
n
xi
error ')
disp('
0
3.5
100')
while (error>=tol)
x1 = xi - f(xi)/ df(xi);
error=abs(((x1-xi)/x1)*100);
xi=x1;
fprintf('\t%i
\t%3.5f
\t%f\n',n
error);
n=n+1;
end
, xi,
% xi=4
syms x
cf= -23.33+(79.35*x)-(88.09*(x^2))+(41.6*(x^3))-(8.68*(x^4))
+(0.658*(x^5));
f=inline(cf);
der=diff(cf,x);
df=inline(der);
xi= 4;
tol=0.0000001;
error=100;
n=1;
disp(' ');
disp(' ');
disp(' ');
disp('
n
xi
error ')
disp('
0
4
100')
while (error>=tol)
x1 = xi - f(xi)/ df(xi);
error=abs(((x1-xi)/x1)*100);
xi=x1;
fprintf('\t%i
\t%3.5f
\t%f\n',n
, xi,
error);
n=n+1;
end
%xi=4.5
syms x
cf= -23.33+(79.35*x)-(88.09*(x^2))+(41.6*(x^3))-(8.68*(x^4))
+(0.658*(x^5));
f=inline(cf);
der=diff(cf,x);
df=inline(der);
xi= 4.5;
tol=0.0000001;
error=100;
n=1;
disp(' ');
disp(' ');
disp(' ');
disp('
n
xi
error ')
disp('
0
4.5
100')
while (error>=tol)
x1 = xi - f(xi)/ df(xi);
error=abs(((x1-xi)/x1)*100);
xi=x1;
fprintf('\t%i
\t%3.5f
\t%f\n',n
error);
n=n+1;
end
, xi,
Ejercicio 4
%Secante
% X1
clear
clc
syms x
cf= 9.36-(21.963*x)+(16.2965*(x^2))-(3.70377*(x^3));
f=inline(cf);
der=diff(cf,x);
df=inline(der);
x0=0.9;
xi= 1.1;
tol=0.001
error=100;
n=1;
disp('
n
xi-1
xi
xi+1
error ')
disp('
0
0.9
1.1
----100')
while (error>=tol)
x2 = xi - (xi-x0)*f(xi)/(f(xi)-f(x0));
error=abs(((x2-xi)/x2)*100);
x0=xi;
xi=x2;
fprintf('
%i
%4.4f
%4.4f
%4.4f
%4.4f\n',n
, x0,
xi,
x2
,error);
n=n+1;
end
% X2
syms x
cf= 9.36-(21.963*x)+(16.2965*(x^2))-(3.70377*(x^3));
f=inline(cf);
der=diff(cf,x);
df=inline(der);
x0=1.1;
xi= 1.2;
tol=0.001
error=100;
n=1;
disp('
n
xi-1
xi
xi+1
error ')
disp('
0
0.9
1.1
----100')
while (error>=tol)
x2 = xi - (xi-x0)*f(xi)/(f(xi)-f(x0));
error=abs(((x2-xi)/x2)*100);
x0=xi;
xi=x2;
fprintf('
%i
%4.4f
, x0,
xi,
x2
n=n+1;
end
%4.4f
%4.4f
,error);
%4.4f\n',n
% X3
syms x
cf= 9.36-(21.963*x)+(16.2965*(x^2))-(3.70377*(x^3));
f=inline(cf);
der=diff(cf,x);
df=inline(der);
x0=2.1;
xi= 2.3;
tol=0.001
error=100;
n=1;
disp('
n
xi-1
xi
xi+1
error ')
disp('
0
0.9
1.1
----100')
while (error>=tol)
x2 = xi - (xi-x0)*f(xi)/(f(xi)-f(x0));
error=abs(((x2-xi)/x2)*100);
x0=xi;
xi=x2;
fprintf('
%i
%4.4f
%4.4f
%4.4f
%4.4f\n',n
, x0,
xi,
x2
,error);
n=n+1;
end
Ejercicio 5
%Newton-Raphson
%xi=2
clear
clc
syms x
cf= (0.5*x)-sin(x);
f=inline(cf);
der=diff(cf,x);
df=inline(der);
xi= 2;
tol=0.01
error=100;
n=1;
disp('
n
xi
error ')
disp('
0
2
100')
while (n<=3)
x1 = xi - f(xi)/ df(xi);
error=abs(((x1-xi)/x1)*100);
xi=x1;
fprintf('\t%i
\t%3.5f
\t%f\n',n
error);
n=n+1;
, xi,
end
%xi=1
syms x
cf= (0.5*x)-sin(x);
f=inline(cf);
der=diff(cf,x);
df=inline(der);
xi= 1;
tol=0.01
error=100;
n=1;
disp('
n
xi
error ')
disp('
0
1
100')
while (n<=3)
x1 = xi - f(xi)/ df(xi);
error=abs(((x1-xi)/x1)*100);
xi=x1;
fprintf('\t%i
\t%3.5f
\t%f\n',n
error);
n=n+1;
end
, xi,