Implementation of the NVPT for APTs and AATs in velocity form#2568
Implementation of the NVPT for APTs and AATs in velocity form#2568fstein93 merged 13 commits intocp2k:masterfrom
Conversation
…y Perturbation Theory - Fix warnings, test the MPI version - Fix the multigrid - make pretty - Attributions and some comments
Delete some output MFP Flag
fstein93
left a comment
There was a problem hiding this comment.
I made some comments. I did not mark everything. I especially ask you to give parameters the PARAMETER attribute and check whether you can drop some POINTER attributes or replace them with ALLOCATABLE attributes.
|
Great, thanks a lot! |
| mint(i, j)%block = 0._dp | ||
| END DO | ||
| END DO | ||
| ASSOCIATE ( & |
There was a problem hiding this comment.
Should the ASSOCIATE construct also be used here?
There was a problem hiding this comment.
I think it does make sense here. I am aware that your former suggestion corresponds to the legacy coding style in CP2K. But with the ASSOCIATE construct it is clear that the variables are runtime constants.
There was a problem hiding this comment.
Okay, I replaced the pointer assignments in all files that are touched by this PR.
|
It appears that either fpretty has an issue with aligning Is there anything else left to do? |
|
Usually, it works quite well because If the tests run smoothly, I will merge your PR. |
|
Hi! Maybe the input parameters shall be changed after your update? Best, ################# Error termination. Backtrace:
|
|
The error is probably due to this change: https://github.com/cp2k/cp2k/pull/2568/files#diff-878e9543a198580fa55ff8b5adf912a7685b7c588d6fccbfeb396e0c8378391aL408 (in master Line 840 in 306f83e My understanding is, that In https://github.com/cp2k/cp2k/blob/master/src/qs_moments.F#L2280-L2290 it looks like the dipole moments and their first derivatives are allocated, but the quadrupoles and their first derivatives are requested from |
|
This PR has also introduced a number of coding convention problems. For example, Line 631 in f387d9e |
|
I will have a look at those. Sorry about that! |
Dear CP2K Developers,
This pull-request includes the implementation of the Nuclear Velocity Perturbation Theory (NVPT) as described in doi.org/10.1021/acs.jctc.2c00006. The perturbed MO coefficients (with respect to nuclear velocities) are used to calculate the Atomic Polar/Axial Tensors in the velocity representation. The resulting output can be used, together with a Hessian matrix, to calculate vibrational circular dichroism spectra.
The previous implementation of the nuclear displacement perturbation is contained in the new
vcd_envasvcd_env%dcdr_env.