Back to the PSciCo homepage

The Geometry Library


This library defines a set of basic geometric objects and operations on them. The interface is designed to be general across dimensions and to support robust arithmetic. Although the library is in its initial stages, it is currently used in several of our other libraries.

Relevant Files

The interface

  • GEOMETRY: The toplevel definition
  • SIDE: Routines for manipulating being inside, outside or on the surface of a geometric region.
  • VEC: Routines for manipulating vectors.
  • POINT: Routines for manipulating points.
  • BOX: Routines for manipulating boxes.
  • HALFSPACE: Routines for manipulating half spaces.
  • SPHERE: Routines for manipulating spheres.
  • The implementation

  • GEOMETRY_PRIMS: An interface for defining just the primitives required to implement a geometry.
  • BoxFromGeometryPrims: Box interface from the geometry primitives.
  • GeometryFromPrims: Full geometry from the geometry primitives.
  • GeometryPrims2d: 2d implementation of Geometry.
  • PointFromVec: Point interface from vec interface.
  • RealGeometry: Real implementation of geometry for 2, 3 and 4d.
  • RealGeometryPrims: Real inexact implementation of the geometry primitives.
  • RealGeometryPrims3d: Real inexact implementation of the geometry primitives in 3d.
  • Side: Implementation of the SIDE interface.

  • Acknowledgements

    The PSCICO project is supported by NSF under the title "Advanced Languages for Scientific Computation Environments" as part of the Experimental Software Systems program within CISE. The grant number is 9706572.

    Back to the PSciCo homepage.