If you're seeing this message, it means we're having trouble loading external resources on our website.

If you're behind a web filter, please make sure that the domains *.kastatic.org and *.kasandbox.org are unblocked.

Main content

Formal definition of curl in three dimensions

After learning how two-dimensional curl is defined, you are ready to learn about the formal definition of three-dimensional curl.  This is advanced, so be prepared to take things slowly.

Background

Understanding this article really does require these two prerequisites. The definition of curl in three dimensions has so many moving parts that having a solid mental grasp of the two-dimensional analogy, as well as the three-dimensional concept we are trying to capture, is crucial.
In particular, if you did not just come from reading the article giving the formal definition of curl in two dimensions, I would highly recommend taking a quick look at it right now, even if you've seen it before, and even if it's just the summary.

What we're building to

  • We define three-dimensional curl one component at a time, looking at the components of fluid rotation which are parallel to the yz-plane, the xz-plane, and the xy-plane.
  • You can capture all three of these coordinate-by-coordinate definitions of curlF by defining what the dot product between curlF and any arbitrary unit vector n^ should be.
    (curlF(x,y,z))n^=lim|A((x,y,z),n^)|0(1|A((x,y,z),n^)|CFdr)

Limit our view to one plane

Curl in three-dimensions is a rather complicated thing to think about. For example, let F(x,y,z) be a three-dimensional vector field:
F(x,y,z)=[F1(x,y,z)F2(x,y,z)F3(x,y,z)]
An example of what this could look like is shown in the following video.
Khan Academy video wrapper
Now imagine the three-dimensional fluid flow that F could represent. As you know, curlF(x0,y0,z0) is a way to measure rotation in that fluid flow near the point (x0,y0,z0), but this is a tricky concept to quantify rigorously.
There are some good analogies out there to gain an intuition for curl. One of my favorites is to think of a tiny tennis ball centered at the point (x0,y0,z0), and how the surrounding fluid flow would cause it to rotate. In this analogy, curlF(x0,y0,z0) gives the vector of the tennis ball's resulting rotation.
However, these descriptions can only go so far when the goal is to formally define what curl is; to capture this intuition with mathematical rigour.
Our basic strategy moving forward will be to limit our view to the rotation in a specific plane. For example, the following video shows a plane representing a constant x value, x=1.6 to be specific, as well as the vectors from F which stem from this plane.
Khan Academy video wrapper
In formulas, you might describe this as all the vectors of the form
F(1.6,y,z)
Here, y and z range freely. When we project those vectors onto the plane and lay it out flat as a picture, we'd get something like this:
Note, the axes are labeled "y" and "z" because this plane was originally parallel to the yz-plane in three-dimensional space. We could describe this two-dimensional vector field with a new two-dimensional function F1.6(y,z) defined as follows:
F1.6(y,z)=[F2(1.6,y,z)F3(1.6,y,z)]
More generally, if we slice the vector field with any plane of the form x=x0 for some constant x0, then project the vectors stemming from that plane onto the plane itself, we will get a two-dimensional vector field described by a function that looks like this:
Fx0(y,z)=[F2(x0,y,z)F3(x0,y,z)]
Concept check: Why does the definition of Fx0(y,z) not include F1, the x-component of F(x,y,z)?
Choose 1 answer:

Concept check: For a given point (y0,z0) in the plane above, what does 2d-curlFx0(y0,z0) represent?
Choose all answers that apply:

A component-wise definition

