Está en la página 1de 5

INTRODUCCIÓN MÉTODOS COMPUTACIONALES

FACULTAD DE INGENIERÍA CIVIL

DOCENTE: Lizbeth Mónica Cuba Samaniego

SECCIÓN: CV61

INTEGRANTES:
Rojas Angulo, Diego Luis U201520277
Salazar Ríos, Elvis Jesé U201520328

CICLO 2018-01
Ejercicio 1: (f(x)=tan(x)*cos(x))

MÉTODO BISECCIÓN MÉTODO REGULA FALSI

function [ m ] = bisecciona( a,b,er2 ) function [ m ] = regulafalsia( a,b,er2 )


er1=100; er1=100;
m0=100; m0=100;
for n=0:100Método bisección for n=0:100
m=(a+b)/2; Fb=tan(b).*cos(b);
Fa=tan(a).*cos(a); Fa=tan(a).*cos(a);
Fm=tan(m).*cos(m); m=(a*Fb-b*Fa)/(Fb-Fa);
if Fa*Fm<0 Fm=tan(m).*cos(m);
b=m; if Fa*Fm<0
else b=m;
a=m; else
end a=m;
er1=abs((m-m0)/m)*100; end
m0=m; er1=abs((m-m0)/m)*100;
if er1<=er2 m0=m;
break if er1<=er2
end break
end end
disp(n); end
end disp(n);
end
bisecciona( 2,4,0.01 )
regulafalsia( 2,4,0.01 )
12
3
ans = 3.1414
ans = 3.1416

MÉTODO SECANTE MÉTODO NEWTON RAPHSON

function [ m ] = secantea( x0,x1,er2 ) function [ m ] = newtona( x0,iter,er2 )


er1=100; er1=100;
m0=100; m0=100;
for n=1:100 for n=1:iter
Fx0=tan(x0).*cos(x0); Fx0=tan(x0).*cos(x0);
Fx1=tan(x1).*cos(x1); dFx0=cos(x0);
m=(x0*Fx1-x1*Fx0)/(Fx1-Fx0); m=x0-Fx0/dFx0;
x0=x1; x0=m;
x1=m; er1=abs((m-m0)/m)*100;
er1=abs((m-m0)/m)*100; m0=m;
m0=m; if er1<=er2
if er1<=er2 break
break end
end end
end disp(n);
disp(n); end
end newtona( 2,100,0.01 )
secantea( 2,4,0.01 )
6
4
ans = 3.1416
ans =

