Curl

Curl[{f1,f2},{x1,x2}]

gives the curl .

Curl[{f1,f2,f3},{x1,x2,x3}]

gives the curl .

Curl[f,{x1,,xn}]

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

Curl[f,x,chart]

gives the curl in the coordinates chart.

Details

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

Examples

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  (6)

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:

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:

Introduced in 2012
 (9.0)
 |
Updated in 2014
 (10.0)