Accelerating the pace of engineering and science

# Documentation Center

• Trial Software

# curl

Compute curl and angular velocity of vector field

## Syntax

[curlx,curly,curlz,cav] = curl(X,Y,Z,U,V,W)
[curlx,curly,curlz,cav] = curl(U,V,W)
[curlz,cav]= curl(X,Y,U,V)
[curlz,cav]= curl(U,V)
[curlx,curly,curlz] = curl(...), [curlx,curly] = curl(...)
cav = curl(...)

## Description

[curlx,curly,curlz,cav] = curl(X,Y,Z,U,V,W) computes the curl (curlx, curly, curlz) and angular velocity (cav) perpendicular to the flow (in radians per time unit) of a 3-D vector field U, V, W.

The arrays X, Y, and Z, which define the coordinates for U, V, and W, must be monotonic, but do not need to be uniformly spaced. X, Y, and Z must have the same number of elements, as if produced by meshgrid.

[curlx,curly,curlz,cav] = curl(U,V,W) assumes X, Y, and Z are determined by the expression

[X Y Z] = meshgrid(1:n,1:m,1:p)

where [m,n,p] = size(U).

[curlz,cav]= curl(X,Y,U,V) computes the curl z-component and the angular velocity perpendicular to z (in radians per time unit) of a 2-D vector field U, and V.

The arrays X and Y, which define the coordinates for U and V, must be monotonic, but do not need to be uniformly spaced. X and Y must have the same number of elements, as if produced by meshgrid.

[curlz,cav]= curl(U,V) assumes X and Y are determined by the expression

[X Y] = meshgrid(1:n,1:m)

where [m,n] = size(U).

[curlx,curly,curlz] = curl(...), [curlx,curly] = curl(...) returns only the curl.

cav = curl(...) returns only the curl angular velocity.

## Examples

This example uses colored slice planes to display the curl angular velocity at specified locations in the vector field.

figure
cav = curl(x,y,z,u,v,w);
h = slice(x,y,z,cav,[90 134],59,0);
daspect([1 1 1]);
axis tight
colormap hot(16)
camlight
set([h(1),h(2)],'ambientstrength',.6)

This example views the curl angular velocity in one plane of the volume and plots the velocity vectors (quiver) in the same plane.

k = 4;
x = x(:,:,k); y = y(:,:,k); u = u(:,:,k); v = v(:,:,k);
cav = curl(x,y,u,v);