3.1416
Ejercicio 2: (f(x)= (exp(x+1)-exp(-x-1))/(exp(x+1)+exp(-x-1))

MÉTODO BISECCIÓN MÉTODO REGULA FALSI

function [ m ] = biseccionb( a,b,er2 ) function [ m ] = regulab( a,b,er2 )


er1=100; er1=100;
m0=100; m0=100;
for n=0:100Método bisección for n=0:100
m=(a+b)/2; Fb=(exp(b+1)-exp(-b-1))./(exp(b+1)+exp(-b-1));
Fa=(exp(a+1)-exp(-a-1))./(exp(a+1)+exp(-a-1)); Fa=(exp(a+1)-exp(-a-1))./(exp(a+1)+exp(-a-1));
Fm=(exp(m+1)-exp(-m-1))./(exp(m+1)+exp(-m-1)); m=(a*Fb-b*Fa)/(Fb-Fa);
if Fa*Fm<0 Fm=(exp(m+1)-exp(-m-1))./(exp(m+1)+exp(-m-1));
b=m; if Fa*Fm<0
else b=m;
a=m; else
end a=m;
er1=abs((m-m0)/m)*100; end
m0=m; er1=abs((m-m0)/m)*100;
if er1<=er2 m0=m;
break if er1<=er2
end break
end end
disp(n) end
end disp(n);
biseccionb( -5,4,0.01) end
regulab( -5,4,0.01 )
16
5
ans = -0.9999
ans = -1.0000

MÉTODO SECANTE MÉTODO NEWTON RAPHSON

function [ m ] = secanteb( x0,x1,er2 ) function [ m ] = newtonb( x0,er2 )


er1=100; er1=100;
m0=100; m0=100;
for n=1:100 for n=1:100
Fx0=(exp(x0+1)-exp(-x0-1))./(exp(x0+1)+exp(-x0-1)); Fx0=(exp(x0+1)-exp(-x0-1))./(exp(x0+1)+exp(-x0-1));
Fx1=(exp(x1+1)-exp(-x1-1))./(exp(x1+1)+exp(-x1-1)); dFx0=(4/(exp(x0+1)+exp(-x0-1)).^2);
m=(x0*Fx1-x1*Fx0)/(Fx1-Fx0); m=x0-Fx0/dFx0;
x0=x1; x0=m;
x1=m; er1=abs((m-m0)/m)*100;
er1=abs((m-m0)/m)*100; m0=m;
m0=m; if er1<=er2
if er1<=er2 break
break end
end end
end disp(n);
disp(n); end
end newtonb( -1.8,0.01 )
secanteb( -2,1,0.01 )
4
6
ans = -1.0000
ans = -1.0000
Ejercicio 3: f(x)=ln(x^3+2)*tan(x)

MÉTODO BISECCIÓN MÉTODO REGULA FALSI

function [ m ] = biseccionc( a,b,er2 ) function [m] = regulac( a,b,er2 )


er1=100; er1=100;
m0=100; m0=100;
for n=0:100Método bisección for n=0:100;
m=(a+b)/2; Fb=log(b.^3+2).*tan(b);
Fa=log(a.^3+2).*tan(a); Fa=log(a.^3+2).*tan(a);
Fm=log(m.^3+2).*tan(m); m=(a*Fb-b*Fa)/(Fb-Fa);
if Fa*Fm<0 Fm=log(m.^3+2).*tan(m);
b=m; if Fa*Fm<0
else b=m;
a=m; else
end a=m;
er1=abs((m-m0)/m)*100; end
m0=m; er1=abs((m-m0)/m)*100;
if er1<=er2 m0=m;
break if er1<=er2
end break
end end
disp(n); end
end disp(n);
biseccionc(0,2,0.01 ) end
regulac(1,1.8,0.01 )
13
33
ans = 1.5707
ans = 1.5713

MÉTODO SECANTE MÉTODO NEWTON RAPHSON

function [ m ] = secantec( x0,x1,er2 ) function [ m ] = newtonc(x0,er2)


er1=100; er1=100;
m0=100; m0=100;
for n=1:3 for n=1:3
Fx0=log(x0.^3+2).*tan(x0); Fx0=log(x0.^3+2).*tan(x0);
Fx1=log(x1.^3+2).*tan(x1);
m=(x0*Fx1-x1*Fx0)/(Fx1-Fx0); dFx0=((3*x0.^2.*tan(x0))./(x0.^3+2))+((sec(x0).^2).*log(x0.^
x0=x1; 3+2));
x1=m; m=x0-Fx0/dFx0;
er1=abs((m-m0)/m)*100; x0=m;
m0=m; er1=abs((m-m0)/m)*100;
if er1<=er2 m0=m;
break if er1<=er2
end break
end end
disp(n); end
end disp(n);
secantec( 1,2,0.01 ) end

3
[ m ] = newtonc(1.5,0.01)
ans = 1.2708
3

m=

1.1038
MÉTODO REGULA FALSI
Caso práctico
MÉTODO BISECCIÓN function [m] = regulafalsi(a,b,er2)
er1=100;
function [m] = bisecciond(a,b,er2) m0=100;
er1=0; for n=0:100;
m0=0; Fb=((10.67*(.455/120)^1.852)*(1.898/b.^4.87))-42;
for n=0:100 Fa=((10.67*(.455/120)^1.852)*(1.898/a.^4.87))-42;
m=(a+b)/2; m=(a*Fb-b*Fa)/(Fb-Fa);
Fa=((10.67*(.455/120)^1.852)*(1.898/a.^4.87))-42; Fm=((10.67*(.455/120)^1.852)*(1.898/m.^4.87))-
Fm=((10.67*(.455/120)^1.852)*(1.898/m.^4.87))- 42;
42; if Fa*Fm<0
if Fa*Fm<0 b=m;
b=m; else
else a=m;
a=m; end
end er1=abs((m-m0)/m)*100;
er1=abs((m-m0)/m)*100; m0=m;
m0=m; if er1<=er2
if er1<=er2 break
break end
end end
end disp(n);
disp(n); end
end [m] = regulafalsi(0.1,0.2,0.01)
[m] = bisecciond(0.1,0.1,0.01)
4
1
m =0.1033
m= 0.1000

MÉTODO NEWTON RAPHSON

MÉTODO SECANTE
function [ m ] =newtond(x0,er2)
er1=100;
function [ m ] = secanted(x0,x1,er2)
m0=100;
er1=100;
for n=1:100
m0=100;
Fx0=(10.67*(0.455/120)^1.852*(1.898./x0.^4.87))-
for n=0:100
42;
Fx0=((10.67*(.455/120)^1.852)*(1.898/x0.^4.87))-
dFx0=10.97*(0.455/120)^1.852*1.989*(-4.87*x0.^-
42;
5.87);
Fx1=((10.67*(.455/120)^1.852)*(1.898/x1.^4.87))-
m=x0-Fx0/dFx0;
42;
x0=m;
m=(x0*Fx1-x1*Fx0)/(Fx1-Fx0);
er1=abs((m-m0)/m)*100;
x0=x1;
m0=m;
x1=m;
if er1<=er2
er1=abs((m-m0)/m)*100;
break
m0=m;
end
if er1<=er2
end
break
disp(n);
end
end
end
disp(n);
[ m ] =newtond(0.1,0.01)
end
4
m=
[ m ] = secanted(0.1,0.2,0.01)
0.1033
8

m=

0.1033

También podría gustarte