pydmga - Python interface to DMGAlpha package

This document is focused mainly on Python interface to the library and instalation issues. Documentation for C++ part of the library can be found on the project page:

General information

  • Most primitive types (located mainly in model Module) where it is reasonable has functions as_tuple() which converts the element to simple tuple with elements in a given order (described in the documentation of as_tuple() )
  • Most primitive types that are associated or are some geometric ojects has as_coords() function which allow for converting the element to tuple or list of tuples of at last 3 elements. Forst 3 elements of the tuple are 3D coordinates inside the simulation box.
  • Most containers provide simple, intuitive Iterator. Some of them grants more delicate mechanisms to access elements
  • The core class for computing Power Diagram can cache computed cells (when instructed to do so). Beware of the big systems and your RAM size. Authors succeded in storing as much as 1 000 000 computed Voronoi cells in 8 GB of RAM.
  • Kinetic Data Structures (KDS) requires the cache to be ON. The set being ‘kinetized’ must be specified in the constructor. Computation of new elements during the update of KDS may cause unexpected behaviour. TODO: work on this issue.
  • Power Diagram and Voronoi Diagram are used interchangeably in this document. TODO: unify
  • Regular Triangulation and Delaunay Triangulation are used interchangeably in this document. TODO: unify