File: geom_help

Version:  2006 March 27 17:50.

Author:  Arthur L. Edwards (email:  xenopsbird@comcast.net).

GEOM HELP MESSAGES

c===============================================================================

Note:  In command lines, arguments shown in lower case are to be typed
literally as shown.  Arguments shown in UPPER CASE indicate data to be
provided by you (the user).  Arguments in square brackets are options
with choices and/or with defaults.

c===============================================================================

HELP COMMANDS

c===============================================================================

help, h                   Display a help message for each command category.

commands [help]
help commands             Display all command words, including synonyms.

environment [help]
help environment          Display a help message for environment commands.

error [help]
help error                Display a help message for error-control commands.

random [help]
help random               Display a help message for Monte Carlo commands.

object [help]
help object               Display a help message for commands that create
                            and display objects.

math [help]
help math                 Display a help message for mathematics commands.

misc [help]
help misc                 Display a help message for miscellaneous commands.

COMMAND help
help COMMAND              Display a help message for command COMMAND.

help all                  Display help messages for all commands
                          (many pages of output).

Synonyms:  [commands, comm, alph], [environment, env], [error, err],
  [help, h], [object, obj].

c===============================================================================

HELP FOR COMMANDS BY FUNCTIONAL GROUP

c===============================================================================

Environment commands include:

status, stat              Display title, I/O files, environmental parameters.
title, id                 Display problem title.
prompt                    Switch between long and short prompts.
when                      Display code date and run date.
time, t                   Display time charged to problem.
.                         Repeat previous command.
input, in, i, read, rd, r Display/repeat previous commands.
input, in, i, read, rd, r Specify/display input medium.
input conv.mac            Display or read metric conversion factors.
return, rtn               Return to last input medium.
output, out, o, wr, w     Specify/display output file.
trace                     Display input medium return path.
plot                      Specify plot parameters, make plots.
marker, mark, m           Specify/display markers and their text.
delimiter, delim          Specify/display field delimiter.
; (unquoted)              Separates commands, comments, on same input line.
                          Not after ".", "input", "read" or "return".
                          Not after "indo", "redo" or "undo".
coordinate, coord, cs     Specify/display coordinate system.
angles, angle, ang        Specify/display/convert angle units.
tol                       Specify/display numerical tolerance limit.
define                    Define a command, key word or variable.
tables, sizes             Display command name and max number for objects.
commands, comm, alph      Display all command words, including synonyms.
synonym, syn              Display synonyms of commands, key words.
symbol, symb, sym         Create/display a symbol with a replacement.
search, find              Search for an object with a specified name or value.
alias, al, a              Create/display aliases.
variable, var, set, s     Create/display named variables, do math.
icalc                     Specify mode of integer input and output in icalc.
c or C (before blank)     Comment line.
cc, CC (columns 1 and 2)  Comment line.
cxxxx, Cxxxx (< blank)    Comment line (x = "+", "-" or "_").
#, *, / (column 1)        Comment line.
! (following command)     Begins appended comment.
page                      Insert page restore symbol "^L" into output file.
undo, u                   Undo the last command(s).
indo                      Redo a command, with increments.
redo                      Redo a command, with replacements.
do/enddo                  Begin/end a do loop.
if/endif                  Begin/end a conditional block.
vi                        Open text editor vi to display and/or edit a file.
lock                      Lock and unlock GEOM.
end, exit, quit, split    End the run.  Exit from GEOM.

c===============================================================================

Error-control commands include:

.                         Repeat last command.
input, in, i, read, rd, r
                          Display/repeat previous commands.

undo, u                   Undo the last command(s).
indo                      Redo a command, with increments.
redo                      Redo a command, with replacements.

help COMMAND              Display a help message for command COMMAND.
COMMAND help              Display a help message for command COMMAND.

Synonyms:  [help, h], [input, in, i, read, rd, r], [undo, u].

c===============================================================================

Commands to create and display objects include:

alias, al, a              Create/display aliases.

big                       Create/display big integers, do math.

variable, var, set, s     Create/display named variables, do math.
vector, vect, v           Create/display vectors.
operator, oper, op        Create/display operators to reflect, rotate,
                            invert or scale.

point, pnt, pt, p         Create/display points.
cluster, cl               Create/display clusters of points.
line, ln, l               Create/display lines.
triangle, tri             Create/display triangles.  See trig, cute, cuts.
polygon, polyg, pg        Create/display regular polygons.
disk, dk                  Create/display annular disks.

plane, pl                 Create/display planes.
sphere, sph               Create/display spheres.
cylinder, cyl             Create/display circular cylinders.
cone                      Create/display circular cones.
ellipsoid, ell, el        Create/display ellipsoids.
axisym                    Create/display axisymmetric quadric surfaces.
hyperb, saddle            Create/display quadric surface through quadrangle.
quadric, quad, q          Create/display general quadric surfaces.

mesh                      Create/display a logical mesh.
mesh block                Create/display a logical mesh block.
polyhedron, polyh, ph     Create/display regular polyhedrons.
tetrahedron, tetra, tet   Create/display tetrahedrons.
brick, br                 Create/display bricks.
zone, zn, z               Create/display zones.

bin                       Create/display probability bins.
pdf                       Create/display probability distribution functions.

copy, cp, duplicate, dup  Copy an object.
delete, del, remove, rm   Delete objects.
switch, sw, rename        Rename an object.

last                      Create/display base names of objects.
list                      Display names of objects.
sort                      Sort objects by names.

c===============================================================================

Monte Carlo commands include:

spin                      Spin the random number sequence.

variable, var, set, s     Randomly sample floating point numbers.
icalc                     Randomly sample integers.

walk                      Randomly walk points.

bin                       Create/display probability bins.
pdf                       Create/display probability distribution functions.

sample                    Randomly sample from a pdf.

point, pnt, pt, p         Randomly sample points on surfaces or in volumes.

vector, vect, v           Randomly sample vectors.

mcvol                     Estimate the volume of a zone.

c===============================================================================

Mathematics commands include:

base                      Convert decimal values to any number base.

big                       Big integer create, display, math functions.

bisect                    Bisect an angle.

contfr                    Find coefficients or value of a continued fraction.

cross, outer              Find the cross product of a vector pair.

crt                       Solve Chinese Remainder Theorem problem.

dot, inner                Find the dot product and angle of a vector pair.

factor                    Find the prime factors of integers.
factor                    Find the Euler totient function of integers.

hex                       Convert/display hex and decimal formats.
icalc                     Do integer arithmetic.

iris                      Find equivalent series of reciprocals of integers.

mean                      Find mean and std dev of a specified set of variables.

ratio, rat                Find the ratio of terms for a geometric series.

root                      Find the real roots of a polynomial equation.
rootf                     Factor a root out of a polynomial equation.
roots                     Find the roots of a quadratic, cubic or quartic eq.

solve                     Solve 3 linear equations in 3 unknowns.

variable, var, set, s     Do floating point arithmetic.



c===============================================================================

Miscellaneous commands include:

if/endif                  Specify/end a conditional block.
ratio, rat                Find the ratio of terms for a geometric series.
bisect                    Bisect an angle.
dot, inner                Find the dot product and angle of a vector pair.
cross, outer              Find the cross product of a vector pair.
increment, incr           Increment a blank-delimited string.

invert, inv               Invert  points, clusters, vectors, planes, quadrics.
move, translate           Move    points, clusters, vectors, planes, quadrics.
reflect, refl             Reflect points, clusters, vectors, planes, quadrics.
rotate, rot               Rotate  points, clusters, vectors, planes, quadrics.
scale, sc                 Scale   points, clusters, vectors, planes, quadrics.
project, proj             Project points onto a plane, cylinder, or sphere.
twist, tw                 Twist   points around an axis.

circle, circ              Find a circle through 3 points, or tangent circles.
intcirc                   Find the intersection of 2 circles.
kiss                      Find tangent circles and spheres.
distance, dist, int       Find distances or intersections between objects.
slice, cut                Find the intersection of a quadric with a plane.
slice, cut                Find points in a quadric surface.
triple                    Find any triple intersection point of three planes.
track, trk                Find track distances, intersections.
accelerate, accel         Find parabolic paths of accelerated particles.
arc                       Find curvatures of a quadric surface at a point.
side; proximal, prox      Find sides of quadric surfaces points are on.
side; proximal, prox      Find distances from points to quadric surfaces.
side; proximal, prox      Find proximal points on quadric surfaces.
extrema, extr             Find the extrema of a quadric surface.
where                     Find if points are in bricks, tetrahedrons, zones.
trig                      Find the missing parts of a triangle.
cuts                      Cut a triangle in two with equal perimeters, areas.
cute                      Find triangle extension with same perimeter, area.
steiner, stein            Find the Steiner vertex of a triangle.
sudoku                    Solve a Sudoku puzzle.
area                      Find the area of a polygon.
volume                    Find the volume of a rotated polygon.
mcvol                     Estimate the volume of a zone.

c===============================================================================

HELP FOR INDIVIDUAL COMMANDS

c===============================================================================

The geom execution line is:

geom [[IN_FILE|tty] [[OUT_FILE|geom.hsp]]]

Commands to get help messages include:

help, h                   Display a help message for each command category.

commands [help]
help commands             Display all command words, including synonyms.

environment [help]
help environment          Display a help message for environment commands.

error [help]
help error                Display a help message for error-control commands.

random [help]
help random               Display a help message for Monte Carlo commands.

object [help]
help object               Display a help message for commands that create
                            and display objects.

math [help]
help math                 Display a help message for mathematics commands.

misc [help]
help misc                 Display a help message for miscellaneous commands.

COMMAND help
help COMMAND              Display a help message for command COMMAND.

help all                  Display help messages for all commands
                          (many pages of output).

Synonyms:  [commands, comm, alph], [environment, env], [error, err],
  [help, h], [object, obj].

The field delimiter is now " ".

c===============================================================================

Alphabetic list of command words, including synonyms:
.           ;           a           accel       accelerate  al
alias       alph        ang         angle       angles      arc
area        axisym      base        big         bin         bisect
br          brick
C           c           C++++       c++++       C----
c----       C....       c....       circ        circle      cl
cluster     comm        commands    cone        contfr      coord
coordinate  copy        cp          cross       crt         cs
cut         cute        cuts        cyl         cylinder    C____
c____       debug       def         define      del         delete
delim       delimit     delimiter   disc        disk        dist
distance    dk          do          dot         dup         duplicate
el          ell         ellipse     ellipsoid   end         enddo
endif       env         environment err         error       exit
extr        extrema     factor      find        goto        h
help        hex         hyperb      i           icalc       id
if          in          incr        increment   indo        inner
input       int         intcirc     inter       intersect   inv
invert      iris        kiss        l           last        line
list        ln          lock        m           mark        marker
math        mcvol       mean        mesh        misc        move
mv
o           obj         object      op          oper        operator
out         outer       output      p           page        parse
pdf         pg          ph          pl          plane       plot
pnt         point       polyg       polygon     polyh       polyhedron
proj        project     prompt      prox        proximal    pt
q           quad        quadric     quit        r           random
rat         ratio       rd          read        redo        refl
reflect     remove      rename      repack      return      rm
root        rootf       roots       rot         rotate      rtn
s           saddle      sample      sc          scale       search
set         setup       side        slice       solve       sort
sph         sphere      spin        split       sr          stat
status      steiner     su          sudoku      sw          switch
sym         symb
symbol      syn         synonym     sys         system      t
tables      tet         tetra       tetrahedron time        title
tol         trace       track       trans       translate   tri
triangle    trig        triple      trk         tw          twist
u           undo        v           var         variable    vect
vector      vi          vol         volume      w           walk
when        where       wr          z           zn          zone

Synonyms:  [commands, comm, alph], [help, h].

c===============================================================================


Environment commands include:

status, stat              Display title, I/O files, environmental parameters.
title, id                 Display problem title.
prompt                    Switch between long and short prompts.
when                      Display code date and run date.
time, t                   Display time charged to problem.
.                         Repeat previous command.
input, in, i, read, rd, r Display/repeat previous commands.
input, in, i, read, rd, r Specify/display input medium.
input conv.mac            Display or read metric conversion factors.
return, rtn               Return to last input medium.
output, out, o, wr, w     Specify/display output file.
trace                     Display input medium return path.
plot                      Specify plot parameters, make plots.
marker, mark, m           Specify/display markers and their text.
delimiter, delim          Specify/display field delimiter.
; (unquoted)              Separates commands, comments, on same input line.
                          Not after ".", "input", "read" or "return".
                          Not after "indo", "redo" or "undo".
coordinate, coord, cs     Specify/display coordinate system.
angles, angle, ang        Specify/display/convert angle units.
tol                       Specify/display numerical tolerance limit.
define                    Define a command, key word or variable.
tables, sizes             Display command name and max number for objects.
commands, comm, alph      Display all command words, including synonyms.
synonym, syn              Display synonyms of commands, key words.
symbol, symb, sym         Create/display a symbol with a replacement.
search, find              Search for an object with a specified name or value.
alias, al, a              Create/display aliases.
variable, var, set, s     Create/display named variables, do math.
icalc                     Specify mode of integer input and output in icalc.
c or C (before blank)     Comment line.
cc, CC (columns 1 and 2)  Comment line.
cxxxx, Cxxxx (< blank)    Comment line (x = "+", "-" or "_").
#, *, / (column 1)        Comment line.
! (following command)     Begins appended comment.
page                      Insert page restore symbol "^L" into output file.
undo, u                   Undo the last command(s).
indo                      Redo a command, with increments.
redo                      Redo a command, with replacements.
if/endif                  Specify/end a conditional block.
do/enddo                  Specify/end a do loop.
vi                        Open text editor vi to display and/or edit a file.
lock                      Lock and unlock GEOM.
end, exit, quit, split    End the run.  Exit from GEOM.

c===============================================================================


Error-control commands include:

.                         Repeat last command.
input, in, i, read, rd, r
                          Display/repeat previous commands.

undo, u                   Undo the last command(s).
indo                      Redo a command, with increments.
redo                      Redo a command, with replacements.

help COMMAND              Display a help message for command COMMAND.
COMMAND help              Display a help message for command COMMAND.

debug                     Display internal variables.
parse                     Display input line parsing.

Synonyms:  [help, h], [input, in, i, read, rd, r], [undo, u].

c===============================================================================


Mathematics commands include:

variable, var, set, s     Do floating point arithmetic.
icalc                     Do integer arithmetic.
big                       Do big integer arithmetic.
hex                       Convert/display hex and decimal formats.
base                      Convert decimal values to any number base.
mean                      Find the mean value and std dev of a set of variables.
root                      Find the real roots of a polynomial equation.
roots                     Find the roots of a quadratic, cubic or quartic eq.
rootf                     Factor a root out of a polynomial equation.
solve                     Solve 3 linear equations in 3 unknowns.
ratio, rat                Find the ratio of terms for a geometric series.
bisect                    Bisect an angle.
dot, inner                Find the dot product and angle of a vector pair.
cross, outer              Find the cross product of a vector pair.
factor                    Find all of the prime factors of an integer.
factor                    Find the Euler totient function of an integer.
contfr                    Find coefficients or value of a continued fraction.
iris                      Find equivalent series of reciprocals of integers.
crt                       Solve Chinese Remainder Theorem problem.

c===============================================================================


Miscellaneous commands include:

if/endif                  Specify/end a conditional block.
ratio, rat                Find the ratio of terms for a geometric series.
bisect                    Bisect an angle.
dot, inner                Find the dot product and angle of a vector pair.
cross, outer              Find the cross product of a vector pair.
increment, incr           Increment a blank-delimited string.

invert, inv               Invert  points, clusters, vectors, planes, quadrics.
move, translate           Move    points, clusters, vectors, planes, quadrics.
reflect, refl             Reflect points, clusters, vectors, planes, quadrics.
rotate, rot               Rotate  points, clusters, vectors, planes, quadrics.
scale, sc                 Scale   points, clusters, vectors, planes, quadrics.
project, proj             Project points onto a plane, cylinder, or sphere.
twist, tw                 Twist   points around an axis.

circle, circ              Find a circle through 3 points, or tangent circles.
intcirc                   Find the intersection of 2 circles.
kiss                      Find tangent circles and spheres.
distance, dist, int       Find distances or intersections between objects.
slice, cut                Find the intersection of a quadric with a plane.
slice, cut                Find points in a quadric surface.
triple                    Find any triple intersection point of three planes.
track, trk                Find track distances, intersections.
accelerate, accel         Find parabolic paths of accelerated particles.
arc                       Find curvatures of a quadric surface at a point.
side; proximal, prox      Find sides of quadric surfaces points are on.
side; proximal, prox      Find distances from points to quadric surfaces.
side; proximal, prox      Find proximal points on quadric surfaces.
extrema, extr             Find the extrema of a quadric surface.
where                     Find if points are in bricks, tetrahedrons, zones.
trig                      Find the missing parts of a triangle.
cuts                      Cut a triangle in two with equal perimeters, areas.
cute                      Find triangle extension with same perimeter, area.
steiner, stein            Find the Steiner vertex of a triangle.
sudoku, su                Solve a Sudoku puzzle.
area                      Find the area of a polygon.
volume                    Find the volume of a rotated polygon.
mcvol                     Estimate the volume of a zone.

c===============================================================================


Commands to create and display objects include:

alias, al, a              Create/display aliases.

big                       Create/display big integers,    do math.
variable, var, set, s     Create/display named variables, do math.
vector, vect, v           Create/display vectors.
operator, oper, op        Create/display operators to reflect, rotate,
                            invert or scale.

point, pnt, pt, p         Create/display points.
cluster, cl               Create/display clusters of points.
line, ln, l               Create/display lines.
triangle, tri             Create/display triangles.  See trig, cute, cuts.
polygon, polyg, pg        Create/display regular polygons.
disk, dk                  Create/display annular disks.
plane, pl                 Create/display planes.
sphere, sph               Create/display spheres.
cylinder, cyl             Create/display circular cylinders.
cone                      Create/display circular cones.
ellipsoid, ell, el        Create/display ellipsoids.
axisym                    Create/display axisymmetric quadric surfaces.
hyperb, saddle            Create/display quadric surface through quadrangle.
quadric, quad, q          Create/display general quadric surfaces.

mesh                      Create/display a logical mesh.
mesh block                Create/display a logical mesh block.
polyhedron, polyh, ph     Create/display regular polyhedrons.
tetrahedron, tetra, tet   Create/display tetrahedrons.
brick, br                 Create/display bricks.
zone, zn, z               Create/display zones.

bin                       Create/display probability bins.
pdf                       Create/display probability distribution functions.

copy, cp, duplicate, dup  Copy an object.
delete, del, remove, rm   Delete objects.
switch, sw, rename        Rename objects.

last                      Create/display base names of objects.
list                      Display names of objects.
repack                    Remove deleted objects.
sort                      Sort objects by names.

c===============================================================================


Monte Carlo commands include:

spin                      Spin the random number sequence.

