mirror of
https://github.com/LCPQ/quantum_package
synced 2024-11-07 22:53:57 +01:00
Working for Li2 but with **WARNING** bad convergence in int_prod_bessel
This commit is contained in:
parent
25f3b2ee01
commit
268b252e11
@ -209,7 +209,9 @@ if __name__ == "__main__":
|
|||||||
l_str_ele = [str_ele for str_ele in str_.split("Element Symbol: ")
|
l_str_ele = [str_ele for str_ele in str_.split("Element Symbol: ")
|
||||||
if str_ele]
|
if str_ele]
|
||||||
|
|
||||||
l_zeff = []
|
for i in "l_zeff v_k n_k dz_k v_kl n_kl dz_kl".split():
|
||||||
|
exec("{0} = []".format(i))
|
||||||
|
|
||||||
alpha_tot = 0
|
alpha_tot = 0
|
||||||
beta_tot = 0
|
beta_tot = 0
|
||||||
|
|
||||||
@ -228,10 +230,9 @@ if __name__ == "__main__":
|
|||||||
|
|
||||||
l_v, l_n, l_dz = get_v_n_dz_local(str_ele[l:nl])
|
l_v, l_n, l_dz = get_v_n_dz_local(str_ele[l:nl])
|
||||||
|
|
||||||
ezfio.pseudo_klocmax = len(l_v)
|
v_k.append(l_v)
|
||||||
ezfio.pseudo_v_k = l_v
|
n_k.append(l_n)
|
||||||
ezfio.pseudo_n_k = l_n
|
dz_k.append(l_dz)
|
||||||
ezfio.pseudo_dz_k = l_dz
|
|
||||||
|
|
||||||
# ~#~#~#~#~#~#~#~#~ #
|
# ~#~#~#~#~#~#~#~#~ #
|
||||||
# N o n _ L o c a l #
|
# N o n _ L o c a l #
|
||||||
@ -255,10 +256,31 @@ if __name__ == "__main__":
|
|||||||
beta_tot += beta
|
beta_tot += beta
|
||||||
l_zeff.append(zeff)
|
l_zeff.append(zeff)
|
||||||
|
|
||||||
|
# _
|
||||||
|
# /\ _| _| _|_ _ _ _ _|_ o _
|
||||||
|
# /--\ (_| (_| |_ (_) (/_ /_ | | (_)
|
||||||
|
#
|
||||||
|
|
||||||
|
# ~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~ #
|
||||||
|
# Z _ e f f , a l p h a / b e t a _ e l e c #
|
||||||
|
# ~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~ #
|
||||||
|
|
||||||
ezfio.nuclei_nucl_charge = l_zeff
|
ezfio.nuclei_nucl_charge = l_zeff
|
||||||
|
|
||||||
|
print "alpha tot", alpha_tot
|
||||||
|
print "beta tot", beta_tot
|
||||||
|
|
||||||
alpha_tot = ezfio.get_electrons_elec_alpha_num() - alpha_tot
|
alpha_tot = ezfio.get_electrons_elec_alpha_num() - alpha_tot
|
||||||
beta_tot = ezfio.get_electrons_elec_beta_num() - beta_tot
|
beta_tot = ezfio.get_electrons_elec_beta_num() - beta_tot
|
||||||
|
|
||||||
ezfio.electrons_elec_alpha_num = alpha_tot
|
ezfio.electrons_elec_alpha_num = alpha_tot
|
||||||
ezfio.electrons_elec_beta_num = beta_tot
|
ezfio.electrons_elec_beta_num = beta_tot
|
||||||
|
|
||||||
|
# ~#~#~#~#~ #
|
||||||
|
# L o c a l #
|
||||||
|
# ~#~#~#~#~ #
|
||||||
|
|
||||||
|
ezfio.pseudo_klocmax = len(v_k[0])
|
||||||
|
ezfio.pseudo_v_k = zip(*v_k)
|
||||||
|
ezfio.pseudo_n_k = zip(*n_k)
|
||||||
|
ezfio.pseudo_dz_k = zip(*dz_k)
|
||||||
|
@ -102,38 +102,38 @@ Documentation
|
|||||||
`ao_nucl_elec_integral <http://github.com/LCPQ/quantum_package/tree/master/src/MonoInts/pot_ao_ints.irp.f#L1>`_
|
`ao_nucl_elec_integral <http://github.com/LCPQ/quantum_package/tree/master/src/MonoInts/pot_ao_ints.irp.f#L1>`_
|
||||||
interaction nuclear electron
|
interaction nuclear electron
|
||||||
|
|
||||||
`ao_nucl_elec_integral_per_atom <http://github.com/LCPQ/quantum_package/tree/master/src/MonoInts/pot_ao_ints.irp.f#L170>`_
|
`ao_nucl_elec_integral_per_atom <http://github.com/LCPQ/quantum_package/tree/master/src/MonoInts/pot_ao_ints.irp.f#L171>`_
|
||||||
ao_nucl_elec_integral_per_atom(i,j,k) = -<AO(i)|1/|r-Rk|AO(j)>
|
ao_nucl_elec_integral_per_atom(i,j,k) = -<AO(i)|1/|r-Rk|AO(j)>
|
||||||
where Rk is the geometry of the kth atom
|
where Rk is the geometry of the kth atom
|
||||||
|
|
||||||
`give_polynom_mult_center_mono_elec <http://github.com/LCPQ/quantum_package/tree/master/src/MonoInts/pot_ao_ints.irp.f#L317>`_
|
`give_polynom_mult_center_mono_elec <http://github.com/LCPQ/quantum_package/tree/master/src/MonoInts/pot_ao_ints.irp.f#L318>`_
|
||||||
Undocumented
|
Undocumented
|
||||||
|
|
||||||
`i_x1_pol_mult_mono_elec <http://github.com/LCPQ/quantum_package/tree/master/src/MonoInts/pot_ao_ints.irp.f#L445>`_
|
`i_x1_pol_mult_mono_elec <http://github.com/LCPQ/quantum_package/tree/master/src/MonoInts/pot_ao_ints.irp.f#L446>`_
|
||||||
Undocumented
|
Undocumented
|
||||||
|
|
||||||
`i_x2_pol_mult_mono_elec <http://github.com/LCPQ/quantum_package/tree/master/src/MonoInts/pot_ao_ints.irp.f#L516>`_
|
`i_x2_pol_mult_mono_elec <http://github.com/LCPQ/quantum_package/tree/master/src/MonoInts/pot_ao_ints.irp.f#L517>`_
|
||||||
Undocumented
|
Undocumented
|
||||||
|
|
||||||
`int_gaus_pol <http://github.com/LCPQ/quantum_package/tree/master/src/MonoInts/pot_ao_ints.irp.f#L587>`_
|
`int_gaus_pol <http://github.com/LCPQ/quantum_package/tree/master/src/MonoInts/pot_ao_ints.irp.f#L588>`_
|
||||||
Undocumented
|
Undocumented
|
||||||
|
|
||||||
`nai_pol_mult <http://github.com/LCPQ/quantum_package/tree/master/src/MonoInts/pot_ao_ints.irp.f#L238>`_
|
`nai_pol_mult <http://github.com/LCPQ/quantum_package/tree/master/src/MonoInts/pot_ao_ints.irp.f#L239>`_
|
||||||
Undocumented
|
Undocumented
|
||||||
|
|
||||||
`v_e_n <http://github.com/LCPQ/quantum_package/tree/master/src/MonoInts/pot_ao_ints.irp.f#L568>`_
|
`v_e_n <http://github.com/LCPQ/quantum_package/tree/master/src/MonoInts/pot_ao_ints.irp.f#L569>`_
|
||||||
Undocumented
|
Undocumented
|
||||||
|
|
||||||
`v_phi <http://github.com/LCPQ/quantum_package/tree/master/src/MonoInts/pot_ao_ints.irp.f#L632>`_
|
`v_phi <http://github.com/LCPQ/quantum_package/tree/master/src/MonoInts/pot_ao_ints.irp.f#L633>`_
|
||||||
Undocumented
|
Undocumented
|
||||||
|
|
||||||
`v_r <http://github.com/LCPQ/quantum_package/tree/master/src/MonoInts/pot_ao_ints.irp.f#L616>`_
|
`v_r <http://github.com/LCPQ/quantum_package/tree/master/src/MonoInts/pot_ao_ints.irp.f#L617>`_
|
||||||
Undocumented
|
Undocumented
|
||||||
|
|
||||||
`v_theta <http://github.com/LCPQ/quantum_package/tree/master/src/MonoInts/pot_ao_ints.irp.f#L645>`_
|
`v_theta <http://github.com/LCPQ/quantum_package/tree/master/src/MonoInts/pot_ao_ints.irp.f#L646>`_
|
||||||
Undocumented
|
Undocumented
|
||||||
|
|
||||||
`wallis <http://github.com/LCPQ/quantum_package/tree/master/src/MonoInts/pot_ao_ints.irp.f#L661>`_
|
`wallis <http://github.com/LCPQ/quantum_package/tree/master/src/MonoInts/pot_ao_ints.irp.f#L662>`_
|
||||||
Undocumented
|
Undocumented
|
||||||
|
|
||||||
`mo_nucl_elec_integral <http://github.com/LCPQ/quantum_package/tree/master/src/MonoInts/pot_mo_ints.irp.f#L1>`_
|
`mo_nucl_elec_integral <http://github.com/LCPQ/quantum_package/tree/master/src/MonoInts/pot_mo_ints.irp.f#L1>`_
|
||||||
|
@ -21,12 +21,12 @@
|
|||||||
!
|
!
|
||||||
|
|
||||||
integer klocmax
|
integer klocmax
|
||||||
integer, allocatable :: n_k(:)
|
integer, allocatable :: n_k(:,:)
|
||||||
double precision, allocatable :: v_k(:), dz_k(:)
|
double precision, allocatable :: v_k(:,:), dz_k(:,:)
|
||||||
|
|
||||||
call ezfio_get_pseudo_klocmax(klocmax)
|
call ezfio_get_pseudo_klocmax(klocmax)
|
||||||
|
|
||||||
allocate(n_k(klocmax),v_k(klocmax), dz_k(klocmax))
|
allocate(n_k(nucl_num,klocmax),v_k(nucl_num,klocmax), dz_k(nucl_num,klocmax))
|
||||||
|
|
||||||
call ezfio_get_pseudo_v_k(v_k)
|
call ezfio_get_pseudo_v_k(v_k)
|
||||||
call ezfio_get_pseudo_n_k(n_k)
|
call ezfio_get_pseudo_n_k(n_k)
|
||||||
@ -49,14 +49,13 @@
|
|||||||
! dz_k(2) = 3.67918975
|
! dz_k(2) = 3.67918975
|
||||||
! dz_k(3) = 1.60507673
|
! dz_k(3) = 1.60507673
|
||||||
|
|
||||||
|
print*, "nucl_num", nucl_num
|
||||||
print*, "klocmax", klocmax
|
print*, "klocmax", klocmax
|
||||||
|
|
||||||
print*, "n_k_ezfio", n_k
|
print*, "n_k_ezfio", n_k
|
||||||
print*, "v_k_ezfio",v_k
|
print*, "v_k_ezfio",v_k
|
||||||
print*, "dz_k_ezfio", dz_k
|
print*, "dz_k_ezfio", dz_k
|
||||||
|
|
||||||
|
|
||||||
!
|
!
|
||||||
! |\ | _ ._ | _ _ _. |
|
! |\ | _ ._ | _ _ _. |
|
||||||
! | \| (_) | | | (_) (_ (_| |
|
! | \| (_) | | | (_) (_ (_| |
|
||||||
@ -79,8 +78,6 @@
|
|||||||
call ezfio_get_pseudo_v_kl(v_kl)
|
call ezfio_get_pseudo_v_kl(v_kl)
|
||||||
call ezfio_get_pseudo_dz_kl(dz_kl)
|
call ezfio_get_pseudo_dz_kl(dz_kl)
|
||||||
|
|
||||||
print*, "raw"
|
|
||||||
|
|
||||||
print*, "kmax", kmax
|
print*, "kmax", kmax
|
||||||
print*, "lmax",lmax
|
print*, "lmax",lmax
|
||||||
|
|
||||||
@ -116,7 +113,7 @@
|
|||||||
!$OMP PRIVATE (i, j, k, l, m, alpha, beta, A_center, B_center, C_center, power_A, power_B, &
|
!$OMP PRIVATE (i, j, k, l, m, alpha, beta, A_center, B_center, C_center, power_A, power_B, &
|
||||||
!$OMP num_A, num_B, Z, c, n_pt_in, dump) &
|
!$OMP num_A, num_B, Z, c, n_pt_in, dump) &
|
||||||
!$OMP SHARED (ao_num,ao_prim_num,ao_expo_transp,ao_power,ao_nucl,nucl_coord,ao_coef_transp, &
|
!$OMP SHARED (ao_num,ao_prim_num,ao_expo_transp,ao_power,ao_nucl,nucl_coord,ao_coef_transp, &
|
||||||
!$OMP n_pt_max_integrals,ao_nucl_elec_integral,nucl_num,nucl_charge, &
|
!$OMP n_pt_max_integrals,ao_nucl_elec_integral,nucl_num,nucl_charge,nucl_label, &
|
||||||
!$OMP v_k, n_k, dz_k, klocmax, &
|
!$OMP v_k, n_k, dz_k, klocmax, &
|
||||||
!$OMP lmax,kmax,v_kl,n_kl,dz_kl)
|
!$OMP lmax,kmax,v_kl,n_kl,dz_kl)
|
||||||
|
|
||||||
@ -150,7 +147,7 @@
|
|||||||
|
|
||||||
c = c - Z*NAI_pol_mult(A_center,B_center,power_A,power_B,alpha,beta,C_center,n_pt_in)
|
c = c - Z*NAI_pol_mult(A_center,B_center,power_A,power_B,alpha,beta,C_center,n_pt_in)
|
||||||
|
|
||||||
c = c + Vloc( klocmax ,v_k ,n_k ,dz_k, A_center,power_A,alpha,B_center,power_B,beta,C_center)
|
c = c + Vloc( klocmax ,v_k(k,:) ,n_k(k,:) ,dz_k(k,:), A_center,power_A,alpha,B_center,power_B,beta,C_center)
|
||||||
c = c + Vpseudo(lmax,kmax,v_kl,n_kl,dz_kl,A_center,power_A,alpha,B_center,power_B,beta,C_center)
|
c = c + Vpseudo(lmax,kmax,v_kl,n_kl,dz_kl,A_center,power_A,alpha,B_center,power_B,beta,C_center)
|
||||||
! c = c - Vps(A_center,power_A,alpha,B_center,power_B,beta,C_center,klocmax,v_k,n_k,dz_k,lmax,kmax,v_kl,n_kl,dz_kl)
|
! c = c - Vps(A_center,power_A,alpha,B_center,power_B,beta,C_center,klocmax,v_k,n_k,dz_k,lmax,kmax,v_kl,n_kl,dz_kl)
|
||||||
|
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
pseudo
|
pseudo
|
||||||
klocmax integer
|
klocmax integer
|
||||||
v_k double precision (pseudo_klocmax)
|
v_k double precision (nuclei_nucl_num,pseudo_klocmax)
|
||||||
n_k integer (pseudo_klocmax)
|
n_k integer (nuclei_nucl_num,pseudo_klocmax)
|
||||||
dz_k double precision (pseudo_klocmax)
|
dz_k double precision (nuclei_nucl_num,pseudo_klocmax)
|
||||||
lmaxpo integer
|
lmaxpo integer
|
||||||
kmax integer
|
kmax integer
|
||||||
v_kl double precision (pseudo_kmax,pseudo_lmaxpo)
|
v_kl double precision (pseudo_kmax,pseudo_lmaxpo)
|
||||||
|
Loading…
Reference in New Issue
Block a user