Function Repository Resource:

# UnitNormal

Compute the unit normal of a surface

Contributed by: Alfred Gray
 ResourceFunction["UnitNormal"][s,{u,v}] gives the unit normal vector field to the surface s parametrized by variables u,v.

## Details and Options

ResourceFunction["UnitNormal"] effectively computes the Gauss map of s that maps every point on a surface to a corresponding point on the unit sphere.

## Examples

### Basic Examples (3)

Define a torus surface:

 In[1]:=
 Out[1]=

Get the unit normals of the surface:

 In[2]:=
 Out[2]=

Plot the vector field:

 In[3]:=
 Out[3]=

### Scope (2)

Define a Möbius strip:

 In[4]:=
 Out[4]=

Get the unit normals of the surface:

 In[5]:=
 Out[5]=

A Gauss map is not well defined on the whole surface, as unit normal vectors are only defined up to sign and there is no way to consistently decide the direction of the normal vector:

 In[6]:=
 Out[6]=

Define a sine surface:

 In[7]:=
 Out[7]=

Plot the sine surface:

 In[8]:=
 Out[8]=

The parametrization of the unit normals of the sine surface:

 In[9]:=
 Out[9]=

A Gauss map shows where the normals "live" inside the unit sphere:

 In[10]:=
 Out[10]=

Enrique Zeleny

## Version History

• 1.0.0 – 30 March 2020