%%/////metodo 1////////
c0=a;
for i=1:n
c=(a+b)/2;
err=abs(c-c0);
relerr=err/abs(c);
if tol>abs(f(c))||tol>err||tol>relerr
break
elseif f(c)*f(a)<0
b=c;
else a=c;
end
c0=c;
end
%%/////metodo 2///////
for i=1:n
p=p0-f(p0)/df(p0);
err=abs(p-p0);
relerr=err/abs(p);
if tol>err|tol>relerr|tol>abs(f(p))
break
end
p0=p;
end
%%//////metodo 3////////
for i=1:n
p=g(p0);
err=abs(p-p0);
relerr=err/abs(p);
if err<tol||relerr<tol|| tol>abs(f(p))
break;
else p0=p;
end
end
%%///////////metodo 4//////////
c0=a;
for i=1:n
c=(b*f(a)-a*f(b))/(f(a)-f(b));
err=abs(c-c0);
relerr=err/abs(c);
if tol>abs(f(c))||tol>err||tol>relerr
break
elseif f(c)*f(a)<0
b=c;
else a=c;
end
c0=c;
end
%%/////metodo 5/////////
for i=1:n
x2=(x1*f(x0)-x0*f(x1))/(f(x0)-f(x1));
err=abs(x1-x2);
relerr=err/abs(x2);
if tol>err||tol>relerr||tol>abs(f(x2))
break;
end
x0=x1;
x1=x2;
end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%//////////metodo 6//////////
n=length(x);
P=zeros(1,n);
for i=1:n
a=x([1:i-1 i+1:n]);
p=[1, -a(1)];
for j=2:n-1
p=conv(p,[1,-a(j)]);
end
P=P+y(i)*p/polyval(p,x(i));
end
%%/////metodo 7//////////
n=length(x);
p=[1 -x(1)];
P=y(1);
for i=2:n
a=(y(i)-polyval(P,x(i)))/polyval(p,x(i));
P=[0,P]+a*p;
p=conv(p,[1 -x(i)]);
end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%///metodo 8////////
n=length(B);
X=P;
for i=1:m
for j=1:n
X(j)=(B(j)-A(j,[1:j-1 j+1:n])*X([1:j-1 j+1:end]))/A(j,j);
end
err=norm(X-P);
relerr=err/norm(X);
if tol>err||tol>relerr
break;
else P=X;
end
end
%%//////metodo 9//////
n=length(B);
for i=1:m
for j=1:n
X(j,1)=(B(j)-A(j,[1:j-1 j+1:n])*P([1:j-1 j+1:end]))/A(j,j);
end
err=norm(X-P);
relerr=err/norm(X);
if tol>err||tol>relerr
break;
else P=X;
end
end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
f: función f(x) continua en el rango de integración
[a b] rango de integración
n: numero de divisiones totales
s: cantidad de iteraciones
%%//////metodo 10//////
A=0;
h=(b-a)/n;
for xi=a:h:b-h
A=A+h*f(xi+h/2);
end
%%//////metodo 11//////
A=0;
h=(b-a)/n;
for xi=a:h:b-h
A=A+(h/2)*(f(xi)+f(xi+h));
end
%%//////metodo 12//////
A=0;
h=(b-a)/n;
for xi=a:2*h:b-2*h
A=A+(h/3)*(f(xi)+4*f(xi+h)+f(xi+2*h));
end
%%//////metodo 13//////
A=0;
h=(b-a)/n;
for xi=a:3*h:b-3*h
A=A+(3*h/8)*(f(xi)+3*f(xi+h)+3*f(xi+2*h)+f(xi+3*h)) ;
end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%//////metodo 14//////
m=length(y0);
A=[zeros(m-1,1),eye(m-1);a];
B=[zeros(m-1,1);g];
x=x0;
for i=1:n
f0=eval(A)*y0+eval(B);
y=y0+h*f0;
y0=y;
x=x+h;
end
%%//////metodo 15//////
m=length(y0);
A=[zeros(m-1,1),eye(m-1);a];
B=[zeros(m-1,1);g];
x=x0;
for i=1:n
f0=eval(A)*y0+eval(B);
x=x+h;
y1=y0+h*f0;
f1=eval(A)*y1+eval(B);
y=y0+h*(f0+f1)/2;
y0=y;
end
%%//////metodo 16//////
m=length(y0);
A=[zeros(m-1,1) eye(m-1);a];
B=[zeros(m-1,1);f];
x=x0;
for i=1:n
f0=eval(A)*y0+eval(B); %f0: es la pendiente en el inicio del intervalo
x=x+h/2;
y1=y0+(h/2)*f0;
f1=eval(A)*y1+eval(B); %f1: es la pendiente en el medio del intervalo usando f0
para hallar
y2=y0+(h/2)*f1;
f2=eval(A)*y2+eval(B); %f2: es la pendiente en el medio del intervalo usando f1
para hallar
x=x+h/2;
y3=y0+h*f2;
f3=eval(A)*y3+eval(B); %f3: es la pendiente en al final del intervalo usando f2 para
hallar
y=y0+h*(f0+2*f1+2*f2+f3)/6;
y0=y;
end
%%//////metodo 17//////
m=length(y0);
A=[zeros(m-1,1) eye(m-1);a];
B=[zeros(m-1,1);f];
for i=1:n
x=x1;
f1=eval(A)*y1+eval(B);
x=x2;
f2=eval(A)*y2+eval(B);
x=x3;
f3=eval(A)*y3+eval(B);
p=y0+(4/3)*h*(2*f1-f2+2*f3); % y predictor
x=x+h;
fp=eval(A)*p+eval(B);
y=y2+(h/3)*(f2+4*f3+fp); % y corrector
y0=y1;
y1=y2;
y2=y3;
y3=y;
x1=x2;
x2=x3;
x3=x;
end
%%//////metodo 18//////
m=length(y0);
A=[zeros(m-1,1) eye(m-1);a];
B=[zeros(m-1,1);f];
for i=1:n
x=x1;
f1=eval(A)*y1+eval(B);
x=x2;
f2=eval(A)*y2+eval(B);
x=x3;
f3=eval(A)*y3+eval(B);
p=y0+(4/3)*h*(2*f1-f2+2*f3); % y predictor
if i>1
mod=p+(28/29)*(y3-p0);
else mod=p;
end
x=x+h;
fm=eval(A)*mod+eval(B);
y=y2+(h/3)*(f2+4*f3+fm); % y corrector
y0=y1;
y1=y2;
y2=y3;
y3=y;
x1=x2;
x2=x3;
x3=x;
p0=p;
end
%%//////metodo 19//////
m=length(y0);
A=[zeros(m-1,1) eye(m-1);a];
B=[zeros(m-1,1);f];
for i=1:n
x=x1;
f1=eval(A)*y1+eval(B);
x=x2;
f2=eval(A)*y2+eval(B);
x=x3;
f3=eval(A)*y3+eval(B);
p=y0+(4/3)*h*(2*f1-f2+2*f3);
x=x3+h;
fp=eval(A)*p+eval(B);
y=(9*y3-y1)/8+(3/8)*h*(-f2+2*f3+fp);
y0=y1;
y1=y2;
y2=y3;
y3=y;
x1=x2;
x2=x3;
x3=x;
end
%%//////metodo 20//////
m=length(y0);
A=[zeros(m-1,1) eye(m-1);a];
B=[zeros(m-1,1);f];
for i=1:n
x=x1;
f1=eval(A)*y1+eval(B);
x=x2;
f2=eval(A)*y2+eval(B);
x=x3;
f3=eval(A)*y3+eval(B);
p=y0+(4/3)*h*(2*f1-f2+2*f3);
if i>1
mod=p+(112/121)*(y3-p0);
else mod=p;
end
x=x3+h;
fm=eval(A)*mod+eval(B);
y=(9*y3-y1)/8+(3/8)*h*(-f2+2*f3+fm);
y0=y1;
y1=y2;
y2=y3;
y3=y;
x1=x2;
x2=x3;
x3=x;
p0=p;
end