variable, var, set, s     Randomly sample floating point numbers.
icalc                     Randomly sample integers.

walk                      Randomly walk points.

bin                       Create/display probability bins.
pdf                       Create/display probability distribution functions.

sample                    Randomly sample from a pdf.

point, pnt, pt, p         Randomly sample points on surfaces or in volumes.

vector, vect, v           Randomly sample vectors.

mcvol                     Estimate the volume of a zone.

c===============================================================================

Command "accel":  acceptable input lines include:
"accelerate [help]"          Display this message.

"accelerate path PINIT VINIT VACC"
   For a particle initially at point PINIT,
   with initial velocity vector VINIT and acceleration vector VACC,
   find the position, path length and velocity
   at the vertex of its parabolic trajectory.

"accelerate path PINIT VINIT VACC time TMIN [DT TMAX]"
   For a particle initially at point PINIT,
   with initial velocity vector VINIT and acceleration vector VACC,
   find the position, path length and velocity at the vertex of its path,
   and for time[s] TMIN [(DT) TMAX].

"accelerate path PINIT VINIT VACC point PNAME"
   For a particle initially at point PINIT,
   with initial velocity vector VINIT and acceleration vector VACC,
   find the points on its path that intersect or are proximal to
   the point PNAME, and for each such point, the coordinates,
   the path length and the time.

"accelerate path PINIT VINIT VACC cluster CLNAME"
   For a particle initially at point PINIT,
   with initial velocity vector VINIT and acceleration vector VACC,
   find the points on its path that intersect or are proximal to
   each point in cluster CLNAME, and for each such point,
   the coordinates, the path length and the time.

"accelerate path PINIT VINIT VACC line ALNAME"
   For a particle initially at point PINIT,
   with initial velocity vector VINIT and acceleration vector VACC,
   find the points on its path that intersect or are proximal to
   the line ALNAME, and for each such point, the coordinates,
   the path length and the time.

"accelerate path PINIT VINIT VACC plane PLNAME"
   For a particle initially at point PINIT,
   with initial velocity vector VINIT and acceleration vector VACC,
   find the points on its path that intersect or are proximal to
   the plane PLNAME, and for each such point, the coordinates,
   the path length and the time.

Type  for more help.
"accelerate path PINIT VINIT VACC quadric QNAME"
   For a particle initially at point PINIT,
   with initial velocity vector VINIT and acceleration vector VACC,
   find the points on its path that intersect the quadric suface QNAME,
   and for each such point, the coordinates, the path length and the time.

"accelerate fit P1 [T1 P2 T2 [P3 T3]]"
   For a particle at points P1, P2 and P3 at times T1, T2 and T3,
   find the position and velocity at time zero, and the acceleration vector.

Synonyms:  [accelerate, accel], [help, h], [line, ln, l], [plane, pl],
  [quadric, quad, q], [time, t].

c===============================================================================

Command "alias":  acceptable input lines include:
"alias [help]" Display this message.
"alias all"    Display all alias pairs.
"alias list [ANAME1 ANAME2 ANAME3 ...]"
   Display the alias pairs for all listed aliases
   (the default is all aliases).
"alias ANAME"
   Display the alias pair for alias ANAME.

"alias ANAME = ' '"
   Remove alias ANAME.

"alias ANAME = 'STRING'"
   In subsequent input lines, replace all first-word occurrences
   of alias ANAME by the entire string STRING.

Note:  use +/- for ANAME to incr/decr the last alias name:

