[ase-users] PreconLBFGS and broken symmetry
Jens Jørgen Mortensen
jensj at fysik.dtu.dk
Wed May 24 11:02:07 CEST 2017
Hi!
I'm running some optimizations with the new PreconLBFGS optimizer and it
seems to be very fast. But only if I turn off use of symmetry in my DFT
code. When I use symmetry (the initial structure has inversion
symmetry), GPAW crashes like shown below because PreconLBFGS gives the
DFT code some new positions that no longer have inversion symmetry. Is
this a bug in PreconLBFGS?
opt = PreconLBFGS(system,
precon=Exp(A=3),
use_armijo=True,
trajectory='opt.traj',
logfile='opt.log')
Jens Jørgen
Traceback (most recent call last):
File "opt.py", line 50, in <module>
opt.run(fmax=0.02)
File "/home/niflheim/jensj/ase/ase/optimize/precon/lbfgs.py", line
353, in run
return Optimizer.run(self, fmax, steps)
File "/home/niflheim/jensj/ase/ase/optimize/optimize.py", line 179,
in run
self.step(f)
File "/home/niflheim/jensj/ase/ase/optimize/precon/lbfgs.py", line
220, in step
self.precon.make_precon(self.atoms)
File "/home/niflheim/jensj/ase/ase/optimize/precon/precon.py", line
171, in make_precon
self.estimate_mu(atoms)
File "/home/niflheim/jensj/ase/ase/optimize/precon/precon.py", line
494, in estimate_mu
dE_p_plus_v = -atoms_v.get_forces().reshape(-1)
File "/home/niflheim/jensj/ase/ase/atoms.py", line 728, in get_forces
forces = self._calc.get_forces(self)
File "/home/niflheim/jensj/ase/ase/calculators/calculator.py", line
425, in get_forces
return self.get_property('forces', atoms)
File "/home/niflheim/jensj/ase/ase/calculators/calculator.py", line
457, in get_property
self.calculate(atoms, [name], system_changes)
File "/home/niflheim/jensj/gpaw/gpaw/calculator.py", line 265, in
calculate
self.set_positions(atoms)
File "/home/niflheim/jensj/gpaw/gpaw/calculator.py", line 443, in
set_positions
spos_ac = self.initialize_positions(atoms)
File "/home/niflheim/jensj/gpaw/gpaw/calculator.py", line 435, in
initialize_positions
self.wfs.set_positions(spos_ac, atom_partition)
File "/home/niflheim/jensj/gpaw/gpaw/wavefunctions/fdpw.py", line 47,
in set_positions
WaveFunctions.set_positions(self, spos_ac, atom_partition)
File "/home/niflheim/jensj/gpaw/gpaw/wavefunctions/base.py", line
204, in set_positions
self.kd.symmetry.check(spos_ac)
File "/home/niflheim/jensj/gpaw/gpaw/symmetry.py", line 248, in check
raise RuntimeError('Broken symmetry!')
RuntimeError: Broken symmetry!
More information about the ase-users
mailing list