# Curl, fluid rotation in three dimensions

Curl is an operator which measures rotation in a fluid flow indicated by a three dimensional vector field.

## Kontekst

Note: Throughout this article I will use the convention that
• $\hat{\textbf{i}}$ represents the unit vector in the x-direction.
• $\hat{\textbf{j}}$ represents the unit vector in the y-direction.
• $\hat{\textbf{k}}$ represents the unit vector in the z-direction.

## Do czego zmierzamy

• 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 v, with, vector, on top, left parenthesis, x, comma, y, comma, z, right parenthesis has component functions start color blueE, v, start subscript, 1, end subscript, end color blueE, left parenthesis, x, comma, y, comma, z, right parenthesis, start color redE, v, start subscript, 2, end subscript, end color redE, left parenthesis, x, comma, y, comma, z, right parenthesis and start color greenE, v, start subscript, 3, end subscript, end color greenE, left parenthesis, x, comma, y, comma, z, right parenthesis, 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 0, point, 0000729 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
\begin{aligned} \quad \vec{\textbf{v}}(x, y) &= \left[ \begin{array}{c} \blueE{y^3 - 9y} \\ \redE{x^3 - 9x} \end{array} \right] \\ &= (\blueE{y^3 - 9y}) \hat{\textbf{i}} + (\redE{x^3 - 9x})\hat{\textbf{j}} \end{aligned}
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 left parenthesis, x, start subscript, 0, end subscript, comma, y, start subscript, 0, end subscript, right parenthesis 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 v, with, vector, on top, which has the following formula:
\begin{aligned} \quad \text{2d-curl}\;\vec{\textbf{v}}(x_0, y_0) = \dfrac{\partial \redE{v_2}}{\blueE{\partial x}}(x_0, y_0) - \dfrac{\partial \blueE{v_1}}{\redE{\partial y}}(x_0, y_0) \end{aligned}
Here, start color blueE, v, start subscript, 1, end subscript, end color blueE and start color redE, v, start subscript, 2, end subscript, end color redE are the components of the vector-valued function v, with, vector, on top. For example, with specific vector field given above, defined by $({y^3 - 9y}) \hat{\textbf{i}} + ({x^3 - 9x})\hat{\textbf{j}}$, this answer would be
\begin{aligned} \quad \dfrac{\partial({x^3-9x})}{\partial x} - \dfrac{\partial({y^3-9y})}{\partial y} &= 3x^2 - 9 - (3y^2-9) \\ &= 3x^2-3y^2 \end{aligned}
Notice, the result is a scalar-valued function. You plug in a point, like left parenthesis, 2, comma, 1, right parenthesis, and you get out a single number which indicates angular velocity of the fluid near your point, 3, left parenthesis, 2, right parenthesis, start superscript, 2, end superscript, minus, 3, left parenthesis, 1, right parenthesis, start superscript, 2, end superscript, equals, 12, minus, 3, equals, 9. As it turns out this number represents twice the angular speed of the fluid near the point, so the speed of rotation is 4, point, 5 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 left parenthesis, 0, comma, 0, right parenthesis?
Wybierz 1 odpowiedź:
Wybierz 1 odpowiedź:

Evaluating the formula 3, x, start superscript, 2, end superscript, minus, 3, y, start superscript, 2, end superscript found above at the point left parenthesis, x, comma, y, right parenthesis, equals, left parenthesis, 0, comma, 0, right parenthesis, we get 3, left parenthesis, 0, right parenthesis, start superscript, 2, end superscript, minus, 3, left parenthesis, 0, right parenthesis, start superscript, 2, end superscript, equals, 0. This means there is no fluid rotation around this point.
This should feel consistent with the animation above. Around the origin, fluid particles flow in from the upper right and lower left, and flow out towards the upper left and lower right, but there is no noticeable rotation in how they do this.

