from gpaw import GPAW, ConvergenceError
from ase.optimize import QuasiNewton
from ase import Atoms
import pylab as pl

from ase.structure import bulk

system = bulk('Ti', 'hcp', orthorhombic=True)
calc = GPAW(mode='lcao',
            xc='RPBE',
            nbands=30,
            #basis='nasty.dzp',
            #basis='dzp',
            h=0.3,
            kpts=(4, 4, 4),
            maxiter=10)
system.center(vacuum=3.0)

system.set_calculator(calc)
try:
    system.get_potential_energy()
except ConvergenceError:
    pass
calc.set(mode='fd', maxiter=180)

opt = QuasiNewton(system, trajectory='opt.traj')
opt.run(fmax=0.05)

