Bug? Trying to use B3LYP

Total energy, geometry optimization, DFT+U, spin....

Moderator: bguster

Locked
horsfielda
Posts: 7
Joined: Mon Apr 05, 2010 5:20 pm

Bug? Trying to use B3LYP

Post by horsfielda » Mon Feb 12, 2018 10:10 pm

I have compiled abinit with libxc. When I try to run the calculation with B3LYP

ixc -402

and no symmetry

nsym 1
symrel 1 0 0 0 1 0 0 0 1
tnons 0 0 0

the run stops almost immediately and I get the following output:

symlatt : the Bravais lattice is aP (primitive triclinic)
symspgr : spgroup= 1 P1 (=C1^1)
ingeo : angdeg(1:3)= 90.00000000 90.00000000 119.99998843
At line 1332 of file invars2.F90
Fortran runtime error: Expected INTEGER for item 3 in formatted transfer, got CHARACTER
(a,i8,i5)
^

Error termination. Backtrace:
At line 1332 of file invars2.F90
Fortran runtime error: Expected INTEGER for item 3 in formatted transfer, got CHARACTER
(a,i8,i5)
^

Error termination. Backtrace:
invars2: take the default value of fband= 5.00000000E-01


Is this a bug? Or am I doing something wrong?
Andrew Horsfield
Department of Materials
Imperial College London

ebousquet
Posts: 469
Joined: Tue Apr 19, 2011 11:13 am
Location: University of Liege, Belgium

Re: Bug? Trying to use B3LYP

Post by ebousquet » Mon Feb 19, 2018 11:10 am

Dear Andrew,
Sounds like it is looking for a number at some place in the input but found a character instead.
Could you show us your input file in case you don't see the trouble?
Best wishes,
Eric

cespejo
Posts: 21
Joined: Fri Feb 26, 2010 8:12 pm

Re: Bug? Trying to use B3LYP

Post by cespejo » Mon May 28, 2018 9:25 pm

Hello Andrew and Eric, I'm just getting the same behaviour. I know that for hybrid functionals like B3LYP one needs to run a GGA calculation previous to the B3LYP, here is my input file:

Code: Select all

# Ethanol6-Water
#########################################################

ndtset 2

#########################################################
# First dataset: SCF
#########################################################
 nstep 200
 toldfe 1.0e-12
 kptopt 0        # 3ption for the automatic generation of k points
 nkpt   1
 kpt  0.0 0.0 0.0
 prtden 1 
 nband 88
 iscf1 17
 iscf2 2
#########################################################
# Data common to all datasets
#########################################################
#Definition of the unit cell
acell 16 16 16  angstr
rprim  1.0  0.0  0.0
       0.0  1.0  0.0
       0.0  0.0  1.0
chksymbreak 0
chkprim 0
#Definition of the atom types
ntypat 3
znucl 1 6 8     
#Definition of the atoms
natom 57
typat
3 1 2 2 1 1 1 1 1 3 1 2 2 1 1 1 1 1 3 1 2 1 1 2 1 1 1 3 1 2 2 1 1 1 1 1 3 1 1 3 1 2 2 1 1 1 1 1 3 2 2 1 1 1 1 1 1
xangst
          2.36900       -1.30200       -1.19900
          1.47600       -1.03100       -1.54700
          3.37100       -0.48100       -1.80600
          4.73200       -0.88200       -1.25900
          5.52100       -0.27200       -1.71400
          4.93700       -1.93600       -1.47800
          4.77100       -0.74500       -0.17300
          3.16800        0.57900       -1.59000
          3.33900       -0.61100       -2.89600
         -4.82000       -0.22000        0.74900
         -4.94800        0.49800        1.38800
         -4.02000       -1.25200        1.36200
         -2.77600       -0.70000        2.04100
         -2.17300       -1.52200        2.44700
         -2.16200       -0.12700        1.33900
         -3.04400       -0.04700        2.88300
         -3.75400       -1.92100        0.53900
         -4.64500       -1.81600        2.06800
          2.19400       -0.97700        1.47600
          2.29700       -1.13300        0.49900
          1.23500       -1.91300        1.98000
          0.26200       -1.74400        1.49700
          1.12200       -1.68500        3.04500
          1.68400       -3.35600        1.77900
          2.64100       -3.53500        2.28100
          0.93900       -4.05000        2.18800
          1.80900       -3.57600        0.71300
          1.28700        1.55300        1.63200
          1.64600        0.62500        1.62500
          2.32000        2.45100        1.22200
          1.90800        3.87100        1.57200
          2.67600        4.58500        1.25100
          0.96700        4.13700        1.07700
          1.76400        3.97300        2.65300
          3.25700        2.18800        1.73200
          2.49200        2.35600        0.13800
         -3.89400        0.58400       -1.77100
         -4.65200        0.55900       -2.37300
         -4.24500        0.31600       -0.89300
         -0.82400        1.22400       -0.03900
         -0.06300        1.41100        0.57000
         -1.38000        2.45700       -0.51700
         -0.49500        3.12200       -1.56800
          0.48900        3.37900       -1.15900
         -0.96400        4.04700       -1.92900
         -0.34800        2.45300       -2.42200
         -1.54400        3.13100        0.33600
         -2.35000        2.19700       -0.94700
         -0.03500       -0.44800       -2.01400
         -1.08300       -1.39000       -2.28300
         -1.17600       -2.46800       -1.20700
         -0.34000        0.17100       -1.30100
         -0.23200       -3.02000       -1.11800
         -1.40300       -2.01900       -0.23400
         -1.97200       -3.18400       -1.44800
         -0.84400       -1.83800       -3.25400
         -2.03300       -0.85100       -2.37200

#Definition of the planewave basis set
ecut 20 Ha
ecutsm 0.5 Ha   #
enunit 1
ixc1 14
ixc2 -402 
wfoptalg 4
getden -1
diemac 1.5
diemix 0.5
autoparal1 2
paral_kgb2 0


These are the lines of invars2.F90 related to the error:

Code: Select all

 if (dtset%ixc<0) then                                  ! libXC: metaGGA and hybrid functionals
   dtset%xclevel=1
   do isiz=1,2
     if (isiz==1) ii=-dtset%ixc/1000
     if (isiz==2) ii=-dtset%ixc-ii*1000
     jj=libxc_functionals_family_from_id(ii)
     if (jj==XC_FAMILY_GGA    .or.jj==XC_FAMILY_MGGA) dtset%xclevel=2
     if (jj==XC_FAMILY_HYB_GGA.or.jj==XC_FAMILY_HYB_MGGA) then
       dtset%xclevel=2 ; dtset%usefock=1
       if (.not.libxc_functionals_gga_from_hybrid(hybrid_id=ii)) then
         write(message, '(a,i8,i5)' )&
&         'ixc=',dtset%ixc,' (libXC hybrid functional) is presently not allowed with',ch10,&
&         'Norm-Conserving PseudoPotentials.',ch10,&
&         'Action: try another hybrid functional or use PAW.'
         MSG_ERROR(message)
       end if
     end if
   end do
 end if


However this error message is not displayed...Thanks in advance!

Cheers,

Camilo

cespejo
Posts: 21
Joined: Fri Feb 26, 2010 8:12 pm

Re: Bug? Trying to use B3LYP

Post by cespejo » Wed Jun 06, 2018 6:37 pm

Hi, well it seems that support for hybrid functionals was active only with PAWs, however in the last version of Abinit hybrid functionals now work with NC pseudos.
Plase check these tests: libxc[68-74]
Cheers,

Camilo.

Locked