## 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 your fingers 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 z-direction, parallel to the unit vector $\hat{\textbf{k}}$.
If we did this at every point, assigning a vector to the rotation around each point on the x, y-plane according to the formula 2, d, negative, c, u, r, l, space, v, with, vector, on top, left parenthesis, x, comma, y, right parenthesis, equals, 3, x, start superscript, 2, end superscript, minus, 3, y, start superscript, 2, end superscript, you would end up with something like this:
Vectors pointing in the positive z-direction indicate counterclockwise rotation near that point, and vectors pointing the other way indicate clockwise rotation, as viewed from above the x, y-plane. The length of each vector indicates the speed of that rotation. You could describe this system of vectors with the expression
$(3x^2 - 3y^2)\hat{\textbf{k}}$
This is almost a three-dimensional vector field, except that we are only looking at points on the x, y-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 v, with, vector, on top to a similar three-dimensional function v, with, vector, on top, start subscript, 3, d, end subscript.
\begin{aligned} \quad \vec{\textbf{v}}_{3d}(x, y, z) = \left[ \begin{array}{c} \blueE{y^3 - 9y} \\ \redE{x^3 - 9x} \\ \greenE{0} \end{array} \right] = (\blueE{y^3 - 9y}) \hat{\textbf{i}} + (\redE{x^3 - 9x})\hat{\textbf{j}} + (\greenE{0})\hat{\textbf{k}} \end{aligned}
As three-dimensional vector fields go, this still feels very flat, doesn't it? The $\hat{\textbf{k}}$ component is 0 everywhere, and none of the components depend on the z 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 x, y-plane.
The next video shows what that vector field v, with, vector, on top, start subscript, 3, d, end subscript looks like, where we keep the flat x, y-plane (drawn in grey) and red circles as reference points. Notice that at each layer parallel to the x, y-plane, the vectors are identical to the original vectors we had sitting in the x, y-plane from the purely 2d vector field v, with, vector, on top 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
$\vec{\textbf{w}}(x, y, z) = (0)\hat{\textbf{i}} + (0)\hat{\textbf{j}} + (3x^2 - 3y^2)\hat{\textbf{k}}$
This is the same formula that we had before, $(3x^2 - 3y^2)\hat{\textbf{k}}$, but the important point is that now we apply it to all points left parenthesis, x, comma, y, comma, z, right parenthesis in space, not just the points left parenthesis, x, comma, y, right parenthesis in the x, y-plane.
• The fact that the z-input does not influence the output reflects the fact that our fluid motion is the same in all slices of space parallel to the x, y-plane.
• The fact that the $\hat{\textbf{i}}$ and $\hat{\textbf{j}}$ components are 0 means all rotation vectors point purely in the z-direction, meaning all actual fluid rotation is parallel to the x, y-plane.
This new (blue) vector field w, with, vector, on top is called the "curl" of the initial (green) vector field v, with, vector, on top, start subscript, 3, d, end subscript. One way you might see this written is
\begin{aligned} \quad \vec{\textbf{w}} = \text{curl}\,\vec{\textbf{v}}_{3d} \end{aligned}
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 v, with, vector, on top, start subscript, 3, d, end subscript, thought of as representing a fluid flow, and outputs another three-dimensional vector-valued function "c, u, r, l, space, v, with, vector, on top, start subscript, 3, d, end subscript" 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 x, y-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 left parenthesis, x, start subscript, 0, end subscript, comma, y, start subscript, 0, end subscript, comma, z, start subscript, 0, end subscript, right parenthesis 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 left parenthesis, x, start subscript, 0, end subscript, comma, y, start subscript, 0, end subscript, comma, z, start subscript, 0, end subscript, right parenthesis, 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 left parenthesis, x, start subscript, 0, end subscript, comma, y, start subscript, 0, end subscript, comma, z, start subscript, 0, end subscript, right parenthesis. 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 left parenthesis, x, start subscript, 0, end subscript, comma, y, start subscript, 0, end subscript, comma, z, start subscript, 0, end subscript, right parenthesis.
This is somewhat analogous to how the gradient points in the "direction of steepest ascent"; the curl points in the "direction of greatest rotation".

## Curl is a limiting operation

Technically, all the descriptions above describe fluid flow in a region: The circled regions of the animation, the region occupied by the tiny tennis ball, the region spanned by the feathers of the arrow, etc. None of these are literally rotation at just one point.
In fact, the idea of "rotation at a point" is kind of ridiculous, isn't it? It only ever makes sense to talk about the rotation of a fluid around a point. Nevertheless, the curl of a vector field, as a mathematical operation, takes in just one point as its input, not a region, so what does it really mean.
As with all differential operators, the formal definition of curl involves a limiting process. You can think of it as taking the limit of rotation in smaller and smaller regions which all surround a given point. For example, imagine the tennis ball above is shrinking. If you are hungry for a formal definition, I wrote about the formal definition of curl later on, once line integrals are covered
Just keep in mind that all descriptions using animations, images of small rotating balls, or anything of this sort, are necessarily approximations of what true curl is measuring.

