Problems with geometry optimisation and freeze selected atoms option

Environment Information

Avogadro version: Avogadro2 1.99.0
Operating system and version: Windows 10 Home, Version 10.0.19045 Build 19045


I’m attempting to create an input geometry for a transition state (TS) optimisation. From previous calculations, I know that I should set the active atoms in a certain configuration; I have imported this configuration from another file and have then built the rest of the molecule around the TS site. Previously, I have been able to freeze the TS site and optimise the geometry of the rest of the molecule using Extensions>Calculate>Freeze Selected Atoms and then Extensions>Optimise Geometry. When I try it with my current molecule, the molecule “explodes”.

After checking this forum, I tried working around this by using the Extensions>Open Babel>Optimise Geometry option. This gives me a reasonable geometry for the rest of the molecule, but messes with the TS site; Freeze Selected Atoms does not work.

Also, when I open Extensions>Calculate>Configure, I am not able to select a force field as the Optimization Method box is greyed out. As I’m a new user, i can’t attached a picture here but I have one if anyone wants it.


  1. Why is the default optimise geometry option exploding the molecule but the Open Babel version isn’t?
  2. Can anyone suggest a work around for freezing the desired atoms while using the Open Babel optimizer?
  3. Why is the Configure tab not working?


  1. The “mess” is because the force field used was based on the simple Lennard-Jones potential, see the previous discussion here. The Open Babel optimization on the other hand uses a more typical force field (MMFF94 or UFF or something, I forget which).

To answer your other questions, a little background on the current status:

The optimization system is currently undergoing a significant revamp. The new force field framework (FFF) is extensible - new force fields can be added easily via plugins - and also allows other features such as the freezing of atoms that you mention. Previously optimization relied on Open Babel behind the scenes, making it inflexible, whereas the new framework doesn’t involve OB at all.

Most of the force fields for the FFF that come bundled with Avogadro at the moment are implemented as plugins, which means they are written in Python. Since Avogadro doesn’t come with Python bundled, this means they are sadly not available unless you have Python installed.

The Lennard-Jones potential FF is not a plugin, it’s native and built in to Avogadro, which means it’s always available. Geoff has said he’ll work on implementing a couple of other force fields natively to allow the use of more generally applicable force fields without needing Python.

To unlock more force fields in Avogadro 1.99 you’ll therefore need to install Python on your system. After that, they should show up in the configure tab. (If not, it’s likely because Avogadro couldn’t find Python and you’ll have to manually tell it where to look)

Or, as you discovered, the old built-in Open Babel force field is still available, it just can’t do the new clever stuff like freezing atoms.

The reworking of the FFF is an ongoing project and the UX is at a tricky point at the moment, but resolving it and making things more obvious is a key aim for the next release, which will be the big 2.0.