Page 1 of 1

Strange behavior in band parallelization by abinit-7.0.5

Posted: Fri Mar 01, 2013 8:11 am
by goodwill
Dear developers,

I am recently using abinit-7.0.5 to perform structural relaxation by band parallelization with paral_kgb=1. However, the calculation always become strange after several relaxation steps (iterations): The total energy dramastically increases, the forces go to the order of 1d-1 and finally cannot converge SCF calculations. This happens even if the starting geometry is a good one. In comparsion, switching to abinit-6.12.3 with the same input, I can easily get the optimized geometry after about 10 iterations. Additionally, I once got a warning message that "nstep= 100 was not enough SCF cycles to converge" at the 5th Iteration although only 6 SCF steps had been carried out.

I do not have time to debug the code at present, so I just report the problem here.
My parallization setting is as follows:
--------------
kptopt 0
nkpt 1
nband 560
paral_kgb 1
npband 28
npfft 4
istwfk 1
ionmov 3
--------------

Thank you very much.

Re: Strange behavior in band parallelization by abinit-7.0.5

Posted: Mon Mar 04, 2013 11:03 am
by torrent
Could you provide more details: computer's architecture, compiler, ... ?
Your symptoms are sometimes encountered... but cannot be solved without additional info.

Re: Strange behavior in band parallelization by abinit-7.0.5

Posted: Fri Aug 30, 2013 7:47 pm
by mgsholte
I have had the same problem as the original poster. I encountered the problem while performing a structure optimization run of BTO in the tetragonal phase. My relaxation iterations never converge, presumably because my SCF iterations stop converging in this odd way. Here is a snippet from my output file:

Code: Select all

--- Iteration: ( 8/40) Internal Cycle: (1/1)
--------------------------------------------------------------------------------

---SELF-CONSISTENT-FIELD CONVERGENCE--------------------------------------------

     iter   Etot(hartree)      deltaE(h)  residm     vres2
 ETOT  1  -71.717624000709    -7.172E+01 4.454E-06 6.554E-02
 ETOT  2  -71.717354938544     2.691E-04 1.918E-06 7.010E-03
 ETOT  3  -71.717251299791     1.036E-04 3.099E-07 1.654E-03
 ETOT  4  -71.717247564562     3.735E-06 1.826E-06 1.970E-03
 ETOT  5  -71.717244383135     3.181E-06 2.954E-07 6.367E-04
 ETOT  6  -71.717243741654     6.415E-07 1.844E-06 1.118E-04
 ETOT  7  -71.717242916045     8.256E-07 2.820E-07 4.066E-05
 ETOT  8  -71.717243179973    -2.639E-07 1.842E-06 1.053E-05
 ETOT  9  -71.717242236046     9.439E-07 2.644E-07 9.355E-06
 ETOT 10  -71.717242915607    -6.796E-07 1.814E-06 3.683E-06
 ETOT 11  -71.717242797867     1.177E-07 2.474E-07 3.153E-06
 ETOT 12  -71.717242885628    -8.776E-08 1.789E-06 1.073E-06

 Cartesian components of stress tensor (hartree/bohr^3)
  sigma(1 1)= -1.26117127E-03  sigma(3 2)=  0.00000000E+00
  sigma(2 2)= -1.26117127E-03  sigma(3 1)=  0.00000000E+00
  sigma(3 3)= -1.13138142E-03  sigma(2 1)=  0.00000000E+00


 scprqt:  WARNING -
  nstep=  100 was not enough SCF cycles to converge;
  maximum energy difference=  8.776E-08 exceeds toldfe=  7.000E-08


The input file that generated that was:

Code: Select all

### Crystalline BTO; calculation of physical structure contstants

###
# Structure Specification Vars
###

## Unit Cell
#rprim DEFAULT
acell 3.96 3.96 4.0 angstrom # should be close to a = 3.995, c = 4.034 Ã

## Atom Positions
ntypat 3         # Ba, Ti, O, resp.
znucl 56 22 8

natom 5
typat 1 2 3*3   # Ba, Ti, 3O
xred
  0.0 0.0 0.0      # Ba
  1/2 1/2 0.515 # Ti
  0.0 1/2 0.485 # O 1 yz
  1/2 0.0 0.485 # O 2 xz
  1/2 1/2 -0.03 # O 3 xy

###
# Structure Optimization Vars
###

ionmov 2        # consider 3 instead if there are fewer than 5 DoF to consider

natfix 1       # Dont let the barium move while relaxing ion positions
iatfix 1       # see above

ntime 40        # the # of time step to use in the optimization cycle
tolmxf 1.0e-4   # force tolerance below which relaxation itrs stop. i.e., can end calc before 'ntime' itrs are reached. In Ha/Bohr

optcell 0      # optimize atomic positions without relaxing lattice params

###
# SCF Cycle Vars
###

iscf 7             # pulay mixing of the potential
nstep 100       # Maximum number of SCF cycles
toldfe 7.0e-8  # dont use toldff since the forces converge poorly and are expected to be crude anyway
ecut 35          # probably low, but I don't need great results
#nband 20      # let Abinit determine this automatically

diemac 4000  # too high?

##Definition of the k-point grid
kptopt 1
ngkpt 8 8 8
nshiftk 1
shiftk  0.5 0.5 0.5


My tolerances and ecut are fairly low since I've been having trouble making this calculation converge and I don't require a great deal of accuracy, but the SCF cycles always fail to converge at some point. Usually between the 7th and 11th relaxation iteration. This is strange since the starting geometry is close to the right one to begin with.

I'm using Abinit 7.2.2 compiled using the Intel compiler suite version 13.0.2.146 and configured to use an mvapich2 mpi implementation, both of which are configured to work with the intel powered cluster the code was run on.

I'm new to Abinit and any help or suggestions as to what might be the problem would be greatly appreciated.

Thanks!

Re: Strange behavior in band parallelization by abinit-7.0.5

Posted: Fri Aug 30, 2013 9:25 pm
by Boris
What's really strange is that it stops at 12 SCF steps and states that you reached 100 SCF steps...

Would be interesting to track the calculation with a debugger and check why abinit has gone out of the SCF loop.