## Notation and formula for curl

Let's write v, with, vector, on top as a general vector-valued function, with three inputs left parenthesis, x, comma, y, comma, z, right parenthesis and a three-coordinate output. We will write this three-coordinate output in terms of three scalar valued functions: start color blueE, v, start subscript, 1, end subscript, left parenthesis, x, comma, y, comma, z, right parenthesis, end color blueE, start color redE, v, start subscript, 2, end subscript, left parenthesis, x, comma, y, comma, z, right parenthesis, end color redE, and start color greenE, v, start subscript, 3, end subscript, left parenthesis, x, comma, y, comma, z, right parenthesis, end color greenE.
\begin{aligned} \quad \vec{\textbf{v}}(x, y, z) &= \left[ \begin{array}{c} \blueE{v_1(x, y, z)} \\ \redE{v_2(x, y, z)} \\ \greenE{v_3(x, y, z)} \end{array} \right] \\\\&= \blueE{v_1(x, y, z)}\hat{\textbf{i}} + \redE{v_2(x, y, z)}\hat{\textbf{j}} + \greenE{v_3(x, y, z)}\hat{\textbf{k}} \end{aligned}
The notation for curl uses the same symbol "del" used in the expressions for gradient and divergence, and once again we think of it as representing a vector of partial derivative operators:
\begin{aligned} \quad \nabla = \left[ \begin{array}{c} \\ \dfrac{\partial}{\partial x} \\ \\ \dfrac{\partial}{\partial y} \\ \\ \dfrac{\partial}{\partial z} \\ \\ \end{array} \right] \end{aligned}
The curl is thought of as the cross product of this "vector" and the function v, with, vector, on top, 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.
When you "multiply" an operator like $\frac{\partial}{\partial x}$ with a function like start color redE, v, start subscript, 2, end subscript, end color redE, you're not really multiplying, but applying the operator to get a new function, $\frac{\partial \redE{v_2}}{\partial x}$. Similarly, multiplying a vector like $\hat{\textbf{k}}$ with a function like $\frac{\partial \redE{v_2}}{\partial x}$ gives a vector-valued function $\frac{\partial \redE{v_2}}{\partial x} \hat{\textbf{k}}$.
The final expression for the determinant is the sum of 6 vector-valued functions like this one.

## Intuition for the formula

