[ase-users] Using internal optimizers of codes with ASE

Ask Hjorth Larsen asklarsen at gmail.com
Thu Oct 13 20:46:18 CEST 2016


Hi

Please excuse my recent bad ratio of suggestions/discussions to
actually getting things done.  I promise this will change.  Anyway:

For file IO calculators, it is often convenient to trigger a structure
optimization using the code's own optimizer on purpose through
get_potential_energy().

For example if someone uses the genetic algorithm, basin hopping or
similar, lots of optimizations will be going on, and you don't want
too much IO.

Using atoms.get_potential_energy()/calc.calculate() for this is
obviously a hack, but the idea of using the internal optimizer is
quite valid, and maybe ASE could offer a systematic way of doing this.

Has anyone thought of a nice way of doing this?

To call basin hopping that way, you just need to supply an object that
acts like an Optimizer, but secretly just calls calculate() on the
calculator.  This may be the minimally painful way.  Should we have a
wrapper like that?  Are there better ways?

Best regards
Ask


More information about the ase-users mailing list