So why am I talking about projecting vectors and trajectories in three dimensions onto a two-dimensional plane? Basically, it's hard to think about three dimensions, so it's worth doing everything you can to frame things two-dimensions at a time.
The importance of this last concept check is that we can describe the x-component of the three-dimensional curl of F purely in terms of the two-dimensional curl of the function Fx:
x-component of curlF(x,y,z)3d vector=2d-curlFx(y,z)Scalar value
We can also more elegantly pull out the x-component of curlF by dotting it with the unit vector in the x-direction,
i^=[100]
This means our expression looks like this:
(curlF(x,y,z))i^=2d-curlFx(y,z)
In terms of the formula you already know, this explains why the x-component of curlF has the form that it does,
curlF(x,y,z)=(F3yF2z)2d-curlFx(y,z)i^+(F1zF3x)j^+(F2xF1y)k^
But remember, the whole point of this article is that curl is one of those funny operations where the formula we use to compute it is not its definition. Our goal is to find a definition of curl by directly representing fluid rotation. With that in mind, the significance of representing the x-component of curlF using a two-dimensional curl is that we can take the line-integral-limit definition of 2d-curl found in the last article, and use it to define the x-component of curlF.
(curlF(x,y,z))i^=definitionlimA0(1|A|CFdr)
  • A is some two-dimensional region in the plane perpendicular to i^, and passing through the point (x,y,z).
  • C is the boundary of A.
  • The orientation of C is determined based on the right-hand rule: Stick the thumb of your right hand in the direction of i^, and curl your fingers. The direction your fingers point as they wrap around C is the direction of integration.
  • |A| represents the area of A.
  • lim|A|0 indicates that we are considering the limit as A shrinks to the point (x,y,z) on the plane where x is constant.
Although it will clutter things up, for clarity's sake it will help if our formula expresses the fact that the region A must always include the point (x,y,z), and that it is perpendicular to i^. To do this, I'll write A with subscripts, A(x,y,z),i^
This means our full definition looks like this:
(curlF(x,y,z))i^=definitionlim|A((x,y,z),i^)|0(1|A((x,y,z),i^)|CFdr)
This is a very heavy definition, which assumes a lot of prior knowledge from the reader. And that's just for one component! The key to understanding this is to:
  • Make sure you have a full grasp of the definition of curl in two-dimensions.
  • Understand how this definition is applying that same concept to a plane sitting in three-dimensional space.
  • Make sure you understand why two-dimensional curl of Fx0 should represent the x-component of the curl of F.

Full definition

There is of course nothing special about the x-direction, we can also define the other two coordinates of curlF similarly:
(curlF(x,y,z))j^=lim|A((x,y,z),j^)|0(1|A((x,y,z),j^)|CFdr)
(curlF(x,y,z))k^=lim|A((x,y,z),k^)|0(1|A((x,y,z),k^)|CFdr)
Concept check: What does A((x,y,z),j^) represent?
Choose 1 answer:

This gives a full definition, since each component of curlF is accounted for.

Arbitrary unit normal vectors

However, it is a little inelegant to define curl with three separate formulas. Also, when curl is used in practice, it is common to find yourself taking the dot product between the vector curlF and some other vector, so it is handy to have a definition suited to interpreting the dot product between curlF and any vector, not just i^, j^ and k^.
Think about an arbitrary plane cutting through the vector field F(x,y,z):
Khan Academy video wrapper
Suppose that this plane is defined to be perpendicular to some unit vector n^, such as
n^=[1/31/31/3]
Now imagine mimicking everything we did before with the plane x=x0.
  • Considering the vectors which stem from points on this plane.
  • Project them onto the plane
  • Measure the resulting two-dimensional curl on that plane.
This will let us define the component of three-dimensional curl in the n^-direction:
(curlF(x,y,z))n^=lim|A((x,y,z),n^)|0(1|A((x,y,z),n^)|CFdr)
This is the definition of curl that you might come across in other texts. It's a weird definition, since instead of defining the vector curlF itself, it only defines what the dot product between this vector and anything else would be.
But here's why it kind of makes sense to do things this way, even if it feels convoluted: Rotation is an inherently two-dimensional idea, and when we try to talk about rotation in three dimensions (e.g. rotation of the earth) we are somewhat awkwardly forced to use vectors. A given rotation vector is saying "the rotation is really happening in some two-dimensional plane, and I'm just telling you what plane that is."
When it comes to fluid rotation, what we really want is a way of taking any possible rotation vector (which is the same as saying any possible plane in which rotation occurs), and asking "how much does the fluid rotation near a given point look like this vector?" The curl gives us a way to answer this question. For a given vector, representing some rotation, when you dot that vector against the curl of a fluid flow, it tells you how much the fluid rotation resembles the rotation represented by that vector.