Let's take a close look at this final result:
\begin{aligned} \quad \text{curl}\,\vec{\textbf{v}} = \left( \dfrac{\partial \greenE{v_3}}{\partial y}- \dfrac{\partial \redE{v_2}}{\partial z} \right)\hat{\textbf{i}} + \left( \dfrac{\partial \blueE{v_1}}{\partial z}- \dfrac{\partial \greenE{v_3}}{\partial x} \right)\hat{\textbf{j}} + \left( \dfrac{\partial \redE{v_2}}{\partial x}- \dfrac{\partial \blueE{v_1}}{\partial y} \right)\hat{\textbf{k}} \end{aligned}
Notice, each component is like its own version of 2, d, negative, c, u, r, l operator we found in the curl warm up article. In fact, the k, with, vector, on top component has precisely the same formula as the 2, d, negative, c, u, r, l. This should make sense because the k, with, vector, on top-component of curl should measure the component of fluid rotation which is parallel to the x, y-plane.
Likewise, the $\hat{\textbf{i}}$ and $\hat{\textbf{j}}$ components measure the component of the fluid rotation parallel to the y, z and x, z 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.
In short, this is because there are two terms in each component, which should be averaged and not summed.
Let's look at 2, d, negative, c, u, r, l evaluated at some point left parenthesis, x, start subscript, 0, end subscript, comma, y, start subscript, 0, end subscript, right parenthesis, since each of the components of curl are of this form.
\begin{aligned} \quad \dfrac{\partial \redE{v_2}}{\partial x}(x_0, y_0)- \dfrac{\partial \blueE{v_1}}{\partial y}(x_0, y_0) \end{aligned}
You may recall the intuition for this formula given in the 2d-curl article:
• The term $\dfrac{\partial \redE{v_2}}{\partial x}(x_0, y_0)$ gives the angular speed of particles to the left and right left parenthesis, x, start subscript, 0, end subscript, comma, y, start subscript, 0, end subscript, right parenthesis.
• The term $-\dfrac{\partial \blueE{v_1}}{\partial y}(x_0, y_0)$ gives the angular speed of particles above and below left parenthesis, x, start subscript, 0, end subscript, comma, y, start subscript, 0, end subscript, right parenthesis.
What we really mean by "total rotation around left parenthesis, x, start subscript, 0, end subscript, comma, y, start subscript, 0, end subscript, right parenthesis" is the average angular speed of all particles around left parenthesis, x, start subscript, 0, end subscript, comma, y, start subscript, 0, end subscript, right parenthesis, so we should really be averaging the influences of these two directions, not summing them.
For example, think of a wheel rotating at 3 radians per second. The points on the left and right sides of the rim could be described as having angular speeds of 3 radians per second each, relative to the center of the wheel. Likewise points on the top and bottom of the rim have angular speeds of 3 radians per second, relative to the center of the wheel. But this does not mean the total rotation of the wheel suddenly becomes 6 radians per second. The rotation as a whole is still 3 radians per second.
Rotating fluids are a bit more flimsy than a rigid wheel, so the angular speeds of particles above and below a point left parenthesis, x, start subscript, 0, end subscript, comma, y, start subscript, 0, end subscript, right parenthesis may not equal the angular speeds of particles to the left and right of left parenthesis, x, start subscript, 0, end subscript, comma, y, start subscript, 0, end subscript, right parenthesis. Still, though, adding these two speeds is not the right way to measure "total rotation", averaging is.

## 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
$\vec{\textbf{v}}(x, y, z) = (\blueE{x^3 + y^2 + z})\hat{\textbf{i}} + (\redE{ze^x})\hat{\textbf{j}} + (\greenE{xyz-9xz})\hat{\textbf{k}}$
Describe the rotation of the fluid near the point left parenthesis, 0, comma, 1, comma, 2, right parenthesis
Step 1: Evaluate curl (you may want some paper for this one).
del, times, v, with, vector, on top, equals
$\hat{\textbf{i}} +$
$\hat{\textbf{j}} +$
$\hat{\textbf{k}}$

