PyTAPS is a set of Python bindings to the ITAPS (Interoperable Technologies for Advanced Petascale Simulations) interfaces, a set of standardized interfaces for use in simulation code written in C, C++, or Fortran (users already familiar with ITAPS may wish to consult Coming from C first). Specifically, ITAPS includes:
ITAPS strives to remain implementation-independent, allowing people to write generic simulation code that can be used on any system that implements the appropriate ITAPS interfaces. There are several software packages that implement these interfaces, including MOAB, GRUMMP, FMDB, NWGrid, Frontier, CGM, and Lasso. PyTAPS wraps all of this up and makes it available to Python.
In ITAPS, there are three basic data types: entities, entity sets, and tags. Entities refer to individual geometric objects, such as vertices or hexahedra. Entity sets are collections of entities or other entity sets; they can also contain parent-child relationships with other sets. Tags are (sparse) mappings of entities or entity sets to arbitrary data. These data types are combined to do everything that can be done in ITAPS (and correspondingly in PyTAPS).