PRACTICA Nº 8 DE METODOS NUMERICOS 1.1.fprintf(' \n FORMULA PARA INTEGRACION :TRAPECIO SIMPLE, SIMPSON SIMPLE, REGLA DE LOS 3/8 \n'); f=input('ingrese la funcion : ','s'); a=input('ingrese valor de extremo `a` : '); b=input('ingrese valor de extremo `b` : '); fprintf(' trapecio simple simpson simple simpson de los 3/8 \n ') fprintf(' h/2(f(x0)+f(x1)) h/3(f(x0)+4f(x1)+f(x2)) 3h/8(f(x0)+3f(x1)+3f(x2)+f(x3)) \n ') x=a; f0=eval(f); x=(b+2*a)/3; f1=eval(f); x=(a+2*b)/3; f2=eval(f); x=(a+b)/2; f4=eval(f); x=b; f3=eval(f); F1=((b-a)/2)*(f0+f3); F3=(((b-a)/8)*(f0+3*f1+3*f2+f3)); F2=(((a+b)/6)*(f0+4*f4+f3)); fprintf('\n \t %8.8f \t\t %8.8f \t\t\t\t\t %8.8f \n ',F1,F2,F3) eval(int(f,a,b))
Ejemplo FORMULA PARA INTEGRACION: TRAPECIO SIMPLE, SIMPSON SIMPLE, REGLA DE LOS 3/8 Ingrese la función: x^5-4*x^4-x^3+5*x^2-3*x+5 Ingrese valor de extremo a: 1 Ingrese valor de extremo b: 3 Trapecio simple h/2(f(x0)+f(x1)) -64.00000000
Simpson simple h/3(f(x0)+4f(x1)+f(x2)) -98.66666667
RESULTADO REAL: -50.93333333333333
Simpson de los 3/8 3h/8(f(x0)+3f(x1)+3f(x2)+f(x3)) -50.22222222
2.fprintf(' \n FORMULA PARA INTEGRACION :TRAPECIO COMPUESTO, SIMPSON COMPUESTO \n'); f=input('ingrese la funcion : ','s'); a=input('ingrese valor de extremo `a` : '); b=input('ingrese valor de extremo `b` : '); k=input('ingrese valor n de particiones como vector : '); fprintf(' trapecio compuesto simpson compuesto \n ') fprintf(' n h/2[f(x0)+f(xn)+ 2?f(x(i))] h/3[f(x0)+f(xn)+2?f(x(2i))+4?f(2i-1)] \n ') for d=1:length(k); n=k(d); h=(b-a)/n; for i=1:n-1 x(i)=a+i*h; x=x(i); g(i)=eval(f); end sg=sum(g); x=a; f0=eval(f); x=b; fn=eval(f); F1=(h/2)*(f0+fn+2*sg); h1=(b-a)/(2*n); for j=1:n x(2*j)=a+(2*j)*(h1); x=x(2*j); N(2*j)=eval(f); x(2*j-1)=a+(2*j-1)*(h1); x=x(2*j-1); M(2*j-1)=eval(f); end sn=(sum(N)-N(2*n)); sm=sum(M); F2=((h1/3)*(f0+fn+2*sn+4*sm)); fprintf('\n %2.f \t\t\t %8.8f \t\t\t\t\t\t %8.8f \n ',n,F1,F2) end l=eval(int(f,a,b)); fprintf('\n EL RESULTADO REAL ES : %9.9f \n ',l)
Ejemplo FORMULA PARA INTEGRACION: TRAPECIO COMPUESTO, SIMPSON COMPUESTO Ingrese la función: 1/x^2 Ingrese valor de extremo `a`: 1 Ingrese valor de extremo `b`: 3 Ingrese valor n de particiones como vector: [4,6] Trapecio compuesto Simpson compuesto n h/2[f(x0)+f(xn)+ 2?f(x(i))] h/3[f(x0)+f(xn)+2?f(x(2i))+4?f(2i-1)] 4
1.92379106
2.07777220
6
1.18040382
1.23527963
EL RESULTADO REAL ES: 0.666666667
3.FORMULA PARA INTEGRACION: TRAPECIO SIMPLE, SIMPSON SIMPLE, REGLA DE LOS 3/8 Ingrese la función: tan(x) Ingrese valor de extremo a: 0 Ingrese valor de extremo b: pi/4 Trapecio simple Simpson simple Simpson de los 3/8 h/2(f(x0)+f(x1)) h/3(f(x0)+4f(x1)+f(x2)) 3h/8(f(x0)+3f(x1)+3f(x2)+f(x3)) 0.39269908
0.34778141
0.34713601
RESULTADO REAL = 0.34657359027997 4.FORMULA PARA INTEGRACION: TRAPECIO COMPUESTO, SIMPSON COMPUESTO Ingrese la función: tan(x) Ingrese valor de extremo `a`: 0 Ingrese valor de extremo `b`: pi/4 Ingrese valor n de particiones como vector: [4,8] n
Trapecio compuesto h/2[f(x0)+f(xn)+ 2?f(x(i))]
Simpson compuesto h/3[f(x0)+f(xn)+2?f(x(2i))+4?f(2i-1)]
4
0.34975833
0.34658054
8
0.34737499
0.34657404
EL RESULTADO REAL ES = 0.346573590 6.METODO DE INTEGRACION DE ROMBERG ingrese la funcion : (x^2+x+1)*cos(x) ingrese valor de extremo a : 0 ingrese valor de extremo b : pi/2 ingrese n : 6 respuesta = 2.03819742706722
7.METODO DE INTEGRACION DE ROMBERG ingrese la funcion : x^2*exp(-x^2) ingrese valor de extremo a : 0 ingrese valor de extremo b : 2 ingrese la tolerancia : 10^(-6) respuesta = 0.42272505525485 EL PROGRAMA MODIFICADO ES
clear r fprintf('\n METODO DE INTEGRACION DE ROMBERG \n '); f=input('ingrese la funcion : ','s'); a=input('ingrese valor de extremo a : '); b=input('ingrese valor de extremo b : '); tol=input('ingrese la tolerancia : '); i=0; h=(b-a); x=a; f0=eval(f); x=b; fn=eval(f); R(1,1)=h*(f0+fn)/2; j=1; while 1 i=i+1; h=h/2; s=0; for p=1:j x=a+h*(2*p-1); g=eval(f); s=s+g; end R(i+1,1)=(1/2)*(R(i,1))+h*s; j=2*j; for m=1:i R(i+1,m+1)=R(i+1,m)+(R(i+1,m)-R(i,m))/(4^m-1); end p=abs(R(i+1,m+1)-R(i,i)); if p<=tol; break else p>tol; end end