A weather service wants the total rainfall over an entire county in one
storm, not just the depth at a single rain gauge. Rainfall depth
f(x, y) varies from point to point across the county's shape —
heavier in the hills, lighter near the coast — so "total rainfall" means adding up
f over every point of a two-dimensional area, not
along a one-dimensional stretch. The same question shows up as the total mass of a metal
sheet whose density varies from spot to spot, or the total sales across a city whose
population density varies by neighbourhood. All of these are asking for a sum over a
region, and that sum is exactly what a double integral computes.
A single integral measures the area under a curve. Lift the idea one dimension: let
f(x, y) be a surface floating over a flat region
R in the plane. The double integral
\iint_R f(x, y)\, dA
is the signed volume trapped between that surface and the region — the
natural sequel to
the definite integral,
and a first taste of integrating a function of several
variables.
From a double Riemann sum to a volume
Just as the definite integral was born from
Riemann sums,
the double integral is the limit of a double sum. Chop a rectangle
R = [a,b] \times [c,d] into a grid of
m \times n small tiles, each of area
\Delta A = \Delta x\, \Delta y.
Step 1 — build one matchstick. Over the tile with corner
(x_i^*, y_j^*), erect a thin box of height
f(x_i^*, y_j^*). Its volume is height times base:
\text{box}_{ij} = f(x_i^*, y_j^*)\, \Delta A.
Step 2 — stack every matchstick. Add the boxes over the whole grid to
approximate the volume under the surface:
V \approx \sum_{i=1}^{m} \sum_{j=1}^{n} f(x_i^*, y_j^*)\, \Delta A.
Step 3 — refine the grid. Let the tiles shrink
(m, n \to \infty). The staircase of boxes settles onto the smooth
volume, and the double sum becomes the double integral:
\iint_R f(x, y)\, dA = \lim_{m, n \to \infty} \sum_{i=1}^{m} \sum_{j=1}^{n} f(x_i^*, y_j^*)\, \Delta A.
Elegant, but a double limit is no way to compute. The rescue is Fubini's
theorem: do one variable at a time.
Fubini's theorem: integrate one variable, then the other
Slice the solid with planes parallel to the y-axis. Each slice at
a fixed x has cross-sectional area
A(x) = \int_c^d f(x, y)\, dy — an ordinary single integral in
which x is held constant. Sweeping the slices across
[a, b] recovers the volume, exactly the
volumes-by-slicing
principle:
\iint_R f\, dA = \int_a^b A(x)\, dx = \int_a^b \!\left( \int_c^d f(x, y)\, dy \right) dx.
Fubini says the order does not matter: slice the other way and you get the same number.
Worked example — \iint_R xy\, dA over [0,1]\times[0,2]
Step 1 — write the iterated integral. Inner variable
y runs 0 \to 2, outer variable
x runs 0 \to 1:
\iint_R xy\, dA = \int_0^1 \!\left( \int_0^2 xy\, dy \right) dx.
Step 2 — do the inner integral, treating x as a
constant. Pull x out and integrate
y:
\int_0^2 xy\, dy = x \int_0^2 y\, dy = x \left[ \frac{y^2}{2} \right]_0^2 = x \cdot \frac{4}{2} = 2x.
Step 3 — feed that into the outer integral. The inner slice-area is
A(x) = 2x:
\int_0^1 2x\, dx = \left[ x^2 \right]_0^1 = 1.
So \iint_R xy\, dA = 1.
Check — swap the order. Fubini claims it makes no difference which
variable goes first. Try inner x, outer
y instead:
\int_0^2 \!\left( \int_0^1 xy\, dx \right) dy = \int_0^2 y \left[ \frac{x^2}{2} \right]_0^1 dy = \int_0^2 \frac{y}{2}\, dy = \left[ \frac{y^2}{4} \right]_0^2 = 1.
Same region, same integrand, opposite slicing direction, and the answer lands on
1 both times — exactly what Fubini promises for a rectangle.
Non-rectangular regions: Type I
Real regions are rarely tidy rectangles. A Type I region sits between two
curves of x: for a \le x \le b,
y runs from a floor g_1(x) to a ceiling
g_2(x). The inner limits now depend on
x:
\iint_R f\, dA = \int_a^b \!\left( \int_{g_1(x)}^{g_2(x)} f(x, y)\, dy \right) dx.
Worked example — the region under y = x^2 on
[0,1], with f = 1 (so we get its
area).
Step 1 — read the limits off the region. For each
x \in [0,1] the strip runs y: 0 \to x^2:
\text{Area} = \int_0^1 \!\left( \int_0^{x^2} 1\, dy \right) dx.
Step 2 — inner integral. The length of the strip is the ceiling minus the
floor:
\int_0^{x^2} 1\, dy = x^2 - 0 = x^2.
Step 3 — outer integral. Sum the strip lengths across
x:
\int_0^1 x^2\, dx = \left[ \frac{x^3}{3} \right]_0^1 = \frac{1}{3}.
The region has area \tfrac13. (A Type II region
flips the roles — y outer, with
x running between curves h_1(y) and
h_2(y) — and you slice horizontally instead.)
Worked example — a triangular plate under y = x
A metal plate occupies the triangle R with corners
(0,0), (2,0) and
(2,2) — the region under the line
y = x, for 0 \le x \le 2. Its density
at (x, y) is xy (heavier towards the
far corner). Find the total mass, \iint_R xy\, dA.
Step 1 — read the limits off the picture, not off the integrand. Sketch
the triangle first. For a fixed x \in [0, 2], a vertical strip
runs from the floor y = 0 up to the ceiling
y = x — that ceiling is the whole reason the inner limit is a
function of x rather than a number. The outer variable
x then sweeps the constants 0 to
2:
\iint_R xy\, dA = \int_0^2 \!\left( \int_0^{x} xy\, dy \right) dx.
Step 2 — inner integral, x frozen.
\int_0^{x} xy\, dy = x \left[ \frac{y^2}{2} \right]_0^{x} = x \cdot \frac{x^2}{2} = \frac{x^3}{2}.
Step 3 — outer integral.
\int_0^2 \frac{x^3}{2}\, dx = \frac{1}{2} \left[ \frac{x^4}{4} \right]_0^2 = \frac{1}{2} \cdot \frac{16}{4} = 2.
The plate's total mass is 2. Notice the discipline that made
this work: the inner limits (0 and
x) are the region's floor and ceiling, and may depend on the
outer variable; the outer limits (0 and
2) must always come out as plain constants. Mixing that up —
say, leaving an x in the outer limits — is a sign the region was
misread, not that the answer is unusual.
Let f be continuous on the region R.
Then the double integral equals either iterated integral, and the order may be swapped:
-
Rectangle R = [a,b]\times[c,d]:
\iint_R f\, dA = \int_a^b \!\int_c^d f\, dy\, dx = \int_c^d \!\int_a^b f\, dx\, dy.
-
Type I (g_1(x) \le y \le g_2(x)):
\displaystyle \iint_R f\, dA = \int_a^b \!\int_{g_1(x)}^{g_2(x)} f\, dy\, dx.
-
Type II (h_1(y) \le x \le h_2(y)):
\displaystyle \iint_R f\, dA = \int_c^d \!\int_{h_1(y)}^{h_2(y)} f\, dx\, dy.
-
Special case f \equiv 1:
\iint_R 1\, dA = \operatorname{area}(R).
Fubini's promise — both orders give the same answer — is a practical superpower, because
one order can be elementary while the other is impossible. The classic is
\int_0^1 \!\int_x^1 e^{y^2}\, dy\, dx.
The inner integral \int e^{y^2}\, dy has no elementary
antiderivative — dead on arrival. But the region
\{ 0 \le x \le 1,\ x \le y \le 1 \} is the triangle below the
line y = x's mirror; redescribe it as Type II
(0 \le y \le 1, 0 \le x \le y) and
swap:
\int_0^1 \!\int_0^y e^{y^2}\, dx\, dy = \int_0^1 y\, e^{y^2}\, dy = \left[ \tfrac12 e^{y^2} \right]_0^1 = \tfrac12 (e - 1).
Now the inner integral is trivial (x is absent, so it just
contributes a factor y) and the
substitution
u = y^2 finishes it. Same region, same volume — only the order
changed. Reading the region correctly is the whole game.
Take a black-and-white photograph as a grid of pixel brightnesses — a discrete stand-in for
a function f(x, y) over a rectangle. Want the photo's
total brightness? You could add up brightness row by row
(getting one number per row, then adding those numbers), or column by column
(one number per column, then adding those). Either way, you visit every pixel exactly once
and add it in — so both totals must come out identical.
That is Fubini's theorem with the limit not yet taken: "sum rows-then-columns" is the
discrete cousin of \int_a^b\!\int_c^d f\, dy\, dx, and
"sum columns-then-rows" is \int_c^d\!\int_a^b f\, dx\, dy. Shrink
the pixels to points and the two Riemann-style sums become the two iterated integrals — and
Fubini is exactly the statement that a picture's total brightness doesn't care which way
you scanned it.