{"version":1,"lectureId":"01M14TZ5MGQ0E91Y0973T7G66Y","attempt":0,"publication":{"slug":"divergence-and-stokes-theorems","title":"Divergence, and the Two Great Theorems","subject":"mathematics","summary":"Divergence measures how much a vector field flows out of a point, and it turns out to be the key to two of the biggest theorems in vector calculus. We build the idea from a picture of fluid crossing a little loop, turn it into a formula, and compute it for a spreading field and for a pure swirl. Then we state the divergence theorem, that the total production inside a solid equals the flux through its skin, and see why it holds: chop the solid into boxes, and every interior wall cancels against its neighbour. Curl arrives as the twin measurement, spin instead of outflow, and Stokes' theorem falls out of the same argument one dimension down. We finish by setting both beside the fundamental theorem of calculus, where all three are visibly one sentence.","metaDescription":"Divergence as outward flow, the divergence theorem, and Stokes' theorem, built from one picture and one cancelling argument.","transcript":"Vector calculus ends with the divergence theorem and Stokes' theorem. They make the same startling promise: what a field does throughout a region can be recovered from what it does on the boundary. The divergence theorem turns total divergence inside a solid into flux through its closed surface. Stokes' theorem turns total curl through a surface into circulation around its edge. Both replace an interior measurement with a boundary measurement. Here is a vector field in the plane. At every point there's an arrow, and the honest way to read it is as the velocity of a fluid. Put a speck of dust down somewhere, and the arrow tells you which way it drifts, and how fast. Now draw a little closed loop around the origin and ask one simple question. Is more fluid leaving this loop than entering it? Here, obviously yes. Every single arrow crosses it on the way out. Something inside is making fluid. Compare that with this second field. Same plane, but now the fluid is turning. It goes round and round the origin, and it moves faster the further out you look. Draw the same loop on it. And now nothing crosses. The arrows run along the loop, never through it. There is plenty of motion here, and no outflow at all. That contrast is what divergence measures. Not how fast the field is, not which way it points, but how much of it is flowing out of a point. Positive divergence means a source. Negative means a sink. Zero means whatever comes in goes out again. Hold on to that picture, because both of today's theorems are built out of it. Now let's turn it into a formula. So let's turn that into a formula. If our field is F, then its divergence is written div F, or nabla dot F, and here it is. The components P, Q and R are functions of x, y and z. Take the first component and differentiate it with respect to x. Take the second, and differentiate with respect to y. Take the third with respect to z. Then add the three numbers up. That is genuinely all it is: one derivative from each component, each matched to its own variable. And notice what kind of object comes out. F is a vector field, an arrow at every point. Div F is a number at every point. Let's compute one. Our spreading field was F equals x, y. The first component is x, so its x derivative is one. The second is y, so its y derivative is one. Add them. Two, and positive, which is exactly what the picture said. Fluid is being created at every point, so any loop you draw has more coming out of it than going in. Here the divergence happens to be constant, but in general it is a function of position. Now the swirl. F equals minus y, x. The first component is minus y, and we differentiate it with respect to x. There is no x in it, so that derivative is nothing. The second component is x, differentiated with respect to y, and that is nothing too. So the divergence is zero, everywhere. And again the picture agrees. The fluid is moving, quite fast in places, but none of it ever leaves. Motion and divergence are two different questions, and this field is the cleanest reminder of that I know. Now the first theorem. Take a solid region in space, call it E, and a vector field F living on it. The skin of that region, the closed surface wrapping it up, is written del E. There are two completely different things you could measure here. First, go inside. Compute the divergence at every point of E and add it all up over the volume. That is the total rate at which fluid is being produced in there. Second, forget the inside completely. Stand on the surface, and at each point take the part of F pointing straight out, F dot n hat. Add that up over the whole skin. That is the flux, the net rate at which fluid crosses the boundary. The divergence theorem says those two numbers are equal.  Always. Total production inside equals total flow across the boundary, which, once you say it out loud, is really just conservation of stuff. So why is it true? Keep the solid in view and take one flat slice through it. The slice stands for a layer of tiny cells filling the volume. We can understand the whole solid by inspecting two neighbours in that layer. Here are those two neighbours enlarged. For each cell, the flux across its boundary is its divergence contribution. When all the cells are added, the question is what happens along every shared wall. The cell on the left counts that shared wall with its outward normal pointing into the cell on the right. That direction sets the sign of its flux contribution. The cell on the right counts the same wall with its outward normal pointing back into the cell on the left. The two directions are opposite, so the two flux contributions have opposite signs. Equal and opposite. Every interior wall cancels against its partner, in pairs, all the way through the solid. Remove those interior boundaries and what survives is only the outside skin. That is the entire proof, in spirit. The divergence theorem is a bookkeeping identity. Interior faces cancel; boundary faces don't. The second theorem needs a different measurement. Divergence asked how much of a field flows out of a point. Curl asks something else: how much the field turns around a point. Drop a tiny paddle wheel into the fluid, pinned at its centre so that it can only spin. If the flow turns it, the field has curl there. Curl is a vector: it points along the axis the wheel spins about, and its length says how fast. In the plane, that axis is always straight up out of the page, so only one number survives. For our swirling field, minus y and x, it comes out as two k hat, a constant amount of spin at every single point. Now Stokes' theorem. Take a surface in space, and this time not a closed one. A piece of one, like a butterfly net. Then del S is the curve running round its rim. Choose a normal direction for the surface, and walk that rim the matching way: the way that keeps the surface on your left when your head points along n hat. Pairing those two directions up is the only fiddly part of the whole theorem. And Stokes says this. The total curl passing through the surface equals the circulation of F once around its rim. The left-hand side is a surface integral: at each point of S, how much curl is aimed through it. The right-hand side is a line integral: F dotted with the direction you are travelling, added up all the way round the closed loop. And the reason is the same trick as before. Chop the surface into little tiles, and walk round the edge of every single tile, in the direction the normal tells you to. Every interior edge belongs to two tiles, and those two tiles walk it in opposite directions. So it cancels, exactly as the shared walls did a moment ago. All the little circulations collapse, and what is left is the walk round the outer rim. Meanwhile each tiny loop's circulation is its own curl times its own area. Add them all up and you get the surface integral on one side and the boundary loop on the other. Same bookkeeping, one dimension down. Let's put the two theorems one above the other, because the resemblance is the whole point. First the divergence theorem: a triple integral of div F over a solid region, equal to the flux of F out through the closed surface around it. And then Stokes: a surface integral of curl F over a piece of surface, equal to the circulation of F once round the curve that bounds it. Now look at the shape of them. On the left of each one, a derivative of F, integrated over a region. On the right of each one, F itself, integrated over the boundary of that region. Div and curl are different derivatives, and a solid and a surface are different regions. And you have met that sentence before. The fundamental theorem of calculus: integrate f prime across an interval, and the answer is f at the two endpoints. The boundary of an interval is just its two ends. Same sentence, every time. Integrate a derivative over a region, and the answer is already written on the edge. That is what these theorems buy you: a hard integral over something fat, traded for an easier one over its skin. So. Divergence measures outflow, curl measures spin, and each of them has a theorem saying that the inside tells you nothing the boundary has not already said.","watch":{"version":1,"scenes":[{"title":"Flow Out of a Point","start":0,"end":109.58800000000001,"objects":{"axes_source":"an Axes (x_range=(-2.2, 2.2), y_range=(-2.2, 2.2), aspect=(1, 1))","axes_swirl":"an Axes (x_range=(-2.2, 2.2), y_range=(-2.2, 2.2), aspect=(1, 1))","card":"a Title that says \"Multivariable Calculus — Divergence, and the Two Great Theorems\"","destination_heading":"a Heading that says \"Two Boundary Theorems\"","divergence_name":"a Tex [text] that says \"Divergence theorem\" (underline=True)","divergence_promise":"a Math [text] that says \"$integral.triple_(E) op(\"div\") arrow(F) thin dif V = integral.double_(partial E) arrow(F) dot hat(n) thin dif S$\"","field_sink":"a VectorField [red] drawn in axes_source (function=<function>, at=((-1.5, -1.5), (-1.5, -0.5), (-1.5, 0.5), (-1.5, 1.5), (-0.5, -…, scale=0.35)","field_source":"a VectorField [blue] drawn in axes_source (function=<function>, at=((-1.5, -1.5), (-1.5, -0.5), (-1.5, 0.5), (-1.5, 1.5), (-0.5, -…, scale=0.35)","field_swirl":"a VectorField [green] drawn in axes_swirl (function=<function>, at=((-1.5, -1.5), (-1.5, -0.5), (-1.5, 0.5), (-1.5, 1.5), (-0.5, -…, scale=0.35)","heading":"a Heading that says \"Flow Out of a Point\"","label_source":"a Tex [text] that says \"A source\" (underline=True)","label_swirl":"a Tex [text] that says \"Pure swirl\" (underline=True)","loop_source":"a Circle [yellow] drawn in axes_source","loop_swirl":"a Circle [yellow] drawn in axes_swirl","point":"a Point [yellow] drawn in axes_source","probe":"a Point [cyan] labelled \"(-1.4, 0.8)\" drawn in axes_source (location=(<VariableNumber probe_x = 0.9>, <VariableNumber probe_y = 1.3>))","probe_velocity":"a Vector [cyan] drawn in axes_source (start=(<VariableNumber probe_x = 0.9>, <VariableNumber probe_y = 1.3>), end=((1.35 * probe_x), (1.35 * probe_y)))","probe_x":"a VariableNumber (initial_value=-1.4, format_spec='.1f')","probe_y":"a VariableNumber (initial_value=0.8, format_spec='.1f')","stokes_name":"a Tex [text] that says \"Stokes' theorem\" (underline=True)","stokes_promise":"a Math [text] that says \"$integral.double_(S) (nabla times arrow(F)) dot hat(n) thin dif S = integral.cont_(partial S) arrow(F) dot dif arrow(r)$\""},"beats":[{"start":0,"say":"Vector calculus ends with the divergence theorem and Stokes' theorem. They make the same startling promise: what a field does throughout a region can be recovered from what it does on the boundary.","live":[],"does":[[0,"card is shown on the screen, written out."],[1.5,"card: enter:write-left-to-right."],[11.726,"card is hidden from the screen — left the board."]]},{"start":12.926,"say":"The divergence theorem turns total divergence inside a solid into flux through its closed surface. Stokes' theorem turns total curl through a surface into circulation around its edge. Both replace an interior measurement with a boundary measurement.","live":null,"does":[[12.926,"destination_heading is shown on the screen, written out."],[13.449,"divergence_name is shown on the screen, written out."],[16.27,"divergence_promise is shown on the screen, written out."],[20.206,"stokes_name is shown on the screen, written out."],[22.480999999999998,"stokes_promise is shown on the screen, written out."],[29.192,"destination_heading is hidden from the screen — left the board."],[29.192,"divergence_name is hidden from the screen — left the board."],[29.192,"divergence_promise is hidden from the screen — left the board."],[29.192,"stokes_name is hidden from the screen — left the board."],[29.192,"stokes_promise is hidden from the screen — left the board."],[29.192,"axes_source is shown on the screen, written out."]]},{"start":30.391999999999996,"say":"Here is a vector field in the plane. At every point there's an arrow, and the honest way to read it is as the velocity of a fluid. Put a speck of dust down somewhere, and the arrow tells you which way it drifts, and how fast.","live":["axes_source"],"does":[[30.391999999999996,"axes_source moves to a new place on the board."],[30.391999999999996,"heading is shown on the screen, written out."],[34.479,"field_source is shown on the screen, written out."],[34.479,"probe_velocity is shown on the screen, written out."],[39.169,"probe is shown on the screen, written out."],[41.93199999999999,"probe is redrawn as the numbers it depends on change."],[41.93199999999999,"probe_velocity is redrawn as the numbers it depends on change."],[41.93199999999999,"probe_x ticks to 0.9."],[41.93199999999999,"probe_y ticks to 1.3."]]},{"start":44.483,"say":"Now draw a little closed loop around the origin and ask one simple question. Is more fluid leaving this loop than entering it? Here, obviously yes. Every single arrow crosses it on the way out. Something inside is making fluid.","live":["axes_source","heading","field_source","probe","probe_velocity"],"does":[[44.483,"probe is hidden from the screen."],[44.483,"probe_velocity is hidden from the screen."],[46.248000000000005,"loop_source is shown on the screen, written out."],[46.886,"point is shown on the screen, grown."],[48.886,"point is hidden from the screen."],[59.135000000000005,"label_source is shown on the screen, written out."]]},{"start":60.849,"say":"Compare that with this second field. Same plane, but now the fluid is turning. It goes round and round the origin, and it moves faster the further out you look.","live":["label_source","axes_source","heading","field_source","loop_source"],"does":[[62.775999999999996,"axes_swirl is shown on the screen, written out."],[65.888,"field_swirl is shown on the screen, written out."]]},{"start":72.142,"say":"Draw the same loop on it. And now nothing crosses. The arrows run along the loop, never through it. There is plenty of motion here, and no outflow at all.","live":["label_source","axes_source","axes_swirl","heading","field_source","loop_source","field_swirl"],"does":[[73.164,"loop_swirl is shown on the screen, written out."],[74.96300000000001,"label_swirl is shown on the screen, written out."]]},{"start":84.085,"say":"That contrast is what divergence measures. Not how fast the field is, not which way it points, but how much of it is flowing out of a point. Positive divergence means a source. Negative means a sink. Zero means whatever comes in goes out again.","live":["label_source","axes_source","label_swirl","axes_swirl","heading","field_source","loop_source","field_swirl","loop_swirl"],"does":[[93.454,"field_source is indicated — a transient flash."],[93.454,"loop_source is indicated — a transient flash."],[96.28699999999999,"label_source becomes \"A sink\"."],[96.28699999999999,"field_source is hidden from the screen."],[96.28699999999999,"field_sink is shown on the screen, written out."],[98.319,"label_source becomes \"A source\"."],[98.319,"field_sink is hidden from the screen."],[98.319,"field_source is shown on the screen, written out."],[98.319,"field_swirl is indicated — a transient flash."],[98.319,"loop_swirl is indicated — a transient flash."]]},{"start":101.81,"say":"Hold on to that picture, because both of today's theorems are built out of it. Now let's turn it into a formula.","live":null,"does":[[108.54633333333334,"axes_source is hidden from the screen — left the board."],[108.54633333333334,"field_source is hidden from the screen — axes_source left the board."],[108.54633333333334,"loop_source is hidden from the screen — axes_source left the board."],[108.54633333333334,"axes_swirl is hidden from the screen — left the board."],[108.54633333333334,"field_swirl is hidden from the screen — axes_swirl left the board."],[108.54633333333334,"loop_swirl is hidden from the screen — axes_swirl left the board."],[108.54633333333334,"heading is hidden from the screen — left the board."],[108.54633333333334,"label_source is hidden from the screen — left the board."],[108.54633333333334,"label_swirl is hidden from the screen — left the board."]]}]},{"title":"Divergence","start":109.58800000000001,"end":225.00212500000004,"objects":{"axes_a":"an Axes (x_range=(-2.2, 2.2), y_range=(-2.2, 2.2), aspect=(1, 1))","axes_b":"an Axes (x_range=(-2.2, 2.2), y_range=(-2.2, 2.2), aspect=(1, 1))","divergence_marks":"a Math [yellow] that says \"$2$\" drawn in axes_a","divergence_marks_2":"a Math [yellow] that says \"$2$\" drawn in axes_a","divergence_marks_3":"a Math [yellow] that says \"$2$\" drawn in axes_a","divergence_marks_4":"a Math [yellow] that says \"$2$\" drawn in axes_a","divergence_marks_5":"a Math [yellow] that says \"$2$\" drawn in axes_a","eq_div":"a Math [text] that says \"$op(\"div\") arrow(F) = nabla dot arrow(F) = frac(partial P, partial x) + frac(partial Q, partial y) + frac(partial R, partial z)$\"","ex1_field":"a Math [text] that says \"$arrow(F) = chevron.l x, y chevron.r$\"","ex2_field":"a Math [text] that says \"$arrow(F) = chevron.l -y, x chevron.r$\"","field_a":"a VectorField [blue] drawn in axes_a (function=<function>, at=((-1.5, -1.5), (-1.5, -0.5), (-1.5, 0.5), (-1.5, 1.5), (-0.5, -…, scale=0.35)","field_b":"a VectorField [green] drawn in axes_b (function=<function>, at=((-1.5, -1.5), (-1.5, -0.5), (-1.5, 0.5), (-1.5, 1.5), (-0.5, -…, scale=0.35)","heading":"a Heading that says \"Divergence\"","note":"a Text [text] that says \"Here $arrow(F) = chevron.l P, Q, R chevron.r$, and $P$, $Q$ and $R$ are each functions of $x$, $y$ and $z$. In the plane, drop the last term.\"","work1":"a Derivation [text] that says \"$op(\"div\") arrow(F) &= frac(partial, partial x) (x) + frac(partial, partial y) (y) \\ op(\"div\") arrow(F) &= 1 + 1 = 2$\"","work2":"a Derivation [text] that says \"$op(\"div\") arrow(F) &= frac(partial, partial x) (-y) + frac(partial, partial y) (x) \\ op(\"div\") arrow(F) &= 0 + 0 = 0$\""},"beats":[{"start":109.58800000000001,"say":"So let's turn that into a formula. If our field is F, then its divergence is written div F, or nabla dot F, and here it is. The components P, Q and R are functions of x, y and z.","live":[],"does":[[109.58800000000001,"heading is shown on the screen, written out."],[114.766,"eq_div is shown on the screen, written out."],[119.28200000000001,"note is shown on the screen, written out."]]},{"start":124.1315,"say":"Take the first component and differentiate it with respect to x. Take the second, and differentiate with respect to y. Take the third with respect to z. Then add the three numbers up.","live":["note","eq_div","heading"],"does":[[124.86300000000001,"eq_div (the \"frac(partial P, partial x)\" part) is emphasized."],[129.078,"eq_div (the \"frac(partial P, partial x)\" part) is no longer emphasized."],[129.078,"eq_div (the \"frac(partial Q, partial y)\" part) is emphasized."],[133.06,"eq_div (the \"frac(partial Q, partial y)\" part) is no longer emphasized."],[133.06,"eq_div (the \"frac(partial R, partial z)\" part) is emphasized."],[135.846,"eq_div (the \"frac(partial R, partial z)\" part) is no longer emphasized."]]},{"start":138.095,"say":"That is genuinely all it is: one derivative from each component, each matched to its own variable. And notice what kind of object comes out. F is a vector field, an arrow at every point. Div F is a number at every point.","live":null,"does":[[149.078,"axes_a is shown on the screen, written out."],[150.29700000000003,"field_a is shown on the screen, written out."],[153.455,"divergence_marks is shown on the screen, written out."],[153.555,"divergence_marks_2 is shown on the screen, written out."],[153.65500000000003,"divergence_marks_3 is shown on the screen, written out."],[153.75500000000002,"divergence_marks_4 is shown on the screen, written out."],[153.85500000000002,"divergence_marks_5 is shown on the screen, written out."],[154.982,"axes_a moves to a new place on the board."],[154.982,"divergence_marks is hidden from the screen."],[154.982,"divergence_marks_2 is hidden from the screen."],[154.982,"divergence_marks_3 is hidden from the screen."],[154.982,"divergence_marks_4 is hidden from the screen."],[154.982,"divergence_marks_5 is hidden from the screen."],[154.982,"eq_div is hidden from the screen — left the board."],[154.982,"note is hidden from the screen — left the board."],[154.982,"ex1_field is shown on the screen, written out."]]},{"start":156.18200000000002,"say":"Let's compute one. Our spreading field was F equals x, y. The first component is x, so its x derivative is one. The second is y, so its y derivative is one. Add them.","live":["axes_a","heading","field_a","ex1_field"],"does":[[161.586,"work1 is shown on the screen, written out."],[169.005,"work1 is shown on the screen, written out."]]},{"start":170.5915,"say":"Two, and positive, which is exactly what the picture said. Fluid is being created at every point, so any loop you draw has more coming out of it than going in. Here the divergence happens to be constant, but in general it is a function of position.","live":null,"does":[[170.998,"A box is drawn around work1."],[186.974,"axes_a is hidden from the screen — left the board."],[186.974,"field_a is hidden from the screen — axes_a left the board."],[186.974,"ex1_field is hidden from the screen — left the board."],[186.974,"work1 is hidden from the screen — left the board."]]},{"start":188.174,"say":"Now the swirl. F equals minus y, x. The first component is minus y, and we differentiate it with respect to x. There is no x in it, so that derivative is nothing. The second component is x, differentiated with respect to y, and that is nothing too.","live":["heading"],"does":[[188.174,"axes_b is shown on the screen, written out."],[188.174,"field_b is shown on the screen, written out."],[190.19400000000002,"axes_b moves to a new place on the board."],[190.19400000000002,"ex2_field is shown on the screen, written out."],[193.13100000000003,"work2 is shown on the screen, written out."]]},{"start":208.1395,"say":"So the divergence is zero, everywhere. And again the picture agrees. The fluid is moving, quite fast in places, but none of it ever leaves. Motion and divergence are two different questions, and this field is the cleanest reminder of that I know.","live":["heading","ex2_field","axes_b","field_b"],"does":[[209.66000000000003,"work2 is shown on the screen, written out."],[210.34500000000003,"A box is drawn around work2."],[223.96045833333335,"axes_b is hidden from the screen — left the board."],[223.96045833333335,"field_b is hidden from the screen — axes_b left the board."],[223.96045833333335,"ex2_field is hidden from the screen — left the board."],[223.96045833333335,"heading is hidden from the screen — left the board."],[223.96045833333335,"work2 is hidden from the screen — left the board."]]}]},{"title":"The Divergence Theorem","start":225.00212500000004,"end":356.4537916666667,"objects":{"box_l":"a Polygon [blue] drawn in cells (vertices=((0.4, 0.5), (2.1, 0.5), (2.1, 2.1), (0.4, 2.1)), fill_opacity=0.12)","box_r":"a Polygon [green] drawn in cells (vertices=((2.1, 0.5), (3.8, 0.5), (3.8, 2.1), (2.1, 2.1)), fill_opacity=0.12)","cancel_note":"a Text [text] that says \"Two boxes that share a wall each count that wall, one with its outward normal pointing one way and one with it pointing the other. The two contributions are equal and opposite, so they cancel.\"","cells":"a Figure (x_range=(0.0, 4.2), y_range=(0.0, 2.6), aspect=(4.2, 2.6))","cross_section":"a SolidCrossSection [yellow] labelled \"upright(\"one slice\")\" drawn in space (y=0.0, opacity=0.45, solid='solid')","eq_thm":"a Math [text] that says \"$integral.triple_(E) op(\"div\") arrow(F) thin dif V = integral.double_(partial E) arrow(F) dot hat(n) thin dif S$\"","field":"a VectorField [green] drawn in space (function=<function>, at=((1.6, 0.0, 0.9), (-1.6, 0.0, 0.9), (0.0, 1.6, 0.9), (0.0, -1.6…, scale=0.25)","heading":"a Heading that says \"The Divergence Theorem\"","heading2":"a Heading that says \"Why It Is True\"","n_left":"an Arrow [blue] labelled \"hat(n)\" drawn in cells (start=(2.1, 1.6), end=(2.75, 1.6))","n_right":"an Arrow [green] labelled \"hat(n)\" drawn in cells (start=(2.1, 1.0), end=(1.45, 1.0))","outer":"a Polygon [yellow] drawn in cells (vertices=((0.4, 0.5), (3.8, 0.5), (3.8, 2.1), (0.4, 2.1)), filled=False)","shell":"a SolidBoundary [blue] drawn in space (show_normal=True, opacity=0.25, solid='solid')","solid":"a Solid [red] drawn in space (upper=<function>, lower=<function>, x_range=(-1.3, 1.3))","space":"an Axes3D (x_range=(-2.0, 2.0), y_range=(-2.0, 2.0), z_range=(-0.6, 2.6))","tex":"a Tex [text] that says \"The solid\" (underline=True)","tex_2":"a Tex [text] that says \"Two neighbouring cells\" (underline=True)","thm_note":"a Text [text] that says \"$E$ is a solid region, $partial E$ is the closed surface wrapping it, and $hat(n)$ is the outward unit normal, pointing away from the solid at every point of that skin.\"","wall":"a Line [yellow] drawn in cells (start=(2.1, 0.5), end=(2.1, 2.1))"},"beats":[{"start":225.00212500000004,"say":"Now the first theorem. Take a solid region in space, call it E, and a vector field F living on it. The skin of that region, the closed surface wrapping it up, is written del E.","live":[],"does":[[225.00212500000004,"heading is shown on the screen, written out."],[225.00212500000004,"space is shown on the screen, written out."],[227.33612500000004,"solid is shown on the screen, written out."],[230.25012500000003,"field is shown on the screen, written out."],[234.01112500000005,"shell is shown on the screen, written out."],[235.60212500000003,"space moves to a new place on the board."],[235.60212500000003,"thm_note is shown on the screen, written out."]]},{"start":237.54912500000003,"say":"There are two completely different things you could measure here. First, go inside. Compute the divergence at every point of E and add it all up over the volume. That is the total rate at which fluid is being produced in there.","live":["thm_note","space","heading","solid","field","shell"],"does":[[241.32112500000002,"eq_thm is shown on the screen, written out."],[242.11112500000004,"eq_thm (the \"integral.triple_(E) op(\"div\") arrow(F) thin dif V\" part) is emphasized."]]},{"start":252.06862500000003,"say":"Second, forget the inside completely. Stand on the surface, and at each point take the part of F pointing straight out, F dot n hat. Add that up over the whole skin. That is the flux, the net rate at which fluid crosses the boundary.","live":["thm_note","eq_thm","space","heading","solid","field","shell"],"does":[[255.86512500000003,"eq_thm (the \"integral.double_(partial E) arrow(F) dot hat(n) thin dif S\" part) is emphasized."],[255.86512500000003,"eq_thm (the \"integral.triple_(E) op(\"div\") arrow(F) thin dif V\" part) is no longer emphasized."]]},{"start":269.375125,"say":"The divergence theorem says those two numbers are equal.  Always. Total production inside equals total flow across the boundary, which, once you say it out loud, is really just conservation of stuff.","live":null,"does":[[272.243125,"eq_thm (the \"integral.double_(partial E) arrow(F) dot hat(n) thin dif S\" part) is no longer emphasized."],[273.253125,"A box is drawn around eq_thm."],[281.775125,"space moves to a new place on the board."],[281.775125,"eq_thm is hidden from the screen — left the board."],[281.775125,"heading is hidden from the screen — left the board."],[281.775125,"thm_note is hidden from the screen — left the board."]]},{"start":282.97512500000005,"say":"So why is it true? Keep the solid in view and take one flat slice through it. The slice stands for a layer of tiny cells filling the volume. We can understand the whole solid by inspecting two neighbours in that layer.","live":["space","solid","field","shell"],"does":[[282.97512500000005,"heading2 is shown on the screen, written out."],[282.97512500000005,"shell is hidden from the screen."],[282.97512500000005,"field is hidden from the screen."],[287.03812500000004,"cross_section is shown on the screen, written out."]]},{"start":296.81112500000006,"say":"Here are those two neighbours enlarged. For each cell, the flux across its boundary is its divergence contribution. When all the cells are added, the question is what happens along every shared wall.","live":["space","solid","heading2","cross_section"],"does":[[296.81112500000006,"cells is shown on the screen, written out."],[298.053125,"box_l is shown on the screen, written out."],[298.262125,"box_r is shown on the screen, written out."],[308.37412500000005,"wall is shown on the screen, written out."]]},{"start":309.90362500000003,"say":"The cell on the left counts that shared wall with its outward normal pointing into the cell on the right. That direction sets the sign of its flux contribution.","live":["space","solid","cells","heading2","cross_section","box_l","box_r","wall"],"does":[[313.073125,"n_left is shown on the screen, written out."]]},{"start":319.60512500000004,"say":"The cell on the right counts the same wall with its outward normal pointing back into the cell on the left. The two directions are opposite, so the two flux contributions have opposite signs.","live":["space","solid","cells","heading2","cross_section","box_l","box_r","wall","n_left"],"does":[[322.98412500000006,"n_right is shown on the screen, written out."]]},{"start":331.76862500000004,"say":"Equal and opposite. Every interior wall cancels against its partner, in pairs, all the way through the solid. Remove those interior boundaries and what survives is only the outside skin.","live":["space","solid","cells","heading2","cross_section","box_l","box_r","wall","n_left","n_right"],"does":[[332.11712500000004,"cancel_note is shown on the screen, written out."],[335.39112500000005,"n_left is hidden from the screen."],[335.39112500000005,"n_right is hidden from the screen."],[335.39112500000005,"wall is hidden from the screen."],[340.232125,"box_l is hidden from the screen."],[340.232125,"box_r is hidden from the screen."],[343.657125,"outer is shown on the screen, written out."]]},{"start":345.62712500000004,"say":"That is the entire proof, in spirit. The divergence theorem is a bookkeeping identity. Interior faces cancel; boundary faces don't.","live":["space","solid","cells","cancel_note","heading2","cross_section","outer"],"does":[[355.41212500000006,"cancel_note is hidden from the screen — left the board."],[355.41212500000006,"cells is hidden from the screen — left the board."],[355.41212500000006,"outer is hidden from the screen — cells left the board."],[355.41212500000006,"heading2 is hidden from the screen — left the board."],[355.41212500000006,"space is hidden from the screen — left the board."],[355.41212500000006,"solid is hidden from the screen — space left the board."],[355.41212500000006,"cross_section is hidden from the screen — space left the board."]]}]},{"title":"Curl, and Stokes' Theorem","start":356.4537916666667,"end":501.1487291666667,"objects":{"cancel":"a TileEdge [red] drawn in space (edges=('u:0,1', 'u:0,2', 'u:0,3', 'u:1,1', 'u:1,2', 'u:1,3', 'u:2,1',…, paths=(((-1.3, -0.65, 0.6718749999999999), (-1.1375, -0.65, 0.7708984…, induced='both')","cap":"a Surface [blue] drawn in space (function=<function>, u_range=(-1.3, 1.3), v_range=(-1.3, 1.3))","curl_axis":"a Vector [red] labelled \"nabla times arrow(F)\" drawn in curl_space (start=(0, 0, 0), end=(0, 0, 1.35))","curl_note":"a Text [text] that says \"Divergence asked how much of the field leaves a point. Curl asks how much of it turns around one.\"","curl_space":"an Axes3D (x_range=(-2.2, 2.2), y_range=(-2.2, 2.2), z_range=(-0.3, 1.8))","eq_curl":"a Math [text] that says \"$op(\"curl\") arrow(F) = nabla times arrow(F)$\"","eq_curl_ex":"a Math [text] that says \"$nabla times chevron.l -y, x, 0 chevron.r = 2 hat(k)$\"","eq_curl_flat":"a Math [text] that says \"$nabla times arrow(F) = (frac(partial Q, partial x) - frac(partial P, partial y)) hat(k)$\"","eq_stokes":"a Math [text] that says \"$integral.double_(S) (nabla times arrow(F)) dot hat(n) thin dif S = integral.cont_(partial S) arrow(F) dot dif arrow(r)$\"","heading":"a Heading that says \"Curl\"","heading2":"a Heading that says \"Stokes' Theorem\"","heading3":"a Heading that says \"Why Stokes Works\"","normal":"a Vector [red] labelled \"hat(n)\" drawn in space (start=(0.65, 0.35, 1.06375), end=(0.8634245885747669, 0.4649209323383023, 1.7204410417404723))","rim":"a ParametricCurve [yellow] labelled \"partial S\" drawn in space (function=<function>, breakpoints=(0.25, 0.5, 0.75))","rim_marks":"an Orientation [yellow] drawn in space (path=((-1.3, -1.3, 0.35499999999999987), (-1.1375, -1.3, 0.454023437…, closed=True, arrows=4)","space":"an Axes3D (x_range=(-1.8, 1.8), y_range=(-1.8, 1.8), z_range=(0.0, 2.2))","spin":"a CurvedArrow [yellow] drawn in curl_space (start=(0.5, -0.35, 0), end=(0.5, 0.35, 0), bend=0.8)","spoke_x":"a Line [yellow] drawn in curl_space (start=(-0.5, 0, 0), end=(0.5, 0, 0))","spoke_y":"a Line [yellow] drawn in curl_space (start=(0, -0.5, 0), end=(0, 0.5, 0))","stokes_note":"a Text [text] that says \"$S$ is a surface in space and $partial S$ is the curve that bounds it, walked so that the surface stays on your left when your head points along $hat(n)$.\"","swirl":"a VectorField [green] drawn in curl_space (function=<function>, at=((-1.5, -1.5, 0.0), (-1.5, -0.5, 0.0), (-1.5, 0.5, 0.0), (-1.5,…, scale=0.35)","tile_boundary":"a ParametricCurve [yellow] labelled \"partial S\" drawn in space (function=<function>, breakpoints=(0.25, 0.5, 0.75))","tiles":"a Tiles [yellow] drawn in space (nodes=(((-1.3, -1.3, 0.35499999999999987), (-1.3, -1.1375, 0.45402343…, opacity=0.25, of='cap')","wheel":"a Circle [yellow] drawn in curl_space (center=(0, 0, 0), radius=0.5, normal_vector=(0, 0, 1))","why_note":"a Text [text] that says \"Every interior edge is walked twice, in opposite directions, so the inside contributes nothing at all. Only the outer rim survives.\""},"beats":[{"start":356.4537916666667,"say":"The second theorem needs a different measurement. Divergence asked how much of a field flows out of a point. Curl asks something else: how much the field turns around a point.","live":[],"does":[[356.4537916666667,"heading is shown on the screen, written out."],[356.4537916666667,"curl_note is shown on the screen, written out."],[363.6167916666667,"curl_space is shown on the screen, written out."],[363.6167916666667,"swirl is shown on the screen, written out."]]},{"start":369.0697916666667,"say":"Drop a tiny paddle wheel into the fluid, pinned at its centre so that it can only spin. If the flow turns it, the field has curl there. Curl is a vector: it points along the axis the wheel spins about, and its length says how fast.","live":["curl_note","curl_space","heading","swirl"],"does":[[370.1727916666667,"wheel is shown on the screen, written out."],[370.5097916666667,"spoke_x is shown on the screen, written out."],[370.5097916666667,"spoke_y is shown on the screen, written out."],[375.6407916666667,"spin is shown on the screen, written out."],[379.1127916666667,"eq_curl is shown on the screen, written out."],[381.0167916666667,"curl_axis is shown on the screen, written out."]]},{"start":385.72629166666667,"say":"In the plane, that axis is always straight up out of the page, so only one number survives. For our swirling field, minus y and x, it comes out as two k hat, a constant amount of spin at every single point.","live":["curl_note","eq_curl","curl_space","heading","swirl","wheel","spoke_x","spoke_y","spin","curl_axis"],"does":[[390.5327916666667,"eq_curl_flat is shown on the screen, written out."],[393.1677916666667,"eq_curl_ex is shown on the screen, written out."],[401.3532916666667,"curl_note is hidden from the screen — left the board."],[401.3532916666667,"curl_space is hidden from the screen — left the board."],[401.3532916666667,"swirl is hidden from the screen — curl_space left the board."],[401.3532916666667,"wheel is hidden from the screen — curl_space left the board."],[401.3532916666667,"spoke_x is hidden from the screen — curl_space left the board."],[401.3532916666667,"spoke_y is hidden from the screen — curl_space left the board."],[401.3532916666667,"spin is hidden from the screen — curl_space left the board."],[401.3532916666667,"curl_axis is hidden from the screen — curl_space left the board."],[401.3532916666667,"eq_curl is hidden from the screen — left the board."],[401.3532916666667,"eq_curl_ex is hidden from the screen — left the board."],[401.3532916666667,"eq_curl_flat is hidden from the screen — left the board."],[401.3532916666667,"heading is hidden from the screen — left the board."],[401.3532916666667,"space is shown on the screen, written out."]]},{"start":402.5532916666667,"say":"Now Stokes' theorem. Take a surface in space, and this time not a closed one. A piece of one, like a butterfly net. Then del S is the curve running round its rim.","live":["space"],"does":[[402.5532916666667,"space moves to a new place on the board."],[402.5532916666667,"heading2 is shown on the screen, written out."],[405.2347916666667,"cap is shown on the screen, written out."],[414.1397916666667,"rim is shown on the screen, written out."]]},{"start":415.73829166666667,"say":"Choose a normal direction for the surface, and walk that rim the matching way: the way that keeps the surface on your left when your head points along n hat. Pairing those two directions up is the only fiddly part of the whole theorem.","live":["space","heading2","cap","rim"],"does":[[416.7017916666667,"normal is shown on the screen, written out."],[418.7797916666667,"rim_marks is shown on the screen, written out."],[425.19979166666667,"stokes_note is shown on the screen, written out."]]},{"start":430.14229166666667,"say":"And Stokes says this. The total curl passing through the surface equals the circulation of F once around its rim.","live":["stokes_note","space","heading2","cap","rim","normal","rim_marks"],"does":[[431.3607916666667,"eq_stokes is shown on the screen, written out."]]},{"start":439.2177916666667,"say":"The left-hand side is a surface integral: at each point of S, how much curl is aimed through it. The right-hand side is a line integral: F dotted with the direction you are travelling, added up all the way round the closed loop.","live":["stokes_note","eq_stokes","space","heading2","cap","rim","normal","rim_marks"],"does":[[439.8907916666667,"eq_stokes (the \"integral.double_(S) (nabla times arrow(F)) dot hat(n) thin dif S\" part) is emphasized."],[447.4727916666667,"eq_stokes (the \"integral.cont_(partial S) arrow(F) dot dif arrow(r)\" part) is emphasized."],[447.4727916666667,"eq_stokes (the \"integral.double_(S) (nabla times arrow(F)) dot hat(n) thin dif S\" part) is no longer emphasized."],[455.0657916666667,"eq_stokes (the \"integral.cont_(partial S) arrow(F) dot dif arrow(r)\" part) is no longer emphasized."],[455.8432916666667,"space moves to a new place on the board."],[455.8432916666667,"eq_stokes is hidden from the screen — left the board."],[455.8432916666667,"heading2 is hidden from the screen — left the board."],[455.8432916666667,"stokes_note is hidden from the screen — left the board."]]},{"start":457.04329166666673,"say":"And the reason is the same trick as before. Chop the surface into little tiles, and walk round the edge of every single tile, in the direction the normal tells you to.","live":["space","cap","rim","normal","rim_marks"],"does":[[457.04329166666673,"heading3 is shown on the screen, written out."],[457.04329166666673,"rim is hidden from the screen."],[457.04329166666673,"rim_marks is hidden from the screen."],[457.04329166666673,"normal is hidden from the screen."],[460.5727916666667,"tiles is shown on the screen, written out."],[465.7857916666667,"cancel is shown on the screen, written out."]]},{"start":468.4407916666667,"say":"Every interior edge belongs to two tiles, and those two tiles walk it in opposite directions. So it cancels, exactly as the shared walls did a moment ago. All the little circulations collapse, and what is left is the walk round the outer rim.","live":["space","cap","heading3","tiles","cancel"],"does":[[475.7777916666667,"why_note is shown on the screen, written out."],[481.5477916666667,"cancel is hidden from the screen."],[484.0907916666667,"tile_boundary is shown on the screen, written out."]]},{"start":485.8282916666667,"say":"Meanwhile each tiny loop's circulation is its own curl times its own area. Add them all up and you get the surface integral on one side and the boundary loop on the other. Same bookkeeping, one dimension down.","live":["space","cap","why_note","heading3","tiles","tile_boundary"],"does":[[500.10706250000004,"heading3 is hidden from the screen — left the board."],[500.10706250000004,"space is hidden from the screen — left the board."],[500.10706250000004,"cap is hidden from the screen — space left the board."],[500.10706250000004,"tiles is hidden from the screen — space left the board."],[500.10706250000004,"tile_boundary is hidden from the screen — space left the board."],[500.10706250000004,"why_note is hidden from the screen — left the board."]]}]},{"title":"One Sentence","start":501.1487291666667,"end":583.677125,"objects":{"heading":"a Heading that says \"One Sentence\"","slogan":"a Text [text] that says \"Integrate a derivative over a region, and the answer is already written on the boundary of that region.\"","theorems":"a Derivation [text] that says \"$integral.triple_(E) op(\"div\") arrow(F) thin dif V &= integral.double_(partial E) arrow(F) dot hat(n) thin dif S \\ integral.double_(S) (nabla times arrow(F)) dot hat(n) thin dif S &= integral.cont_(partial S) arrow(F) dot dif arrow(r) \\ int…$\""},"beats":[{"start":501.1487291666667,"say":"Let's put the two theorems one above the other, because the resemblance is the whole point. First the divergence theorem: a triple integral of div F over a solid region, equal to the flux of F out through the closed surface around it.","live":[],"does":[[501.1487291666667,"heading is shown on the screen, written out."],[506.40772916666674,"theorems is shown on the screen, written out."]]},{"start":515.0077291666668,"say":"And then Stokes: a surface integral of curl F over a piece of surface, equal to the circulation of F once round the curve that bounds it.","live":["heading"],"does":[[515.8787291666667,"theorems is shown on the screen, written out."]]},{"start":524.7797291666667,"say":"Now look at the shape of them. On the left of each one, a derivative of F, integrated over a region. On the right of each one, F itself, integrated over the boundary of that region. Div and curl are different derivatives, and a solid and a surface are different regions.","live":null,"does":[[527.4267291666667,"theorems (the \"integral.triple_(E) op(\"div\") arrow(F) thin dif V\" part) is emphasized."],[528.6267291666667,"theorems (the \"integral.triple_(E) op(\"div\") arrow(F) thin dif V\" part) is no longer emphasized."],[528.6267291666667,"theorems (the \"integral.double_(S) (nabla times arrow(F)) dot hat(n) thin dif S\" part) is emphasized."],[532.0817291666667,"theorems (the \"integral.double_(partial E) arrow(F) dot hat(n) thin dif S\" part) is emphasized."],[532.0817291666667,"theorems (the \"integral.double_(S) (nabla times arrow(F)) dot hat(n) thin dif S\" part) is no longer emphasized."],[533.2817291666668,"theorems (the \"integral.double_(partial E) arrow(F) dot hat(n) thin dif S\" part) is no longer emphasized."],[533.2817291666668,"theorems (the \"integral.cont_(partial S) arrow(F) dot dif arrow(r)\" part) is emphasized."],[537.2487291666667,"theorems (the \"integral.cont_(partial S) arrow(F) dot dif arrow(r)\" part) is no longer emphasized."]]},{"start":543.3632291666668,"say":"And you have met that sentence before. The fundamental theorem of calculus: integrate f prime across an interval, and the answer is f at the two endpoints. The boundary of an interval is just its two ends.","live":null,"does":[[546.4627291666667,"theorems is shown on the screen, written out."]]},{"start":557.2972291666667,"say":"Same sentence, every time. Integrate a derivative over a region, and the answer is already written on the edge. That is what these theorems buy you: a hard integral over something fat, traded for an easier one over its skin.","live":null,"does":[[563.6757291666668,"slogan is shown on the screen, written out."]]},{"start":572.5422291666667,"say":"So. Divergence measures outflow, curl measures spin, and each of them has a theorem saying that the inside tells you nothing the boundary has not already said.","live":["slogan","heading"],"does":[[582.6354583333334,"heading is hidden from the screen — left the board."],[582.6354583333334,"slogan is hidden from the screen — left the board."],[582.6354583333334,"theorems is hidden from the screen — left the board."]]}]}]},"durationSeconds":584,"chapters":[{"title":"Flow Out of a Point","startSeconds":0,"narration":"Vector calculus ends with the divergence theorem and Stokes' theorem. They make the same startling promise: what a field does throughout a region can be recovered from what it does on the boundary. The divergence theorem turns total divergence inside a solid into flux through its closed surface. Stokes' theorem turns total curl through a surface into circulation around its edge. Both replace an interior measurement with a boundary measurement. Here is a vector field in the plane. At every point there's an arrow, and the honest way to read it is as the velocity of a fluid. Put a speck of dust down somewhere, and the arrow tells you which way it drifts, and how fast. Now draw a little closed loop around the origin and ask one simple question. Is more fluid leaving this loop than entering it? Here, obviously yes. Every single arrow crosses it on the way out. Something inside is making fluid. Compare that with this second field. Same plane, but now the fluid is turning. It goes round and round the origin, and it moves faster the further out you look. Draw the same loop on it. And now nothing crosses. The arrows run along the loop, never through it. There is plenty of motion here, and no outflow at all. That contrast is what divergence measures. Not how fast the field is, not which way it points, but how much of it is flowing out of a point. Positive divergence means a source. Negative means a sink. Zero means whatever comes in goes out again. Hold on to that picture, because both of today's theorems are built out of it. Now let's turn it into a formula."},{"title":"Divergence","startSeconds":109.58800000000001,"narration":"So let's turn that into a formula. If our field is F, then its divergence is written div F, or nabla dot F, and here it is. The components P, Q and R are functions of x, y and z. Take the first component and differentiate it with respect to x. Take the second, and differentiate with respect to y. Take the third with respect to z. Then add the three numbers up. That is genuinely all it is: one derivative from each component, each matched to its own variable. And notice what kind of object comes out. F is a vector field, an arrow at every point. Div F is a number at every point. Let's compute one. Our spreading field was F equals x, y. The first component is x, so its x derivative is one. The second is y, so its y derivative is one. Add them. Two, and positive, which is exactly what the picture said. Fluid is being created at every point, so any loop you draw has more coming out of it than going in. Here the divergence happens to be constant, but in general it is a function of position. Now the swirl. F equals minus y, x. The first component is minus y, and we differentiate it with respect to x. There is no x in it, so that derivative is nothing. The second component is x, differentiated with respect to y, and that is nothing too. So the divergence is zero, everywhere. And again the picture agrees. The fluid is moving, quite fast in places, but none of it ever leaves. Motion and divergence are two different questions, and this field is the cleanest reminder of that I know."},{"title":"The Divergence Theorem","startSeconds":225.00212500000004,"narration":"Now the first theorem. Take a solid region in space, call it E, and a vector field F living on it. The skin of that region, the closed surface wrapping it up, is written del E. There are two completely different things you could measure here. First, go inside. Compute the divergence at every point of E and add it all up over the volume. That is the total rate at which fluid is being produced in there. Second, forget the inside completely. Stand on the surface, and at each point take the part of F pointing straight out, F dot n hat. Add that up over the whole skin. That is the flux, the net rate at which fluid crosses the boundary. The divergence theorem says those two numbers are equal.  Always. Total production inside equals total flow across the boundary, which, once you say it out loud, is really just conservation of stuff. So why is it true? Keep the solid in view and take one flat slice through it. The slice stands for a layer of tiny cells filling the volume. We can understand the whole solid by inspecting two neighbours in that layer. Here are those two neighbours enlarged. For each cell, the flux across its boundary is its divergence contribution. When all the cells are added, the question is what happens along every shared wall. The cell on the left counts that shared wall with its outward normal pointing into the cell on the right. That direction sets the sign of its flux contribution. The cell on the right counts the same wall with its outward normal pointing back into the cell on the left. The two directions are opposite, so the two flux contributions have opposite signs. Equal and opposite. Every interior wall cancels against its partner, in pairs, all the way through the solid. Remove those interior boundaries and what survives is only the outside skin. That is the entire proof, in spirit. The divergence theorem is a bookkeeping identity. Interior faces cancel; boundary faces don't."},{"title":"Curl, and Stokes' Theorem","startSeconds":356.4537916666667,"narration":"The second theorem needs a different measurement. Divergence asked how much of a field flows out of a point. Curl asks something else: how much the field turns around a point. Drop a tiny paddle wheel into the fluid, pinned at its centre so that it can only spin. If the flow turns it, the field has curl there. Curl is a vector: it points along the axis the wheel spins about, and its length says how fast. In the plane, that axis is always straight up out of the page, so only one number survives. For our swirling field, minus y and x, it comes out as two k hat, a constant amount of spin at every single point. Now Stokes' theorem. Take a surface in space, and this time not a closed one. A piece of one, like a butterfly net. Then del S is the curve running round its rim. Choose a normal direction for the surface, and walk that rim the matching way: the way that keeps the surface on your left when your head points along n hat. Pairing those two directions up is the only fiddly part of the whole theorem. And Stokes says this. The total curl passing through the surface equals the circulation of F once around its rim. The left-hand side is a surface integral: at each point of S, how much curl is aimed through it. The right-hand side is a line integral: F dotted with the direction you are travelling, added up all the way round the closed loop. And the reason is the same trick as before. Chop the surface into little tiles, and walk round the edge of every single tile, in the direction the normal tells you to. Every interior edge belongs to two tiles, and those two tiles walk it in opposite directions. So it cancels, exactly as the shared walls did a moment ago. All the little circulations collapse, and what is left is the walk round the outer rim. Meanwhile each tiny loop's circulation is its own curl times its own area. Add them all up and you get the surface integral on one side and the boundary loop on the other. Same bookkeeping, one dimension down."},{"title":"One Sentence","startSeconds":501.1487291666667,"narration":"Let's put the two theorems one above the other, because the resemblance is the whole point. First the divergence theorem: a triple integral of div F over a solid region, equal to the flux of F out through the closed surface around it. And then Stokes: a surface integral of curl F over a piece of surface, equal to the circulation of F once round the curve that bounds it. Now look at the shape of them. On the left of each one, a derivative of F, integrated over a region. On the right of each one, F itself, integrated over the boundary of that region. Div and curl are different derivatives, and a solid and a surface are different regions. And you have met that sentence before. The fundamental theorem of calculus: integrate f prime across an interval, and the answer is f at the two endpoints. The boundary of an interval is just its two ends. Same sentence, every time. Integrate a derivative over a region, and the answer is already written on the edge. That is what these theorems buy you: a hard integral over something fat, traded for an easier one over its skin. So. Divergence measures outflow, curl measures spin, and each of them has a theorem saying that the inside tells you nothing the boundary has not already said."}]}}
