Los métodos de integración numérica de funciones de una variable, se pueden extender a integrales múltiples. En particular el método de cuadratura gaussiana es conveniente por el menor número de operaciones requeridas, en comparación (p. ej.) con la regla compuesta de Simpson. A continuación presentamos un caso de integración doble [1]
Por ejemplo usando una generalización del método de cuadratura gaussiana a dos dimensiones, podemos calcular mediante el siguiente código:
(define (fxy x y) (+ (expt (cos (+ (* x x) (* y y))) 2) 2)) (define (vol n) (int2g 0 1 (λ(x) 0) (λ(x) (+ (- x) 1)) fxy n n)) (map vol '(2 3 4 5 6 7 8))
(1.4270959233395155
1.4307179095080604
1.4304856648923563
1.4304734682663138
1.430474413405907
1.4304744206786033
1.4304744197597712)
Es decir, obtenemos . La función map permite evaluar el volúmen para diferentes valores de nodos (en este caso con igual número en ambos ejes). Compartimos el archivo ejemplo1int2d.rkt [requiere: basicas.rkt e integraciones.rkt] que incluye el código anterior y la generación de la siguiente gráfica asociada
Observación: La figura generada en el ambiente de DrRacket puede ser reorientada con ayuda del mouse. Estas gráficas se pueden generar a partir de la versión 5.2 de DrRacket.
Como referencia compartimos también el archivo ejemplo1int2d.sce (de Scilab) que ilustra cómo realizar este mismo cálculo. La “restricción” del comando int2d en Scilab es que es necesario definir la región de integración en términos de un conjunto de triángulos en el plano. Observación: esto no representa realmente una restricción, sino que señala (de manera indirecta) la importancia de las triangulaciones en geometría computacional, en particular en sus aplicaciones a ingeniería (ver p. ej. notas de mesh generation, del curso Applied Parallel Computating, MIT).
Nota [1] Cuando el número de dimensiones aumenta a más de tres, hay que recurrir a otros métodos, entre ellos el llamado método de Monte Carlo.









