B3LYP segmentation fault

#1

Hi,

I am computing a lot of molecules for a database following this simple procedure:

  1. fetch starting geometry (pubchem or chemspider)
  2. relax with B3LYP
  3. run CCSD

I occasionally get segmentation faults during B3LYP step. Sometimes switching from pubchem to chemspider geometry solves the problem. Other times it does not work, and I end up relaxing the structure with MP2, which almost always succeeds.
If I use MP2 to relax, I would still do an energy run with B3LYP, just to save energy levels and density.
However, it sometimes happens that B3LYP energy run halts with a segmentation fault, and no other error message.

Here is an example input that causes the problem, geometry was relaxed with MP2:

import psi4
import numpy

psi4.set_memory(‘16 GB’) # tried 24 GB too

mol = psi4.geometry("""
units ang
symmetry c1
O 1.730188188193 0.147134170472 -1.541079571468
O -1.972430673095 1.400015800140 -1.061946749537
O -0.781339312812 -2.021576227936 0.604416105325
O 1.672063999896 -0.277249340562 0.631609932786
O -0.092131489300 2.178597970266 -0.188517688713
O -1.355983244818 -0.092340668662 1.527263395006
N 1.172565423737 -0.093180910450 -0.473730503089
N -0.831554065574 1.298925478150 -0.618838469965
N -0.889102361362 -0.799081785244 0.639635167804
C -0.325193558978 -0.112529063318 -0.570391259620
H -0.630663110642 -0.646728415742 -1.474001655305
“”")

mol.fix_com(True)
mol.fix_orientation(True)

psi4.set_options({‘basis’: ‘cc-pvdz’})
psi4.set_options({‘cachelevel’: 0}) # tried 0,1,2… all failed
psi4.set_options({‘reference’: ‘rhf’})
psi4.set_options({‘DF_SCF_GUESS’: ‘false’}) # tried both
psi4.set_options({‘scf_type’: ‘out_of_core’}) # tried all!
E, wf = psi4.energy(‘B3LYP’, molecule=mol, return_wfn=True)

The output stops here:

==> Integral Setup <==

==> DiskJK: Disk-Based J/K Matrices <==

J tasked:                  Yes
K tasked:                  Yes
wK tasked:                  No
Memory [MiB]:            10706
Schwarz Cutoff:          1E-12

Even with the other scf_type, or guess type, the calculation does not get past the integral setup.
HF and MP2 calculations give no troubles with this structure. The code was compiled from source, version 1.3a2.dev362, and 1.3a2.dev402
Any idea about what is going on and how to fix it?

#2

How recent is dev402? We fixed a bug just two weeks ago that would occasionally cause segfaults in DFT, right about where your output stopped. I ran your input file on 1.3rc2 and can’t reproduce the issue. We normally only see this bug with large grids, but apart from that, what you’re reporting matches that bug.

If dev402 predates that PR, try 1.3rc2 because there’s a good chance it will solve the issue. If it doesn’t, try 1.3rc2 anyways to verify that you can still produce the bug on that version.

#3

My folder timestamp is Jan 23.
Thanks for the tip. I will test and let you know.

I did a git pull origin master and rebuilt… it seems to go past the integral setup now.
For some reason psi4 --version returns undefined so I’m not sure which version it is using.

Thanks a lot for your quick feedback!

#4

It’ll say which version it’s using at the top of the output file, as well.

Either way, glad to hear it! I’ll go ahead and mark this issue as solved.

closed #5

This topic was automatically closed 60 days after the last reply. New replies are no longer allowed.