...1.1
  Versions 0.5.x are intended to be a fully-stable and well-supported set of executables. Because GRUMMP is distributed in source form, the libraries that these executables call are in principle accessible for programming use. While this is permitted by the terms of the GRUMMP license (see Section 1.6), the library interface is neither documented nor supported at this time. Until the GRUMMP API is officially publicly released, interested users can also work with the GRUMMP libraries through the ITAPS mesh interface (`http://itaps-scidac.org`), which currently supports mesh query and low-level mesh modification operations.

      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .

...lex).1.2
  `flex` is used if found; otherwise `lex` is used. If neither is found, then user-defined I/O formats can not be used.

      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .

...1.3
  For example, `/usr/local/lib/cc` could be specified as `../lib/cc` if `/usr/local/bin` is in your default path. Note that `/usr/lib/cc` would be found instead in this case if `/usr/bin` precedes `/usr/local/bin` in your path.

      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .

...2.1
  In fact, the input and output formats need not be the same, so it is possible to simultaneously improve a mesh and change its file format.

      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .

...mf')2.2
  There are in fact other options supported by the underlying smoothing code. However, the option invoked by `mf` is so strongly recommended that the other options will not be discussed here.

      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .

...t3d 2.3
  For the rest of this section read `t[23]d` as `t2d` for two dimensions or `t3d` for three dimensions.

      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .

... t[23]d.2.4
  You must have a working version of `lex` or `flex` on your machine to build `t2d` or `t3d` successfully.

      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .

...3.1
  Future plans include automatic or semi-automatic splining of curved surfaces input as triangulations. If you're interested in hurrying this along, send a post-doc. :-)

      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .

...3.2
  Measures which compute all angles for a cell obviously have more than one value for a cell.

      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .

...3.3
  Be aware that when GRUMMP is configured using `-with-debug`, the `.msg` file may be quite large; I've filled the disk on my laptop a time or two, although I've since reduced the number of messages routinely written.

      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .

...4.1
  A constrained Delaunay triangulation is a triangulation in which the Delaunay criterion is only applied to vertices that are visible to a triangle. A vertex is visible to a triangle if there are no boundary patches between them.

      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .

...4.2
  The use of diametral lenses allows boundary triangles with a circumcenter outside the boundary edge to be present in the mesh. However, no vertex will ever be inserted at this location since it encroaches on the boundary edge.

      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .

...5.1
  The quadrilateral must of course be convex for face swapping to be performed.

      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .

...6.1
  In practice, a user-defined angle is used as the criterion for discontinuity.

      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .

...6.2
  A preliminary version of this algorithm has been described elsewhere [8].

      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .

... files A.1
  Except those for the logging and smoothing libraries, which have their own name space.

      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .
      .