Synonyms:  [", ' (in pairs)], [alias, al, a], [help, h].

c===============================================================================

Command "lock":  acceptable input lines include:
"lock help"     Display this message.

"lock"          Get word, continue when retyped.

Synonyms:  [help, h], [lock, zzz].

c===============================================================================

Command "angles":  acceptable input lines include:
"angles [help]"           Display current problem units and this message.
"angles degrees"          Change angle units to degrees.
"angles radians"          Change angle units to radians.

"angles UNIT1 UNIT2 ANGLE1 [ANGLE2 ANGLE3 ...]"
   Convert from UNIT1 to UNIT2:  ANGLE1 [and ANGLE2, ANGLE3, ...].
   UNIT1 may be "degrees", "grads" or "radians".
   UNIT2 may be "degrees", "grads", "radians" or "dms".

"angles UNIT1 UNIT2 ANGLE1 thru ANGLEN"
   Convert from UNIT1 to UNIT2:  all stored variables
   with names in the range from ANGLE1 thru ANGLEN.
   UNIT1 may be "degrees", "grads" or "radians".
   UNIT2 may be "degrees", "grads", "radians" or "dms".

"angles dms UNIT2 DEGREES MINUTES SECONDS"
   Convert from degrees, minutes, seconds to UNIT2.
   UNIT2 may be "degrees", "grads", "radians" or "dms".

Synonyms:  [angles, angle, ang], [degrees, degree, deg],
 [grads, grad], [help, h], [radians, radian, rad].

c===============================================================================

Command "arc":  acceptable input lines include:
"arc [help]"        Display this message.

"arc PNAME QNAME"   Find, at point PNAME:
   the normal vector of the family of quadric surfaces QNAME;
   the number of curves in the surface, passing through that point,
   and lying in a plane containing the normal vector,
   having zero or extreme values of the curvature;
   and for each such curve, the corresponding curvature,
   radius of curvature, center of curvature, and unit direction vector.

Synonyms:  [help, h].

c===============================================================================

Command "area":  acceptable input lines include:
"area [help]"  Display this message.

"area VNORM point PNAME1 PNAME2 PNAME3 ..."
   Find the area projected onto a plane with normal vector VNORM
   by the polygon with vertex points PNAME1, PNAME2, PNAME3, ...
"area VNORM cluster CLNAME"
   Find the area projected onto a plane with normal vector VNORM
   by the polygon formed by the points in cluster CLNAME.

Synonyms:  [cluster, cl], [help, h], [point, pnt, pt, p].

c===============================================================================

Command "axisym":  acceptable input lines include:
"axisym [help]"  Display this message.
"axisym all"     Display all axisymmetric quadrics.
"axisym list [AXNAME1 AXNAME2 AXNAME3 ...]"
   Display all listed axisymmetric quadrics
   (default is all axisymmetric quadrics).
"axisym AXNAME"   Display axisymmetric quadric surface AXNAME.

"axisym AXNAME fit PCEN VAXIS PNAME2 PNAME3"
   Create axisymmetric quadric AXNAME, centered at point PCEN,
   with axis vector VAXIS, and through points PNAME2 and PNAME3.

"axisym AXNAME focus PFOC VAXIS PNAME2 PNAME3"
   Create axisymmetric quadric AXNAME, with focus at point PFOC,
   with axis vector VAXIS, and through points PNAME2 and PNAME3.

"axisym AXQ02 move NUMAX INC AXQ01 VMOVE"
   Create a family of NUMAX axisymmetric quadrics AXQ02, ...,
   with names incremented by INC characters,
   and spaced at intervals of vector VMOVE,
   starting from axisymmetric quadric AXQ01.

"axisym AXQ02 rotate NUMAX INC AXQ01 OPNAME PINV"
   Create a family of NUMAX axisymmetric quadrics AXQ02, ...,
   with names incremented by INC characters,
   by rotating the preceding axisymmetric quadric with operator OPNAME
   and invariant point PINV, starting from axisymmetric quadric AXQ01.

"axisym AXQ02 scale NUMAX INC AXQ01 OPNAME PINV"
   Create a family of NUMAX quadrics AXQ02, ...,
   with names incremented by INC characters,
   by scaling the preceding quadric with operator OPNAME
   and invariant point PINV, starting from axisymmetric quadric AXQ01.
   WARNING:  a linear or radial scaling axis not parallel
   to that of AXQ01 will produce non-axisymmetric quadric surfaces;
   a linear or radial scaling will changes spheres to ellipsoids.

Note:  use +/- for AXNAME to incr/decr the last
  axisymmetric quadric surface name:

Synonyms:  [focus, foc, focal], [help, h],
[move, mv, translate, trans],  [rotate, rot], [scale, sc].

c===============================================================================

Command "base":  acceptable input lines include:

"base [help]"  Display this message.

"base NBASE VALUE1 VALUE2 VALUE3 ..."
   Display the values in base NBASE of the decimal
   values VALUE1, VALUE2, VALUE3, ...

Synonyms:  [help, h].

c===============================================================================

Command "big":  acceptable input lines include:
"big [help]"          Display this message.

"big all"             Display all big integers.
"big all 0"           Zero out all big integers.
"big BIGNAME"         Display big integer BIGNAME and its one-word
   integer and floating point values, if any, and log10, if any.

"big BIGNAME [N|1] = INT1 INT2 INT3 ..."
   Replace digits N (default 1), N+1, N+2, ... of big integer BIGNAME
   with integer groups INT1, INT2, INT3, ...
   If BIGNAME is not zero, and N exceeds the initial length of BIGNAME,
   all digits in between will be zeros.
   BIGNAME must be a capital letter from A to Z.
   INT1, INT2, INT3, ... may be positive integers or integer variables,
   but not big integers.

"big BIGNAME tag 'BIGTAG'"
   Give big integer BIGNAME the tag BIGTAG (up to 32 characters).
"big BIGNAME = big BIGNAME2"
   Replace big integer BIGNAME with big integer BIGNAME2.

"big BIGNAME = INT1 [+,-,*,/,] INT2"
   Replace big integer BIGNAME with the [sum, difference, product, quotient]
   of integers INT1 and INT2.
   In this and the following commands INT1 and INT2 may be
   positive integers or integer variable or big integers.
   of integers INT1 and INT2.
"big BIGNAME = INT1 // INT2"
   Replace big integer BIGNAME with the result of dividing INT1 by the highest
    possible power of INT2, if the latter is an exact factor of INT1.
"big BIGNAME = INT1 mod INT2"
   Replace big integer BIGNAME with the modulus of integer
   INT1 with respect to integer INT2.
"big BIGNAME = INT1 ^ NPOW"
   Replace big integer BIGNAME with the NPOW'th power of integer INT1.
"big BIGNAME = INT1 root NROOT"
   Replace big integer BIGNAME with the NROOT'th root of integer INT1.
"big BIGNAME = INT1 fact"
   Replace big integer BIGNAME with the factorial of integer INT1.

Note:  use +/- for BIGNAME to incr/decr the last big integer name:

Synonyms:  [all, list], [help, h], [^, **].

c===============================================================================

Command "bin":  acceptable input lines include:
"bin [help]"       Display this message.
"bin [all,list]"   Display all probability bins.
"bin list BINAME1 BINAME2 BINAME3 ..." Display all listed bins.
"bin BINAME"       Display probability bin BINAME.
"bin BINAME event [PRTOT|1]"  Create bin BINAME,
   for a discrete event with total probability PRTOT.
"bin BINAME value VRAN [PRTOT|1]"  Create bin BINAME,
   for a discrete value VRAN with total probability PRTOT.
"bin BINAME uniform VRANL VRANR [DPR|1]"
   Create bin BINAME, with uniform differential probability DPR
   of values VRANL to VRANR > VRANL.
"bin BINAME linear VRANL VRANR [DPRL|1] [DPRR|DPRL]"
   Create bin BINAME, with differential probabilities in a linear distribution
   from DPRL for value VRANL, to DPRR for value VRANR > VRANL.
"bin BINAME power VRANL VRANR POW [PRTOT|1]"
   Create bin BINAME, with total probability PRTOT, differential probabilities
   in a power-law distribution with power POW:
   POW = log (DPRR / DPRL) / log (VRANR / VRANL),
   PRTOT = (VRANR * DPRR - VRANL * DPRL) / (POW + 1),
   or if POW = -1:  PRTOT = DPRL * VRANL * log (DPRL / DPRR).
"bin BINAME exp VRANL VRANR SIGMA [PRTOT|1]"
   Create bin BINAME, with total probability PRTOT, differential probabilities
   in an exponential distribution with decay constant SIGMA:
   SIGMA = log (DPRL / DPRR) / (VRANR - VRANL),
   PRTOT = (DPRL - DPRR) / SIGMA.
"bin BINAME normal VMEAN DEV [PRTOT|1]"
   Create bin BINAME, with total probability PRTOT, differential probabilities
   in a normal distribution with mean value VMEAN and standard deviation DEV,
   for values from minus infinity to plus infinity.
"bin BINAME maxwell RATIO [PRTOT|1]"
   Create bin BINAME, with total probability PRTOT, differential probabilities
   of beta = v / c in a  relativistic Maxwellian distribution, for a ratio
   RATIO of avg temp to rest mass energy, for 0 < beta < 1.
"bin BINAME [planck, wien] BTEMP [PRTOT|1]"
   Create bin BINAME, with total probability PRTOT, differential probabilities
   of frequency XNU in a [Planck, Wien] spectrum, for a black-body temperature
   BTEMP, for values of XNU from 0 to infinity.

Note:  all probabilities may be relative (unnormalized).
Note:  use +/- for BINAME to incr/decr the last bin name:

Synonyms:  [help, h], [maxwell, Maxwell], [normal, norm],
  [planck, Planck], [power, pow], [wien, Wien]

c===============================================================================

Command "bisect":  acceptable input lines include:
"bisect [help]"  Display this message.
"bisect PNAME1 PNAME2 PNAME3"
   Bisect the angle formed by the 3 points PNAME1, PNAME2 and PNAME3,
   and display the intercept on the line from PNAME3 to PNAME1,
   and the vector from PNAME1 to the intercept.

c==============================================================================

Command "brick":  acceptable input lines include:

"brick [help]"  Display this message.
"brick all"     Display all bricks.
"brick list [BRNAME1 BRNAME2 BRNAME3 ...]"
       Display all listed bricks (default is all bricks).
"brick BRNAME"  Display brick BRNAME.

"brick BRNAME = UMIN UMAX VMIN VMAX WMIN WMAX"
   Create brick BRNAME, bounded by the coordinate
   values UMIN, UMAX, VMIN, VMAX, WMIN, WMAX, in the
   current coordinate system (U, V, W).

"brick BR02 increment NUMBR INC BR01 [-] CDIR [FMULT|1]"
   Create a family of NUMBR bricks BR02, ...,
   with names incremented by INC characters,
   each sharing a coordinate surface in the [negative] coordinate direction
   CDIR (x, y, z, rcyl, theta, rsph, phi), with the preceding brick,
   starting from brick BR01, and with a thickness in direction CDIR
   equal to FMULT times the thickness of the preceding brick.

Note:  use +/- for BRNAME or BR02 to incr/decr the last brick name:

Synonyms:  [brick, br], [help, h], [increment, incr].

c===============================================================================

Command "circle":  acceptable input lines include:
"circle [help]"  Display this message.

"circle point PNAME1 PNAME2 PNAME3"
   Find the circle through points PNAME1, PNAME2 and PNAME3,

Synonyms:  [circle, circ], [help, h], [point, pnt, pt, p].

c===============================================================================

Command "cluster":  acceptable input lines include:
"cluster [help]"  Display this message.
"cluster all"     Display all clusters.
"cluster list [CLNAME1 CLNAME2 CLNAME3 ...]"
   Display all listed clusters (default is all clusters).
"cluster CLNAME"  Display cluster CLNAME.

"cluster CLNAME all"
   Create new cluster CLNAME, consisting of all points.

"cluster CLNAME = PNAME1 ... PNAME2 [thru] PNAME3 ..."
   Create new cluster CLNAME, consisting of the points
   PNAME1, ...,  PNAME2 [, through] PNAME3, ...

"cluster CLNAME & PNAME1 ... PNAME2 [thru] PNAME3 ..."
   Change cluster CLNAME, to add the points
   PNAME1, ... PNAME2 [, through] PNAME3, ...

"cluster CLNAME - PNAME1 ... PNAME2 [thru] PNAME3 ..."
   Change cluster CLNAME, to remove the points
   PNAME1, ..., PNAME2 [, through] PNAME3, ...

"cluster CLNAME cluster CLNAME1 ... CLNAME2 [thru] CLNAME3 ..."
   Create new cluster CLNAME, consisting of all points
   in existing clusters CLNAME1, ..., CLNAME2 [, through] CLNAME3, ...

"cluster CLNAME cluster - CLNAME1 ... CLNAME2 [thru] CLNAME3 ..."
   Change cluster CLNAME, to remove all points
   in existing clusters CLNAME1, ..., CLNAME2 [, through] CLNAME3, ...

"cluster CLNAME cluster comp. CLNAME1"
   Create new cluster CLNAME, consisting of all points
   not in cluster CLNAME1.
"cluster CLNAME cl CLNAME1 .not.  CLNAME2"
   Create new cluster CLNAME, consisting of all points
   in cluster CLNAME1 and not in cluster CLNAME2.

Type  for more help.
"cluster CLNAME cl CLNAME1 .and.  CLNAME2"
   Create new cluster CLNAME, consisting of all points
   in both cluster CLNAME1 and cluster CLNAME2.
"cluster CLNAME cl CLNAME1 .nand. CLNAME2"
   Create new cluster CLNAME, consisting of all points
   not in both cluster CLNAME1 and cluster CLNAME2.
"cluster CLNAME cl CLNAME1 .or.   CLNAME2"
   Create new cluster CLNAME, consisting of all points
   in either cluster CLNAME1 or cluster CLNAME2.
"cluster CLNAME cl CLNAME1 .nor.  CLNAME2"
   Create new cluster CLNAME, consisting of all points
   in neither cluster CLNAME1 nor cluster CLNAME2.
"cluster CLNAME cl CLNAME1 .xor.  CLNAME2"
   Create new cluster CLNAME, consisting of all points
   in either cluster CLNAME1 or cluster CLNAME2, but not both.
"cluster CLNAME cl CLNAME1 .xnor. CLNAME2"
   Create new cluster CLNAME, consisting of all points in
   both or neither cluster CLNAME1 and cluster CLNAME2.

"cluster CLNAME brick BRNAME"
   Create new cluster CLNAME, consisting of all points in brick BRNAME.
"cluster CLNAME tetrahedron TETNAME"
   Create new cluster CLNAME, consisting of all points in tetrahedron TETNAME.
"cluster CLNAME zone ZNAME"
   Create new cluster CLNAME, consisting of all points in zone ZNAME.

"cluster CLNAME mesh [all]"
   Create new cluster CLNAME, consisting of all mesh points.
"cluster CLNAME nomesh"
   Create new cluster CLNAME, consisting of all non-mesh points.
"cluster CLNAME mesh block"
   Create new cluster CLNAME, consisting of all mesh points
   in the mesh block.
"cluster CLNAME mesh vacuum"
   Create new cluster CLNAME, consisting of all mesh points
   with x, y, z coordinates of -1.e99 or less.

 Note:  use +/- for CLNAME to incr/decr the last cluster name:

 Synonyms:  [.and., .int.], [.or., .un.], [.xnor., .eqv.], [block, bl],
  [brick, br], [cluster, cl], [help, h], [tetrahedron, tetra, tet],
  [zone, zn, z].

c===============================================================================

Command "cone":  acceptable input lines include:
"cone [help]"  Display this message.
"cone all"     Display all circular cones.
"cone list [CNNAME1 CNNAME2 CNNAME3 ...]"
   Display all listed circular cones (default is all circular cones).
"cone CNNAME"  Display circular cone CNNAME.

"cone CNNAME line PAXIS VAXIS ALNAME"
   Create circular cone CNNAME with axis point PAXIS and axis vector VAXIS,
   through the endpoints of line ALNAME.
"cone CNNAME fit PVER VAXIS PNAME2"
   Create circular cone CNNAME with vertex point PVER and axis vector VAXIS,
   through point PNAME2.
"cone CNNAME angle PVER VAXIS ANGLE"
   Create circular cone CNNAME with vertex point PVER and axis vector VAXIS,
   with half-angle ANGLE.

"cone CNNAME nest NUMCONE INC PVER VAXIS ANG1 ANG2"
   Create a family of NUMCONE nested circular cones CNNAME, ...,
   with names incremented by INC characters,
   with the same vertex point PVER and axis vector VAXIS,
   and with vertex half-angles equally spaced from ANG1 to ANG2.

"cone CONE02 move NUMCONE INC CONE01 VMOVE"
   Create a family of NUMCONE circular cones CONE02, ...,
   with names incremented by INC characters,
   and spaced at intervals of vector VMOVE,
   starting from circular cone CONE01.

"cone CONE02 rotate NUMCONE INC CONE01 OPNAME PINV"
   Create a family of NUMCONE circular cones CONE02, ...,
   with names incremented by INC characters,
   by rotating the preceding circular cone with operator OPNAME
   and invariant point PINV, starting from circular cone CONE01.

"cone CONE02 scale NUMCONE INC CONE01 OPNAME PINV"
   Create a family of NUMCONE cones CONE02, ...,
   with names incremented by INC characters,
   by scaling the preceding cone with operator OPNAME and
   invariant point PINV, starting from circular cone CONE01.
   WARNING:  a linear or radial scaling axis not parallel
   to that of CONE01 will produce elliptic cones.

Type  for more help.

Note:  use +/- for CNNAME or CONE02 to incr/decr the last
  circular cone name:

Synonyms:  [help, h], [line, ln, l] [move, mv, translate, trans],
  [point, pnt, pt, p], [rotate, rot], [scale, sc].

c===============================================================================

Command "contfr":  acceptable input lines include:

"contfr [help]"  Display this message.

"contfr = VALUE"
   Find the coefficients kc1, kc2, kc3, kc4, ...of the continued fraction
   VALUE = kc1 + 1/(kc2 + 1/(kc3 + 1/(kc4 + ...))).

"contfr C1 C2 C3 ..."
   Find the value x of the continued fraction
   x = C1 + 1/(C2 + 1/(C3 + 1/(C4 + ...))),
   and the equivalent rational fraction xnum / xden = x.

Synonyms:  [contfr, cf], [help, h].

c===============================================================================

Command "coord":  acceptable input lines include:
"coord help" Display this message.
"coord"      Display the current coordinate system.

"coord rect" Change the coordinate system to rectangular (x,y,z).
"coord cyl"  Change the coordinate system to cylindrical (rcyl,theta,z).
"coord sph"  Change the coordinate system to spherical (rsph,theta,phi).

Synonyms:  [coordinate, coord, cs, system, sys], [cyl, cylindrical, cy],
  [help, h], [cartesian, cart, rectangular, rect, xyz], [spherical, sph, sp].

c===============================================================================

Command "copy":  acceptable input lines include:
"copy [help]"  Display this message.

"copy alias    ANAME   ANAME2"    Copy alias    ANAME   to ANAME2.
"copy marker   SYNNAME SYNNAME2"  Copy marker   SYNNAME to SYNNAME2.
"copy variable VARNAME VARNAME2"  Copy variable VARNAME to VARNAME2.
"copy big      BIGNAME to BIGNAM2"  Copy big integer BIGNAME to BIGNAME2.
"copy point    PNAME   PNAME2"    Copy point    PNAME   to PNAME2.
"copy cluster  CLNAME  CLNAME2"   Copy cluster  CLNAME  to CLNAME2.
"copy line     ALNAME  ALNAME2"   Copy line     ALNAME  to ALNAME2.
"copy vector   VNAME   VNAME2"    Copy vector   VNAME   to VNAME2.
"copy operator OPNAME  OPNAME2"   Copy operator OPNAME  to OPNAME2.
"copy triangle TRNAME  TRNAME2"   Copy triangle TRNAME  to TRNAME2.
"copy polygon  PGNAME  PGNAME2"   Copy regular polygon PGNAME to PGNAME2.
"copy disk     DKNAME  DKNAME2"   Copy annular disk DKNAME to DKNAME2.
"copy plane    PLNAME  PLNAME2"   Copy plane    PLNAME  to PLNAME2.
"copy sphere   SPHNAME SPHNAME2"  Copy sphere   SPHNAME to SPHNAME2.
"copy cylinder CYLNAME CYLNAME2"  Copy cylinder CYLNAME to CYLNAME2.
"copy cone     CNNAME  CNNAME2"   Copy cone     CNNAME  to CNNAME2.
"copy ellipsoid ELNAME ELNAME2"   Copy ellipsoid ELNAME to ELNAME2.
"copy hyperb   HPNAME  HPNAME2"   Copy hyperbolic paraboloid  HPNAME
                                    to HPNAME2.
"copy axisym   AXNAME  AXNAME2"   Copy axisymmetric quadric AXNAME
                                    to AXNAME2.
"copy quadric  QNAME   QNAME2"    Copy quadric  QNAME   to QNAME2.
"copy polyhedron PHNAME PHNAME2"  Copy regular polyhedron PHNAME
                                    to PHNAME2.
"copy tetrahedron TETNAME TETNAME2" Copy tetrahedron TETNAME to TETNAME2.
"copy brick    BRNAME  BRNAME2"   Copy brick    BRNAME  to BRNAME2.
"copy zone     ZNAME   ZNAME2"    Copy zone     ZNAME   to ZNAME2.
"copy bin      BINAME  BINAME2"   Copy probability bin BINAME to BINAME2.
"copy pdf      PDFNAME PDFNAME2"  Copy pdf      PDFNAME to PDFNAME2.
"copy symbol   SYMBNAME SYMBNAME2"  Copy symbol SYMBNAME to SYMBNAME2.
"copy OBJTYPE  OBJNAME OBJNAME2"  Copy OBJTYPE  OBJNAME to OBJNAME2,
  where OBJTYPE is any of the object types used above.

Note:  use +/- for OBJNAME2 to incr/decr the last OBJTYPE name.

Synonyms:  [alias, al, a], [brick, br], [copy, cp, duplicate, dup],
  [cluster, cl], [cylinder, cyl], [disk, disc, dk],
  [ellipsoid, ellipse, ell, el], [help, h], [hyperb, saddle],
  [line, ln, l], [marker, mark, m],
  [operator, oper, op, o], [plane, pl],
  [point, pnt, pt, p], [polygon, polyg, pg],
  [polyhedron, polyh, ph], [quadric, quad, q], [sphere, sph],
  [symbol, symb, sym], [tetrahedron, tetra, tet], [triangle, tri],
  [variable, var, set, s], [vector, vect, v], [zone, zn, z].

c===============================================================================

Command "cross":  acceptable input lines include:
"cross [help]"               Display this message.

"cross VNAME1 VNAME2"        Find the cross product
   of vectors VNAME1 and VNAME2.

Synonyms:  [cross, outer], [help, h].

c===============================================================================

Command "crt":  acceptable input lines include:
"crt [help]"           Display this message.

"crt IDIV1 IREM1 IDIV2 IREM2 IDIV3 IREM3 ... IDIVN IRMIN"
   Find the least integer for which divisions by IDIVn
   have the remainders IDIVn, n = 1, N.

"crt = IVALUE"
   For the integer IVALUE, find the remainders of divisions
   by the first few prime numbers.

Synonyms:  [help, h].

c===============================================================================

Command "cute":  acceptable input lines include:
"cute [help]"           Display this message.

"cute A B C"
 For the triangle with edges A, B and C, extend sides A and B
   to make the perimeter 2*(A + B), and double the area.

Synonyms:  [help, h].

c===============================================================================

Command "cuts":  acceptable input lines include:
"cuts [help]"           Display this message.

"cuts A B C"
 Find the number and location of any straight line cuts of the triangle
   with edges A, B and C, that partitions the triangle into sections
   with equal perimeters and areas.

Synonyms:  [help, h].

c===============================================================================

Command "cylinder":  acceptable input lines include:
"cylinder [help]"  Display this message.
"cylinder all"     Display all circular cylinders.
"cylinder list [CYLNAME1 CYLNAME2 CYLNAME3 ...]"
   Display all listed circular cylinders (default is all cylinders).
"cylinder CYLNAME"  Display circular cylinder CYLNAME.
"cylinder CYLNAME = PAXIS VAXIS RADIUS"
   Create circular cylinder CYLNAME, with an axis through point PAXIS
   in the direction of vector VAXIS, and radius RADIUS.
"cylinder CYLNAME fit VAXIS PNAME1 PNAME2 PNAME3"
   Create circular cylinder CYLNAME with an axis parallel to vector VAXIS,
   through the three points PNAME1, PNAME2 and PNAME3.

"cylinder CYLNAME concentric NUMCYL INC PAXIS VAXIS RAD1 RAD2"
   Create a family of NUMCYL circular cylinders CYLNAME, ...,
   with names incremented by INC characters,
   with an axis through point PAXIS in the direction of vector VAXIS,
   and with radii equally spaced from radius RAD1 to radius RAD2.

"cylinder CYL02 NUMCYL INC move CYL01 VMOVE"
   Create a family of NUMCYL circular cylinders CYL02, ...,
   with names incremented by INC characters,
   and spaced at intervals of vector VMOVE,
   starting from circular cylinder CYL01.

"cylinder CYL02 rotate NUMCYL INC CYL01 OPNAME PINV"
   Create a family of NUMCYL circular cylinders CYL02, ...,
   with names incremented by INC characters,
   by rotating the preceding cylinder with operator OPNAME
   and invariant point PINV, starting from circular cylinder CYL01.

"cylinder CYL02 scale NUMCYL INC CYL01 OPNAME PINV"
   Create a family of NUMCYL cylinders CYL02, ...,
   with names incremented by INC characters,
   by scaling the preceding cylinder with operator OPNAME
   and invariant point PINV, starting from circular cylinder CYL01.
   WARNING:  a linear or radial scaling axis not parallel
   to that of CYL01 will produce elliptic cylinders.

Note:  use +/- for CYLNAME or CYL02 to incr/decr the last
  circular cylinder name:

Synonyms:  [help, h], [concentric, conc], [cylinder, cyl],
  [move, mv, translate, tran], [rotate, rot],  [scale, sc].

c===============================================================================

Command "debug":  acceptable input lines include:
"debug [help]"     Display this message.

"debug VARINT1 [VARINT2 ...]"
   Display the values of GEOM internal variables VARINT1 [, VARINT2 ...].
   Their definitions are in file store.h.

"debug OBJTYPE1 [OBJTYPE2 ...]"
   Display the values of GEOM internal variables for data groups
   DATAGRP1 [, DATAGRP2, ...], which may be any of:
   alias, arithmetic, big, bin, brick, cluster, coordinate,
   disk, environment, i/o, line, marker, mesh, operator,
   parameter, parse, pdf, plot, point, polygon, polyhedron, proximal,
   quadric, sudoku, symbol, synonym, temp, tetrahedron, triangle,
   variable, vector, zone, or any combination of these.

"debug all"
   Display the values of all GEOM internal variables, by data groups.

Synonyms:  [alias, al, a], [angles, angle, ang], [arithmetic, arith],
  [binary, bin], [brick, br], [cluster, cl],
  [coordinate, coord, cs, system, sys], [disk, disc, dk],
  [environment, env, setup], [help, h], [line, ln, l], [marker, mark, m],
  [operator, oper, op], [parameter, param], [point, pnt, pt, p],
  [polygon, polyg, pg], [polyhedron, polyh, ph], [proximal, prox],
  [quadric, quad, q], [symbol, symb, sym], [sudoku, su], [synonym, syn],
  [tetrahedron, tetra, tet], [triangle, tri], [variable, var, set, s],
  [vector, vect, v], [zone, zn, z].

c===============================================================================

Command "define":  acceptable input lines include:
"define [help]"   Display this message.

"define 'ENTRY'"  Display entry ENTRY in file geom_base.
                  ENTRY may have up to 19 characters.
                  Case is ignored.

   Use to define a command, key word, variable, etc.

Synonyms:  [", ' (in pairs)], [define, def], [help, h].

c===============================================================================

Command "angles":  acceptable input lines include:
"angles [help]"           Display current problem units and this message.
"angles degrees"          Change angle units to degrees.
"angles radians"          Change angle units to radians.

"angles UNIT1 UNIT2 ANGLE1 [ANGLE2 ANGLE3 ...]"
   Convert from UNIT1 to UNIT2:  ANGLE1 [and ANGLE2, ANGLE3, ...].
   UNIT1 may be "degrees", "grads" or "radians".
   UNIT2 may be "degrees", "grads", "radians" or "dms".

"angles UNIT1 UNIT2 ANGLE1 thru ANGLEN"
   Convert from UNIT1 to UNIT2:  all stored variables
   with names in the range from ANGLE1 thru ANGLEN.
   UNIT1 may be "degrees", "grads" or "radians".
   UNIT2 may be "degrees", "grads", "radians" or "dms".

"angles dms UNIT2 DEGREES MINUTES SECONDS"
   Convert from degrees, minutes, seconds to UNIT2.
   UNIT2 may be "degrees", "grads", "radians" or "dms".

Synonyms:  [angles, angle, ang], [degrees, degree, deg],
 [grads, grad], [help, h], [radians, radian, rad].

c===============================================================================

Command "delete":  acceptable input lines include:
"delete [help]"  Display this message.

"delete OBJTYPE all"
   Delete all objects of type OBJTYPE, where OBJTYPE is alias, big, marker,
   variable, vector, operator, point, cluster, line, triangle, polygon, disk,
   plane, sphere, cylinder, cone, hyperb, ellipsoid, axisym, quadric,
   tetrahedron, brick, zone, bin, pdf, symbol.
"delete OBJTYPE OBJNAME"
   Delete the object of type OBJTYPE with name OBJNAME.
"delete OBJTYPE OBJNAME1 thru OBJNAME2"
   Delete any objects of type OBJTYPE with names from OBJNAME1 to OBJNAME2,
   where the order is ASCII, except for subscripts,
   which are in numerical order.
"delete OBJTYPE OBJNAME all"
   Delete all objects of type OBJTYPE with the names OBJNAME(NSUB),
   where NSUB is any subscript, or null.
"delete point cluster CLNAME"
   Delete all points in cluster CLNAME.
"delete bin pdf PDFNAME"
   Delete all probability bins in pdf PDFNAME.

Synonyms:  [alias, al, a], [brick, br], [cluster, cl],
  [cylinder, cyl], [delete, del, remove, rm], [disk, disc, dk],
  [ellipsoid, ellipse, ell, el], [help, h], [hyperb, saddle],
  [line, ln, l], [marker, mark, m],
  [operator, oper, op, o], [plane, pl],
  [point, pnt, pt, p], [polygon, polyg, pg], [polyhedron, polyh, ph],
  [quadric, quad, q], [sphere, sph], [symbol, symb, sym],
  [tetrahedron, tetra, tet], [triangle, tri], [variable, var, set, s],
  [vector, vect, v], [zone, zn, z].

c===============================================================================

Command "delimiter":  acceptable input lines include:  "delimiter help"  Display this message.

"delimiter"
   Restore the field delimiter to a blank character.

"delimiter C"
   Change the field delimiter to the character "C".
   which may be any of the following characters:
   (blank) ,  :  <  >  [  \  ]  ^  _  `  {  |  }

Synonyms:  [delimiter, delimit, delim], [help, h].

c===============================================================================

Command "disk":  acceptable input lines include:
"disk [help]"  Display this message.
"disk all"     Display all annular disks.
"disk list [DKNAME1 DKNAME2 DKNAME3 ...]"
   Display all listed annular disks (default is all disks).
"disk DKNAME"  Display annular disk DKNAME.

"disk DKNAME fit PCEN VNORM RADKIN RADKOUT"
   Create annular disk DKNAME, centered at point PCEN,
   with normal vector VNORM, inner radius RADKIN, outer radius RADKOUT.

Note:  use +/- for DKNAME to incr/decr the last disk name:

Synonyms:  [disk, disc, dk], [help, h].

c===============================================================================

Command "distance":  acceptable input lines include:
"distance [help]"  Display this message.

"distance point PNAME1 point PNAME2"
   Find the distance from point PNAME1 to point PNAME2.
"distance point PNAME cluster CLNAME"
   Find the distances from point PNAME1 to the points in cluster CLNAME.
"distance cluster CLNAME1 cluster CLNAME2"
   Find the distances from the points in cluster CLNAME1
   to the points in cluster CLNAME2.

"distance point PNAME line ALNAME"
   Find the distance from point PNAME to line ALNAME.
"distance cluster CLNAME line ALNAME"
   Find the distance from the points in cluster CLNAME to line ALNAME.

"distance point PNAME triangle TRNAME"
   Find the distance from point PNAME to triangle TRNAME.
"distance cluster CLNAME triangle TRNAME"
   Find the distance from the points in cluster CLNAME to triangle TRNAME.

"distance point PNAME QTYPE QNAME"
   Find the distance from point PNAME to quadric type QTYPE with name QNAME,
   where QTYPE is plane, sphere, cylinder, cone, hyperb, ellipsoid,
   axisym, quadric.
"distance cluster CLNAME QTYPE QNAME"
   Find the distance from the points in cluster CLNAME to quadric type QTYPE
   with name QNAME,
   where QTYPE is plane, sphere, cylinder cone, ellipsoid, axisym, quadric.

"distance point PNAME brick BRNAME"
   Find the distances from point PNAME to the six surfaces
   bounding brick BRNAME.

"distance point PNAME tetrahedron TETNAME"
   Find the distances from point PNAME to the four planes
   bounding tetrahedron TETNAME.

"distance point PNAME zone ZNAME"
   Find the distances from point PNAME to the quadric surfaces
   bounding zone ZNAME.

Type  for more help.

"distance line ALNAME1 line ALNAME2"
   Find the distance from line ALNAME1 to line ALNAME2.
"distance line ALNAME triangle TRNAME"
   Find the intersection of line ALNAME with triangle TRNAME.
"distance line ALNAME plane PLNAME"
   Find the intersection of line ALNAME with plane PLNAME.

"distance triangle TRNAME1 triangle TRNAME2"
   Find the intersection of triangle TRNAME1 with triangle TRNAME2.
"distance triangle TRNAME plane PLNAME"
   Find the intersection of triangle TRNAME with plane PLNAME.

"distance plane PLNAME1 plane PLNAME2"
   Find distance/intersection of plane PLNAME1 and plane PLNAME2.
"distance plane PLNAME QTYPE QNAME"
   Find distance/intersection of plane PLNAME and quadric type QTYPE
   with name QNAME, where QTYPE is plane, sphere, cylinder, cone,
   ellipsoid, axisym or quadric.

"distance sphere SPHNAME1 sphere SPHNAME2"
   Find distance/intersection of spheres SPHNAME1 and SPHNAME2.
"distance sphere SPHNAME cylinder CYLNAME"
   Find distance/intersection of sphere SPHNAME and circular cylinder CYLNAME.
"distance cylinder CYLNAME1 cylinder CYLNAME2"
   Find distance/intersection of circular cylinders CYLNAME1 and CYLNAME2.

"distance quadric QNAME1 quadric QNAME2"
   Find distance/intersection of quadric surfaces QNAME1 and QNAME2.

Synonyms:  [brick, br], [cluster, cl], [cylinder, cyl],
  [distance, dist, intersect, inter, int],
  [ellipsoid, ellipse, ell, el], [help, h], [hyperb, saddle], [line, ln, l],
  [plane, pl], [point, pnt, pt, p], [quadric, quad, q] [sphere, sph].

c===============================================================================

Command "do":  acceptable input lines include:

"do [help]"    Display this message.
"enddo help"   Display this message.

"do VARNAME [=] N1 N2 [INC|1]"
   Execute any commands following this command,
   through the corresponding command "enddo",
   for each value N of variable VARNAME in the range from
   N1 to N2, with increment INC (default 1).

"enddo"
   Repeat the current "do-enddo" block for N = N + INC,
   unless N + INC is not in the range from N1 to N2.

Note:  "do-enddo" blocks of commands may be nested.

Synonyms:  [help, h].

c===============================================================================

Command "dot":  acceptable input lines include:
"dot [help]"         Display this message.

"dot VNAME1 VNAME2"  Find the dot product
  of vectors VNAME1 and VNAME2, and the angle between them.

"variable VARNAME angle VNAME1 VNAME2"
  Create variable VARNAME, the angle between vectors VNAME1 and VNAME2,
  in the current angle units.

Synonyms:  [dot, inner], [help, h].

c===============================================================================

Command "ellipsoid":  acceptable input lines include:
"ellipsoid [help]"  Display this message.
"ellipsoid all"     Display all ellipsoids.
"ellipsoid list [ELNAME1 ELNAME2 ELNAME3 ...]"
   Display all listed ellipsoids (default is all ellipsoids).
"ellipsoid ELNAME"  Display ellipsoid ELNAME.

"ellipsoid ELNAME = PCEN SAX SAY SAZ"
   Create ellipsoid ELNAME, centered at point PCEN,
   with x, y and z semi-axes SAX, SAY and SAZ.
"ellipsoid ELNAME fit PCEN VAXIS PNAME2 PNAME3"
   Create axisymmetric ellipsoid ELNAME, centered at point PCEN,
   with axis vector VAXIS, and through points PNAME1 and PNAME2.

"ellipsoid ELL02 NUMELL INC move ELL01 VMOVE"
   Create a family of NUMELL ellipsoids ELL02, ...,
   with names incremented by INC characters,
   spaced at intervals of vector VMOVE,
   starting from ellipsoid ELL01.

"ellipsoid ELL02 rotate NUMELL INC ELL01 OPNAME PINV"
   Create a family of NUMELL ellipsoids ELL02, ...,
   with names incremented by INC characters,
   by rotating the preceding ellipsoid with operator OPNAME
   and invariant point PINV, starting from ellipsoid ELL01.

"ellipsoid ELL02 scale NUMELL INC ELL01 OPNAME PINV"
   Create a family of NUMELL ellipsoids ELL02, ...,
   with names incremented by INC characters,
   by scaling the preceding ellipsoid with operator OPNAME
   and invariant point PINV, starting from ellipsoid ELL01.

Note:  use +/- for ELNAME or ELL02 to incr/decr the last ellipsoid name:


Synonyms:  [ellipsoid, ellipse, ell, el], [help, h],
  [move, mv, translate, trans], [rotate, rot], [scale, sc].

c===============================================================================

Command "extrema":  acceptable input lines include:
"extrema [help]"       Display this message.

"extrema QNAME VNAME"  Find the extrema of quadric surface QNAME
   in the direction of vector VNAME, and the
   nature of the surface at any such extrema.

"extrema all VNAME"    Find the extrema of all quadric surfaces
   in the direction of vector VNAME, and the
   nature of the surface at any such extrema.

Note:  the types of extrema include minima, maxima, simple planes,
  the intersections of planes, saddle points, and degenerate points.

Synonyms:  [extrema, extr], [help, h].

c===============================================================================

Command "factor":  acceptable input lines include:

"factor [help]"   Display this message.

"factor M1 M2 [thru] M3 ..."
   For each integer M = M1, M2 [, through] M3, ...,
   find all of the prime factors,
   and find how many smaller integers are relatively prime to M,
   and how many have common factors with M.

Synonyms:  [factor, totient], [help, h].

c===============================================================================

Command "hex":  acceptable input lines include:

"hex [help]"  Display this message.

"hex in  STRING1 STRING2 STRING3 ..."
   Display any decimal floating point values for the
   hexadecimal integer or hexadecimal floating point
   values STRING1, STRING2, STRING3, ..., and their
   hexadecimal machine word formats.

"hex out STRING1 STRING2 STRING3 ..."
   Display any decimal integer, decimal floating point
   and hexadecimal floating point values for the
   character strings, decimal values or variables STRING1,
   STRING2, STRING3, ..., and their hexadecimal
   machine word formats.

Synonyms:  [help, h].

c===============================================================================

Command "hyperb":  acceptable input lines include:
"hyperb [help]"  Display this message.

"hyperb all"     Display all hyperbolic paraboloids.
"hyperb list [HPNAME1 HPNAME2 HPNAME3 ...]"
   Display all listed hyperbolic paraboloids
   (default is all hyperbolic paraboloids).
"hyperb HPNAME"  Display hyperbolic paraboloid HPNAME.

"hyperb HPNAME fit PNAME1 PNAME2 PNAME3 PNAME4"
   Create quadric surface HPNAME, a plane or hyperbolic paraboloid,
   that contains on its surface the quadrangle with vertex points
   PNAME1, PNAME2, PNAME3 and PNAME4, including its edges and center point.

Note:  use +/- for HPNAME to incr/decr the last hyperbolic paraboloid
   name:

c===============================================================================

Command "icalc":  acceptable input lines include:
"icalc [help]"              Display this message.

"icalc [dec,hex,oct]"  Change the mode of integer input to icalc
   to [decimal, hexadecimal, octal].

"icalc binary"              Turn on  the display of the integer results
   of command "icalc" in binary mode.
"icalc nobin"               Turn off the display of the integer results
   of command "icalc" in binary mode (default option).

"icalc M"                       Interpret integer M in the current mode.

"icalc M FUNCTION N"            Interpret integers M and N in the current
   mode, and do the operation on them specified by FUNCTION:

   (+,      M + N),           (-,      M - N)
   (*,      M * N),           (/,      M / N)

   (**,     M**N),            (mod,    mod(M, N))
   (max,    max0(M, N)),      (min,    min0(M, N))
   (abs,    M * iabs(N)),     (sign,   isign(M, N))
   (fact,   M * N!),          (ran,    ran(M, N)),

   (comp.,  M * comp. N),     (.not.   M .not.  N),
   (.and.,  M .and.   N),     (.nand.  M .nand. M),
   (.or.,   M .or.    N),     (.nor.   M .nor.  N),
   (.xor.,  M .xor.   N),     (.xnor.  M .xnor. N),

   (gcd,    GCD (M, N),       (lcm,    LCM (M, N).
   (perm,   P(M,N) (permut)   (comb,   C(M,N) (combin)

Synonyms:  [^, **], [binary, bin], [help, h].

Maximum positive integer values:
PHYSNET:      2147483647 dec          7fffffff hex             17777777777 oct
Cray:     70368744177663 dec      3fffffffffff hex        1777777777777777 oct
DEC: 1152921504606846975 dec   FFFFFFFFFFFFFFF hex    77777777777777777777 oct

The integer input mode is dec.

The binary display for command "icalc" is off.

c===============================================================================

Command "if":  acceptable input lines include:
"if [help]"   Display this message.
"endif help"  Display this message.

"if A [<,<=,=,/=,>=,>] B [then]"
   Execute any commands following this command,
   through the corresponding command "endif",
   if floating point values or variables A and B
   satisfy the condition A [less than, less than or equal to, equal to,
   not equal to, greater than or equal to, greater than] B.

"if A null [then]"
   Execute the commands following this command,
   through the corresponding "endif" command,
   if value A has not been specified.

"endif"         End the current "if-endif" block
   (optional if the "if" condition was satisfied).

Note:  "if-endif" blocks of commands may be nested.

Synonyms:  [/=, =/, .ne.], [<, .lt.], [<=, =<, .le.], [=, .eq.],
  [=>, >=, .ge.], [>, .gt.], [help, h]/

c===============================================================================

Command "increment":  acceptable input lines include:

"increment [help]"  Display this message.

"increment STRING"
   Increment STRING by 1 character.
"increment STRING INC [NUMSTR|2]"
   Create a family of NUMSTR blank-delimited character strings,
   by incrementing the preceding string by INC characters,
   starting with string STRING.

Note:  STRING may not have more than 24 characters.

Synonyms:  [increment, incr], [help, h].

c===============================================================================

Command "indo":  acceptable input lines include:

"indo help"  Display this message.

"indo [$]"
   Redo the last saved input line, with no increments.
   (display with command "input command $ ?")
"indo $ [I1 I2 I3 ...]"
   Redo the last saved input line, with arguments 1, 2, 3, ...,
   incremented by I1, I2 I3, ...
   (display with command "input command $ ?")
"indo LINE [I1 I2 I3 ...]"
   Redo line LINE in the list of saved input lines,
   with arguments 1, 2, 3, ..., incremented by I1, I2, I3, ...
   (display with command "input command LINE ?")
"indo STRING [I1 I2 I3 ...]"
   Redo the last saved input line beginning with STRING,
   with arguments 1, 2, 3, ..., incremented by I1, I2, I3, ...
   (display with command "input command ?")

Note:  "0" or "." means no increment (all trailing "0" or "." may be omitted).
A negative LINE means the number of lines before the last saved input line.
Only ASCII and integer arguments may be incremented.

Synonyms:  [help, h], [0, .]

c===============================================================================

Input file (line       2):

Command "input":  acceptable input lines include:
"goto help"     Display this message.
"input help"    Display this message.
"trace help"    Display this message.
"return help"   Display this message.
"input"         Display the current input medium.
"trace"         Display the current return path.

"return"        Read the preceding input medium,
   after the last line already read in.
"input #"       Read the preceding input medium,
   after the last line already read in.

"input tty"     Read your terminal.

"input [IN_FILE, command] [?]"
   Read the file IN_FILE or the saved input lines,
   from beginning to end [and display only].

"goto [LINE1,STRING1]"
   Read the current input file from line LINE1 (an integer), or from the
   first line beginning with the space-delimited string STRING1, to the end.

"input [IN_FILE,command] [LINE1,STRING1] [LINE2,STRING2|LINE1,STRING1] [?]"
   Read file IN_FILE, or the saved input lines,
   from line LINE1 (an integer), or from the first line
   beginning with the space-delimited string STRING1,
   to line LINE2 (an integer), or to the first line
   beginning with the space-delimited string STRING2 [and display only].
   Use IN_FILE = conv.mac for metric conversion factors.

Note:  use of "%" instead of IN_FILE means the current input file.

Note:  use of "$" instead of LINE1 or LINE2 means the last saved input line,
  or the end-of-file of an input file.

Note:  use of a negative integer for LINE1 or LINE2, with option "command"
  means the line preceding the last saved input line by that many lines.

Synonyms:  [command, cmd, c], [help, h], [input, in, i, read, rd, r, call],
  [return, rtn].

c===============================================================================

Command "intcirc":  acceptable input lines include:
"intcirc [help]"  Display this message.

"intcirc U1 V1 RADIUS1 U2 V2 RADIUS2"  Find any intersections
   of  the circle at point (U1, V1) with radius RADIUS1
   and the circle at point (U2, V2) with radius RADIUS2,
   where U1, V1, U2 and V2 are rectangular coordinates.

Synonyms:  [help, h].

c===============================================================================

Command "invert  ":  acceptable input lines include:
"invert   [help]"   Display this message.
"invert   point   PNAME  [-] OPNAME [PINV]"
   to invert   point PNAME with operator OPNAME,
   and invariant point PINV (defaults to origin).
"invert   cluster CLNAME [-] OPNAME [PINV]"
   to invert   cluster CLNAME with operator OPNAME,
   and invariant point PINV (defaults to origin).
"invert   point   all    [-] OPNAME [PINV]"
   to invert   all points  with operator OPNAME,
   and invariant point PINV (defaults to origin).
"invert   vector  VNAME  [-] OPNAME [PINV]"
   to invert   vector VNAME with operator OPNAME,
   and invariant point PINV (defaults to origin).
"invert   vector  all    [-] OPNAME [PINV]"
   to
"invert   QTYPE  QNAME [-] OPNAME [PINV]"
   to invert   quadric type QTYPE with name QNAME,
   with operator OPNAME, and invariant point PINV.
"invert   QTYPE  all   [-] OPNAME [PINV]"
   to invert   all quadrics of type QTYPE,
   with operator OPNAME, and invariant point PINV.

Note:  OPNAME may not be "-".

Options:  QTYPE must be plane, sphere, cylinder, cone, hyperb, ellipsoid,
  axisym or quadric.
  [blank] indicates the operator, and [-] its inverse
  (use only for operators rotate and scale).
  Invariant point PINV defaults to the origin.

Synonyms:  [cluster, cl], [cylinder, cyl], [ellipsoid, ellipse, ell, el],
  [help, h], [hyperb, saddle], [invert, inv], [plane, pl],
  [normal, norm], [point, pnt, pt, p],
  [quadric, quad, q], [reflect, refl], [rotate, rot],
  [scale, sc], [sphere, sph], [vector, vect, v].

c===============================================================================

Command "iris":  acceptable input lines include:

"iris [help]"  Display this message.

"iris = VALUE"
   Find the coefficients kc(1), kc(2), kc(3), kc(4), ... of the
   series equivalent of VALUE:
   VALUE = kc(1) + sum (n = 2, 3, 4, ...) 1 / kc(n).

Synonyms:  [help, h].

c===============================================================================

Command "kiss":  acceptable input lines include:
"kiss [help]"  Display this message.

"kiss RAD1 RAD2 RAD3"
   Find the radii of two circles tangent to the three tangent circles
   with radii RAD1, RAD2 and RAD3.

"kiss RAD1 RAD2 RAD3 RAD4"
   Find the radii of two spheres tangent to the four tangent spheres
   with radii RAD1, RAD2, RAD3 and RAD4.

Synonyms:  [help, h].

c===============================================================================

Command "last":  acceptable input lines include:
"last [help]"   Display this message.
"last all"      Display the last named object of every type.
"last OBJTYPE"  Display the last named object of type OBJTYPE, where
   OBJTYPE is alias, marker, variable, big, vector, operator, point, cluster,
   line, triangle, polygon, plane, sphere, cylinder, cone, hyperb, axisym,
   quadric, polyhedron, tetrahedron, brick, zone, bin, pdf, symbol.
"last OBJTYPE [=] OBJNAME"
   Change the last named object of type OBJTYPE to OBJNAME.
"last OBJTYPE [=] random"
   Change the last named object of type OBJTYPE to a string of
   random lower case alphabetic characters,
   except upper case A-Z for big integers.

Synonyms:  [alias, al, a], [brick, br], [cluster, cl],
  [cylinder, cyl], [disk, disc, dk], [ellipsoid, ellipse, ell, el],
  [help, h], [hyperb, saddle], [line, ln, l], [marker, mark, m],
 [operator, oper, op, o],
  [plane, pl], [point, pnt, pt, p], [polygon, polyg, pg],
  [polyhedron, polyh], [quadric, quad, q], [random, ?],
  [sphere, sph], [symbol, symb, sym], [tetrahedron, tetra, tet],
  [triangle, tri], [variable, var, set, s], [vector, vect, v],
  [zone, zn, z].

c===============================================================================

Command "line":  acceptable input lines include:
"line [help]"  Display this message.
"line all"     Display all lines.
"line list [ALNAME1 ALNAME2 ALNAME3 ...]"
   Display all listed lines (default is all lines).
"line ALNAME"   Display line ALNAME.

"line ALNAME = PNAME1 PNAME2"
   Create line ALNAME from point PNAME1 to point PNAME2.

"line LINE02 incr NUMLINE INC LINE01 [IP1 [IP2]]"
   Create a family of NUMLINE lines LINE02, ...,
   with names incremented by INC characters,
   by incrementing the names of the end points of the
   preceding line by the number of characters indicated
   by the integers IP1, IP2, starting from line LINE01.

Note:  use +/- for ALNAME to incr/decr the last line name:

Synonyms:  [increment, incr], [help, h], [line, ln, l].

c===============================================================================

Command "list":  acceptable input lines include:
"list [help]"       Display this message.
"list all"          Display all object names.
"list alias"        Display all alias names.
"list axisym"       Display all axisymmetric quadric names.
"list big"          Display all big integer names.
"list bin"          Display all probability bin names.
"list brick"        Display all brick names.
"list cluster"      Display all cluster names.
"list cone"         Display all circular cone names.
"list cylinder"     Display all circular cylinder names.
"list disk"         Display all annular disk names.
"list ellipsoid"    Display all ellipsoid names.
"list hyperb        Display all hyperbolic paraboloid names.
"list line"         Display all line names.
"list marker"       Display all marker names.
"list mesh"         Display all mesh point names.
"list operator"     Display all operator names.
"list pdf"          Display all pdf names.
"list plane"        Display all plane names.
"list point"        Display all point names.
"list polygon"      Display all regular polygon names.
"list polyhedron"   Display all regular polyhedron names.
"list quadric"      Display all quadric surface names.
"list sphere"       Display all sphere names.
"list symbol"       Display all symbol names.
"list tetrahedron"  Display all tetrahedron names.
"list triangle"     Display all triangle names.
"list variable"     Display all variable names.
"list vector"       Display all vector names.
"list zone"         Display all zone names.
"list OBJTYPE1 OBJTYPE2 OBJTYPE3 ..."
      Display the names of all objects of types
      OBJTYPE1, OBJTYPE2, OBJTYPE3, ...  which may be any of the
      object types listed above.
Synonyms:  [alias, al, a], [brick, br], [cluster, cl],
  [cylinder, cyl], [disk, disc, dk], [ellipsoid, ellipse, ell, el],
  [help, h], [hyperb, saddle], [line, ln, l], [list, print, display],
  [marker, mark, m], [operator, oper, op, o],
  [plane, pl], [point, pnt, pt, p], [polygon, polyg, pg], [polyhedron, polyh],
  [quadric, quad, q], [sphere, sph], [symbol, symb, sym],
  [tetrahedron, tetra, tet], [triangle, tri],
  [variable, var, set, s], [vector, vect, v], [zone, zn, z].

c===============================================================================

Command "marker":  acceptable input lines include:
"marker [help]" Display this message.
"marker all"    Display all markers and their texts.
"marker list [AMNAME1 AMNAME2 AMNAME3 ...]"
   Display the marker and text for all listed markers
   (the default is all markers).
"marker AMNAME"
   Display the marker and text for marker AMNAME.

"marker AMNAME = ' '"
   Delete marker AMNAME.

"marker AMNAME = 'TEXT'"
   Create marker AMNAME (one character) with text TEXT (bracketed by ' or ").

Note:  use +/- for AMNAME to incr/decr the last marker name:

Synonyms:  [",' (in pairs)], [marker, mark, m], [help, h].

c===============================================================================

Command "mcvol":  acceptable input lines include:
"mcvol [help]"  Display this message.

"mcvol ZNAME BRNAME NSAMP"
   Estimate the volume of the part of zone ZNAME that is inside
   brick BRNAME, by using NSAMP random points in BRNAME.

Synonyms:  [brick, br], [help, h].

c===============================================================================

Command "mesh":  acceptable input lines include:

"mesh [help]"  Display this message.

"mesh size"    Display the mesh size (initially zero).
"mesh size [=] KMAX LMAX MMAX"
   Change the mesh size to k = 1 to KMAX, l = 1 to LMAX and m = 1, MMAX,
   and release any mesh points with mesh indices k > KMAX,  l > LMAX
   or m > MMAX.

"mesh block"
   Display the mesh block indices (initially zero).
"mesh block all"
   Change the mesh block to the entire mesh.
"mesh block K1 K2  L1 L2  M1 M2"
   Change the mesh block indices to the ranges
   k = K1 to K2, l = L1 to L2 and m = M1 to M2.
   Any missing final arguments after K1 default to 1.

"mesh [all,list [all]]"
   Display the mesh size, block indices, and all mesh points.
"mesh list void"
   Display the mesh size, block indices, and all unassigned mesh indices.
"mesh list block [void]"
   Display all mesh points [or unassigned mesh indices] in the mesh block.
"mesh list K L M"
   Display any mesh point with mesh indices K, L and M.

"mesh point PMESH"  Create mesh points PMESH(k,l,m),
   with their initial coordinates, if any, or
   with coordinates x = -1.e99, y = -1,e99,z = -1.e99, for all
   mesh indices k = 1, KMAX, l = 1, LMAX, m = 1, MMAX not currently assigned.
"mesh point PNAME K L M"
   Assign mesh indices K, L and M to existing point PNAME,
   after releasing any other mesh point with those indices.
   If PNAME has three subscripts, they must be K, L, M.
   Any missing final arguments after PNAME default to 1.
"mesh point PMESH(K,L,M)"
   Assign mesh indices K, L and M to existing point PMESH(K,L,M),
   after releasing any other mesh point with those indices.

Type  for more help.

"mesh point PMESH block"  Create mesh points PMESH(k,l,m),
   with their initial coordinates, if any, or
   with coordinates x = -1.e99, y = -1,e99,z = -1.e99, for all
   mesh indices in the mesh block not currently assigned.

"mesh - all"
   Release all mesh points.
"mesh - block"
   Release all mesh points in the mesh block.
"mesh - K L M"
   Release any mesh point with mesh indices K, L and M.
"mesh - point PNAME"
   Release mesh point PNAME (make its mesh indices zero).
"mesh - cluster CLNAME"
   Release all mesh points in cluster CLNAME.

"mesh exchange block [k,l,m] [l,m,k]"
   Exchange the [k, l, m]-layers in the mesh block with
   the [l, m, k]-layers in the mesh block,
   and exchange the relative indices of all mesh points in the mesh block.

"mesh invert block [k,l,m]"
   Invert the [k, l, m]-layer indices of all mesh points in the mesh block.

"mesh move block KMOVE LMOVE MMOVE"
   Move the mesh block and any of its mesh points
   distances KMOVE, LMOVE and MMOVE in the k, l and m directions,
   after releasing any mesh points not in the mesh block,
   but in the new mesh block location.

"mesh insert [k,l,m] N1 [N2|N1]"
   Insert new [k, l, m]-layers with indices from N1 to N2 into the mesh.
   Shift mesh point [k, l, m] indices of N1 or more up to make room
   for new mesh layers with [k, l, m] indices from N1 to N2.

"mesh delete [k,l,m] N1 [N2|N1]"
   Delete [k, l, m]-layers with indices from N1 to N2 from the mesh.
   Release all points with [k, l, m] indices from N1 to N2,
   and shift all higher mesh point [k, l, m] indices down to fill the gap.

Type  for more help.

"mesh linear block"
   Linearly interpolate the x, y and z coordinates of all mesh points
   in the mesh block, between the x, y and z coordinates of the mesh points
   at the vertices of the mesh block.

"mesh relax [-] block"
   Find the x, y and z coordinates of all mesh points [not] in the mesh block,
   except for exterior points of [the mesh and] the mesh block,
   by a relaxation method, which moves each mesh point
   to the average coordinates of its nearest neighbors.
   Exterior points have exactly one neighbor in one or more of the
   k, l and m directions.

"mesh test block"
   See if any mesh indices in the mesh block have not been assigned
   to mesh points, and if any line, surface or volume elements
   of the mesh block violate certain geometric criteria.

Synonyms:  [block, bl], [cluster, cl], [delete, del, remove, rm],
  [insert, ins], [invert, inv], [move, mv, m, translate, trans],
  [point, pnt, pt, p].

c===============================================================================

Command "move":  acceptable input lines include:
"move [help]"  to get this message.

"move point   PNAME  VMOVE  [VMULT|1]"
   Move point   PNAME  by vector VMOVE  multiplied by VMULT.
"move cluster CLNAME VMOVE  [VMULT|1]"
   Move cluster CLNAME by vector VMOVE  multiplied by VMULT.
"move point  all     VMOVE  [VMULT|1]"
   Move all points     by vector VMOVE  multiplied by VMULT.
"move vector VNAME   VMOVE [VMULT|1]"
   Move vector VNAME   by vector VMOVE multiplied by VMULT.
"move vector all     VMOVE [VMULT|1]"
   Move all vectors    by vector VMOVE multiplied by VMULT.
"move QTYPE  QNAME   VMOVE  [VMULT|1]"
   Move the quadric of type QTYPE with name QNAME, by vector VMOVE
   multiplied by VMULT.
"move QTYPE  all     VMOVE  [VMULT|1]"
   Move all quadrics of type QTYPE, by vector VMOVE
   multiplied by VMULT.

Note:  if VMULT is not specified, it defaults to 1.

Options:   QTYPE must be plane, sphere, cylinder, cone, hyperb,
   axisym or quadric.

Synonyms:  [cylinder, cyl], [ellipsoid, ellipse, ell, el],
  [help, h], [hyperb, saddle], [move, mv, translate, trans],
 [plane, pl],
  [point, pnt, pt, p], [quadric, quad, q], [sphere, sph], [vector, vect, v].

c===============================================================================

Command "operator":  acceptable input lines include:
"operator [help]"  Display this message.
"operator all"     Display all operators.
"operator list [OPNAME1 OPNAME2 OPNAME3 ...]"
   Display all listed operators (default is all operators).
"operator OPNAME"  Display operator OPNAME.

To find and display operator OPNAME:

"operator OPNAME axial  VAXIS  ANGLE"
   to rotate around axis vector VAXIS by angle ANGLE.
"operator OPNAME vector VNAME1 VNAME2"
   to rotate VNAME1 onto vector VNAME2 around an axis perpendicular to both.
"operator OPNAME serial U UANGLE  V VANGLE  W WANGLE"
   to rotate around U by angle UANGLE, then
   to rotate around V by angle VANGLE, then
   to rotate around W by angle WANGLE, where
   U, V and W are x, y or z, and 5, 7 or 9 words may be used.
"operator OPNAME planar PLNAME1 PLNAME2"
   to rotate plane PLNAME1 onto plane PLNAME2 around an axis parallel to both.
"operator OPNAME triple VNAME1 VNAME2 VNAME3 VNAME4"
   to rotate vector VNAME1 onto vector VNAME3, and the
   plane containing vectors VNAME1 and VNAME2 onto the
   plane containing vectors VNAME3 and VNAME4.

"operator OPNAME invert" to invert through origin.
   Replace x, y, z with -x, -y, -z, respectively.

"operator OPNAME scale RATIO" to scale uniformly by RATIO.
"operator OPNAME uniform RATIO" to scale uniformly by RATIO.
"operator OPNAME radial VAXIS RATIO"
   to scale radially from axis vector VAXIS by RATIO.
"operator OPNAME linear VAXIS RATIO"
   to scale linearly in the direction of vector VAXIS by RATIO.

"operator OPNAME reflect PLNAME"
   to reflect in a plane parallel to plane PLNAME.

Type  for more help.

To rotate a quadric surface to the principle axes:
"operator OPNAME plane     PLNAME":   plane PLNAME.
"operator OPNAME sphere    SPHNAME":  sphere SPHNAME.
"operator OPNAME cylinder  CYLNAME":  circular cylinder CYLNAME.
"operator OPNAME cone      CNNAME":   circular cone CNNAME.
"operator OPNAME hyperb    HPNAME":   hyperbolic paraboloid HPNAME.
"operator OPNAME ellipsoid ELNAME":   ellipsoid ELNAME.
"operator OPNAME axisym    AXNAME":   axisymmetric quadric AXNAME.
"operator OPNAME quadric   QNAME":    quadric QNAME.

Note:  OPNAME may not be "-".

Note:  use +/- for OPNAME to incr/decr the last operator name:

Synonyms:  [cylinder, cyl], [ellipsoid, ellipse, ell, el], [help, h],
  [hyperb, saddle], [invert, inv], [operator, oper, op, o],
  [plane, pl], [quadric, quad, q],
  [reflect, refl], [scale, sc, uniform], [sphere, sph] [vector, vect, v].

c===============================================================================

Current output file is          geom.hsp
Current command summary file is geom.cmd
  line     2
Acceptable output lines include:
"output help"      Display this message.
"output"           Display the output file name.

"output OUT_FILE"  Change the output file to OUT_FILE.

Synonyms:  [help, h], [output, out, o, write, wr, w]

c===============================================================================

Command "pdf":  acceptable input lines include:
"pdf [help]"   Display this message.
"pdf all"      Display all pdfs.
"pdf list [PDFNAME1 PDFNAME2 PDFNAME3 ...]"
   Display all listed pdfs (default is all pdfs).
"pdf PDFNAME"  Display pdf PDFNAME.

"pdf PDFNAME all"
   Create new pdf PDFNAME, consisting of all bins.

"pdf PDFNAME = BINAME1 ... BINAME2 [thru] BINAME3 ..."
   Create new pdf PDFNAME, consisting of the bins
   BINAME1, ..., BINAME2 [, through] BINAME3, ...

"pdf PDFNAME & BINAME1 ... BINAME2 [thru] BINAME3 ..."
   Change pdf PDFNAME, to add the bins
   BINAME1, ..., BINAME2 [, through] BINAME3, ...

"pdf PDFNAME - BINAME1 ... BINAME2 [thru] BINAME3 ..."
   Change pdf PDFNAME, to remove the bins
   BINAME1, ..., BINAME2 [, through] BINAME3, ...

Note:  use +/- for PDFNAME to incr/decr the last pdf name:

Synonyms:  [help, h].

c===============================================================================

Command "plane":  acceptable input lines include:
"plane [help]"  Display this message.
"plane all"     Display all planes.
"plane list [PLNAME1 PLNAME2 PLNAME3 ...]"
   Display all listed planes (default is all planes).
"plane PLNAME"  Display plane PLNAME.

"plane PLNAME = U V W DU DV DW"
   Create plane PLNAME through point (U, V, W),
   with normal vector (DU, DV, DW).
"plane PLNAME vector PNAME VNORM"
   Create plane PLNAME through point PNAME with normal vector VNORM.
"plane PLNAME fit PNAME1 PNAME2 PNAME3"
   Create plane PLNAME through the 3 points PNAME1, PNAME2 and PNAME3.
"plane PLNAME triangle TRNAME"
   Create plane PLNAME through triangle TRNAME.
"plane PLNAME disk DKNAME"
   Create plane PLNAME through annular disk DKNAME.
"plane PLNAME tangent PNAME QNAME"
   Create plane PLNAME, tangent at point PNAME to quadric surface
   family QNAME.
"plane PLNAME outline PNAME QNAME"
   Create any plane PLNAME, containing the outline of quadric surface QNAME,
   as seen from point PNAME.
"plane PLNAME project VNAME QNAME"
   Create any plane PLNAME, containing the curve on quadric surface QNAME,
   where the normal vector is perpendicular to vector VNAME.

Type  for more help.

"plane PLNAME parallel NUMPL INC PNAME1 PNAME2"
   Create a family of NUMPL parallel planes PLNAME, ...,
   with names incremented by INC characters,
   equally spaced along the normal axis from
   point PNAME1 to point PNAME2.

"plane PL02 move NUMPL INC PL01 VMOVE"
   Create a family of NUMPL parallel planes PL02, ...,
   with names incremented by INC characters,
   translated by intervals of vector VMOVE, starting from plane PL01.

"plane PL02 rotate NUMPL INC PL01 PAXIS VAXIS DANGLE"
   Create a family of NUMPL planes PL02, ...,
   with names incremented by INC characters,
   rotated around an axis through point PAXIS
   in the direction of vector VAXIS, by equal angular increments DANGLE
   (counterclockwise, with the axis pointed at the observer),
   starting from plane PL01.

"plane PL02 scale NUMPL INC PL01 OPNAME PINV"
   Create a family of NUMPL planes PL02, ...,
   with names incremented by INC characters,
   by scaling the preceding plane with operator OPNAME
   and invariant point PINV, starting from plane PL01.

Note:  use +/- for PLNAME or PL02 to incr/decr the last plane name:

Synonyms:  [disk, disc, dk], [help, h], [parallel, par], [plane, pl],
  [project, proj], [rotate, rot], [scale, sc], [tangent, tan],
  [triangle, tri], [vector, vect, v].

c===============================================================================

Command "point":  acceptable input lines include:
"point [help]"      Display this message.
"point [all,list]"  Display all points.
"point list PNAME1 PNAME2 PNAME3 ..."  Display all listed points.
"point PNAME"       Display point PNAME.

"point PNAME [=] X    Y     Z"
   Create point PNAME with Cartesian coordinates X, Y, Z (coord rect).
"point PNAME [=] RCYL THETA Z"
   Create point PNAME with cylindrical coordinates RCYL, THETA, Z (coord cyl).
"point PNAME [=] RSPH THETA PHI"
   Create point PNAME with spherical coordinates RSPH, THETA, PHI (coord sph).
 In the 3 commands above, "=" is optional if the next argument is numerical.

"point PNAME [option] QNAME"
   option:  plane, sphere, cylinder, cone, hyperb, ellipsoid, axisym, quadric.
   Create the central point of quadric QNAME.

"point PNAME01 polygon PGNAME"
   Create points PNAME01, PNAME02, PNAME03, ..., at the vertices
   of regular polygon PGNAME.
"point PNAME01 polyhedron PHNAME"
   Create points PNAME01, PNAME02, PNAME03, ..., at the vertices
   of regular polyhedron PHNAME.

"point PNAME triangle TRNAME W1 W2 W3"
   Create point PNAME in triangle TRNAME with
   vertex weights W1, W2 and W3.
"point PNAME tetrahedron TETNAME W1 W2 W3 W4"
   Create point PNAME in tetrahedron TETNAME with
   vertex weights W1, W2, W3 and W4.
"point PNAME brick BRNAME FU FV FW"
   Create point PNAME in brick BRNAME, at fractional distances
   FU, FV and FW across the brick.
"point PMESH brick BRNAME mesh block [volume]"
   Create a family of points PMESH(k,l,m) assigned to the mesh, with
   indices k, l and m ranging over the indices of the current mesh block,
   and representing equal intervals [or volumes] between the minimum and
   maximum u, v and w coordinates of the brick, resp., where
   u, v and w are in the coordinate system used to create the brick.
   Release and rename all points previously assigned to the mesh block.

Type  for more help.
"point PNAME proximal"
   to create point PNAME, at the last proximal point found by command
   "distance", "proximal", "side" or "track".

"point PNAME random [RADIUS|1]" to create point PNAME randomly sampled
   in a sphere of radius RADIUS (default = 1) centered at the origin.
"point PNAME OBJTYPE OBJNAME random" to create point PNAME randomly sampled
   in OBJTYPE (sphere, triangle, disk, tetrahedron, brick) OBJNAME.
"point PNAME zone ZNAME random BRNAME"
   Create point PNAME randomly sampled in zone ZNAME,
   by trying points randomly sampled in brick BRNAME.

"point PNAME02 move NUMPT INC PNAME01 VMOVE"
   Create a family of NUMPT points PNAME02, ...,
   with names incremented by INC characters,
   and spaced at intervals of vector VMOVE,
   starting from point PNAME01.

"point PNAME02 rotate NUMPT INC PNAME01 OPNAME PINV"
   Create a family of NUMPT points PNAME02, ...,
   with names incremented by INC characters,
   by rotating the preceding point with operator OPNAME
   and invariant point PINV, starting from point PNAME01.

"point PNAME02 scale NUMPT INC PNAME01 OPNAME PINV"
   Create a family of NUMPT points PNAME02, ...,
   with names incremented by INC characters,
   by scaling the preceding point with operator OPNAME
   and invariant point PINV, starting from point PNAME01.

Note:  PNAME or PNAME02 may not be "thru".

Note:  use +/- for PNAME or PNAME02 to incr/decr the last point name:

Synonyms:  [brick, br], [cylinder, cyl], [disk, disc, dk],
  [ellipsoid, ellipse, ell, el], [help, h], [hyperb, saddle]
  [move, mv, translate, tran],
  [plane, pl], [point, pnt, pt, p], [polygon, polyg, pg],
  [polyhedron, polyh, ph], [proximal, prox], [quadric, quad, q],
  [random, ?], [scale, sc], [sphere, sph], [tetrahedron, tetra, tet],
  [triangle, tri], [volume, vol], [zone, z].

c===============================================================================

Command "polygon":  acceptable input lines include:
"polygon [help]"  Display this message.
"polygon all"     Display all polygons.
"polygon list [PGNAME1 PGNAME2 PGNAME3] ..."
     Display all listed regular polygons (default is all regular polygons).
"polygon PGNAME"  Display regular polygon PGNAME.

"polygon PGNAME fit NVER PCEN PVER PCOP"
     Create regular polygon PGNAME with NVER vertices,
     centered at point PCEN, with the first vertex at point PVER,
     and coplanar with point PCOP.

Note:  use +/- for PGNAME to incr/decr the last polygon name:

Synonyms:  [help, h], [polygon, polyg, pg].

c===============================================================================

Command "polyhedron":  acceptable input lines include:
"polyhedron [help]"  Display this message.
"polyhedron all"     Display all regular polyhedrons.
"polyhedron list [PHNAME1 PHNAME2 PHNAME3 ...]"
   Display all listed regular polyhedrons (default is all).
"polyhedron PHNAME"  Display regular polyhedron PHNAME.

"polyhedron PHNAME fit NVER PCEN PVER PCOP"
   Create regular polyhedron PHNAME with NVER vertices,
   centered at point PCEN, with the first vertex at point PVER,
   and with PCEN, PVER and the second vertex coplanar with point PCOP.
   NVER must be 4 (tetrahedron), 6 (octahedron), 8 (cube),
   12 (icosahedron) or 20 (dodecahedron).

Note:  use +/- for PHNAME to incr/decr the last polyhedron name:

Synonyms:  [help, h], [polyhedron, polyh, ph].

c===============================================================================

Command "project":  acceptable input lines include:
"project [help]"  Display this message.

 In the input lines below, "OBJTYPE OBJNAME" must be "point PNAME",
   "cluster CLNAME" or "point all".

"project OBJTYPE OBJNAME plane PLNAME"
   Project points normally onto plane PLNAME.
"project OBJTYPE OBJNAME plane PCEN VNORM"
   Project points normally onto the plane through
   point PCEN with normal vector VNORM.
"project OBJTYPE OBJNAME perspective PVIEW PFOC PTL PTR"
   Project points toward view point PVIEW, onto a plane
   through point PFOC perpendicular to the line from PVIEW to PFOC,
   then rotate and translate onto plane z = 0, with PFOC at the origin,
   and a horizon from point PTL on the left to point PTR on the right.
"project OBJTYPE OBJNAME viewfactor PVIEW VNAME"
   to make a geometric view factor projection of points
   based on the view from point PVIEW, in the direction of the vector VNAME,
   and project the results onto plane z = 0,
"project OBJTYPE OBJNAME cylinder RCYL PCEN VAXIS [cyl,sph,cos|cyl]"
   Project points onto the cylinder with radius RCYL,
   on an axis through point PCEN in the direction of the vector VAXIS.
   Does not project point PCEN.
   Project [cyl] (default) toward the axis, or
   [sph] toward the central point PCEN, or
   [cos] to make the axial distance from point PCEN equal to the cosine
   of the spherical polar angle PHI from the axis, measured from point PCEN.
"project OBJTYPE OBJNAME sphere RSPH PCEN VAXIS [sph,cyl,polar|sph]"
   Project points onto the sphere with radius RSPH,
   centered at point PCEN.  Does not project point PCEN.
   Project [sph] (default, and VAXIS is not needed) toward the center PCEN, or
   [cyl] toward the polar axis through point PCEN in the direction of the
   vector VAXIS, or
   [polar] in the direction of the polar axis.

Synonyms:  [cosine, cos], [cylinder, cyl], [cylindrical, cyl],
  [cluster, cl], [help, h], [perspective, pers], [plane, pl],
  [point, pnt, pt, p], [project, proj], [sphere, sph], [spherical, sph],
  [viewfactor, view]

c===============================================================================

Command "prompt":  acceptable input lines include:

"prompt help"              Display this message.
"prompt"                   Switch between long and short prompts.
"prompt [=] STRING         Use short prompt string STRING
                           (up to 8 characters).

Synonyms:  [help, h].

c===============================================================================

Command "proximal":  acceptable input lines include:
"proximal [help]"       Display this message.

"proximal PNAME QNAME [NUMDIR|100]"
 Find the proximal point on quadric surface QNAME, for point PNAME,
 If the standard method fails (rarely),
 try NUMDIR isotropic random directions from point PNAME,
 then 10 * NUMDIR cosine-power random directions from point PNAME,
 directed in the last best direction, with powers geometrically increasing
 from 1 to 1.e10.  Convergence is determined by tol.

Synonyms:  [help, h], [proximal, prox].

c===============================================================================

Command "quadric":  acceptable input lines include:
"quadric [help]"  Display this message.
"quadric types"   Display all quadric types.
"quadric all"     Display all quadric surfaces.
"quadric list [QNAME1 QNAME2 QNAME3 ...]"
   Display all listed quadrics (default is all quadrics).
"quadric QNAME"   Display quadric surface QNAME.

"quadric QNAME = QC QX QY QZ [QXY QYZ QZX QXX QYY QZZ]"
   Create quadric QNAME, with implicit equation coefficients
   QC, QX, QY, QZ [, QXY, QYZ, QZX, QXX, QYY and QZZ].

"quadric QNAME & CFNAME1 CFVAL1 [CFNAME2 CFVAL2 ...]"
   For existing quadric QNAME, replace coefficient CFNAME1
   with new value CFVAL1, where CFNAME1 may be any of the
   coefficient names QC, QX, QY, QZ, QXY, QYZ, QZX, QXX, QYY, QZZ.
   Likewise for CFNAME2, CFVAL2, ...

"quadric QNAME fit PNAME1 PNAME2 ... PNAME9"
   Create quadric QNAME, through the nine points PNAME1, PNAME2, ..., PNAME9,
   if a unique solution exists.

"quadric QNAME [* /] FACTOR"
   [Multiply, Divide] the implicit equation coefficients of quadric QNAME
   by FACTOR.

"quadric QNAME sum QNAME1 QNAME2 [QMULT1|1] [QMULT2|1]"
   Create quadric QNAME, the weighted sum QMULT1 * QNAME1 + QMULT2 * QNAME2,
   where QMULT1 and QMULT2 default to 1.

"quadric QNAME plane PLNAME1 PLNAME2"
   Create quadric QNAME, representing the two coincident,
   parallel or intersecting planes PLNAME1 and PLNAME2.

"quadric QNAME project VNAME QNAME2"
   Create quadric QNAME, a cylindrical quadric parallel to
   vector VNAME, and tangent to quadric surface QNAME2.

"quadric QNAME intersect PLNAME QNAME2"
   Create quadric QNAME, a cylindrical quadric perpendicular to
   plane PLNAME, and through the intersection of plane PLNAME
   and quadric surface QNAME2.

Type  for more help.

"quadric QNAME slice QNAME2 [x,y,z|x] [VAL|0.0]"
   Create quadric QNAME, a slice through quadric QNAME2
   at [x, y, z] = VAL (defaults are x and 0.0).

"quadric QNAME ortho QNAME1 QNAME2"
   Create quadric QNAME, the locus of points where the
   family of quadric surfaces QNAME1 is orthogonal to the
   family of quadric surfaces QNAME2.

"quadric QNAME02 NUMQ INC move QNAME01 VMOVE"
   Create a family of NUMQ quadric surfaces QNAME02, ...,
   with names incremented by INC characters,
   spaced at intervals of vector VMOVE, starting from quadric surface QNAME01.

"quadric QNAME02 rotate NUMQ INC QNAME01 OPNAME PINV"
   Create a family of NUMQ quadric surfaces QNAME02, ...,
   with names incremented by INC characters,
   by rotating the preceding quadric surface with operator OPNAME
   and invariant point PINV, starting from quadric surface QNAME01.

"quadric QNAME02 scale NUMQ INC QNAME01 OPNAME PINV"
   Create a family of NUMQ quadric surfaces QNAME02, ...,
   with names incremented by INC characters,
   by scaling the preceding quadric surface with operator OPNAME
   and invariant point PINV, starting from quadric surface QNAME01.

Note:  use +/- for QNAME or QNAME02 to incr/decr the last quadric name:


Synonyms:  [help, h], [intersect, inter, int],
  [move, mv, translate, trans], [plane, pl], [quadric, quad, q],
  [project, proj], [rotate, rot], [scale, sc], [slice, cut], [sum, add].

c===============================================================================

Command "angles":  acceptable input lines include:
"angles [help]"           Display current problem units and this message.
"angles degrees"          Change angle units to degrees.
"angles radians"          Change angle units to radians.

"angles UNIT1 UNIT2 ANGLE1 [ANGLE2 ANGLE3 ...]"
   Convert from UNIT1 to UNIT2:  ANGLE1 [and ANGLE2, ANGLE3, ...].
   UNIT1 may be "degrees", "grads" or "radians".
   UNIT2 may be "degrees", "grads", "radians" or "dms".

"angles UNIT1 UNIT2 ANGLE1 thru ANGLEN"
   Convert from UNIT1 to UNIT2:  all stored variables
   with names in the range from ANGLE1 thru ANGLEN.
   UNIT1 may be "degrees", "grads" or "radians".
   UNIT2 may be "degrees", "grads", "radians" or "dms".

"angles dms UNIT2 DEGREES MINUTES SECONDS"
   Convert from degrees, minutes, seconds to UNIT2.
   UNIT2 may be "degrees", "grads", "radians" or "dms".

Synonyms:  [angles, angle, ang], [degrees, degree, deg],
 [grads, grad], [help, h], [radians, radian, rad].

c===============================================================================

Command "ratio":  acceptable input lines include:
"ratio [help]"  Display this message.

"ratio TERM1 SUM NUMT"
   Find the ratio for a geometric series beginning with TERM1,
   with sum SUM, and NUMT terms.

Synonyms:  [help, h], [ratio, rat].

c===============================================================================

Command "redo":  acceptable input lines include:

"redo help"  Display this message.

"redo [$]"
   Redo the last saved input line, with no replacements.
   (display with command "input command $ ?")
"redo $ [R1 R2 R3 ...]"
   Redo the last saved input line, with arguments 1, 2, 3, ...,
   replaced by R1, R2 R3, ...
   (display with command "input command $ ?")
"redo LINE [R1 R2 R3 ...]"
   Redo line LINE in the list of saved input lines,
   with arguments 1, 2, 3, ..., replaced by R1, R2, R3, ...
   (display with command "input command LINE ?")
"redo STRING [R1 R2 R3 ...]"
   Redo the last saved input line that begins with STRING,
   with arguments 1, 2, 3, ..., replaced by R1, R2, R3, ...
   (display with command "input command ?")

Note:  "." means no replacement (all trailing "." may be omitted).
A negative LINE means the number of lines before the last saved input line.

Synonyms:  [help, h].

c===============================================================================

Command "reflect ":  acceptable input lines include:
"reflect  [help]"   Display this message.
"reflect  point   PNAME  [-] OPNAME [PINV]"
   to reflect  point PNAME with operator OPNAME,
   and invariant point PINV (defaults to origin).
"reflect  cluster CLNAME [-] OPNAME [PINV]"
   to reflect  cluster CLNAME with operator OPNAME,
   and invariant point PINV (defaults to origin).
"reflect  point   all    [-] OPNAME [PINV]"
   to reflect  all points  with operator OPNAME,
   and invariant point PINV (defaults to origin).
"reflect  vector  VNAME  [-] OPNAME [PINV]"
   to reflect  vector VNAME with operator OPNAME,
   and invariant point PINV (defaults to origin).
"reflect  vector  all    [-] OPNAME [PINV]"
   to
"reflect  QTYPE  QNAME [-] OPNAME [PINV]"
   to reflect  quadric type QTYPE with name QNAME,
   with operator OPNAME, and invariant point PINV.
"reflect  QTYPE  all   [-] OPNAME [PINV]"
   to reflect  all quadrics of type QTYPE,
   with operator OPNAME, and invariant point PINV.

Note:  OPNAME may not be "-".

Options:  QTYPE must be plane, sphere, cylinder, cone, hyperb, ellipsoid,
  axisym or quadric.
  [blank] indicates the operator, and [-] its inverse
  (use only for operators rotate and scale).
  Invariant point PINV defaults to the origin.

"reflect  vector  VNAME normal VNORM"
  to reflect vector VNAME in the surface with normal vector VNORM.

Synonyms:  [cluster, cl], [cylinder, cyl], [ellipsoid, ellipse, ell, el],
  [help, h], [hyperb, saddle], [invert, inv], [plane, pl],
  [normal, norm], [point, pnt, pt, p],
  [quadric, quad, q], [reflect, refl], [rotate, rot],
  [scale, sc], [sphere, sph], [vector, vect, v].

c===============================================================================

Command "rename":  acceptable input lines include:
"rename [help]"  Display this message.

"rename alias    ANAME   ANAME2"    Rename alias    ANAME   to ANAME2.
"rename marker   SYNNAME SYNNAME2"  Rename marker   SYNNAME to SYNNAME2.
"rename variable VARNAME VARNAME2"  Rename variable VARNAME to VARNAME2.
"rename big      BIGNAME BIGNAME2"  Rename big integer BIGNAME to BIGNAME2.
"rename point    PNAME   PNAME2"    Rename point    PNAME   to PNAME2.
"rename cluster  CLNAME  CLNAME2"   Rename cluster  CLNAME  to CLNAME2.
"rename line     ALNAME  ALNAME2"   Rename line     ALNAME  to ALNAME2.
"rename vector   VNAME   VNAME2"    Rename vector   VNAME   to VNAME2.
"rename operator OPNAME  OPNAME2"   Rename operator OPNAME  to OPNAME2.
"rename triangle TRNAME  TRNAME2"   Rename triangle TRNAME  to TRNAME2.
"rename polygon  PGNAME  PGNAME2"   Rename regular polygon PGNAME to PGNAME2.
"rename disk     DKNAME  DKNAME2"   Rename annular disk DKNAME to DKNAME2.
"rename plane    PLNAME  PLNAME2"   Rename plane    PLNAME  to PLNAME2.
"rename sphere   SPHNAME SPHNAME2"  Rename sphere   SPHNAME to SPHNAME2.
"rename cylinder CYLNAME CYLNAME2"  Rename cylinder CYLNAME to CYLNAME2.
"rename cone     CNNAME  CNNAME2"   Rename cone     CNNAME  to CNNAME2.
"rename ellipsoid ELNAME ELNAME2"   Rename ellipsoid ELNAME to ELNAME2.
"rename hyperb   HPNAME  HPNAME2"   Rename hyperbolic paraboloid  HPNAME
                                    to HPNAME2.
"rename axisym   AXNAME  AXNAME2"   Rename axisymmetric quadric AXNAME
                                    to AXNAME2.
"rename quadric  QNAME   QNAME2"    Rename quadric  QNAME   to QNAME2.
"rename polyhedron PHNAME PHNAME2"  Rename regular polyhedron PHNAME
                                    to PHNAME2.
"rename tetrahedron TETNAME TETNAME2" Rename tetrahedron TETNAME to TETNAME2.
"rename brick    BRNAME  BRNAME2"   Rename brick    BRNAME  to BRNAME2.
"rename zone     ZNAME   ZNAME2"    Rename zone     ZNAME   to ZNAME2.
"rename bin      BINAME  BINAME2"   Rename probability bin BINAME to BINAME2.
"rename pdf      PDFNAME PDFNAME2"  Rename pdf      PDFNAME to PDFNAME2.
"rename symbol   SYMBNAME SYMBNAME2"  Rename symbol SYMBNAME to SYMBNAME2.
"rename OBJTYPE  OBJNAME OBJNAME2"  Rename OBJTYPE  OBJNAME to OBJNAME2,
  where OBJTYPE is any of the object types used above.

Note:  use +/- for OBJNAME2 to incr/decr the last OBJTYPE name.

Type  for more help:
"rename OBJTYPE  OBJSTEM OBJSTEM2 array"
  Rename OBJTYPE stem name OBJSTEM to OBJSTEM2,
  where OBJTYPE is any of the object types used above.

Synonyms:  [alias, al, a], [brick, br], [cluster, cl], [cylinder, cyl],
  [disk, disc, dk], [ellipsoid, ellipse, ell, el],
  [help, h], [hyperb, saddle], [line, ln, l], [marker, mark, m],
  [operator, oper, op, o], [plane, pl],
  [point, pnt, pt, p], [polygon, polyg, pg],
  [polyhedron, polyh, ph], [quadric, quad, q], [rename, switch, sw],
  [sphere, sph], [symbol, symb, sym], [tetrahedron, tetra, tet],
  [triangle, tri], [variable, var, set, s], [vector, vect, v],
  [zone, zn, z].

c===============================================================================

Command "repack":  acceptable input lines include:

"repack [help]      "   Display this message.

"repack all         "   Repack all objects.
"repack alias       "   Repack aliases.
"repack axisym      "   Repack all quadric surfaces.
"repack bin         "   Repack probability bins.
"repack brick       "   Repack bricks.
"repack cluster     "   Repack clusters.
"repack cone        "   Repack all quadric surfaces.
"repack cylinder    "   Repack all quadric surfaces.
"repack disk        "   Repack annular disks.
"repack ellipsoid   "   Repack all quadric surfaces.
"repack hyperb      "   Repack all quadric surfaces.
"repack line        "   Repack lines.
"repack marker      "   Repack markers.
"repack mesh        "   Repack mesh points.
"repack operator    "   Repack operators.
"repack pdf         "   Repack pdfs.
"repack plane       "   Repack all quadric surfaces.
"repack point       "   Repack points.
"repack polygon     "   Repack regular polygons.
"repack polyhedron  "   Repack regular polyhedrons.
"repack quadric     "   Repack all quadric surfaces.
"repack sphere      "   Repack all quadric surfaces.
"repack symbol      "   Repack symbols.
"repack tetrahedron "   Repack tetrahedrons.
"repack triangle    "   Repack triangles.
"repack variable    "   Repack variables.
"repack vector      "   Repack vectors.
"repack zone        "   Repack zones.

"repack OBJTYPE1 OBJTYPE2 OBJTYPE3 ..."
        Display the names of all objects of types
        OBJTYPE1, OBJTYPE2, OBJTYPE3, ...  which may be any of the
        object types listed above.

Synonyms:  [alias, al, a], [brick, br], [cluster, cl],
  [cylinder, cyl], [disk, disc, dk], [ellipsoid, ellipse, ell, el], [help, h],
  [hyperb, saddle], [line, ln, l], [marker, mark, m],
  [operator, oper, op, o],
  [point, pnt, pt, p], [polygon, polyg, pg], [polyhedron, polyh, ph],
  [quadric, quad, q], [sphere, sph], [symbol, symb, sym],
  [tetrahedron, tetra, tet],  [triangle, tri],
 [variable, var, set, s], [vector, vect, v], [zone, zn, z]

c===============================================================================

Command "root":  acceptable input lines include:
"root [help]"           Display this message.

"root XMIN DX XMAX NITMAX A(0) A(1) A(2) A(3) ... A(N)"
   Search for real roots, extrema and inversion points of the polynomial
   equation P(x) = sum(n=0,N) {A(n) * x**n} = 0, by Newtonian iteration,
   with initial guesses of x from XMIN to XMAX, with increment DX,
   and no more than NITMAX iterations.

"root = X(1) X(2) X(3) ... X(N)"
   Find the coefficients a(n) (n=0,N) for the polynomial
   equation P(x) = sum(n=0,N) {a(n) * x**n} = 0,
   with the roots X(1), X(2), X(3), ..., X(N).

Synonyms:  [help, h].

c===============================================================================

Command "rootf":  acceptable input lines include:
"rootf [help]"           Display this message.

"rootf XROOT A(0) A(1) A(2) A(3) ... A(N)"
   Factor the term (x - XROOT) out of the polynomial
   equation P(x) = sum(n=0,N) {A(n) * x**n} = 0.

Synonyms:  [help, h].

c===============================================================================

Command "roots":  acceptable input lines include:
"roots [help]"           Display this message.

"roots A0 A1 [A2 [A3 [A4]]]"
 Find the real and/or any complex roots of the
   polynomial equation:
   A0 + A1*z + A2*z**2 + A3*z**3 + A4*z**4 = 0.

"roots = X1 [Y1 X2 Y2 [X3 Y3 [X4 Y4]]]"
 Find the coefficients of the polynomial equation with the roots
   X1 + Y1 * i, [X2 + Y2 * i, [X3 + Y3 * i, [X4 + Y4 * i]]].
 Specify any real roots first, with the imaginary part zero,
 followed by any complex roots, in conjugate pairs.

"roots value X Y A0 A1 [A2|0] [A3|0] A4|0]"
 For z = X + i*Y, find the value of the polynomial equation:
   A0 + A1*z + A2*z**2 + A3*z**3 + A4*z**4 = 0.
   and use Newton's iteration to search for a root.

Synonyms:  [help, h].

c===============================================================================

Command "rotate  ":  acceptable input lines include:
"rotate   [help]"   Display this message.
"rotate   point   PNAME  [-] OPNAME [PINV]"
   to rotate   point PNAME with operator OPNAME,
   and invariant point PINV (defaults to origin).
"rotate   cluster CLNAME [-] OPNAME [PINV]"
   to rotate   cluster CLNAME with operator OPNAME,
   and invariant point PINV (defaults to origin).
"rotate   point   all    [-] OPNAME [PINV]"
   to rotate   all points  with operator OPNAME,
   and invariant point PINV (defaults to origin).
"rotate   vector  VNAME  [-] OPNAME [PINV]"
   to rotate   vector VNAME with operator OPNAME,
   and invariant point PINV (defaults to origin).
"rotate   vector  all    [-] OPNAME [PINV]"
   to
"rotate   QTYPE  QNAME [-] OPNAME [PINV]"
   to rotate   quadric type QTYPE with name QNAME,
   with operator OPNAME, and invariant point PINV.
"rotate   QTYPE  all   [-] OPNAME [PINV]"
   to rotate   all quadrics of type QTYPE,
   with operator OPNAME, and invariant point PINV.

Note:  OPNAME may not be "-".

Options:  QTYPE must be plane, sphere, cylinder, cone, hyperb, ellipsoid,
  axisym or quadric.
  [blank] indicates the operator, and [-] its inverse
  (use only for operators rotate and scale).
  Invariant point PINV defaults to the origin.

Synonyms:  [cluster, cl], [cylinder, cyl], [ellipsoid, ellipse, ell, el],
  [help, h], [hyperb, saddle], [invert, inv], [plane, pl],
  [normal, norm], [point, pnt, pt, p],
  [quadric, quad, q], [reflect, refl], [rotate, rot],
  [scale, sc], [sphere, sph], [vector, vect, v].

c===============================================================================

Command "sample":  acceptable input lines include:
"sample [help]"  Display this message.

"sample PDFNAME [NSAMP|1]"
   Randomly sample from pdf PDFNAME, NSAMP times.

"sample PDFNAME NSAMP [norepl|repl]"
   Randomly sample from pdf PDFNAME, NSAMP times,
   with [no replacement | replacement].

"sample PDFNAME NSAMP [norepl,repl] [NSET|1]"
   Randomly sample from pdf PDFNAME, NSAMP times,
   and repeat for NSET sets, with [no replacement, replacement].

Synonyms:  [help, h].

c===============================================================================

Command "scale   ":  acceptable input lines include:
"scale    [help]"   Display this message.
"scale    point   PNAME  [-] OPNAME [PINV]"
   to scale    point PNAME with operator OPNAME,
   and invariant point PINV (defaults to origin).
"scale    cluster CLNAME [-] OPNAME [PINV]"
   to scale    cluster CLNAME with operator OPNAME,
   and invariant point PINV (defaults to origin).
"scale    point   all    [-] OPNAME [PINV]"
   to scale    all points  with operator OPNAME,
   and invariant point PINV (defaults to origin).
"scale    vector  VNAME  [-] OPNAME [PINV]"
   to scale    vector VNAME with operator OPNAME,
   and invariant point PINV (defaults to origin).
"scale    vector  all    [-] OPNAME [PINV]"
   to
"scale    QTYPE  QNAME [-] OPNAME [PINV]"
   to scale    quadric type QTYPE with name QNAME,
   with operator OPNAME, and invariant point PINV.
"scale    QTYPE  all   [-] OPNAME [PINV]"
   to scale    all quadrics of type QTYPE,
   with operator OPNAME, and invariant point PINV.

Note:  OPNAME may not be "-".

Options:  QTYPE must be plane, sphere, cylinder, cone, hyperb, ellipsoid,
  axisym or quadric.
  [blank] indicates the operator, and [-] its inverse
  (use only for operators rotate and scale).
  Invariant point PINV defaults to the origin.

Synonyms:  [cluster, cl], [cylinder, cyl], [ellipsoid, ellipse, ell, el],
  [help, h], [hyperb, saddle], [invert, inv], [plane, pl],
  [normal, norm], [point, pnt, pt, p],
  [quadric, quad, q], [reflect, refl], [rotate, rot],
  [scale, sc], [sphere, sph], [vector, vect, v].

c===============================================================================

Command "search":  acceptable input lines include:
"search [help]"   Display this message.

"search OBJNAME1 OBJNAME2 OBJNAME3 ..."
  Search for objects OBJNAME1, OBJNAME2, OBJNAME3, ...,
  or beginning with single character OBJNAME1, OBJNAME2, OBJNAME3, ...
  Search for variables, points or vectors with values
  OBJNAME1, OBJNAME2, OBJNAME3, ...,

"search all"      Display all objects.

Synonyms:  [help, h], [search, find].

c===============================================================================

Command "side":  acceptable input lines include:
"side [help]"        Display this message.

"side PNAME QNAME"   Find the distance from point PNAME
   to quadric surface QNAME, and which side of surface QNAME
   point PNAME is on.
"side PNAME [all]"   Do the same for point PNAME and all quadric surfaces.

"side all QNAME"     Do the same for all points and quadric surface QNAME.

"side all [all]"     Do the same for all points and all quadric surfaces.

Synonyms:  [help, h].

c===============================================================================

Command "slice":  acceptable input lines include:
"slice [help]"  Display this message.

"slice quadric QNAME [x,y,z|x] [VAL|0] [[y,z,x] VMIN DV VMAX]
   Slice quadric QNAME at [x,y,z|x] = [VAL|0],
   and optionally, find any points in the resulting quadric curve
   at [y, z, x] = VMIN (DV) VMAX.
"slice zone ZNAME [x,y,z|x] [VAL|0.0]"
   Slice zone ZNAME at [x,y,z|x] = [VAL|0].

Synonyms:  [help, h], [quadric, quad, q], [slice, cut], [zone, zn, z].

c===============================================================================

Command "solve":  acceptable input lines include:
"solve [help]"  Display this message.

"solve A B C D"
   Solve for the three unknowns x, y and z in the three equations
   A1 * x + A2 * y + A3 * z = D1
   B1 * x + B2 * y + B3 * z = D2
   C1 * x + C2 * y + C3 * z = D3
   where A, B, C and D are the vectors
   (A1, A2, A3), (B1, B2, B3), (C1, C2, C3), and (D1, D2, D3), respectively.

Synonyms:  [help, h].

c===============================================================================

Command "sort":  acceptable input lines include:

"sort [help]"       Display this message.

"sort alias       [+,-,?|+]"   Sort aliases.
"sort all         [+,-,?|+]"   Sort all objects.
"sort axisym      [+,-,?|+]"   Sort all quadric surfaces.
"sort bin         [+,-,?|+]"   Sort probability bins.
"sort brick       [+,-,?|+]"   Sort bricks.
"sort cluster     [+,-,?|+]"   Sort clusters.
"sort cone        [+,-,?|+]"   Sort all quadric surfaces.
"sort cylinder    [+,-,?|+]"   Sort all quadric surfaces.
"sort disk        [+,-,?|+]"   Sort annular disks.
"sort ellipsoid   [+,-,?|+]"   Sort all quadric surfaces.
"sort hyperb      [+,-,?|+]"   Sort all quadric surfaces.
"sort line        [+,-,?|+]"   Sort lines.
"sort marker      [+,-,?|+]"   Sort markers.
"sort mesh        [+,-,?|+]"   Sort mesh points by mesh indices.
"sort operator    [+,-,?|+]"   Sort operators.
"sort pdf         [+,-,?|+]"   Sort pdfs.
"sort plane       [+,-,?|+]"   Sort all quadric surfaces.
"sort point       [+,-,?|+]"   Sort points.
"sort polygon     [+,-,?|+]"   Sort regular polygons.
"sort polyhedron  [+,-,?|+]"   Sort regular polyhedrons.
"sort quadric     [+,-,?|+]"   Sort all quadric surfaces.
"sort sphere      [+,-,?|+]"   Sort all quadric surfaces.
"sort symbol      [+,-,?|+]"   Sort symbols.
"sort tetrahedron [+,-,?|+]"   Sort tetrahedrons.
"sort triangle    [+,-,?|+]"   Sort triangles.
"sort variable    [+,-,?|+]"   Sort variables.
"sort vector      [+,-,?|+]"   Sort vectors.
"sort zone        [+,-,?|+]"   Sort zones.

where [+,-,?|+] means to sort in [increasing, decreasing, random] order,
with increasing order the default option.

Synonyms:  [?, random], [alias, al, a], [brick, br], [cluster, cl],
  [cylinder, cyl], [disk, disc, dk], [ellipsoid, ellipse, ell, el], [help, h],
  [hyperb, saddle], [line, ln, l], [marker, mark, m],
  [operator, oper, op, o],
  [point, pnt, pt, p], [polygon, polyg, pg], [polyhedron, polyh, ph],
  [quadric, quad, q], [sphere, sph], [symbol, symb, sym],
  [tetrahedron, tetra, tet],  [triangle, tri],
  [variable, var, set, s], [vector, vect, v], [zone, zn, z].

c===============================================================================

Command "sphere":  acceptable input lines include:

"sphere [help]"   Display this message.

"sphere all"      Display all spheres.

"sphere list [SPHNAME1 SPHNAME2 SPHNAME3 ...]"
   Display all listed spheres (default is all spheres).

"sphere SPHNAME"  Display sphere SPHNAME.

"sphere SPHNAME = PCEN RADIUS"
   Create sphere SPHNAME, centered at point PCEN,
   with radius RADIUS.

"sphere SPHNAME fit PAXIS VAXIS PNAME1 PNAME2"
   Create sphere SPHNAME, centered on the axis through point PAXIS,
   in the direction of vector VAXIS, and with its surface
   through the two points PNAME1 and PNAME2.

"sphere SPHNAME point PNAME1 PNAME2 PNAME3 PNAME4"
   Create sphere SPHNAME, with its surface through
   the four points PNAME1, PNAME2, PNAME3 and PNAME4.

"sphere SPHNAME concentric NUMSPH INC PCEN RAD1 RAD2"
   Create a family of NUMSPH concentric spheres SPHNAME, ...,
   with names incremented by INC characters,
   centered at point PCEN, with radii equally spaced from
   radius RAD1 to radius RAD2.

"sphere SPH02 move NUMSPH INC SPH01 VMOVE"
   Create a family of NUMSPH spheres SPH02, ...,
   with names incremented by INC characters,
   and spaced at intervals of vector VMOVE,
   starting from sphere SPH01.

Type  for more help.

"sphere SPH02 rotate NUMSPH INC SPH01 OPNAME PINV"
   Create a family of NUMSPH spheres SPH02, ...,
   with names incremented by INC characters,
   by rotating the preceding sphere with operator OPNAME
   and invariant point PINV, starting from sphere SPH01.

"sphere SPH02 scale NUMSPH INC SPH01 OPNAME PINV"
   Create a family of NUMSPH quadric surfaces SPH02, ...,
   with names incremented by INC characters,
   by scaling the preceding quadric surfaces with operator OPNAME
   and invariant point PINV, starting from sphere SPH01.
   WARNING:  a linear or radial scaling operator will produce ellipsoids.

Note:  use +/- for SPHNAME or SPH02 to incr/decr the last sphere name:

Synonyms:  [help, h], [concentric, conc] [move, mv, translate, trans],
  [point, pnt, pt, p], [rotate, rot], [scale, sc], [sphere, sph].

c===============================================================================

Command "spin":  acceptable input lines include:
"spin [help]"  Display this message.
"spin N"       Use up N random numbers.

c===============================================================================

Command "sudoku":  acceptable input lines include:

"sudoku [help]"               Display this message.

"sudoku new"                  Start a new sudoku puzzle.

"sudoku [row,col,box] N [=] I1 I2 I3 I4 I5 I6 I7 I8 I9"
   Assign up to 9 digits I1, I2, I3, ... to [row, column, box] N.

"sudoku cell NROW NCOL [=] I1"
   Assign the digit I1 to row NROW, column NCOL.

Note:  in the commands above, use zero for cells with unassigned digits.

"sudoku perm"                 Display the permitted digits.
"sudoku save"                 Save and display the current assignments.
"sudoku reset"                Reset the assignments to those of the last save.
"sudoku solve"                Save the current assignments and solve puzzle.

Synonyms:  [help, h], [sudoku, su].

c===============================================================================

Command "synonym":  acceptable input lines include:

"synonym [help]"  Display this message.

"synonym all"     Display all synonyms.

"synonym none"    Display all command words and key words
   for which there is no preset synonym.

"synonym SYNAME1 SYNAME2 SYNAME3 ..."
   Display the synonyms, symbols and aliases for each listed word,
   or if a single character, all synonyms, symbols and aliases
   beginning with that character.

Synonyms:  [help, h], [synonym, syn].

c===============================================================================

Command "table":  acceptable input lines include:
"table [help]"       Display this message, and display the maximum sizes of
  the data tables for various objects, the current space used, and the
  command types used to create and display them.
Synonyms:  [help, h], [tables, sizes].

 Object type                               #   Max  Command type

 Aliases                                   0   512  alias
 Annular disks                             0  1000  disk
 Big integers                                   26  big
 Digits per big integer                       1001  big
 Bounding surfaces per zone                     16  zone
 Bricks (coordinate solids)                0  1000  brick
 Clusters of points                        0   100  cluster
 Lines                                     0  1000  line
 Markers                                   0   256  marker
 Operators                                 0   100  operator
 Plot array columns                       65   168  plot
 Plot array lines                         41   104  plot
 Plot point markers                        1   256  plot
 Plot points                               0  1000  plot
 Point-cluster pairs                       0  1000  cluster
 Points                                    0  1000  point
 Polygons                                  0  1000  polygon
 Polyhedrons                               0  1000  polyh
 Probability bin-pdf pairs                 0  1000  pdf
 Probability bins                          0  1000  bin
 Probability distribution functions        0   100  pdf
 Quadric surfaces                          0  1000  (all)
   Planes                                           plane
   Spheres                                          sphere
   Circular cylinders                               cylinder
   Circular cones                                   cone
   Ellipsoids                                       ellipsoid
   Axisymmetric quadric surfaces                    axisym
   General quadric surfaces                         quadric
 Saved input lines (max 80 characters)     2  2000  input
 Symbols                                   6  1000  symbol
 Synonyms                                367   400  synonym
 Temporary arrays                          0  1000  (varies)
 Tetrahedrons                              0  1000  tetra
 Triangles                                 0  1000  triangle
 Variables                                 0  1000  variable
 Vectors                                   0  1000  vector
 Vertices per polygon                         1000  polygon
 Zones                                     0  1000  zone

c===============================================================================

Command "tetrahedron":  acceptable input lines include:

"tetrahedron [help]"  Display this message.
"tetrahedron all"     Display all tetrahedrons.
"tetrahedron list [TETNAME1 TETNAME2 TETNAME3 ...]"
   Display all listed tetrahedrons (default is all tetrahedrons).
"tetrahedron TETNAME"  Display tetrahedron TETNAME.

"tetrahedron TETNAME = PNAME1 PNAME2 PNAME3 PNAME4"
   Create tetrahedron TETNAME through the 4 points PNAME1, PNAME2,
   PNAME3 and PNAME4.

"tetrahedron TET02 increment NUMTET INC TET01 IP1 [IP2 [IP3 [IP4]]]"
   Create a family of NUMTET tetrahedrons TET02, ...,
   with names incremented by INC characters,
   by incrementing the names of the four vertex points of
   the preceding tetrahedron by the number of characters indicated
   by the integers IP1, IP2, IP3, IP4, starting from tetrahedron TET01.
   Unspecifed values of IP2 - IP4 default to zero.

Note:  use +/- for TETNAME or TET02 to incr/decr the last
  tetrahedron name:

Synonyms:  [help, h], [increment, incr], [tetrahedron, tetra, tet].

c===============================================================================

Command "time":  acceptable input lines include:

"time [help]"  Display this message.
"time"         Display the machine time used.

Synonyms:  [help, h].

c===============================================================================

Command "title":  acceptable input lines include:

"title help"    Display this message.
"title"         Display the problem title.

"title TITLE"   Specify problem title TITLE (up to 72 characters).

Synonyms:  [help, h], [title, id].

c===============================================================================

Command "tol":  acceptable input lines include:
"tol help"      Display this message.

"tol"           Display the value of tol.

"tol [=] TOL"   Change the value of tol to TOL.
   Must be 0, or between 1.E-15 and 1.E-3.  Default is 1.E-11.

c===============================================================================

Command "track":  acceptable input lines include:
"track [help]"  Display this message.

"track PNAME VNAME point PNAME2"
   Find the distance to and coordinates of the point on
   the track through point PNAME in direction VNAME,
   nearest to point PNAME2.

"track PNAME VNAME line ALNAME"
   Find the distance to and coordinates of the point on
   the track through point PNAME in direction VNAME,
   nearest to line ALNAME.

"track PNAME VNAME triangle TRNAME"
   Find the distance to and coordinates of the point on
   the track through point PNAME in direction VNAME,
   intersecting triangle TRNAME.

"track PNAME VNAME QTYPE QNAME"
   Find the distance to and coordinates of the point on
   the track through point PNAME in direction VNAME,
   intersecting the quadric surface of type QTYPE with name QNAME.
   QTYPE must be plane, sphere, cylinder, cone, hyperb, ellipsoid, axisym,
   or quadric.

"track PNAME VNAME zone ZNAME"
   Find the distances to and coordinates of the points
   on the track through point PNAME in direction VNAME,
   intersecting the surfaces bounding zone ZNAME.

Synonyms:  [cylinder, cyl], [ellipsoid, ellipse, ell, el], [help, h],
  [hyperb, saddle], [line, ln, l], [plane, pl],
  [point, pnt, pt, p], [quadric, quad, q],
  [sphere, sph], [track, trk], [zone, zn, z].

c===============================================================================

Command "triangle":  acceptable input lines include:
"triangle [help]"  Display this message.
"triangle all"     Display all triangles.
"triangle list [TRNAME1 TRNAME2 TRNAME3 ...]"
   Display all listed triangles (default is all triangles).
"triangle TRNAME"  Display triangle TRNAME.

"triangle TRNAME = PNAME1 PNAME2 PNAME3"
   Create triangle TRNAME through the 3 points PNAME1, PNAME2 and
   PNAME3.

"triangle TR02 increment NUMTR INC TR01 IP1 [IP2 [IP3]]"
   Create a family of NUMTET triangles TR02, ...,
   with names incremented by INC characters,
   by incrementing the names of the three vertex points of
   the preceding triangle by the number of characters indicated
   by the integers IP1, IP2, IP3, starting from triangle TR01.

"steiner [help]"  Display this message.
"steiner TRNAME"  Display triangle TRNAME (Steiner vertex).

Note:  use +/- for TRNAME to incr/decr the last triangle name:

Synonyms:  [help, h], [increment, incr], [steiner, stein], [triangle, tri].

c===============================================================================

Command "trig":  acceptable input lines include:
"trig [help]"  Display this message.
"trig [angle,edge] A [angle,edge] B [angle,edge] C"
   Find the missing parts of a triangle with given parts
   [angle,edge] A, [angle,edge] B, [angle,edge] C, in counterclockwise order.
   The last two arguments default to "edge 1".

Synonyms:  [angle, ang], [edge, side], [help, h].

c===============================================================================

Command "triple":  acceptable input lines include:
"triple [help]"  Display this message.

"triple QNAME1 QNAME2 QNAME3 [PNAME]"
   Find any triple intersection of the three quadric surfaces
   QNAME1, QNAME2 and QNAME2 [near point PNAME].

Synonyms:  [help, h], [point, pnt, pt, p].

c===============================================================================

Command "twist":  acceptable input lines include:

"twist [help]"   Display this message.

"twist point   PNAME  PAXIS VAXIS axial PITCH"
   Twist point   PNAME  around the axis through point PAXIS
   in the direction of vector VAXIS, with one clockwise rotation
   per axial distance PITCH, along the axis from point PAXIS.

"twist point   all    PAXIS VAXIS axial PITCH"
   As above, for all points.

"twist cluster CLNAME PAXIS VAXIS axial PITCH"
   As above, for all points in cluster CLNAME.

"twist point   PNAME  PAXIS VAXIS radial PITCH RINV"
   Twist point   PNAME  around the axis through point PAXIS
   in the direction of vector VAXIS, with one clockwise rotation
   per radial distance PITCH from radius RINV.

"twist point   all    PAXIS VAXIS radial PITCH RINV"
   As above, for all points.

"twist cluster CLNAME PAXIS VAXIS radial PITCH RINV"
   As above, for all points in cluster CLNAME.

Synonyms:  [cluster, cl], [help, h], [point, pnt, pt, p],

c===============================================================================

Command "undo":  acceptable input lines include:

"undo help"  Display this message.

"undo"       Undo the last command (display with command "i geom.cmd $ ?").
"undo N"     Undo the last N commands (display with command
             "i geom.cmd -M $ ?", where M = N - 1).

Synonyms:  [undo, u].

c===============================================================================

Command "variable":  acceptable input lines include:
"variable [help]"              Display this message.
"variable all"                 Display all named variables.
"variable list [VARNAME1 VARNAME2 VARNAME3 ...]"
   Display all listed variables (default is all variables).
"variable list VARNAME1 thru VARNAME2"
   Display named variables VARNAME1 thru VARNAME2.
"variable VARNAME"             Display named variable VARNAME.

"variable VARNAME [=] FVAR"    Create floating point variable VARNAME = FVAR.
   FVAR may be numerical or a floating point variable.
"variable VARNAME [=] IVAR"    Create integer variable VARNAME = IVAR.
   IVAR may be numerical or an integer variable.

In the 2 commands above, "=" is optional if the next argument is numerical.

"variable VARNAME big BIGNAME"    Create variable VARNAME with the value of
   big integer BIGNAME, if it will fit in a machine word.

"variable VARNAME pi"        Create variable VARNAME = pi = acos(-1).
"variable VARNAME deg/rad"   Create variable VARNAME = 180 / pi.
"variable VARNAME rad/deg"   Create variable VARNAME = pi / 180.
"variable VARNAME ebase"     Create variable VARNAME = exp (1.0).
"variable VARNAME rgold"     Create variable VARNAME = (1+sqrt(5))/2.
"variable VARNAME euler"     Create variable VARNAME = 0.577215664901533861

"variable VARNAME random"
   Create variable VARNAME with a random value uniformly
   distributed between 0 and 1.

"variable VARNAME random VMIN VMAX"
   Create variable VARNAME with a random value uniformly
   distributed between VMIN and VMAX.

"variable VAR01 prime NUMPRIME"
   Create a series of NUMPRIME variables VAR01, ...,
   with names incremented by 1 character,
   with the values of the first NUMPRIME prime numbers.

"variable VARNAME vector VNAME"
   Create variable VARNAME with the value of the length of
   the vector VNAME.

Type  for more help:
"variable VARNAME tag 'VARTAG'"
   Give variable VARNAME the tag VARTAG (up to 48 characters).

"variable VARNAME angle VNAME1 VNAME2"
   Create variable VARNAME with the value of the angle between
   the two vectors VNAME1 and VNAME2.

"variable VARNAME dot VNAME1 VNAME2"
   Create variable VARNAME with the value of the dot product
   of the two vectors VNAME1 and VNAME2.

"variable VARNAME triple VNAME1 VNAME2 VNAME3"
   Create variable VARNAME with the value of the scalar triple product of
   the three vectors:  (VNAME1 cross VNAME2) dot VNAME3.

"variable VARNAME distance"
   Create variable VARNAME with the value of the last distance
   found by command "distance", "side", "proximal", "track" or "walk".

"variable VAR02 series NUMVAR INC VAR01 FADD FMULT"
   Create a series of NUMVAR variables VAR02, ...,
   with names incremented by INC characters,
   by adding FADD to FMULT times the value of the preceding variable,
   starting from variable VAR01.

"variable VAR01 data F1 F2 F3 ... enddata"
   Create a series of variables VAR01, VAR02, ...,
   with names incremented by one character, with the values of the entries
   F1 F2 F3 ... in the following data table, up to the word "enddata".
   Everything after "data" may be on separate input lines.

"variable VARNAME [=] K [+,-,*,/,^] L mod M"
   Create variable VARNAME with integer value K [+, -, *, /, ^] mod L,
   where K, L and M are integers.

Type  for more help:
"variable VARNAME [=] A FUNCTION B"
   Create variable VARNAME with (FUNCTION, value):
   (+, A+B), (-, A-B),  (*, A*B), (/, A/B),  (**, A**B),
   (sqrt,  A*sqrt(B)),  (curt,  A*B**(1/3)), (atan2, atan(A/B)),
   (exp,   A*exp(B)),   (log,   A*alog(B)),  (log10, A*log10(B)),
   (sin,   A*sin(B)),   (cos,   A*cos(B)),   (tan,   A*tan(B)),
   (asin,  A*asin(B)),  (acos,  A*acos(B)),  (atan,  A*atan(B)),
   (sinh,  A*sinh(B)),  (cosh,  A*cosh(B)),  (tanh,  A*tanh(B)),
   (asinh, A*asinh(B)), (acosh, A*acosh(B)), (atanh, A*atanh(B)),
   (int,   A*int(B)),   (abs,   A*abs(B)),   (sign,  sign(A,B)),
   (max,   amax1(A,B)), (min,   amin1(A,B)), (mod,   amod(A,B)),
   (nint,  A*nint(B)),  (ran, random number from A to B),
   (gcd,   gcd(A,B)),   (lcm,   lcm(A,B),
   (fact,  A*B!),       (avg,   (A+B)/2),    (root,  A**(1/B).

In the command above, "=" is optional if the next argument is numerical.

"variable VARNAME [+,*,/] F1 F2 F3 ... FN"
   Create variable VARNAME with the value of the
   [sum, product, sum of reciprocals] of the values F1, F2, F3, ..., FN."

"variable VARNAME polynomial XARG A(0) A(1) A(2) ... A(N)"
   Create variable VARNAME with the value of the polynomial function:
   A(0) + A(1) * XARG + A(2) * XARG^2 + ... + A(N) * XARG^N.

Note:  use +/- for VARNAME or VAR02 to incr/decr the last variable name:


Note:  a numerical variable will be an integer variable if its fractional
  difference from an integer is no more than the tolerance limit tol.

Synonyms:  [^, **], [angle, ang], [distance, dist], [dot, inner],
  [increment, incr], [help, h], [polynomial, poly], [random, ?],
  [tangent, tan], [variable, var, set, s], [vector, vect, v].

c===============================================================================

Command "vector":  acceptable input lines include:

"vector [help]"      Display this message.
"vector all"         Display all vectors.
"vector list [VNAME1 VNAME2 VNAME3 ...]"
   Display all listed vectors (default is all vectors).
"vector VNAME"       Display vector VNAME.

"vector VNAME = DU DV DW [U|0] [V|0] [W|0]"
   Create vector VNAME with components DU, DV, DW.
   at bound point U, V, W, (defaults to [0, 0, 0]).
   The "=" is optional if argument DU is numerical.

"vector VNAME unit"
   Change the length of vector VNAME to 1.
"vector VNAME abs [ABSLEN|1]"
   Change the length of vector VNAME to ABSLEN [1].
"vector VNAME rel RATIO"
   Multiply the length of vector VNAME by the factor RATIO.
"vector VNAME bound PNAME"
   Change the bound point of vector VNAME to point PNAME.

"vector VNAME line ALNAME"
   Create vector VNAME same as line ALNAME.

"vector VNAME point PNAME1 PNAME2 [rel [RELLEN|1]]"
   Create vector VNAME from point PNAME1 to point PNAME2,
   but with length RELLEN [1] times that distance.
"vector VNAME point PNAME1 PNAME2 unit"
   Create vector VNAME from point PNAME1 toward point PNAME2,
   but with absolute length 1.
"vector VNAME point PNAME1 PNAME2 [abs [ABSLEN|1]]"
   Create vector VNAME from point PNAME1 toward point PNAME2,
   but with absolute length ABSLEN [1].

"vector VNAME cross VNAME1 VNAME2"
   Create vector VNAME, the cross product of vectors VNAME1 and VNAME2.

Type  for more help.
"vector VNAME triple VNAME1 VNAME2 VNAME3"
   Create vector VNAME, the vector triple product of vectors
   VNAME1, VNAME2 and VNAME3:  VNAME1 cross (VNAME2 cross VNAME3) =
   (VNAME3 cross VNAME2) cross VNAME1.

"vector VNAME project VNAME1 PLNAME"
   Create vector VNAME, the projection of vector VNAME1 on the plane PLNAME.

"vector VNAME angle ANG1 VNAME1 ANG2 VNAME2"
   Create unit vector VNAME at angle ANG1 from vector VNAME1
   and angle ANG2 from vector VNAME2.

"vector VNAME sum VNAME1 VNAME2 [VMULT1|1 [VMULT2|1]]"
   Create vector VNAME, the weighted sum VMULT1 * VNAME1 + VMULT2 * VNAME2,
   where VMULT1 and VMULT2 default to 1.

Type  for more help.

"vector VNAME proximal"
   Create vector VNAME, between the last pair of proximal points found
   by command "distance", "proximal", "side" or "track",
   or the net movement found by command "walk".

"vector VNAME random"  Create unit vector VNAME,
   randomly sampled from an isotropic distribution.
"vector VNAME random VAXIS cosine [POWER|1]"
   Create unit vector VNAME, randomly sampled from a
   cosine-power distribution with power POWER, around the axis vector VAXIS.
"vector VNAME random VAXIS angle ANGLE"
   Create unit vector VNAME, randomly sampled from a
   uniform azimuthal distribution at angle ANGLE from the axis vector VAXIS.

"vector VNAME QTYPE QNAME"
   QTYPE must be:  plane, sphere, cylinder, cone, hyperb, ellipsoid,
   axisym, quadric.
   Create vector VNAME from the center of quadric QNAME to the origin.
"vector VNAME normal PNAME QNAME"
   Create vector VNAME, normal at point PNAME to quadric surface family QNAME.

"vector VNAME02 rotate NUMV INC VNAME01 OPNAME PINV"
   Create a family of NUMV vectors VNAME02, ...,
   with names incremented by INC characters,
   by rotating the preceding vector with operator OPNAME
   and invariant point PINV, starting from vector VNAME01.

"vector VNAME02 scale NUMV INC VNAME01 OPNAME PINV"
   Create a family of NUMV vectors VNAME02, ...,
   with names incremented by INC characters,
   by scaling the preceding vector with operator OPNAME
   and invariant point PINV, starting from vector VNAME01.

Note:  use +/- for VNAME or VNAME02 to incr/decr the last vector name:

Synonyms:  [angle, ang], [cosine, cos], [cylinder, cyl],
  [ellipsoid, ell, el], [help, h], [hyperb, saddle], [line, ln, l],
  [normal, norm], [plane, pl],
  [point, pnt, pt, p], [project, proj], [proximal, prox], [quadric, quad, q],
  [random, ?], [rel, *], [rotate, rot], [scale, sc], [sphere, sph],
  [sum, add], [vector, vect, v].

c===============================================================================

Command "volume":  acceptable input lines include:
"volume [help]"  Display this message.

"volume PAXIS VAXIS PNAME1 PNAME2 PNAME3 ..."
   Find the volume of revolution around the axis through
   point PAXIS with direction vector VAXIS, of the polygon
   with vertices PNAME1, PNAME2, PNAME3, ...

Synonyms:  [help, h].

c===============================================================================

Command "walk":  acceptable input lines include:
"walk [help]"  to get this message.

"walk PNAME [VNAME,?] DMEAN PATHMAX [DISTMAX|1.e99]"
   Randomly walk point PNAME, with initial direction vector [VNAME, random],
   mean free path DMEAN, until it walks a total path length PATHMAX, or
   reaches distance DISTMAX from its initial position, whichever occurs first.

Note:  Use command "define 'random walk'" for details.

Note:  if PATHMAX is reached first, the net radial distance is stored,
  and if DISTMAX is reached first, the total distance walked is stored,
  for use in command "variable VARNAME = distance".

Synonyms:  [help, h].

c===============================================================================

Command "when":  acceptable input lines include:

"when help"    Display this message.
"when"         Display the date, hour and machine when the code was made,
   and the run started.

Synonyms:  [help, h].

c===============================================================================

Command "where":  acceptable input lines include:
"where [help]"  Display this message.

"where point PNAME OBJTYPE OBJNAME"
   See if point PNAME is in object type OBJTYPE
   (brick, tetrahedron or zone) with name OBJNAME.
"where point PNAME OBJTYPE all"
   See if point PNAME is in any object type OBJTYPE
   (brick, tetrahedron or zone).
"where point PNAME"
   See if point PNAME is in any brick, tetrahedron or zone.
"where cluster CLNAME OBJTYPE OBJNAME"
   See if any points in cluster CLNAME are in object type OBJTYPE
   (brick, tetrahedron or zone) with name OBJNAME.
"where cluster CLNAME OBJTYPE all"
   See if any points in cluster CLNAME are in any object type OBJTYPE
   (brick, tetrahedron or zone).
"where cluster CLNAME"
   See if any points in cluster CLNAME are in any
   brick, tetrahedron or zone.
"where point all OBJTYPE OBJNAME"
   See if any points are in object type OBJTYPE
   (brick, tetrahedron or zone) with name OBJNAME.
"where point all OBJTYPE all"
   See if any points are in any object type OBJTYPE
   (brick, tetrahedron or zone).
"where point all"
   See if any points are in any brick, tetrahedron or zone.

Synonyms:  [brick, br], [cluster, cl], [help, h],
  [point, pnt, pt, p], [tetrahedron, tetra, tet], [zone, zn, z].

c===============================================================================

Command "zone":  acceptable input lines include:

"zone [help]"  Display this message.
"zone all"     Display all zones.
"zone ZNAME"   Display zone ZNAME.
"zone list [ZNAME1 ZNAME2 ZNAME3 ...]"
   Display all listed zones (default is all zones).

"zone ZNAME [=,&] [+,-|+] Q1 [+,-|+] Q2 [+,-|+] Q3 ..."
   Create [=] or add surfaces to [&] zone ZNAME, which is
   opposite the [+,-] side of quadric surface Q1,
   opposite the [+,-] side of quadric surface Q2, etc.,
   where the + side is in the direction of the normal vector.

"zone ZNAME volume ZVOL"
   Assign zone ZNAME volume ZVOL.

"zone ZNAME02 increment NUMZN INC ZNAME01 IQ1 IQ2 ..."
   Create a family of NUMZN zones ZNAME02, ...,
   with names incremented by INC characters,
   by incrementing the names of the bounding surfaces of
   the preceding zone by the number of characters indicated
   by the integers IQ1, IQ2, ..., starting from zone ZNAME01.

Type  for more help.

"zone ZNAME family IZU AQU IQU NQU"
   Create a family of NQU-1 zones ZNAME, ...,
   with names incremented by IZU characters,
   bounded by the NQU quadric surfaces AQU, ...,
   with names incremented by IQU characters, and
   ordered in the direction of their normal vectors.
   Note that the normal vector of a circular cone reverses direction
   at a vertex angle of 90 degrees.

"zone ZNAME family IZU AQU IQU NQU family IZV AQV IQV NQV"
   Like the preceding command, but
   with each zone expanded to a family of NQV-1 zones,
   with names incremented by IZV characters,
   bounded by the NQV quadric surfaces AQV, ...,
   with names incremented by IQV characters, and
   ordered in the direction of their normal vectors.

"zone ZNAME family IZU AQU IQU NQU family IZV AQV IQV NQV family IZW AQW IQW NQW"
   Like the preceding command, but
   with each zone expanded to a family of NQW-1 zones,
   with names incremented by IZW characters,
   bounded by the NQW quadric surfaces AQW, ...,
   with names incremented by IQW characters, and
   ordered in the direction of their normal vectors.

Note:  use +/- for ZNAME or ZNAME02 to incr/decr the last zone name:

Synonyms:  [help, h], [increment, incr], [zone, zn, z].

c===============================================================================


UCRL-WEB-209832