Fork me on GitHub
Clustering - Robust and stable clustering of molecular dynamics simulation trajectories
This software package provides extensive tools for robust and stable clustering of molecular dynamics trajectories. The essential functions are:
  • density-based geometric clustering for microstate generation
  • dynamic clustering based on the Most-Probable-Path algorithm (MPP)
  • variable dynamic coring for boundary corrections
Additionally, the package includes tools to efficiently filter original coordinates or order parameters based on a discrete state definition to identify representative structures and variables of clusters. Computationally demanding functions are parallelized either using OpenMP (for multicore CPUs) or CUDA (for Nvidia-GPUs). For more information, please refer to the project page.
FastPCA - PCA analysis of large protein data sets
FastPCA is a PCA-calculator programmed in C++(11). Computation is parallelized with OpenMP. For fast matrix diagonalization, LAPACK is used (and needed, of course). The project includes the 'xdrfile' library of GROMACS. Thus, you can use data files written as ASCII data as well as .xtc-trajectories. FastPCA has a constant memory footprint and is suitable for large data sets. For more information, please refer to the project page.
Kubix (in collaboration with Carsten Burgard)
Kubix is a 3D OpenGL implementation of the board game Tactix/Duell - a chess variant played with dice instead of chess figures. Since the dice are not used as a randomizer, but rather as figures with dynamically changing properties, Kubix is a complex strategy game, comparable to Chess or Go (have a look at this wikipedia article for more information).

Kubix is not ready yet, but in future it will support

  • 3D OpenGL graphics
  • powerful AI
  • network play

If you already know the game and are interested in our implementation (the AI is nearly finished), have a look at  our GitHub page

pq - a simple personal queueing system
'pq' is a simple queueing system for Linux/Unix systems which you can use to queue jobs on your machine, i.e. execute programs depending on your current system load. Recognized limits are the current load-average value (as given, e.g. by 'uptime' or 'top') as well as the current total memory usage (as given, e.g. by 'free'). If the limits - set in a config file - have not been reached, the system's state is interpreted as idle and the next job in the queue is run. Further documentation and the code itself is available under the Simplified BSD License and can be reviewed on the project page.
PGT (Python GROMACS Toolkit)
PGT is a toolbox written in Python to ease the work with GROMACS. It is documented via the docstring-feature of Python. This is a simple collection of miscellaneous tools and not to be considered being an end-product of any kind. Publication is done in hope to inspire / ease someone else's work with GROMACS or to help him/her not having to reinvent the wheel. Most of the stuff implemented is directly related to my work as a grad student in the field of biomolecular dynamics. If you, however, find this stuff useful, implement further functionality, add comments or (most important) find bugs, feel free to contact me via email or github.
For further information and the source code, please go to the GitHub page.