using SymPy # Para el cálculo simbólico.
using HCubature # Para el cálculo numérico de integrales múltiples.
10 Integrales de funciones de varias variables
10.1 Ejercicios Resueltos
Para la realización de esta práctica se requieren los siguientes paquetes:
Ejercicio 10.1 Calcular el volumen de las siguientes figuras geométricas usando integrales múltiples.
Para calcular numéricamente integrales definidas de funciones de varias variables usar la función hcubature
del paquete HCubature
.
Este paquete toma como argumento una función vectorizada. Para crear una función vectorizada a partir de una función escalar se puede usar f(v) = f(v...)
.
Un paralelogramo de base rectangular
y altura .Soluciónusing HCubature f(x, y) = 10 f(v) = f(v...) hcubature(f, [0,0], [1,5])
(50.0, 7.105427357601002e-15)
Una cuña de base rectangular
y altura .Soluciónf(x, y) = 10x f(v) = f(v...) hcubature(f, [0,0], [1,5])
(25.0, 3.552713678800501e-15)
Un cilindro de base circular centrada en el origen con radio
y altura .Soluciónf(x, y) = x^2+y^2<1 ? 10 : 0 f(v) = f(v...) hcubature(f, [-1,-1], [1,1])
(31.41598951201623, 4.6813472010342655e-7)
Una semiesfera centrada en el origen con radio
.Soluciónf(x, y) = x^2+y^2<1 ? sqrt(1-x^2-y^2) : 0 f(v) = f(v...) hcubature(f, [-1,-1], [1,1])
(2.0943951101375893, 3.12087277156216e-8)
Ejercicio 10.2 Calcular las siguientes integrales iteradas.
.Soluciónusing SymPy @syms x y f(x, y) = x + y integrate(f(x,y), (y, 0, 2), (x, 0, 1))
.Soluciónintegrate(f(x,y), (x, 0, 1), (y, 0, 2))
.Solución@syms z f(x, y, z) = x * y * z integrate(f(x,y,z), (z, 0, 3), (y, 0, 2), (x, 0, 1))
.Solución@syms z f(x, y, z) = x * y * z integrate(f(x,y,z), (y, 0, 2), (x, 0, 1), (z, 0, 3))
Ejercicio 10.3 Calcular las siguientes integrales dobles sobre las regiones dadas.
.Soluciónusing SymPy @syms x y f(x, y) = exp(x+y) integrate(f(x,y), (y, 0, x/2), (x, 0, 2))
Calcular la integral anterior invirtiendo el orden de integración.
Soluciónintegrate(f(x,y), (x, 2y, 2), (y, 0, 1))
.Soluciónf(x, y) = x^2*y integrate(f(x,y), (y, x, sqrt(x)), (x, 0, 1))
Calcular la integral anterior invirtiendo el orden de integración.
Soluciónintegrate(f(x,y), (x, y^2, y), (y, 0, 1))
.Soluciónf(x, y) = cos(x^2) integrate(f(x,y), (x, y, 1), (y, 0, 1))
Como la función
no tiene primitiva inmediata, el resultado aparece en función de a función de la integral de Fresnel. Sin embargo, resulta más sencillo calcular esta integral doble iterada invirtiendo el orden de integración, es decir, .integrate(f(x,y), (y, 0, x), (x, 0, 1))
Ejercicio 10.4 Calcular los volúmenes que quedan por debajo de las funciones siguientes en las regiones dadas.
en el primer octante.Soluciónusing SymPy @syms x y z # Despejamos z y la expresamos en función de x e y. f(x, y) = solve(x+2y+3z-6, z)[1] # Obtenemos los límites de integración en y. g(x) = solve(f(x,y), y)[1] # Obtenemos los límites de integración en x. = solve(g(x))[1] b # Calculamos la integral doble. integrate(f(x,y), (y, 0, g(x)), (x, 0, b))
en .SoluciónEn este caso la integral doble no nos da el volumne, porque hay subintervalos donde la función es negativa. Para ello debemos descomponer la región en subregiones donde la función siempre tenga el mismo signo y sumar los volúmenes de cada una de ellas.
f(x, y) = x*y integrate(f(x,y), (y, -1, 0), (x, -1, 0)) + integrate(-f(x,y), (y, -1, 0), (x, 0, 1)) + integrate(-f(x,y), (y, 0, 1), (x, -1, 0)) + integrate(f(x,y), (y, 0, 1), (x, 0, 1))
En este caso resulta más sencillo utilizar la función
hcubature
del paqueteHCubature
.using HCubature f(x, y) = abs(x*y) f(v) = f(v...) hcubature(f, [-1,-1], [1,1])
(1.0, 0.0)
Ejercicio 10.5 Un balsa de residuos líquidos con forma elíptica de ecuación
using SymPy
@syms x y
# Función de la superficie
f(x, y) = x^2/2 + y^2/2 - 10
# Función de la región de integración
g(x, y) = 2x^2 + y^2 - 9
# Límites de integración en y
= solve(g(x, y), y)
soly # Límites de integración en x
= solve(g(x, 0))
solx integrate(f(x, y), (y, soly[1], soly[2]), (x, solx[1], solx[2]))
Ejercicio 10.6 Calcular el volumen comprendido entre las superficies de las funciones
using SymPy
@syms x y
f(x, y) = x^2 + y^2
g(x, y) = 2x
# Límites de integración en y
= solve(f(x,y)-g(x,y), y)
soly # Límites de integración en x
= solve(soly[1])
solx # Calculamos el volumen
integrate(g(x,y)-f(x,y), (y, soly[2], soly[1]), (x, solx[1], solx[2]))
Ejercicio 10.7 Una tolva tiene forma cónica dada por la función
El área de la superficie de una función
Para calcular el volumen es más sencillo trabajar en coordenadas polares.
using SymPy
@syms x y r θ
f(x, y) = 2*sqrt(x^2+y^2)
# Función en coordenadas polares
g(r, θ) = f(r*cos(θ), r*sin(θ))
# Límites de integración en r
= solve(g(r,θ)-4, r)
solr integrate(4 - g(r,θ)*r, (r, 0, solr[2]), (θ, 0, 2PI))
Para calcular en área de la superficie trabajamos en coordenadas rectangulares.
# Límites de integración en y
= solve(f(x,y)-4, y)
soly # Límites de integración en x
= solve(f(x,0)-4)
solx integrate(sqrt(diff(f(x,y), x)^2 + diff(f(x,y), y)^2 +1), (y, soly[1], soly[2]), (x, solx[1], solx[2]))
Ejercicio 10.8 Una placa metálica delimitada por las curvas
Calcular la masa de la placa.
AyudaLa masa de una región plana con densidad variable
se calcula mediante la integral.Soluciónusing SymPy @syms x y d(x,y) = x^2 * y^2 g(x) = 2 - x^2 h(x) = -3 + 2x^2 # Límites de integración en x = solve(g(x)-h(x), x) sol = integrate(d(x,y), (y, h(x), g(x)), (x, sol[1], sol[2])) m
Calcular el centro de masas de la placa
AyudaLas coordenadas del centro de masas se obtienen mediante las siguientes integrales.
SoluciónCalculamos primero la componente
del centro de masas.# Momento con respecto a y = integrate(x*d(x,y), (y, h(x), g(x)), (x, sol[1], sol[2])) my # Centro de masas en x. / m my
Y después la componente
del centro de masas.# Momento con respecto a x = integrate(y*d(x,y), (y, h(x), g(x)), (x, sol[1], sol[2])) mx # Centro de masas en y. / m mx
10.2 Ejercicios propuestos
Ejercicio 10.9 Calcular la integral
Ejercicio 10.10 Calcular el volumen de la región encerrada por las superficies
Ejercicio 10.11 Calcular el volumen encerrado por la superficie de la función
Ejercicio 10.12 Calcular el area de la superficie de la función
Ejercicio 10.13 Calcular el centro de masas de la región plana delimitada por las funciones
Coordenada x
Coordenada y