I will shortly be merging in the new force field framework.
- You will be able to create and install Python scripts for optimizing molecules & unit cells
- e.g. ML potentials like ANI-1ccx and ANI-2x
- calculators for materials like ASE, OpenKIM, etc.
- Each script can declare what it supports:
- unit cells or only molecules
- charged species
- specific elements (e.g., only HCON or Ag / Au alloys, or C nanomaterials, etc.)
- analytical gradients
- Scripts get a copy of the current molecule in a range of file formats (e.g., a temporary file)
- Scripts return energies and/or gradients
Avogadro handles frozen atoms / constraints by modifying the forces / gradients back from the script. Right now, there’s just freeze / unfreeze selected atoms.
Still to come:
- Auto-optimize tool interface with “live” optimization. Real Soon Now™
- Full replacement for Open Babel optimization (e.g., right now, this is an extra option - 1.99 / 2.0 will merge them)
- Distance / angle / torsion constraints (e.g., debugging this took a bunch of time, so I haven’t had time to code these up)