XtalOpt is a free and truly open source evolutionary algorithm designed for a priori crystal structure prediction.


XtalOpt Version r12.0 Released!

  • Added a hardness calculation via AFLOW-ML (Automatic FLOW for Materials Discovery - Machine Learning).
  • Added a hardness fitness function, which allows for the prediction of hard structures.
  • Added a generic optimizer, which allows the user to employ many previously unsupported optimizers for minimizing the geometry of an extended system.

  • xtalopt-hardness-enthalpy-plot.png

    Example of a Hardness vs. Energy plot generated during a hardness search with XtalOpt.


    Example of a simulated XRD pattern generated with XtalOpt.

  • Added the ability to generate a simulated XRD (X-Ray Diffraction) pattern.
  • Added the ability to use different optimizers and queuing interfaces for each optimization step.
  • Implemented various bug fixes.

XtalOpt Version r11.0 Released!

  • Removed dependence on Avogadro and Open Babel, making XtalOpt a stand-alone program rather than an extension.
  • Changed the license from GPLv2 to a 3-Clause BSD license.
  • Added the optional use of Avogadro2 to render crystals through a remote procedure call (RPC) protocol.

  • avogadro2rpc.png

    Example of using Avogadro2 to render a crystal via RPC.


    Example of using the CLI mode of XtalOpt.

  • Added a command-line interface (CLI) to run the program and generate plots.
  • Added the ability for the user to define custom minimum inter-atomic distances (IAD) between pairs of atom types.
  • Implemented various bug fixes.

XtalOpt Version r10.0 Released!


  • Implementation of RandSpg, an algorithm that generates random crystals with specific spacegroups. This algorithm can optionally be used to create symmetric structures in the initial random generation.

  • randspg-dialog
  • Inclusion of variable forumla units within XtalOpt enables the search for cells with multiple numbers of formula units within a single run.

  • formula units

  • A molecular-unit generator permits users to create single-center molecules in the unit cell during the initial generation step.

  • molUnit

Avogadro2 Updates

Our Ph.D. student, Patrick Avery, was accepted to the Google Summer of Code 2016!!!

He has been working on Avogadro2.

You can read about his most recent work on his blog.

XtalOpt Version r9.0 Released!

  • Customizable polling interval for updating remote queue information.
  • Automatic removal of remote working files optional.
  • xtalopt-queue.png
  • Optional removal of unnecessary files for VASP calculations.
  • Added a new "mitosis" function used to generate higher local order for initial structures.


    Options for the "mitosis" function found in the "Structure Limits" tab.

  • Option to rank all current structures and export structures to a new subdirectory as .cml, CONTCAR, or .got.
  • Limit the total number of structures created during a run.
  • New option to replace a failing structure with a new offspring.
  • Ability to “inject” (seed) a structure mid-run
  • Minimum atomic separation now specified as a fraction of the sum of atomic radii, with a hard minimum.
  • Submission of remote calculations is throttled to ease DRMS load.
  • More server-friendly method of fetching queue data.
  • Support for GULP shell/core calculations added.
  • Incorporated the XtalComp library for duplicate structure removal (niching).

  • xtalopt-dup.png

  • Fix compilation against Qt 4.6.3 and 4.8.0.
  • Updated space-group detection library to spglib 1.0.8.
  • Bundled libssh library removed, now an optional dependency.
  • Added option to use command-line ssh/scp interfaces when libssh is unavailable or Kerberos authentication is needed.
  • Implemented an extension for an automated stochastic docking program (RandomDock) that supports MOPAC, ADF, GAMESS and Gaussian as back-end molecular quantum chemistry engines.
  • Numerous misc bugfixes.


ub-logo.png nsf_seal_scaled.png