Energy=0 for large df-ccsd(t) calculations

Hi,

Large df-ccsd(t) and fno-df-ccsd(t) calculations result in energy being zero.
see below for the output. Smaller df-ccsd(t) calculations are fine.
local gnu compilation with mkl.
Any ideas?

Let me know if you need additional info.

cheers,
Holger


                          Psi4 0.3.250 Driver

                      Git: Rev {master} 0081a7b dirty
[....]
  => Primary Basis Set <= 

  Basis Set: DEF2-SVP
Number of shells: 290
Number of basis function: 632
Number of Cartesian functions: 669
Spherical Harmonics?: true
Max angular momentum: 2

=> Auxiliary Basis Set <= 

Basis Set: DEF2-SVP-RI
Number of shells: 728
Number of basis function: 2098
Number of Cartesian functions: 2383
Spherical Harmonics?: true
Max angular momentum: 3

Number of auxiliary functions:        2098

==> Frozen Natural Orbitals <==

    Doubles contribution to MP2 energy in full space:      -5.693226392180

    Cutoff for significant NO occupancy: 1.000e-06

    Number of virtual orbitals in original space:    489
    Number of virtual orbitals in truncated space:   489

 ==> Memory <==

    Total memory available:          120162.96 mb

    CCSD memory requirements:         83064.81 mb
        3-index integrals:             6912.28 mb
        CCSD intermediates:           76152.53 mb

    (T) part (regular algorithm):     63331.10 mb

 ==> Input parameters <==

    Freeze core orbitals?                 yes
    Use frozen natural orbitals?          yes
    r_convergence:                  1.000e-07
    e_convergence:                  1.000e-06
    Number of DIIS vectors:                 4
    Number of frozen core orbitals:        41
    Number of active occupied orbitals:   102
    Number of active virtual orbitals:    489
    Number of frozen virtual orbitals:      0


 Begin singles and doubles coupled cluster iterations

 Iter  DIIS          Energy       d(Energy)          |d(T)|     time
  0   0 1    0.0000000000    0.0000000000    1.2897468632      440
  1   1 1    0.0000000000    0.0000000000    1.2897468632     9369

Can you provide the input.dat file?

yes sure, see below (not yet allowed to upload).


molecule upu {
-1 1
H    -5.0209632    2.6262239    0.9455459 
O    -4.2400389    2.1925254    0.5665500 
C    -4.4928824    1.9684076   -0.8288992 
H    -4.9542132    2.8514142   -1.2867260 
H    -5.1623462    1.1089123   -0.9716041 
C    -3.1941215    1.6639589   -1.5369371 
H    -3.4275656    1.4108960   -2.5787065 
O    -2.3219984    2.8346815   -1.5363557 
C    -0.9732214    2.4395291   -1.3824410 
H    -0.3479935    2.9173130   -2.1383561 
N    -0.4725116    2.9128802   -0.0516810 
C    -1.3240584    3.3308610    0.9391960 
H    -2.3784670    3.2537985    0.6965826 
C    -0.8802020    3.7962673    2.1338390 
H    -1.5774031    4.1214656    2.8944680 
C     0.5309825    3.8809477    2.3986800 
O     1.0703535    4.3034129    3.4270965 
N     1.3268504    3.4075228    1.3390642 
H     2.3345472    3.4471989    1.4684354 
C     0.9063554    2.9179838    0.1196198 
O     1.6837323    2.5410195   -0.7573277 
C    -2.3250237    0.5553668   -0.9379112 
H    -2.3312693    0.5959558    0.1558435 
C    -0.9420641    0.9129399   -1.4934760 
H    -0.1068781    0.4682769   -0.9474740 
O    -0.8623503    0.5879058   -2.8836835 
H    -1.4471213   -0.1810944   -3.0214125 
O    -2.7994431   -0.7224808   -1.3747659 
P    -2.6128469   -2.0172271   -0.3540581 
O    -3.3789706   -3.1203485   -1.0157780 
O    -2.8476897   -1.5817771    1.0575374 
O    -1.0014193   -2.3194568   -0.4384723 
C    -0.4478707   -2.7956984   -1.6817968 
H    -0.7137362   -2.1184432   -2.4994052 
H    -0.8437097   -3.7912688   -1.9094413 
C     1.0551746   -2.8794892   -1.5615131 
H     1.4468824   -3.2799378   -2.5061073 
O     1.6119912   -1.5540709   -1.3460484 
C     2.7626282   -1.6327928   -0.5224282 
H     3.6180955   -1.1609286   -1.0062693 
N     2.5124212   -0.8705839    0.7347134 
C     1.2474473   -0.7057556    1.2396101 
H     0.4554603   -1.1444551    0.6412561 
C     1.0042152   -0.0422655    2.3972099 
H    -0.0057338    0.0719565    2.7680647 
C     2.0984780    0.5049884    3.1598408 
O     2.0222681    1.1178911    4.2289523 
N     3.3565482    0.2799105    2.5732877 
H     4.1667216    0.6340971    3.0758497 
C     3.6353974   -0.3838691    1.3976802 
O     4.7795732   -0.5562671    0.9784469 
C     1.6046482   -3.7144327   -0.4042330 
H     1.0067330   -3.5684518    0.5007106 
C     3.0142712   -3.1185650   -0.2314534 
H     3.4356453   -3.2746626    0.7675919 
O     3.8813091   -3.6355402   -1.2401394 
H     3.5764918   -4.5520729   -1.4000962 
O     1.6266676   -5.0902294   -0.7840713 
H     1.6622231   -5.6301852    0.0233963 
}

set globals {
basis def2-SVP
#basis def2-TZVP

# DF
scf_type df
DF_BASIS_SCF def2-SVP-jkfit
df_basis_cc def2-svp-ri
guess read
#CD
#    scf_type cd
#    df_basis_cc cholesky

#DF_SCF_GUESS false
DIIS_MAX_VECS 4
freeze_core true
}

memory 126 Gb
set_num_threads(8)
energy('df-ccsd(t)')

I can try to take a look. Does it really take that much memory? Might be hard to test if so.

The example runs with just below 64Gb allocated virt mem, if one specifies 68Gb memory in the input (T2 on disk).
Below 68Gb psi4 complains and exits.

I just ran the example with the def2-SV§ basis set and it works fine, i.e. i get a non-zero energy.
for def2-SV§ the memory requirements are:

CCSD memory requirements:         62737.11 mb
    3-index integrals:             5749.08 mb
    CCSD intermediates:           56988.03 mb

maybe an integer overflow somewhere?

If anyone can give me tips where to start looking, I can try my luck as well, but i am more a fortran guy and some c++ things are confusing.

I can reproduce this on a 64gb machine. I’m sure it is an integer overflow, and I’m looking into it.

OK, I think I’ve fixed the problem. I haven’t run the job to convergence, but the MP2 at least agrees with that from df-mp2. I checked the code into psi4public, so grab a fresh copy and recompile. Please let me know if this problem persists.

hi, it seems indeed fixed! Thanks a lot. I get a normal looking CCSD correlation energy. The (T) is still running, in case it results to 0 or similar I will report it.

otherwise the topic can be considered closed.