Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Integracion
Integracion
Zb
b−a
f (x) dx ' [f (a) + f (b)]
2
a
si queremos programar esta regla sólo debemos tener en cuenta que los datos de entrada son a, b,
f y el dato de salida es la aproximación. En MATLAB creamos una función que nos permita
realizarlo. El código puede ser:
function aprox=trapecio(f,a,b)
f=inline(f);
aprox=((b-a)/2)*(f(a)+f(b))
Recordemos que la segunda instrucción permite que MATLAB identifique a f como una
función que depende de la variable x. Para ejecutar la función en la ventana de comandos de
Matlab digitamos trapecio(f,a,b); por ejemplo, si queremos aproximar
Z2
2
ecos x dx
0
1
REGLA DEL TRAPECIO COMPUESTA
Zb " n−1
#
h X
f (x) dx ' f (a) + 2 f (xi ) + f (b)
2
a i=1
b−a
donde h = y xi = a + ih.
n
Si queremos programar esta regla debemos tener en cuenta que los datos de entrada son
a, b, n,f , el dato de salida es la aproximación, es necesario utilizar un ciclo interno que permita
generar xi para evaluarlo en f, multiplicarlo por dos y sumarlos. Creamos una función en
matlab que me permita realizarlo, el código será:
function aprox=tracom(f,a,b,n)
f=inline(f);
h=(b-a)/n;
aprox=f(a)+f(b);
for i=1:n-1
x=a+i*h;
aprox=aprox+2*f(x);
end
aprox=(h/2)*aprox;
1
REGLA DE SIMPSON 3 SIMPLE Y COMPUESTA
2
1
Tenemos que las reglas de Simpson 3 simple y compuesta están dadas por:
Zb ∙ µ ¶ ¸
b−a a+b
f (x) dx ' f (a) + 4f + f (b)
6 2
a
y ⎡ ⎤
n n
−1
Zb
h⎢
⎢
2
X 2X ⎥
⎥
f (x) dx ' ⎢f (a) + 4 f (x2i−1 ) + 2 f (x2i ) + f (b)⎥
3⎣ ⎦
a i=1 i=1
b−a
donde h = , para n un entero par mayor igual a 2 y xi = a + ih. Los límites de las
n
sumatorias y los subindices 2i − 1 y 2i indican que xj con j par se evalua en f y se multiplica
por dos, y si j es impar se evalua en f y se multiplica por 4. (esto se obtiene al aplicar regla de
1
Simpson 3 simple sobre los subintervalos [x0 , x2 ] , [x2 , x4 ] , ..., [xn−2 , xn ]). Los programas Matlab
que permiten encontrar la aproximación a la integral son:
function aprox=simpson(f,a,b)
f=inline(f);
aprox=((b-a)/6)*(f(a)+4*f((a+b)/2)+f(b));
function aprox=simcom(f,a,b,n)
f=inline(f);
h=(b-a)/n;
aprox=f(a)+f(b);
for i=1:n/2
x=a+(2*i+1)*h;
aprox=aprox+4*f(x);
end
for i=1:(n/2)-1
x=a+2*i*h;
3
aprox=aprox+2*f(x);
end
aprox=(h/3)*aprox;
En MATLAB también podemos encontrar los coeficientes y/o nodos de fórmulas de coefi-
cientes indeterminados o de Cuadratura Gaussiana.
sea exacta para todos los polinomios de grado menor o igual que dos. Trabajando con los
© ª
polinomios básicos 1, x, x2 obtenemos el sistema:
1 = A+B+C
1 1
= B+C
2 2
1 1
= B+C
3 4
4
se obtiene: X = [1/6 2/3 1/6] (utilizando el formato: format rat)
Sabemos que para hallar los nodos y los coeficientes debemos resolver el sistema no lineal:
A0 + A1 = 2
A0 x0 + A1 x1 = 0
A0 x30 + A1 x31 = 0
>> [a0,a1,x0,x1]=solve(’ao+a1=2’,’ao*x0+a1*x1=0’,’ao*x0^2+a1*x1^2=2/3’,’ao*x0^3+a1*x1^3=0’)
y obtenemos:
5
quad(’funcion’,a,b,tol): aproxima la integrar de la función entre a y b tomando como
tolerancia tol.
• trapz= Utiliza la regla trapezoidal para calcular la integral de una función. Se puede
utilizar de la siguiente forma:
>> X=0:0.001:2;
>> Y=exp((cos(X)).^2);
Se obtiene 3.21021121961247
Z
x2
dx
x6 − 8
EJERCICIOS PROPUESTOS:
Zb Zd
I= f (x, y) dydx
a c
6
1
empleando la regla se Simpson 3 compuesta.
d(x)
Zb Z
I= f (x, y) dydx
a c(x)
1
empleando la regla se Simpson 3 compuesta.
3. Realizar una función que permita generar una tabla de aproximaciones (Método de
Romberg) para
Zb
f (x) dx
a
4. Deducir la fórmula de cuadratura gaussiana de orden tres y hacer un programa que per-
mita usarla para calcular
Zb
f (x) dx
a
Z1
f (x) dx ≈ Af (0) + Bf (1/4) + Cf (1/2) + Df (3/4) + Ef (1)
0
sea exacta para todos los polinomio de grado menor o igual a cuatro.