Computer Science Department
School of Computer Science, Carnegie Mellon University


The Etree Library:
A System for Manipulating Large Octrees on Disk

Tiankai Tu, David R. O'Hallaron, Julio C. López

July 2003

Keywords: Octree, etree, locational code, linear octree, spatial data structures, out-of-core computing

This report describes a library, called the etree library, that allows C programmers to manipulate large octrees stored on disk. Octrees are stored as a sequence of fixed sized octant records sorted by a locational code order that is equivalent to a preorder traversal of the tree and a Z-order traversal through the domain. The sorted records are indexed by a conventional file-resident B-tree index and queried using fixed-length locational code keys. A schema can be defined to make an etree portable across different platforms. The etree library provides functions for creating, modifying, and searching octrees, including efficient mechanisms for appending octants and iterating over octants in Z-order. The library is the foundation for a larger research effort aimed at enabling scientists and engineers to solve large physical simulations on their desktop systems by recasting the simulation process to work directly on large etrees stored on disk.

13 pages

Return to: SCS Technical Report Collection
School of Computer Science homepage

This page maintained by