A random structure generation package for molecular crystals

Genarris performs configuration space screening for crystals of (semi-)rigid molecules with no internal rotational degrees of freedom by random sampling with physical constraints. Genarris can be used to produce curated sets of structures to serve as initial populations for global optimization algorithms and/or as training sets for machine learning. Genarris is written in Python and distributed under a BSD-3 license. Genarris interfaces with the FHI-aims electronic structure package for energy evaluations and geometry relaxations with dispersion-inclusive DFT.


  • Written in Python 3 with mpi4py parallelization
  • A machine learned model estimates the molecular crystal volume from the single molecule structure
  • Random structures are generated in all space groups, including with special Wyckoff positions.
  • Three increasingly rigorous structure checks impose physical constraints on intermolecular distances.
  • Special settings are applied to strong hydrogen bonds.
  • Seamless execution of user-defined workflows for clustering and down-selection


  • X. Li, F. Curtis, T. Rose, C. Schober, A. Vazquez-Mayagoitia, K. Reuter, H. Oberhofer, and N. Marom “ Genarris: Random Generation of Molecular Crystal Structures and Fast Screening with a Harris Approximation”, J. Chem. Phys., 148, 241701 (2018).
  • R. Tom, T. Rose, I. Bier, H. O’Brien, A. Vazquez-Mayagoitia, and N. Marom “Genarris 2.0: A Random Structure Generator for Molecular Crystals”, Comput. Phys. Commun., 250, 107170 (2020).