SCF fails spinlock with POB-DZVP-REV2
-
Hi,
I'm currently running some molecular calculation as tests before going to periodic one of porphyrin with Co2+.
I'm using spin DFT with a spinloc2 1 -5 setting (with HSEsol).
With POB-DZVP, the calculation finishes successfully while with rev2 it fails after the 4th SCF cycle (sometimes the 3rd) with the good old "NaN at SCF".
I'm not sure what to try beside giving it more memory (which gives the same results) as those are my first calculation with metals.I'm not sure if it's even a bug but since POB-DZVP works and not POB-DZVP-REV2, I figure that there's something that I cannot control at play.
Best,
JeanPS: I also tried with FMIXING 60, spinlock instead of spinloc2, tighter tolinteg but got the same problem.
-
Hi,
Have you tried running a calculation where you specify the full basis set via the general route? This way one could rule out whether the internally stored basis set has some intrinsic error associated with it.
You also have DIIS turned on, which can cause issues with spin locking and cause instabilities. You can try switching it off (NODIIS) or alternatively remove spin lock, set up the spins at the beginning (ATOMSPIN) and monitor whether the DIIS is keeping the right solution.
Still might be a bug, but worth ruling out the simpler possibilities.
Hope it helps.
Cheers,
Aleks -
Aleks Thanks for the suggestions. I'll try them and keep the post updated.
-
So, in short, everything that I tried (ATOMSPIN, NODIIS, explicitly give the basis set and combining all three) failed. Either with a similar error ("NaN" during SCF) or SIGSEGV ("forrtl: severe (174): SIGSEGV, segmentation fault occurred").
-
Hi jquertin,
As Aleks correctly pointed out, it’s better not to use DIIS (which is active by default) when using SPINLOCK.
A good way to combine the two is like this:SPINLOCK 1 -2 THREDIIS 0.005This way, DIIS is only activated when SPINLOCK is turned off.
However, I tried running your input, and it’s likely that this is actually a bug. Unfortunately, I don’t have a better solution at the moment other than changing the functional.
-
Hi again,
I'm now running into the same issue with PBESOLXC in a periodic calculation (3 Co in the assymetric unit) that uses:
nodiis
maxcycle
750
fmixing
90
spinlock
3
-3Best,
Jean -
Dear Jean,
could you please send us the input file for this periodic calculation.Best regards,
Lorenzo
-
Hi,
Yes, of course. Sorry for not including them earlier.
Best,
Jean
metcofs-2d-pc-co-prist-ils35-opt-pob_dzvp_rev2.d12
metcofs-2d-pc-co-prist-ils35-opt-pob_dzvp_rev2.out -
Hi,
I just noticed that the manual is a bit unclear about the difference in the input between SPINLOCK and SPINLOC2.
In the case of SPINLOCK, the manual clearly explain that the NSPIN value is the difference in number of alpha and beta electrons.
For SPINLOC2, the text only refers to the spin while the table gives the same definition for SPIN as for NSPIN (in SPINLOCK). Furthermore, in the calculation, if using SPINLOC2 with 6 or 6.0 as the spin (as defined in the table), crystal defaults to SPINLOCK. (I'm now looking at high spin Ni2+ with 3 nickel per unit cell.)
This sentence in SPINLOC2: "Additionally, it is possible to set the value of SPIN to a real number." is what intrigued me.In short, if I define SPINLOC2 SPIN as 3 (1/2 * 6) or 3.0, crystal defaults to SPINLOCK with NSPIN 3 which is actually half of what I want.
For debugging, I tried SPINLOC2 SPIN 4.5 and it actually use SPINLOC2 as requested.Thanks,
Jean -
Hi,
jquertin said in SCF fails spinlock with POB-DZVP-REV2:
In the case of SPINLOCK, the manual clearly explain that the NSPIN value is the difference in number of alpha and beta electrons. For SPINLOC2, the text only refers to the spin while the table gives the same definition for SPIN as for NSPIN (in SPINLOCK).
The argument SPIN of SPINLOC2 still represents a number of electrons, as in SPINLOCK.
jquertin said in SCF fails spinlock with POB-DZVP-REV2:
Furthermore, in the calculation, if using SPINLOC2 with 6 or 6.0 as the spin (as defined in the table), crystal defaults to SPINLOCK.
That's right. SPINLOC2 requires a non integer argument. For integer arguments it reduces to SPINLOCK.
jquertin said in SCF fails spinlock with POB-DZVP-REV2:
In short, if I define SPINLOC2 SPIN as 3 (1/2 * 6) or 3.0, crystal defaults to SPINLOCK with NSPIN 3 which is actually half of what I want.
In both SPINLOCK and SPINLOC2, the argument is meant as a number of electrons. Thus, if you have 6 extra up electrons with respect to down electrons, the input value should be 6, not 3. For integer values, SPINLOC2 is of no use.
Hope this clarifies things a little,