I am trying to fully optimize a simple tetragonal cell with a non-null electric field applied. I started using a small field; I see that, despite ionmov=2, only the cell parameters are changed, because of the tolerance on the forces. Then I incrementally increased the field restarting from the last geometry and wavefunction but, for a particular value of the field, each relaxation step has higher and higher forces and energies:
grep fcart rlx_out
Cartesian forces (fcart) [Ha/bohr]; max,rms= 2.75210E-03 9.94192E-04 (free atoms)
Cartesian forces (fcart) [Ha/bohr]; max,rms= 2.90881E-03 1.04364E-03 (free atoms)
Cartesian forces (fcart) [Ha/bohr]; max,rms= 3.09318E-03 1.10311E-03 (free atoms)
Cartesian forces (fcart) [Ha/bohr]; max,rms= 3.19493E-03 1.13673E-03 (free atoms)
Cartesian forces (fcart) [Ha/bohr]; max,rms= 2.03107E-03 7.32846E-04 (free atoms)
Cartesian forces (fcart) [Ha/bohr]; max,rms= 2.68780E-03 9.63519E-04 (free atoms)
Cartesian forces (fcart) [Ha/bohr]; max,rms= 1.77305E-02 5.34135E-03 (free atoms)
Cartesian forces (fcart) [Ha/bohr]; max,rms= 8.63297E-01 2.58375E-01 (free atoms)
Cartesian forces (fcart) [Ha/bohr]; max,rms= 2.87584E+00 8.58629E-01 (free atoms)
Cartesian forces (fcart) [Ha/bohr]; max,rms= 1.17594E+00 4.11415E-01 (free atoms)
grep etotal rlx_out
Total energy (etotal) [Ha]= -1.31135948305738E+02
Total energy (etotal) [Ha]= -1.31136059824999E+02
Total energy (etotal) [Ha]= -1.31136120515053E+02
Total energy (etotal) [Ha]= -1.31136153859566E+02
Total energy (etotal) [Ha]= -1.31136188050108E+02
Total energy (etotal) [Ha]= -1.31136304780015E+02
Total energy (etotal) [Ha]= -1.31120166560307E+02
Total energy (etotal) [Ha]= -1.31046695186849E+02
Total energy (etotal) [Ha]= -1.31093204690302E+02
Total energy (etotal) [Ha]= -1.30958327915038E+02
then it stops with the following error:
--- !BUG
message: |
For k-point # 57,
the determinant of the overlap matrix is found to be 0.
src_file: berryphase_new.F90
src_line: 934
...
leave_new : decision taken to exit ...
Here is the input with the last restart, where I supplied the restart geometry by hand in the input:
Code: Select all
#Definition of lattice parameters
#********************************
#Lattice parameters
acell 1.0 1.0 1.0 Bohr
rprim
7.4348813581E+00 0.0000000000E+00 0.0000000000E+00
0.0000000000E+00 7.4348813581E+00 0.0000000000E+00
0.0000000000E+00 0.0000000000E+00 7.4348813581E+00
#Definition of atomic positions and types
#*************************************
spgroup 1
brvltt -1
nsym 0
tolsym 1.0e-4
chkprim 0
spgaxor 1
natom 5
ntypat 3
# Ba Ti O
znucl 56 22 8
typat 1 2 3 3 3
# Starting xred
xred 0.000000000 0.000000000 0.000000000
0.500000000 0.500000000 0.500000000
0.000000000 0.500000000 0.500000000
0.500000000 0.000000000 0.500000000
0.500000000 0.500000000 0.000000000
#Parameters of the SCF cycles
#****************************
iscf 4
nstep 400
toldfe 1.0d-12
#Plane wave basis and k-point grid
#*********************************
ecut 800 eV
ecutsm 0.5
dilatmx 1.20
ngkpt 13 13 13
ndtset 1 jdtset 3
#DATASET1 : scf calculation: GS WF in the BZ
#********************************************
prtden1 1
kptopt1 2
toldfe1 1.0d-12
#DATASET2 : Berry phase calculation
#***************************************************
rfdir2 1 1 1
berryopt2 -1
kptopt2 1
nbdbuf2 0
getwfk2 1
getden2 1
nband2 20
#DATASET3 : ion+cell optimization
#*****************************************************
# getwfk3 -1
# getden3 -1
irdwfk3 1
kptopt3 1
ionmov3 2
optcell3 1
ntime3 200
tolmxf3 5.0d-6
berryopt3 14
red_efieldbar3 0.0 0.0 0.003
nband3 20
nbdbuf3 0
I also tried to alternate the relaxation of only the cell parameters then only atomic positions but, apparently, abinit stops because I cannot set optcell=1 and ionmov=0.
Thanks a lot in advance for your help
Antonio