Possible Bug in NWCHEM: TD-B97

From NWChem

Viewed 2761 times, With a total of 6 Posts
Jump to: navigation, search

Just Got Here
Threads 1
Posts 2
Dear all,

I have recently implemented B97 into ORCA's TDDFT part. For comparison, I chose QCHEM and NWCHEM. For the first few singlet excitations of CH2O, I obtained the following values in eV:


3.9854     4.2181
6.8489     7.0074
8.1122     8.2836
8.1203     8.2844
8.6866     8.7784
9.0941     9.4966

i.e. the numbers differ by tenths of eV. Since I was able to reproduce the QCHEM values with ORCA, I am confident in them.

The NW ground state energy as well as one-electron and core-core-repulsion is fine, as well as the MO energies of the occupied block. A possible explanation are wrong functional derivatives of B97.

Since other functionals like PBE0, HFS, CAM-B3LYP etc. look fine, I am confident in having chosen accurate parameters for each program involved. If someone would like output files or the deviation spreadsheet, I will be happy to provide them.

Full input for NWCHEM follows:
start temp
title "Testing Implementations"
scratch_dir .
permanent_dir .
memory total 1500 stack 200 heap 200 global 1100 MB

geometry units angstroms
 symmetry c1 
  C     -0.023503    0.000000   -0.000000
  O     -1.231109   -0.000000    0.000000
  H      0.572248    0.947642    0.000000
  H      0.572248   -0.947642    0.000000

BASIS spherical 
# def2-TZVPD from EMSL
#BASIS SET: (5s,2p) -> [3s,2p]
H    S
     34.061341000            0.60251978000E-02      
      5.1235746000           0.45021094000E-01      
      1.1646626000           0.20189726000    
H    S
      0.32723041000          1.0000000        
H    S
      0.10307241000          1.0000000        
H    P
      0.80000000000          1.0000000        
H    P
      0.95774129632E-01            1.0000000        
#BASIS SET: (12s,6p,3d,1f) -> [6s,3p,3d,1f]
C    S
  13575.3496820              0.22245814352E-03      
   2035.2333680              0.17232738252E-02      
    463.22562359             0.89255715314E-02      
    131.20019598             0.35727984502E-01      
     42.853015891            0.11076259931    
     15.584185766            0.24295627626    
C    S
      6.2067138508           0.41440263448    
      2.5764896527           0.23744968655    
C    S
      0.57696339419          1.0000000        
C    S
      0.22972831358          1.0000000        
C    S
      0.95164440028E-01            1.0000000        
C    S
      0.48475401370E-01            1.0000000        
C    P
     34.697232244            0.53333657805E-02      
      7.9582622826           0.35864109092E-01      
      2.3780826883           0.14215873329    
      0.81433208183          0.34270471845    
C    P
      0.28887547253          1.0000000        
C    P
      0.10056823671          1.0000000        
C    D
      1.0970000000           1.0000000        
C    D
      0.31800000000          1.0000000        
C    D
      0.90985336424E-01            1.0000000        
C    F
      0.76100000000          1.0000000        
#BASIS SET: (12s,7p,3d,1f) -> [6s,4p,3d,1f]
O    S
  27032.3826310              0.21726302465E-03      
   4052.3871392              0.16838662199E-02      
    922.32722710             0.87395616265E-02      
    261.24070989             0.35239968808E-01      
     85.354641351            0.11153519115    
     31.035035245            0.25588953961    
O    S
     12.260860728            0.39768730901    
      4.9987076005           0.24627849430    
O    S
      1.1703108158           1.0000000        
O    S
      0.46474740994          1.0000000        
O    S
      0.18504536357          1.0000000        
O    S
      0.70288026270E-01            1.0000000        
O    P
     63.274954801            0.60685103418E-02      
     14.627049379            0.41912575824E-01      
      4.4501223456           0.16153841088    
      1.5275799647           0.35706951311    
O    P
      0.52935117943          1.0000000        
O    P
      0.17478421270          1.0000000        
O    P
      0.51112745706E-01            1.0000000        
O    D
      2.3140000000           1.0000000        
O    D
      0.64500000000          1.0000000        
O    D
      0.14696477366          1.0000000        
O    F
      1.4280000000           1.0000000      

 thresh 10e-8

 mult 1
 iterations 100
# grid xfine
 grid treutler
 grid becke 
 grid lebedev 160 29  

 tolerances tight # use strict tolerances beginning with first iteration
 tolerances accCoul 10
 tolerances tol_rho 1e-12
 tolerances radius 100.0
 convergence energy   1e-8
 convergence density  1e-7
 convergence gradient 5e-7

 xc becke97


 nroots 6
 targetsym none 
 thresh 1e-6

task tddft energy

Forum Vet
Threads 9
Posts 1492
Missing analytical second derivatives for Becke97 functional in NWChem
Dear Tar,
You are quite on target in stating that you have uncovered a bug in NWChem.
Since analytical second derivatives for the Becke97 functional have not been coded yet in NWChem,
the code should have stopped before entering the TDDFT module.
We will soon provide a fix to prevent the code to generate the erroneous results you have shown.

Cheers, Edo

Forum Vet
Threads 9
Posts 1492
Patch available
Tar ,
A patch is available now.
Instructions for installing the patch:

cd $NWCHEM_TOP/src/nwdft/lr_tddft
wget http://www.nwchem-sw.org/images/2nd.patch.gz
gzip -d 2nd.patch
patch -p0 < 2nd.patch
cd ../..
make link

Just Got Here
Threads 1
Posts 2
Dear Edoapra,

thank you for the clarification and the patch. In case the NWCHEM team is interested in the analytical code, I can provide you with the C++ routines, that can easily be converted to F90 as well as adapted to other, similar functionals.

Forum Vet
Threads 9
Posts 1492
Dear Tar,
Thank you very much for offering to share your code.
We do value this kind of contributions.
Let's continue this discussion using the PM tool.

Clicked A Few Times
Threads 6
Posts 13
Anyone could tell me - why I can't create a new thread? It says " The specified URL cannot be found"


  • Bert Forum:Admin, Forum:Mod, NWChemDeveloper, bureaucrat, sysop
    Send PM
Forum Vet
Threads 4
Posts 597
Most likely because you are posting a message that contains words or characters that the system sees as hacking attacks. For example, kompile with k instead of c works. Some other linux commands have the same issues.


Quote:Mahbub03 Jul 3rd 8:46 pm
Anyone could tell me - why I can't create a new thread? It says " The specified URL cannot be found"


Forum >> NWChem's corner >> General Topics

Who's here now Members 0 Guests 0 Bots/Crawler 1

AWC's: 2.5.10 MediaWiki - Stand Alone Forum Extension
Forum theme style by: AWC