[Pw_forum] roblem with bfgs algorithm optimizer for spin polarized system
pc229 at kent.ac.uk
pc229 at kent.ac.uk
Fri Mar 13 01:23:46 CET 2009
Dear PWscf developers,
I am trying to optimize, on the latest version of the espresso code (v4.0.4 ), the cell parameter and also the ionic coordinate of hematite.
Initially I treat hematite like an insulator using the following pseudo-potential :Fe.pbe-sp-van_ak.UPF for Iron and O.pbe-van_ak.UPF for oxygen (I attached the input at the bottom). To optimize both atomic coordinates and cell parameters I used bfgs algorithm .
As you know hematite is an open-shell system, and you need to define the spin orientation in order to describe it like a ferro-magnetic or anti-ferromagnetic system. I choose the anti-ferromagnetic one, that means to have the total magnetization equal to 0 every SCF cycle and absolute magnetization ranging from 11-16 (this highly pseudo potential dependent).
Anyway, for the first SCF cycle the magnetization carried out is correct, while after the first geometry optimization step hematite starts to lose the spin and the energy also dancing between two value not allowing the SCF to converge.
So attempting to managed this problem I try to run it like a metal introducing a methfessel-paxton smearing. Nothing seems to change, the SCF of the second optimization step doesn't converge as previously. Then I tried to restart my calculation from the first point coordinates and the first SCF step converged, whilst the next no as in the previous cases . This is very strange and get me frustrated !
Then I run the same calculation changing both optimization algorithm to damp for the ionic coordinate and damp-w for the cell. In this way the SCFs after the first optimization cycle seem to converge with the right magnetization and the next as well.
I did also a further trial, because I need to use the bfgs algorithm to optimize my structure. I tried to run the same system on a previous version of espresso (v.2.1.2), and treating it like a metal (with methfessel-paxton smering) and using bfgs for ionic coordinate and damp for cell optimization (since bfgs wasn't implemented to optimize the cell parameter in this version) the first SCF reached the convergence and the following as well.
How can I solve it ? I also read in the documents related to PWscf that bfgs for optimizing cell parameters (vc-relax) is still in a experimental version. Would it be possible that It has some problem with spin polarized systems??
How can I manage this problem? I need desperately to use bfgs to optimize the hematite.
Best Regards, Piero
title = 'opt_bulk_PBE_van3.inp' ,
calculation = 'vc-relax' ,
restart_mode = 'from_scratch' ,
wf_collect = .true. ,
outdir = '/home/pc229/backup/Counts/PWscf/Fe2O3_bulk/PWSCF/Fe2O3_bulk/opt_bulk_PBE_van/' ,
pseudo_dir = '/home/pc229/backup/Counts/PWscf/Fe2O3_bulk/PWSCF/Fe2O3_bulk/pseudo/' ,
prefix = 'opt_bulk_PBE_van3.inp' ,
ibrav = 5,
celldm(1) = 11.091428,
celldm(4) = 0.587237106,
nat = 10,
ntyp = 3,
ecutwfc = 50 ,
nosym = .true. ,
nbnd = 70,
nelec = 100,
tot_charge = 0.000000,
occupations = 'fixed' ,
nspin = 2 ,
starting_magnetization(1) = 1.,
starting_magnetization(2) = -1.,
starting_magnetization(3) = 0.,
tot_magnetization = 0 ,
ion_dynamics = 'bfgs' ,
cell_dynamics = 'bfgs' ,
wmass = 2001.0060 ,
cell_dofree = 'all' ,
Fe 55.62000 Fe.pbe-sp-van_ak.UPF
Fe1 55.62000 Fe.pbe-sp-van_ak.UPF
O 15.99000 O.pbe-van_ak.UPF
Fe 0.144358141 0.144342247 0.144393006
Fe1 0.355605889 0.355642696 0.355656118
Fe1 0.644394003 0.644359012 0.644344959
Fe 0.855641399 0.855655859 0.855605070
O 0.556470421 0.943529173 0.250007053
O 0.250006034 0.556470770 0.943529639
O 0.943529367 0.250006711 0.556470944
O 0.443532949 0.056467967 0.749992942
O 0.749994148 0.443532454 0.056467520
O 0.056467649 0.749993110 0.443532750
4 4 4 0 0 0
School of Physical Science
University of Kent,
Kent, CT2 7NH
ID Skype: pieremanuele
ID msn: pieremanuele83 at hotmail.com
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the users