Form Error Models of the
NIST Algorithm Testing
System
Mary Elizabeth A. Algeo
Theodore H. Hopp

U.S. DEPARTMENT OF
COMMERCE
National Institute of
  Standards and Technology
Manufacturing Engineering Laboratory
Factory Automation Systems Division
Machine Intelligence Group
Gaithersburg, MD 20899-0001
January, 1992
U.S. DEPARTMENT OF
COMMERCE
Rockwell A. Schnavel,
Acting Secretary

NATIONAL INSTITUTE OF STANDARDS
AND TECHNOLOGY
John W. Lyons, DirectorNISTIR 4740

Form Error Models of the NIST Algorithm Testing System

Mary Elizabeth A. Algeo
Theodore H. Hopp

Factory Automation Systems Division
National Institute of Standards and Technology
Gaithersburg, MD 20899-0001

January 1992

          FORM ERROR MODELS OF THE NIST ALGORITHM TESTING SYSTEM

               Mary Elizabeth A. Algeo and Theodore H. Hopp
              National Institute of Standards and Technology
                        Gaithersburg, MD 20899-0001

     The NIST Algorithm Testing System (or ATS) is a software package for testing the
performance of geometric fitting software used in metrology systems.  One of the functions of
the ATS is to generate test data simulating point measurements taken from manufactured parts. 
Data sets are generated by evaluating, according to user-specified sampling plans, models of
parts with simulated form errors.  The ATS also provides a simple model of point measurement
errors.  The purpose of this report is to document the form error models used in the ATS.
     The ATS uses a parametric representation of geometry.  A form error is simulated by
computing, from the parametric coordinates of a point on an ideal geometric element, the
cartesian coordinates of a form error vector at that point.  This error vector is added to the ideal
point vector to generate a point on a simulated surface with form error.  A simulated
measurement point is finally generated by adding a random measurement error vector.  In
summary, a point generated by the ATS data generator is of the form:
where (u,v) are the parametric coordinates of the point (according to the sampling plan), p0(u,v)
is the point on the ideal geometry,  pF(u,v) is the form error, and  pM is the measurement error
at that point.  (The above description applies to surface geometries.  Curve geometries are
similar, but only use a single evaluation parameter.)
     The ATS simulates different kinds of form errors for different ideal geometries. 
However, a random form error is supported for all curve and surface types.  This consists of
a displacement perpendicular to the ideal geometry by some random distance.  Random form
errors are not reproducible: evaluating the same surface at the same parametric coordinates will
produce a different point.  For other than random form errors, the ideal geometries and
corresponding form error types are as follows:

Geometry
Form Error
Description

Line
Sine
A sinusoidal oscillation perpendicular to a line. 
The oscillation takes place in a plane determined
by the ideal line definition.

Step
A discontinuity in a line.  After the step, the line
continues in the same direction, but displaced from
the original line.  The displacement is in a plane
determined by the ideal line definition.

Bend
A change in direction of a line.  At the bend, the
line is continuous, but the direction of the line is
discontinuous  The new line lies in a plane deter-
mined by the ideal line definition.

Circle
Sine
A sinusoidal oscillation perpendicular to a circle,
in the plane of the circle.  To keep the curve
simple, the amplitude of the oscillation should be
less than the radius of the circle.

Step
A discontinuity in the radius of the circle between
two polar angles.

Plane
Sine
A two-dimensional sinusoidal oscillation about a
plane.  The oscillation is perpendicular to the
plane.

Step
A discontinuity in a plane at a line in the plane. 
One one side of the line of discontinuity, the plane
is displaced, but parallel to, the plane on the other
side.

Bend
A sharp bend or crease in a plane along a line. 
On both sides of the line, the plane has local or-
thogonal coordinate systems.  The normals are
different.

Sphere
Sine
A two-dimensional sinusoidal oscillation perpen-
dicular to a sphere.  To keep the surface simple,
the maximum amplitude of the oscillation should
be less than the radius of the sphere.

Cylinder or
Cone
Axial sine
A sinusoidal oscillation of the axis.  The oscilla-
tion takes place in a plane containing the ideal
axis.  (Refer to the sine error for a line.)

Radial sine
A sinusoidal oscillation of the radius at each cross
section perpendicular to the axis.  (Refer to the
sine error for a circle.)

