Hello,
I am trying to interface a Gaussian based GW+BSE code, named FIESTA, to NWCHEM.
To do so, I only need to the eigenvectors, eigenvalues and the <G_i|Vxc|G_j> matrix
evaluated between the gaussian basis functions. I have already a working interface to
format the eigenvectors and eigenvalues to the FIESTA convention. Unfortunately, I have
encountered problems with the Vxc matrix.
In file nwdft/xc/xc_getv.F, I added the print statements:
call ga_print(g_truevxc(1))
if(ipol.eq.2)call ga_print(g_truevxc(2))
after :
call grid_quadv0(rtdb, g_dens, g_truevxc,
& nexc,rho_n, Exc, dbl_mb(itmat))
at line 363 of that file. This prints out what I thought was the matrix I needed.
But it is strange because for some test systems, it does not seem to have the proper symmetries.
Here is an example for a small test system of 4 helium atoms with only 1 s orbital that are
really far from each other:
he -0.00000000 -0.00000000 4.33012702
he 5.77350269 5.77350269 -1.44337567
he 2.11324865 -7.88675135 -1.44337567
he -7.88675135 2.11324865 -1.44337567
The outputed matrix is:
global array: g vxc 1[1:4,1:4], handle: -968
1 2 3 4
----------- ----------- ----------- -----------
1 -0.41806 0.00000 0.00000 0.00000
2 0.00000 0.00000 0.00000 0.00000
3 0.00000 0.00000 0.00000 0.00000
4 0.00000 0.00000 0.00000 -1.25417
Fock_xc Build Time: 0.0s
It would seem that most are added together in the last element (-1.25417 = 3 * -0.41806).
I don't understand why this is the case. It would seem that some processing is needed to
extract the proper matrix. Unfortunately, I can't seem to locate where this is done.
Do you have some suggestions as to where I should move my printing?
|