PRÁCTICA APLICACIONES DE LA INTEGRAL Prácticas Matlab Práctica 12 Objetivos Profundizar en la comprensión del concepto de integración. Aplicar la integral al cálculo de áreas y volúmenes Comandos de Matlab int Calcula de manera simbólica la integral indefinida de una función. Ejemplo: syms x int(x^2/(x^6-8)) rsums Aproxima la integral de f mediante sumas de Riemann y realiza una representación gráfica de los rectángulos. Ejemplo: syms x rsums exp(-x^2) Área entre dos curvas: Considerar la región A comprendida entre la parábola x 3 y 2 y la recta y x 1 . 1 a) Calcular a.1) una aproximación del área de A mediante áreas de rectángulos verticales a.2) el valor del área de la región A integrando respecto de x b) Calcular b.1) una aproximación del área de A mediante áreas de rectángulos PÁGINA 2 MATLAB: APLICACIONES DE LA INTEGRAL horizontales b.2) el valor del área de la región A integrando respecto de y Código Matlab a) Considerando rectángulos verticales e integrando respecto de x syms x a1=areaAproximada('x-1','-sqrt(3-x)',-1,2,16); hold on a2=areaAproximada('sqrt(3-x)','-sqrt(3-x)',2,3,7); aprox=a1+a2 %El punto de corte entre las dos curvas es x=-1, x=2 area_A=int((x-1)+sqrt(3-x),-1,2)+int(sqrt(3-x)+sqrt(3-x),2,3) donde se ha utilizado la función siguiente en la que se supone, por simplificar el código, que f está por encima de g en el intervalo a, b function area=areaAproximada(f,g,a,b,n) dx=(b-a)/n; area=0; hold on for i=1:n c=a+(i-1)*dx; h1=subs(f,c); h2=subs(g,c); h=h1-h2; area=area+dx*h; %Crea un rectángulo con un vértice en el punto (c,0) de %ancho dx y de alto h if h>0 rectangle('position',[c h2 dx h],'FaceColor',[1 0.9 0.8]) end end xx=a:0.01:b; y1=subs(f,xx); y2=subs(g,xx); plot(xx,y1,'r','LineWidth',3) plot(xx,y2,'b','LineWidth',3) end b) Considerando rectángulos horizontales e integrando respecto de la variable y syms y a1=areaAproximadaV('3-y^2','y+1',-2,1,16) %El punto de corte entre las dos curvas es y=-2, y=1 area_A=int((3-y^2)-(y+1),-2,1) donde se ha utilizado la función siguiente en la que se supone, por simplificar el código, que f está por encima de g en el intervalo a, b function area=areaAproximadaV(f,g,a,b,n) MATLAB: PRÁCTICA 12 PÁGINA 3 dx=(b-a)/n; area=0; hold on for i=1:n c=a+(i-1)*dx; h1=subs(f,c); h2=subs(g,c); h=h1-h2; area=area+dx*h; %Crea un rectángulo con un vértice en el punto (c,0) de %ancho dx y de alto h if h>0 rectangle('position',[h2 c h dx],'FaceColor',[1 0.9 0.8]) end end yy=a:0.01:b; x1=subs(f,yy); x2=subs(g,yy); plot(x1,yy,'r','LineWidth',3) plot(x2,yy,'b','LineWidth',3) end Área de una región plana limitada por una curva definida por ecuaciones paramétricas: x x t , y y t t a, b a) Dibujar la lemniscata de Bernouilli de ecuaciones x t y t a cos t sen 2 t 1 a sen t cos t sen 2 t 1 y calcular el área encerrada por dicha curva. 2 Nota: La ecuación cartesiana de la lemniscata es x 2 y2 2 a2 x2 y2 Esta curva se define como el lugar geométrico de los puntos del plano cuyo producto de distancias a dos puntos fijos es constante e igual al cuadrado de la semidistancia entre dichos puntos. b) Repetir el apartado a) considerando la cicloide de ecuaciones paramétricas: x R t sen t y R 1 cos t t Nota: Esta curva es la que describe una chincheta clavada en una rueda de radio R que avanza girando sin deslizar. PÁGINA 4 MATLAB: APLICACIONES DE LA INTEGRAL c) Repetir el apartado a) considerando la cardioide de ecuaciones paramétricas: x a cos t 1 cos t y a sen t 1 cos t t 0, 2 Nota: La ecuación cartesiana de la cardioide es x 2 ax y 2 x 2 2 y 2 a 2 siendo a un parámetro. Esta curva es la que describe un punto fijo del borde de un círculo que rueda sin deslizar sobre otro del mismo radio. Una curva dada en paramétricas es el conjunto de puntos x, y de la forma x x t t a, b y y t Si las funciones x e y tiene derivada continua entonces ‐ el área limitada por C y el eje OX es b y t x ' t dt a ‐ el área limitada por C y el eje OY es b x t y ' t dt a Accede a la página http://www.giematic.com/integralDef/laboratorios/parametricas.html para ver la representación de las curvas que se definen en este ejercicio. Observa que: ‐ se recorre toda la lemniscata cuando t 0, 2 ‐ se recorre un ciclo de la cicloide cuando t 0, 2 R ‐ se recorre la cardioide cuando t 0, 2 Código Matlab syms a t %Lemniscata de Bernouilli x=a*cos(t)/(sin(t)^2+1); y=a*sin(t)*cos(t)/(sin(t)^2+1); lemniscata=4*int(abs(y*diff(x,t)),t,0,pi/2) %Cicloide syms R MATLAB: PRÁCTICA 12 PÁGINA 5 x=R*(t-sin(t)); y=R*(1-cos(t)); cicloide=simplify(int(abs(y*diff(x,t)),t,0,2*pi)) %Cardioide x=a*cos(t)*(1+cos(t)); y=a*sin(t)*(1+cos(t)); cardioide=2*int(abs(y*diff(x,t)),t,0,pi) El siguiente código permite representar la cicloide con Matlab function cicloide(a,k,m) % cicloide(a,k,m) dibuja 1 ciclo de la cicloide dada por (a(t-sen(t),a(1-cos(t)) % así como la circunferencia generatriz % cicloide(a,k) dibuja k ciclos de la misma cicloide t=0:.01:2*pi; if nargin==3 x=a*(t-sin(t)); y=a*(1-cos(t)); plot(x,y,'--r') axis equal hold on for i=0:2*pi/m:2*pi xc=a*cos(t)+i*a; yc=a*sin(t)+a; plot(xc,yc) px=a*(i-sin(i));py=a*(1-cos(i)); plot(px,py,'or') plot(i*a,a,'o') plot([i*a, px],[a,py]) pause(2) end else for n=0:k-1 x=a*(t-sin(t))+2*pi*n*a; y=a*(1-cos(t)); plot(x,y) axis equal hold on end end hold off Áreas planas en coordenadas polares 3 a) Calcular el área encerrada por la cardioide de ecuación polar a 1 cos siendo a un número real. b) Calcular el área de la región encerrada a la vez en la cardioide y en la circunferencia a sen considerando a 0 . Nota: Este ejercicio está resuelto analíticamente paso a paso en la página http://www.giematic.com/integralDef/ejercicios/Eareapol3.html Accede a la página http://www.giematic.com/integralDef/laboratorios/polares.html PÁGINA 6 MATLAB: APLICACIONES DE LA INTEGRAL para ver la representación de las dos curvas y como ‐ se recorren la cardioide cuando 0, 2 ‐ se recorre la circunferencia cuando 0, a) Para calcular el área del sector limitado por la curva , continua en el intervalo 1 2 1 , 2 , y los dos radios vectores se calcula como: A 2 2 d . 1 En el caso de la cardioide será: a2 2 2 1 cos 2 d 0 3 2 a 2 Código Matlab: syms a phi rho=a*(1+cos(phi)); int(1/2*rho^2,phi,0,2*pi) Puedes utilizar la función cardioide.m para representar en Matlab esta curva. b) Calculamos los puntos de corte que son para 2 y El área pedida será: a2 2 /2 0 sen 2 d a2 1 cos 2 d 1 a 2 2 /2 2 Código Matlab: syms a phi rho=a*(1+cos(phi)); rho1=a*sin(phi); puntos=solve(rho-rho1,phi) area2=int(1/2*rho1^2,phi,0,puntos(2))+ int(1/2*rho^2,phi,puntos(2),puntos(1)); pretty(simplify(area2)) Para representar la cardioide y la circunferenencia con Matlab puedes utilizar el siguiente código: function curvasp(a) % Representación de la cardioide t=0:.01:2*pi; r=a*(1+cos(t)); polar(t,r) hold on % Bastaría considerar t entre 0 y pi % para recorrer la circunferencia r=a*sin(t); polar(t,r,'r') MATLAB: PRÁCTICA 12 PÁGINA 7 legend('r=a(1+cos(t)','r=a sin(t)') hold off Ejercicios propuestos La superficie de una parte de una máquina es la región entre las gráficas 1 2 de y1 x y y2 0.08 x k a) Encontrar k si la parábola es tangente a la gráfica de y1 b) Encontrar el área de la superficie de la parte de la máquina. Demostrar, con ayuda de Matlab, que: a) El área de una circunferencia de centro a, b y radio r es r . 2 ‐ Utilizando coordenadas cartesianas: ‐ Utilizando ecuaciones paramétricas 2 x t a r cos t y t b r sen t t 0, 2 a y b es ab b) El área de una elipse de centro , y de semiejes ‐ Utilizando coordenadas cartesianas: ‐ Utilizando ecuaciones paramétricas x t a cos t y t b sen t t 0, 2 Áreas planas en coordenadas polares a) Calcular el área de una rosa de 2n pétalos de ecuación cos n 3 para n 2 y para n 4 . b) Calcular el área de las dos primeras vueltas de la espiral de Arquímedes de ecuación a con a 0 c) Calcular el área de la región rodeada por un lazo de la lemniscata 2 cos 2