CGL Software

On this page you can find software packages developed by CGL members. For additional information on any of the packages contact one of the developers.

Los Topos

A C++ package for triangle-mesh based surface tracking, with support for arbitrarily many distinct materials/regions, as described in the SIGGRAPH 2014 paper Multimaterial Mesh-based Surface Tracking.
This work was primarily written by Fang Da and Christopher Batty, building on the original El Topo surface tracking package by Tyson Brochu and Robert Bridson. You can find the source on the Los Topos download page.


A Matlab tutorial for learning Geometric Algebra. This tutorial is aimed at the sophomore college level, although it may provide a gentle introduction to anyone interested in the topic.

Blossoming Software

Blossoming is a technique for analyzing polynomial functions. For a degree n, univariate polynomial F, there exists a unique blossom f such that
  • f is n-variate,
  • f is multi-affine,
  • f agrees with F on the diagonal (e.g., f(u,u,u,u) = F(u)).
In short, the blossom allows us to analyze polynomial functions by performing repeated affine combinations.This software is a C++ implementation of a an abstract data type to support blossoming. This software is the joint work of Stephen Mann and Wayne Liu. Any questions, etc, should be addressed to Stephen Mann.