We develop a number of codes, some bigger than others, to carry out different tasks in the wide research are of atomistic modeling. The official repository for the public codes is Miguel Caro’s Github portal: Browse below for the available codes and a short description of their functionality.


DoSPT allows you to post process trajectories from molecular dynamics simulations and compute entropies and other thermodynamic properties from them according to the 2PT formalism (Lin et al, 2003). DoSPT has extended functionality compared to the original implementation, such as improved convergence, and it can handle bond breaking and solid/liquid interfaces. It has its own wiki page on


MattPy is a collection of routines written in Python that allow you to manipulate material tensors: piezoelectric tensors and stiffness tensors. These manipulations involve rotation and transformation between different forms (matrix, vector, Voigt) and some fancy functionality related to projecting a tensor of a given symmetry onto another symmetry, a nice method proposed by Moakher and Norris. My “implementation” paper is on the arXiv ( and you can check out code and documentation (which has some details on the method) on Github.