[gpaw-users] Band structure calculation
Jens Jørgen Mortensen
jensj at fysik.dtu.dk
Fri Feb 3 12:36:53 CET 2012
On 03-02-2012 10:10, Jakob Arendt Rasmussen wrote:
> Same traj-file but only the last image.
It works OK for me with the latest development version of GPAW. What
version are you using? Could you try the development version?
Jens Jørgen
> Jakob.
>
> On 2012-02-03 10:05, Jakob Arendt Rasmussen wrote:
>> Here it is. It has been running on 8 cores.
>>
>> Jakob.
>>
>> On 2012-02-02 08:54, Jens Jørgen Mortensen wrote:
>>> On 01-02-2012 11:21, Jakob Arendt Rasmussen wrote:
>>>> Hi
>>>>
>>>> I'm doing a band structure calculation along the second axis in the
>>>> brillouin zone where I do one k-point at a time. this works fine in
>>>> fd-mode, but in lcao-mode I get weird (i.e. large (numerically))
>>>> eigenvalues for the gamma-point - giving an ugly spaghetti-plot... The
>>>> eigenvalues for the gamma-point spans from -520000 eV to -120 eV
>>>> jumping
>>>> tens of eV in the valence end whereas for the other k-points the
>>>> eigenvalues spans from -22 eV to 1.8 eV jumping tens of meV.
>>> Can you send us the 3x9_con.traj file? On how many cores do you run the
>>> bandstructure calculation?
>>>
>>> Jens Jørgen
>>>
>>>> The structure optimization was done like this:
>>>> ###########################
>>>> from ase.io.trajectory import PickleTrajectory
>>>> from ase.optimize import BFGS
>>>> from gpaw import GPAW
>>>>
>>>> id='3x9_con'
>>>> traj=PickleTrajectory(id+'.traj')
>>>> atoms=traj[-1]
>>>>
>>>> calc=GPAW(nbands=170,
>>>> mode='lcao',
>>>> basis='dzp',
>>>> h=0.16,
>>>> kpts=(1,8,1),
>>>> xc='PBE',
>>>> spinpol=True,
>>>> txt=id+'_opt.txt')
>>>>
>>>> atoms.set_calculator(calc)
>>>> dyn=BFGS(atoms,trajectory=id+'_opt.traj',logfile=id+'_opt.log')
>>>> dyn.run(fmax=0.05)
>>>> calc.write(id+'_opt.gpw')
>>>> ###########################
>>>>
>>>> and the band structure like this:
>>>> ###########################
>>>> from gpaw import GPAW
>>>> from gpaw.mixer import MixerSum
>>>> import os
>>>>
>>>> id='3x9_con'
>>>>
>>>> nkpt = 40
>>>> kpts = [(0, 0.5 * k / (nkpt - 1), 0) for k in range(nkpt)]
>>>>
>>>> for kpt in kpts:
>>>> if id+'_%1.2f_band.gpw' %kpt[1] in os.listdir('./'):
>>>> continue
>>>> else:
>>>> calc = GPAW(id+'_opt.gpw',
>>>> txt=id+'_%1.2f_band.txt' %kpt[1],
>>>> kpts=[kpt],
>>>> fixdensity=True,
>>>> usesymm=None,
>>>> maxiter=500,
>>>> mixer=MixerSum(),
>>>> convergence={'bands': -5})
>>>>
>>>> calc.scf.converged=False
>>>>
>>>> calc.get_potential_energy()
>>>> calc.write(id+'_%1.2f_band.gpw' %kpt[1])
>>>> ###########################
>>>>
>>>> Best,
>>>> Jakob
>>>> _______________________________________________
>>>> gpaw-users mailing list
>>>> gpaw-users at listserv.fysik.dtu.dk
>>>> https://listserv.fysik.dtu.dk/mailman/listinfo/gpaw-users
>>> _______________________________________________
>>> gpaw-users mailing list
>>> gpaw-users at listserv.fysik.dtu.dk
>>> https://listserv.fysik.dtu.dk/mailman/listinfo/gpaw-users
More information about the gpaw-users
mailing list