Summary

  • To define curl in three dimensions, we take it two dimensions at a time. Project the fluid flow onto a single plane and measure the two-dimensional curl in that plane.
  • Using the formal definition of curl in two dimensions, this gives us a way to define each component of three-dimensional curl. For example, the x-component is defined like this:
    (curlF(x,y,z))i^=definitionlim|A((x,y,z),i^)|0(1|A((x,y,z),i^)|CFdr)
  • You can replace i^ with any unit vector, thus defining what the component of curlF should be in any direction.

Congrats!

Understanding this complicated definition fully is a sign that you have fully grasped both curl and line integrals, each of which are formidable concepts in their own right.
Also, this definition will prepare you very well for understanding Stokes' theorem, a topic which stands at the very pinnacle of multivariable calculus.

Want to join the conversation?

  • purple pi purple style avatar for user Sasha Brenner Socas
    It says here that "if you follow the three-dimensional motion of particles starting in the plane x=x0 according to the velocity vectors given by F, then project those trajectories onto the plane x=x0, you get the two-dimensional fluid motion described by F_x0". But the velocity field might change when the particles move in the x direction, so the projection there shouldn't be the same as the trajectory described by F_x0. Am I wrong?
    Of course, this intuition is correct when you think about infinitesimal distances (very small neighborhoods), but not if you just let the particles flow freely an indefinite distance.
    (2 votes)
    Default Khan Academy avatar avatar for user
    • orange juice squid orange style avatar for user Piper Fowler-Wright
      I think I understand what you are picking up on here, and you're right that the velocity field will, in general, be dependent on x and so change as the particles move through different planes.

      If you were to look 'down' the x-axis towards the yz plane, you would 'see' (if you could somehow ignore the particles passing through all other planes) that the trajectories of the particles passing (instantaneously) through the plane x=x0 is exactly as those described by F_x0. But this is, of course, only valid for that particular plane! Change your choice of x0 and you'll get a different projection.
      (5 votes)
  • blobby green style avatar for user gurungdebendra82
    On the projection of vector onto a plane, keeping x constant 1.6, Doesn't the points in that plane x=1.6 have vectors pointing in all the three direction. Doesn't points in the plane F(1.6,y,z) have components in all direction as (F1,F2,F3). If however can be projected on that plane, how is that their compenets take the neat value [F291.6,y,z),F3(1.6,y,z)].....
    I think I quite kinda get the answer, but feel free to correct me in line of thought and intuition.
    (3 votes)
    Default Khan Academy avatar avatar for user
  • piceratops tree style avatar for user Des Cuddlebat
    One thing I don't understand about the final definition: If the dot product is the definition of curl, for arbitrary vector n, what ensures that all those infinitely many definitions for a particular point in a particular vector field result in a consistent curl vector?

    My intuitive guess would be something along the lines of, dot product with an arbitrary vector is just a linear combination of the definitions for i, j and k, and projecting the vector field onto the perpendicular plane is an equivalent linear combination, but I'm really struggling to come up with anything rigorous.
    (2 votes)
    Default Khan Academy avatar avatar for user
  • blobby green style avatar for user jasonmmd6
    I got it. So the 3d curl(f(x,y,z)) dotted with vector n equals ...... literally mean that if you wanna find the component of 3d curl(f()) in vector n direction, you just look at the right of the equation. So if you wanna find the components of 3d curl(f()) in vector i,j,k direction, you still look at the right and find the corresponding value. Then you put them in a vector[] symbol. That is what this equation mean.
    (1 vote)
    Default Khan Academy avatar avatar for user
  • blobby green style avatar for user jasonmmd6
    So does this mean, we take any plane in the 3d space that crosses the point of interest, and we calculate the 2d curl of that point in this new 2d plane. We keep this number and interpret it as the component of the 3d-curl in the N(vector) direction, where n is the vector normal to that plane. So if we want to find the i, j, and k component of the 3d curl vector, we just find three planes of the corresponding directions and calculate the 2d curl. After the sets of calculations, we will get the vector that represents the 3d curl.
    (1 vote)
    Default Khan Academy avatar avatar for user