First, we find the curl of this function. Personally, I can never remember the final formula for curl off the top of my head. I just remember that curl is del, times, v, with, vector, on top, and write out the full cross product, determinant and all, whenever I need to compute curl by hand:
\begin{aligned} \quad \nabla \times \vec{\textbf{v}} &= \left[ \begin{array}{c} \dfrac{\partial}{\partial x} \\ \\ \dfrac{\partial}{\partial y} \\ \\ \dfrac{\partial}{\partial z} \\ \end{array} \right] \times \left[ \begin{array}{c} \blueE{x^3 + y^2 + z} \\ \\ \redE{ze^x} \\ \\ \greenE{xyz-9xz} \end{array} \right] \\ \\ &= \text{det}\left(\left[ \begin{array}{ccc} \hat{\textbf{i}} & \hat{\textbf{j}} & \hat{\textbf{k}} \\ \dfrac{\partial}{\partial x} & \dfrac{\partial}{\partial y} & \dfrac{\partial}{\partial z} \\ \blueE{x^3 + y^2 + z} & \redE{ze^x} & \greenE{xyz-9xz} \end{array} \right]\right) \\ \end{aligned}
Let's go through this determinant one component at a time. The $\hat{\textbf{i}}$ component is
\begin{aligned} \quad \hat{\textbf{i}}\; \text{det} \left(\left[ \begin{array}{cc} \dfrac{\partial}{\partial y} & \dfrac{\partial}{\partial z} \\ \redE{ze^x} & \greenE{xyz-9xz} \end{array} \right]\right) &= \left( \dfrac{\partial}{\partial y}(\greenE{xyz-9xz})- \dfrac{\partial}{\partial z}(\redE{ze^x}) \right)\hat{\textbf{i}} \\ &= (\greenE{xz - 0} - \redE{e^x})\hat{\textbf{i}} \\ &= {(xz - e^x)\hat{\textbf{i}}} \end{aligned}
The $\hat{\textbf{j}}$ component is
\begin{aligned} \quad -\hat{\textbf{j}}\; \text{det} \left(\left[ \begin{array}{cc} \dfrac{\partial}{\partial x} & \dfrac{\partial}{\partial z} \\ \blueE{x^3 + y^2 + z} & \greenE{xyz-9xz} \end{array} \right]\right) &= -\left( \dfrac{\partial}{\partial x}(\greenE{xyz-9xz}) - \dfrac{\partial}{\partial z}(\blueE{x^3 + y^2 + z}) \right)\hat{\textbf{j}} \\ &= (-(\greenE{yz-9z}) + \blueE{0+0+1})\hat{\textbf{j}} \\ &= {(1 - yz + 9z)\hat{\textbf{j}}} \end{aligned}
And the $\hat{\textbf{k}}$ component is
\begin{aligned} \quad \hat{\textbf{k}}\; \text{det} \left(\left[ \begin{array}{cc} \dfrac{\partial}{\partial x} & \dfrac{\partial}{\partial y} \\ \blueE{x^3 + y^2 + z} & \redE{ze^x} \end{array} \right]\right) &= \left( \dfrac{\partial}{\partial x}(\redE{ze^x}) - \dfrac{\partial}{\partial y}(\blueE{x^3 + y^2 + z}) \right)\hat{\textbf{k}} \\ &= (\redE{ze^x} - (\blueE{0+2y+0}))\hat{\textbf{k}} \\ &= {(ze^x-2y)\hat{\textbf{k}}} \end{aligned}
Putting this all together, the curl is
\begin{aligned} \quad \nabla \times \vec{\textbf{v}} &= (xz - e^x)\hat{\textbf{i}} + (1 - yz + 9z)\hat{\textbf{j}} + (ze^x-2y)\hat{\textbf{k}} \end{aligned}
Step 2: Plug in left parenthesis, 0, comma, 1, comma, 2, right parenthesis
del, times, v, with, vector, on top, left parenthesis, 0, comma, 1, comma, 2, right parenthesis, equals
$\hat{\textbf{i}} +$
$\hat{\textbf{j}} +$
$\hat{\textbf{k}}$

Step 3: Interpret
Near the point left parenthesis, 0, comma, 1, comma, 2, right parenthesis, the fluid rotation is about
radians per second, with rotation nearly parallel to the

From the previous question, the rotation of the fluid near left parenthesis, 0, comma, 1, comma, 2, right parenthesis is about the axis $-\hat{\textbf{i}} + 17 \hat{\textbf{j}}$. Since the angular speed is given by one half the magnitude of curl, the angular speed of our fluid near the point left parenthesis, 0, comma, 1, comma, 2, right parenthesis is
start fraction, 1, divided by, 2, end fraction, square root of, 1, start superscript, 2, end superscript, plus, 17, start superscript, 2, end superscript, end square root, approximately equals, 8, point, 51 radians/second.
Since this vector points predominantly in the $\hat{\textbf{j}}$ direction, the rotation of the fluid near this point is almost entirely parallel to the x, z-plane.

## Podsumowanie

• 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 v, with, vector, on top, left parenthesis, x, comma, y, comma, z, right parenthesis has component function start color blueE, v, start subscript, 1, end subscript, end color blueE, left parenthesis, x, comma, y, comma, z, right parenthesis, start color redE, v, start subscript, 2, end subscript, end color redE, left parenthesis, x, comma, y, comma, z, right parenthesis and start color greenE, v, start subscript, 3, end subscript, end color greenE, left parenthesis, x, comma, y, comma, z, right parenthesis, the curl is computed as follows:
\begin{aligned} \quad \nabla \times \vec{\textbf{v}} = \left( \dfrac{\partial \greenE{v_3}}{\partial y}- \dfrac{\partial \redE{v_2}}{\partial z} \right)\hat{\textbf{i}} + \left( \dfrac{\partial \blueE{v_1}}{\partial z}- \dfrac{\partial \greenE{v_3}}{\partial x} \right)\hat{\textbf{j}} + \left( \dfrac{\partial \redE{v_2}}{\partial x}- \dfrac{\partial \blueE{v_1}}{\partial y} \right)\hat{\textbf{k}} \end{aligned}

## 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.