Axial radius sine
A sinusoidal oscillation of the radius along the
axis.

Axial step
A discontinuity of the axis.  (Refer to the step
error for a line.)

Radial step
A discontinuity in the radius at each cross section
perpendicular to the axis.  (Refer to the step error
for a circle.)

Axial radius step
A discontinuity in the radius along the axis.

     The tables on the following pages summarize the form error models used in the ATS. 
There is one table for each type of ideal geometry supported by the ATS.  Each table presents
the types of form errors supported for that geometry, the parameters that define each error type,
a name for each form error parameter, and an equation for the error vector as a function of
parametric coordinates of points on the ideal surface.
     Throughout these tables, the following special functions are used:

       The unit step function:

       The positive ramp function:

       The function U( , ): a uniformly-distributed random variate in the range [ , ].

     The tables also assume that each geometry has a local cartesian coordinate system, which
is used to evaluate each form error vector.  The local coordinate system is described briefly at
the end of each table.  The geometry of the ATS is based on STEP.  More complete
information about geometry representations used in the ATS is in preparation.
                                   LINES

Error
Parameter
Parameter name
Equation

Sine
A
amplitude

f
frequency

p
phase

Step
A
amplitude

u0
location

Bend
n1
new direction

u0
location

Random
A
amplitude

The local coordinate system consists of n, the direction of the line.

In the above equations,

is the unit direction perpendicular to n closest to the +z axis (or +x axis if n is close to z). 
Also, if the line is parameterized from umin to umax,
is the normalized coordinate of the point in the line segment being modeled.  (In other words,
the frequency f indicates the total number of wavelengths of form error oscillation in the line
segment.)
                                  CIRCLES

Error
Parameter
Parameter name
Equation

Sine
A
amplitude

f
frequency

p
phase

Step
A
amplitude

u0
start angle

u1
end angle

Random
A
amplitude

The local coordinate system consists of n1 and n2, two perpendicular directions in the plane of
the circle.

In the table,

is the unit direction, away from the center, perpendicular to the circle at u.
                                  PLANES

Error
Parameter
Parameter name
Equation

Sine
Au
amplitude in u

fu
frequency in u

pu
phase in u

Av
amplitude in v

fv
frequency in v

pv
phase in v

Step
A
amplitude

d
distance

 
orientation

Bend

new normal

d
distance

 
orientation

Random
A
amplitude

The local coordinate system consists of n1, n2, and n3, three mutually perpendicular unit vectors,
with n3 perpendicular to the plane.

Also, if the plane is parameterized from umin to umax in u, and similarly for v,
are the normalized coordinates of the point within the planar patch being modeled.  (In other
words, the frequencies fu and fv indicate the total number of wavelengths of form error oscillation
in the u and v extents.)
                                  SPHERES

Error
Parameter
Parameter name
Equation

Sine
Au
amplitude in u

fu
frequency in u

pu
phase in u

Av
amplitude in v

fv
frequency in v

pv
phase in v

Random
A
amplitude

The local coordinate system consists of n1, n2, and n3, three mutually perpendicular unit vectors.

In the above equations:

is the unit direction, away from the center, perpendicular to the sphere at (u,v).
                            CYLINDERS and CONES

Error
Parameter
Parameter name
Equation

Axial Sine
A
amplitude

f
frequency

p
phase

u0
reference angle

Radial Sine
A
amplitude

f
frequency

p
phase

Axial Radius
Sine
A
amplitude

f
frequency

p
phase

Axial Step
A
amplitude

v0
location

u0
reference angle

Radial Step
A
amplitude

u0
start angle

u1
end angle

Axial Radius
Step
A
amplitude

v0
location

Random
A
amplitude

The local coordinate system consists of n1, n2, and n3, three mutually perpendicular unit vectors,
with n3 directed along the axis of the cylinder or cone.

In the above equations,

is the unit direction, away from the axis, perpendicular to the axis at u (for all v).  Note that,
in the case of a cone, the form error is not perpendicular to the surface.

Also, if the cone is parameterized from vmin to vmax in v (axially),
is the normalized v coordinate of the point within the axial segment being modeled.  (In other
words, the frequency f indicates the total number of wavelengths of form error oscillation along
the axis.)