gives the curl .


gives the curl .


gives the curl of the ××× array f with respect to the -dimensional vector {x1,,xn}.


gives the curl in the coordinates chart.


  • Curl is also known as rot, rotational, and circulation density.
  • Curl[f,x] can be input as xf. The character can be typed as del or \[Del], and the character can be typed as cross or \[Cross]. The list of variables x is entered as a subscript.
  • An empty template can be entered as delx, and moves the cursor from the subscript to the main body.
  • All quantities that do not explicitly depend on the variables given are taken to have zero partial derivative.
  • In Curl[f,{x1,,xn}], if f is an array with depth k<n, it must have dimensions {n,,n}, and the resulting curl is an array with depth n-k-1 of dimensions {n,,n}.
  • If f is a scalar, Curl[f,{x1,,xn},chart] returns an array of depth n-1 in the orthonormal basis associated with chart.
  • In Curl[f,{x1,,xn},chart], if f is an array, the components of f are interpreted as being in the orthonormal basis associated with chart.
  • For coordinate charts on Euclidean space, Curl[f,{x1,,xn},chart] can be computed by transforming f to Cartesian coordinates, computing the ordinary curl and transforming back to chart. »
  • Coordinate charts in the third argument of Curl can be specified as triples {coordsys,metric,dim} in the same way as in the first argument of CoordinateChartData. The short form in which dim is omitted may be used.
  • Curl works with SparseArray and structured array objects.


open allclose all

Basic Examples  (4)

Curl of a vector field in Cartesian coordinates:

Curl of a vector field in cylindrical coordinates:

Rotational in two dimensions:

Use del to enter , for the list of subscripted variables, and cross to enter :

Use delx to enter the template , fill in the variables, press , and fill in the function:

Scope  (6)

Rotational in polar coordinates:

In a curvilinear coordinate system, even a vector with constant components may have a nonzero curl:

Curl of a rank-2 tensor:

Curl specifying metric, coordinate system, and parameters:

Curl can produce higher-rank arrays:

This is a rank-4 array:

Curl works on curved spaces:

Applications  (3)

A vector field is called irrotational or conservative if it has zero curl:

Visually, this means that the vector field's stream lines do not tend to form small closed loops:

Analytically, it means the vector field can be expressed as the gradient of a scalar function. To find this function, parameterize a curve from the origin to an arbitrary point {x,y}:

The scalar function can be found using the line integral of v along the curve:

Verify the result:

A vector field is called central if it is spherically symmetric and only has a radial component:

All central vector fields are conservative or curl free:

This means that v is a gradient field. As v only has radial dependence, the line integral for the potential u reduces to a simple one-dimensional integral:

Verify the result:

A divergence-free vector field can be expressed as the curl of a vector potential:

To find the vector potential, one must solve the underdetermined system:

The first two equations are satisfied if and are constants, and the third has the obvious solution :

Properties & Relations  (7)

Curl produces arrays that are fully antisymmetric:

The curl of a gradient is zero:

Even for non-scalar inputs, the result is zero:

This identity is respected by the Inactive form of Grad:

In dimension , Curl is only defined for tensors of rank less than :

Curl is proportional to an antisymmetrized Grad followed by a call to HodgeDual:

The proportionality constant is , where r is the rank of f:

Compute Curl in a Euclidean coordinate chart c by transforming to and then back from Cartesian coordinates:

The result is the same as directly computing Curl[f,{x1,,xn},c]:

In dimension , the curl of a scalar is a tensor of rank . Thus, for the result is a rank-2 tensor:

The curl of a tensor of rank is a scalar:

The double curl of a scalar field is the Laplacian of that scalar. In two dimensions:

The same result holds in three dimensions:

Interactive Examples  (1)

View expressions for the curl of a vector function in different coordinate systems:

Wolfram Research (2012), Curl, Wolfram Language function, (updated 2014).


Wolfram Research (2012), Curl, Wolfram Language function, (updated 2014).


@misc{reference.wolfram_2020_curl, author="Wolfram Research", title="{Curl}", year="2014", howpublished="\url{}", note=[Accessed: 25-February-2021 ]}


@online{reference.wolfram_2020_curl, organization={Wolfram Research}, title={Curl}, year={2014}, url={}, note=[Accessed: 25-February-2021 ]}


Wolfram Language. 2012. "Curl." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2014.


Wolfram Language. (2012). Curl. Wolfram Language & System Documentation Center. Retrieved from