Computing total energy with -RESTART.wfn and no SCF iterations

841 views
Skip to first unread message

Nuri Yazdani

unread,
Feb 3, 2017, 9:31:12 AM2/3/17
to cp2k
Hi All,
I would like to calculate the total energy and hartree_potential for a system using HF, where I give a -RESTART.wfn file. The thing is, I want it to do the calculation using the wavefunctions from the -RESTART.wfn file without doing any SCF optimization steps (I want to calculate the total energy of a molecule which is *instantaneously* charged, i.e. use the wavefunctions found for the uncharged molecule to calculate the total energy of the charged molecule). 

I set in Section DFT (see attached file):
               &SCF
SCF_GUESS RESTART
MAX_SCF 0
EPS_SCF ${EPS_SCF}
&OT
PRECONDITIONER FULL_SINGLE_INVERSE
&END
&OUTER_SCF
MAX_SCF 0
EPS_SCF ${EPS_SCF}
&END
&END SCF

along with 

&PRINT
&V_HARTREE_CUBE
FILENAME ${FILE}_V.cube
&END V_HARTREE_CUBE
&MO_CUBES
FILENAME ${FILE}.cube
NLUMO  6
NHOMO  6
STRIDE 8 8 8
WRITE_CUBE .TRUE.
&END MO_CUBES
&PDOS 
FILENAME ${FILE}.pdos
NLUMO 1000
&END PDOS
&END PRINT
 
However, it seems with no SCF iterations, none of the files I ask for are printed, and the calculations output file has only the standard start and end text:

**            Copyright (C) by CP2K developers group (2000 - 2017)           **
 **                                                                           **
 *******************************************************************************

 ENERGY| Total FORCE_EVAL ( QS ) energy (a.u.):                0.000000000000000


 -------------------------------------------------------------------------------
 -                                                                             -
 -                                DBCSR STATISTICS                             -

Does anyone know how I can get this to work?? Also, I havent been able to test if this works yet or not, but is it possible to do this using a -RESTART.wfn file from the same system but with different charged state, or will this flag an error?
cheers,
Nuri

Matthias Krack

unread,
Feb 3, 2017, 10:00:37 AM2/3/17
to cp2k
Hi Nuri

MAX_SCF=0 will suppress any SCF iteration. You may try to set EPS_SCF to a large value like 1E6 to enforce an immediate SCF convergence, but you will probably run into new trouble, since the number of MOs on the restart file might not match.

Best

Matthias

Nuri Yazdani

unread,
Feb 3, 2017, 10:59:15 AM2/3/17
to cp2k
HI Matthias, Thanks for the quick reply. The problem with setting the EPS to something high is that it will still perform one optimization step. I want to get the total energy from the supplied wavefunction as is without any modification. 

M. Brehm

unread,
Feb 3, 2017, 3:45:45 PM2/3/17
to cp2k
Just a quick idea: Maybe setting the mixing parameter "Alpha" to zero will do it. Then CP2k will perform one or more SCF steps, but the wave function should not change at all.

Best regards,
Martin

Nuri Yazdani

unread,
Feb 7, 2017, 5:47:24 AM2/7/17
to cp2k

Thanks for the feedback Martin and Matthias! 
Your trick worked Martin, I set the alpha to 0 and then checked the energies and wavefunctions output form the calculation and they were identical to those in the restart file. 
However, you were right Matthias, I was not able to use a restart file for a calculation with a different charge, as the number of MOs did not match up. I will have to think of another way to calculate this....
Anyways, just wanted to close the thread in case someone else may find it helpful in the future.
Cheers,
Nuri

Matthias Krack

unread,
Feb 7, 2017, 6:30:59 AM2/7/17
to cp2k
Hi Nuri

you could try the ADDED_MOS keyword (works with diagonalization) for the initial run with the uncharged system before you give up and close this thread.It should work if there are more MOs on the restart file than needed.

Best

Matthias

Nuri Yazdani

unread,
Feb 16, 2017, 10:24:15 AM2/16/17
to cp2k
HI again,
Thanks for all the help!
Indeed the ADDED_MOS did the trick! 
Just to add: the ADDED_MOS can be used for both addition or removing of charge from the system! 

To calculate with charge removed:
Generate the RESTART file with the neutral system, then in the calculation of the system with charge removed but with the wavefunctions of the neutral system include ADDED_MOS dC, where dC is the removed charge.

To calculate with charge added:
Generate the RESTART file with the neutral system including ADDED_MOS dC, where dC is the charge you want to add in the next step, then in the calculation of the system with charge added do not include the ADDED_MOS.

Cheers,
Nuri
Reply all
Reply to author
Forward
0 new messages