[CPMD-list] VDW / kpoints
Belabbas Imad
belabbas_imad at yahoo.fr
Mon Jan 7 14:35:38 CET 2008
Dear CPMD users,
a week ago, I have posted in the list a mail were I was asking if the VDW correction is currently working in case of k-points sampling. Axel has suggested some tests to be sure about that.
Here are the results of the tests I have performed on the Acetonitrile (C2H3N) molecule and crystal. During these tests I have checked if the subroutines vdwin.F (reading VDW inputs) and vdw.F (evaluating VDW energy, forces, stress) were both called when the VDW correction is applied.
In my tests, I have applied VDW correction (or not) to the molecule. For crystals, I have applied (or not) the VDW correction when I use the gamma point approximation for k-points sampling or a MP Kgrid : 1 1 1.
Here I report the obtained energies ( for a wave function optimization) :
***********************************************************************************************
Molecule case:
Without VDW Enr = -23.08897361 A.U
With VDW Enr = -23.09336017 A.U
Crystal case:
Without VDW + gamma Enr = -92.13954257 A.U.
Without VDW + kgrid111 Enr = -92.13954257 A.U.
With VDW + gamma Enr = -92.17799191 A.U.
With VDW + kgrid111 Enr = -92.13954257 A.U.
*********************************************************************************************
Here are my comments:
* In the molecule case, there is no problem !! if the VDW correction is applied, the subroutines vdwin.F and vdw.F are both called.
* In the crystal case, Whenever the VDW correction is applied the subroutine vdwin.F is always called ( we get the values of the VDW parameters in the output file). However, if one adopt a k-points sampling ( even if vdwin.F is called) the subroutine vdw.F is not called and then the VDW energies, forces and stress are not evaluated. This can be seen in the values of the energies showed previously.
I went trough the code, and I have found that during a wavefunction or a geometry optimization the subroutine that takes care of evaluating the total energy, ionic forces is:
updrho.f (without k-points sampling)
k_forces.f (kpoints sampling)
However, at the opposite of updrho.f , k_forces.f do not contain any call to vdw.f !!. So, I think adding a call to vdw.f in k_forces may fix the problem, I am trying that !!
Can someone comment on that ???
Cheers,
Imad
Ps. I am attaching samples of my input files and a summary of the obtained results
---------------------------------
Ne gardez plus qu'une seule adresse mail ! Copiez vos mails vers Yahoo! Mail
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://cpmd.org/pipermail/cpmd-list/attachments/20080107/5094280c/attachment.html
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Aceto-Cryst-vdw-k111CPMDinput.in
Type: application/octet-stream
Size: 2160 bytes
Desc: 3427102688-Aceto-Cryst-vdw-k111CPMDinput.in
Url : http://cpmd.org/pipermail/cpmd-list/attachments/20080107/5094280c/attachment.obj
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Aceto-molec-vdw-CPMDinput.in
Type: application/octet-stream
Size: 1015 bytes
Desc: 2792783795-Aceto-molec-vdw-CPMDinput.in
Url : http://cpmd.org/pipermail/cpmd-list/attachments/20080107/5094280c/attachment-0001.obj
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: Enrg-Aceto-VDW-tests-.txt
Url: http://cpmd.org/pipermail/cpmd-list/attachments/20080107/5094280c/attachment.txt
More information about the CPMD-list
mailing list