Main content
Multivariable calculus
Course: Multivariable calculus > Unit 2
Lesson 11: Divergence and curl (articles)Curl, fluid rotation in three dimensions
Curl is an operator which measures rotation in a fluid flow indicated by a three dimensional vector field.
Background
Note: Throughout this article I will use the convention that
represents the unit vector in the -direction. represents the unit vector in the -direction. represents the unit vector in the -direction.
What we're building to
- Curl is an operator which takes in a function representing a three-dimensional vector field and gives another function representing a different three-dimensional vector field.
- If a fluid flows in three-dimensional space along a vector field, the rotation of that fluid around each point, represented as a vector, is given by the curl of the original vector field evaluated at that point. The curl vector field should be scaled by one-half if you want the magnitude of curl vectors to equal the rotational speed of the fluid.
- If a three-dimensional vector-valued function
has component functions , and , the curl is computed as follows:
Describing rotation with a vector
If an object is rotating in two dimensions, you can describe the rotation completely with a single number: the angular velocity. A positive angular velocity indicates a counter-clockwise rotation while a negative number indicates a clockwise rotation. The absolute value of the angular velocity gives the speed of rotation, typically in radians per second.
For an object rotating in three dimensions, the situation is more complicated. We need to represent both angular velocity and the direction in three-dimensional space in which the object is rotating.
To do this, rotation in three dimensions is typically described using a single vector. The magnitude of the vector indicates the angular speed, and the direction is determined by a super-important convention called the "right-hand rule"
- RIGHT-HAND RULE: Curl the fingers of your right hand in the direction of rotation, and stick out your thumb. The vector representing this three-dimensional rotation is, by definition, oriented in the direction of your thumb.
Your thumb should point along the axis of rotation. Adopting the convention of using the right hand instead of the left lets us encode the difference between a certain three-dimensional rotation, and the reverse rotation. Basically, it extends the idea of clockwise vs. counterclockwise into three dimensions.
For example, the rotation of the earth in space would be described using a vector pointing from the center of the earth to its north pole, whose length is equal to the angular speed of the earth's rotation (which happens to be radians/second).
Two-dimensional fluid rotation revisited
In the curl warmup article, I introduce how fluid flows along a two-dimensional vector field defined by the function
The following animation gives a simulation of this, where fluid particles (drawn as blue dots) always move in the direction of the vector they are closest to. For the purposes of studying curl, notice what happens in and around the circled regions.
The fluid rotates counterclockwise in the left and right circles, and clockwise in the top and bottom circles. In studying curl, the key question is this: How much does the fluid rotate around each specific point in the plane?
In the last article, I gave an intuition for how the answer to this question is what you might call the 2d-curl of , which has the following formula:
Here, and are the components of the vector-valued function . For example, with specific vector field given above, defined by , this answer would be
Notice, the result is a scalar-valued function. You plug in a point, like , and you get out a single number which indicates angular velocity of the fluid near your point, . As it turns out this number represents twice the angular speed of the fluid near the point, so the speed of rotation is radians/second (more on this later). The important point that you get a single scalar describing the rotation.
This should make sense because the rotation of a single object in two dimensions can be described with a single number (or scalar), so rotation around all possible points in a flowing fluid should be described with a scalar-valued function.
Reflection question: In the fluid flow animated above, does the fluid have a rotational component at the origin ?
Moving to three dimensions
In preparation for moving to three dimensions, let's express the fluid rotation above using vectors. Focus on a region of counterclockwise rotation, such as the right-most circle in the animation above. Imagine wrapping the fingers of your right hand around this circle, so they point in the direction of the arrows (counterclockwise in this case), and stick out your thumb. Your thumb should be pointing out of the page, in the positive -direction, parallel to the unit vector .
If we did this at every point, assigning a vector to the rotation around each point on the -plane according to the formula , you would end up with something like this:
Vectors pointing in the positive -direction indicate counterclockwise rotation near that point, and vectors pointing the other way indicate clockwise rotation, as viewed from above the -plane. The length of each vector indicates the speed of that rotation. You could describe this system of vectors with the expression
This is almost a three-dimensional vector field, except that we are only looking at points on the -plane, not in all of space. Curl itself only applies to three-dimensional vector fields, so to properly set the stage for the material below, let's make this a fully three-dimensional example. To start, we extend our original vector-valued function to a similar three-dimensional function .
As three-dimensional vector fields go, this still feels very flat, doesn't it? The component is everywhere, and none of the components depend on the input variable at all. We have basically just copied the original two-dimensional vector field onto every slice of three-dimensional space parallel to the -plane.
The next video shows what that vector field looks like, where we keep the flat -plane (drawn in grey) and red circles as reference points. Notice that at each layer parallel to the -plane, the vectors are identical to the original vectors we had sitting in the -plane from the purely 2d vector field in the previous section.
Again, imagine this vector field as representing a fluid flow, like air in a room or water in a pool. When we represent the rotation of this fluid around each point with a vector attached to that point, we get a new vector field, as shown in the next video:
This is given by the vector-valued function
This is the same formula that we had before, , but the important point is that now we apply it to all points in space, not just the points in the -plane.
- The fact that the
-input does not influence the output reflects the fact that our fluid motion is the same in all slices of space parallel to the -plane. - The fact that the
and components are means all rotation vectors point purely in the -direction, meaning all actual fluid rotation is parallel to the -plane.
This new (blue) vector field is called the "curl" of the initial (green) vector field . One way you might see this written is
This is our first example of honest-to-goodness three-dimensional curl: Curl, as a mathematical operator, takes in a three-dimensional vector-valued function , thought of as representing a fluid flow, and outputs another three-dimensional vector-valued function " " which represents the rotation near each point of that fluid.
Visualizing fluid rotation in three dimensions
For a general fluid flow in three dimensions, the rotation may not always be purely parallel to the -plane. This can make it hard to picture what's going on. Really hard.
For instance, imagine that the air around you is blowing and swirling in some chaotic motion. Now pick some specific point in space. How can you think about what "air rotation near that point" means?
Here are a couple of tactics:
- Imagine there is a tiny tennis ball whose center is fixed to the point
, but which is free to rotate. Perhaps you have invented magic to hold it there, or otherwise have some sort of ingenious magnetic suspension device. The air blowing around it may cause it to spin in some way or another. The curl vector attached to that point will be the vector describing this tiny tennis ball's rotation, in the same way, we described the earth's rotation using a single vector above.
- Alternatively, take an archer's arrow with nice thick feathers. The kind you might imagine Robin Hood shooting. Situate the arrow in midair such that its feathers are at the point
. Again, you've invented magic and finagle a way so that the base of the arrow is fixed to this point, but you are free to orient the arrow in any direction you want, and it freely rotates based on how the wind blows its feathers.
If you experiment with various orientations for the arrow and find the one direction in which the air currents cause the arrow to rotate the fastest, this is the direction of the curl vector at the point .
This is somewhat analogous to how the gradient points in the "direction of steepest ascent"; the curl points in the "direction of greatest rotation".
Notation and formula for curl
Let's write as a general vector-valued function, with three inputs and a three-coordinate output. We will write this three-coordinate output in terms of three scalar valued functions: , , and .
The notation for curl uses the same symbol " " used in the expressions for gradient and divergence, and once again we think of it as representing a vector of partial derivative operators:
The curl is thought of as the cross product of this "vector" and the function , computed using the determinant as usual:
I know what you're thinking: "That's the funkiest determinant I've ever seen. None of the elements are even numbers! One row has vectors, one has operators, and one has functions. Can you even do that?" It's a bit weird, sure, but it works as a notational trick if nothing else.
Intuition for the formula
Let's take a close look at this final result:
Notice, each component is like its own version of operator we found in the curl warm up article. In fact, the component has precisely the same formula as the . This should make sense because the -component of curl should measure the component of fluid rotation which is parallel to the -plane.
Likewise, the and components measure the component of the fluid rotation parallel to the and planes respectively.
One little nuance I should point out is that when you evaluate the curl near a point to get a vector (thought of as a rotation vector), the magnitude of that vector does not equal the angular speed of the imagined fluid near that point. Instead the magnitude is equal to twice the angular speed of the fluid.
Example: Finding rotation in a three-dimensional vector field using curl
Problem: Suppose a fluid flows in three dimensions according to the following vector field
Describe the rotation of the fluid near the point
Step 1: Evaluate curl (you may want some paper for this one).
Step 2: Plug in
Step 3: Interpret
Summary
- Curl is an operator which takes in a function representing a three-dimensional vector field, and gives another function representing a different three-dimensional vector field.
- If a fluid flows in three-dimensional space along a vector field, the rotation of that fluid around each point, represented as a vector, is given by the curl of the original vector field evaluated at that point. The curl vector field should be scaled by a half if you want the magnitude of curl vectors to equal the rotational speed of the fluid.
- If a three-dimensional vector-valued function
has component function , and , the curl is computed as follows:
Just for fun
Here's an animation of the fluid flow I showed at the very start of the article, but this time each dot is treated more accurately like a droplet of water, flexing and twisting based on how the vector field pulls on each individual particle in the droplet. I also took away the actual vectors from the vector field so that it's easier to see how the fluid moves. Hopefully this gives an impression for how complex yet beautiful the fluid-flow conception of vector fields can be.
Want to join the conversation?
- Shouldn't the k-component of the curl be perpendicular on the xy-plane? It is stated in the article, that it is parallel to the plane. Likewise for the the i-component of the curl (perpendicular on the yz-plane, not parallel to it) and the j-component (perpendicular on thexz-plane, not parallel).(6 votes)
- What the article is saying is that the actual rotation is parallel to the plane, even though the curl vector is perpendicular.(28 votes)
- Hi. When you calculate the determinant of ∇×v, why do the 'j' component isn't negative? I have always seen 3x3 (nxn actually) determinants calculated as (a1b1 - c1d1) i - (a2b2 - 2c2d) j + (3a3b - 3c3d) k, but in yours, the second component (j) is positive. Why is it? Thanks!(11 votes)
- I wondered the same thing. The answer is that the order of the terms is also reversed.
- (a2b2 - 2c2d) j = (2c2d -a2b2)(12 votes)
- How do you make such beautiful animations? I'd love to play around with that kind of thing myself!(6 votes)
- He coded the entire thing in python. Have a look https://github.com/3b1b/manim(7 votes)
- In the "Two dimensional fluid rotation revisited" session, should the result "12-3=9 radians/second" the twice of the angular velocity near that point?
Thus, I mean the angular velocity is 4.5 rad/s.
Is that your mistake or I'm wrong?
Please help make it clear to me the connection between the magnitude of curl and the angular velocity in 2d space)(4 votes)- Yeah, that's a mistake on Khan Academy's part. However, it isn't that important because the overall point of that computation was to show that in 2 dimensions the answer is represented as a scalar.(2 votes)
- When calculating the angular momentum in three dimensions does the z_-component not also be needed to be take into account? ie should the angular momentum not be a 1/3 of the magnitude not 1/2 the magnitude of the curl vector. I accept that in this example the _z-component is zero, so the rotation is only with described by the x_ and _y directions.(4 votes)
- "Imagine wrapping your fingers " ---> "Imagine wrapping the fingers of your right hand"(3 votes)
- Hi, how do I get an intuition for the fact that the 'divergence of curl is always zero'. From the 3D intuition video, it seems we can construct a vector field such that the divergence of the resultant curl field is non-zero (like at the bottom plane we can have low curl and as we go up the curl goes up). I know I'm going wrong somewhere , but I'm not able to figure it out. Thanks!(3 votes)
- In the vicinity of a point where a field has nonzero curl, the "fluid" or whatever isn't going anywhere, it's just circulating. When a field has divergence, the "fluid" is heading from some point to somewhere else or from somewhere else to a point.(1 vote)
- How do we get angular velocity in radians/second if we haven't parametrized the vector-valued function? In other words, if we don't have a time component, how do we know the speed of the rotation at any given moment? Or does curl just give us rotational speed relative to other points in the field? I don't think it does, since we've specified that the angular speed is half the magnitude of curl, but I still don't see where we're getting our denominator from for that speed.(3 votes)
- I guess it is that the vectors represent velocity and it is presented in some common units like distance per second. What distance is it exactly does not matter to angular speed since it is expressed in radians (angle). Time in seconds is just an assumption.(1 vote)
- Hidden "Why twice the angular speed?": Doesn't del v2 / del x give angular speed of particles left and right of (x0, y0) (rather than above and below the point)?
Example's solution: one component -one- at a time.(2 votes) - why angular velocity is half of magnitude of curl?(2 votes)