nwchem icon indicating copy to clipboard operation
nwchem copied to clipboard

RODFT with smear

Open edoapra opened this issue 2 years ago • 7 comments

Describe the bug If the keyword smear is used with RODFT, occupation numbers in the Molecular Orbital analysis are non-sensical. Energy values seem to make sense.

Attach log files

 Vector    1  Occ=0.000000D+00  E=-1.036655D+01
              MO Center= -3.9D-18, -2.3D-17,  7.4D-19, r^2= 2.8D-02
   Bfn.  Coefficient  Atom+Function         Bfn.  Coefficient  Atom+Function
  ----- ------------  ---------------      ----- ------------  ---------------
     1      0.995386  1 C  s

 Vector    2  Occ=0.000000D+00  E=-5.458552D-01
              MO Center= -1.6D-16, -2.8D-16,  9.4D-17, r^2= 8.3D-01
   Bfn.  Coefficient  Atom+Function         Bfn.  Coefficient  Atom+Function
  ----- ------------  ---------------      ----- ------------  ---------------
     6      0.592905  1 C  s                  2      0.480770  1 C  s
     1     -0.231387  1 C  s

 Vector    3  Occ=0.000000D+00  E=-2.001641D-01
              MO Center=  1.3D-18, -4.5D-20, -9.2D-18, r^2= 1.0D+00
   Bfn.  Coefficient  Atom+Function         Bfn.  Coefficient  Atom+Function
  ----- ------------  ---------------      ----- ------------  ---------------
     5      0.623577  1 C  pz                 9      0.492665  1 C  pz

 Vector    4  Occ=5.643769D-01  E=-1.207348D-01
              MO Center=  3.5D-17, -3.5D-19,  4.8D-18, r^2= 1.1D+00

To Reproduce

  1. Steps to reproduce the behavior: Run this C atom input file
geometry
  C   0.0 0.0 0.0
end

basis
  * library 6-31G
end

dft
  xc pbe0
  smear
  rodft
end
task dft energy

Expected behavior Print occupation number in the range 0 to 2, with core orbital having a value of 2.

edoapra avatar May 16 '22 19:05 edoapra

See https://groups.google.com/g/nwchem-forum/c/O5atoUjoJK8

edoapra avatar May 16 '22 19:05 edoapra

On closer inspection, SMEAR is not correctly interfaced with CG/RODFT. Commit https://github.com/nwchemgit/nwchem/issues/616 stops CG when the keyword SMEAR is used

edoapra avatar May 16 '22 23:05 edoapra

But I don't think this should happen in principle, so how can I fix the bug?

ice-hanbin avatar May 17 '22 07:05 ice-hanbin

Your run is a restart run, therefore the smear keyword was kept from the first run. Please add the start keyword at the beginning of the input file. https://nwchemgit.github.io/Start_Restart.html

    input           = c.inp
    prefix          = c.
    data base       = ./c.db
    status          = restart
    nproc           =        4
    time left       =     -1s

Modified input file

start c_atom_rodft

geometry
  C   0.0 0.0 0.0
end

basis
  * library 6-31G
end

dft
  xc pbe0
 # smear
  rodft
end
task dft energy

edoapra avatar May 17 '22 16:05 edoapra

Sorry about that, I have found this, but the problem is still here, SMEAR is not correctly interfaced with CG/RODFT, so I'd like to ask if there are some ways to fix this bug? Thanks a lot!

ice-hanbin avatar May 18 '22 03:05 ice-hanbin

Yes, the bug could be fixed. However, I am not sure any NWChem developer is going to act on it anytime soon.

edoapra avatar May 18 '22 16:05 edoapra

The FON keyword is also affected by the fact that the CGMIN module is not ready to use non integer occupations number
https://github.com/nwchemgit/nwchem/commit/a1d5ac21745cd912bb5235422d368074782fc15c

edoapra avatar May 18 '22 16:05 edoapra