mirror of
https://github.com/QuantumPackage/qp2.git
synced 2024-08-25 05:31:48 +02:00
added the possibility to have a pure active space interaction
This commit is contained in:
parent
2541f1c38f
commit
cbb8d4aa6d
@ -38,7 +38,7 @@ subroutine print_basis_correction
|
|||||||
write(*, '(A29,X,I3,X,A3,X,F16.10)') ' ECMD PBE-UEG , state ',istate,' = ',ecmd_pbe_ueg_mu_of_r(istate)
|
write(*, '(A29,X,I3,X,A3,X,F16.10)') ' ECMD PBE-UEG , state ',istate,' = ',ecmd_pbe_ueg_mu_of_r(istate)
|
||||||
enddo
|
enddo
|
||||||
|
|
||||||
else if(mu_of_r_potential.EQ."cas_ful")then
|
else if(mu_of_r_potential.EQ."cas_ful".or.mu_of_r_potential.EQ."cas_truncated".or.mu_of_r_potential.EQ."pure_act")then
|
||||||
print*, ''
|
print*, ''
|
||||||
print*,'Using a CAS-like two-body density to define mu(r)'
|
print*,'Using a CAS-like two-body density to define mu(r)'
|
||||||
print*,'This assumes that the CAS is a qualitative representation of the wave function '
|
print*,'This assumes that the CAS is a qualitative representation of the wave function '
|
||||||
|
@ -6,7 +6,7 @@ size: (becke_numerical_grid.n_points_final_grid,determinants.n_states)
|
|||||||
|
|
||||||
[mu_of_r_potential]
|
[mu_of_r_potential]
|
||||||
type: character*(32)
|
type: character*(32)
|
||||||
doc: type of potential for the mu(r) interaction: can be [ hf| cas_ful | cas_truncated]
|
doc: type of potential for the mu(r) interaction: can be [ hf| cas_ful | cas_truncated | pure_act]
|
||||||
interface: ezfio, provider, ocaml
|
interface: ezfio, provider, ocaml
|
||||||
default: hf
|
default: hf
|
||||||
|
|
||||||
|
@ -76,7 +76,11 @@ BEGIN_PROVIDER [integer, n_basis_orb]
|
|||||||
!
|
!
|
||||||
! It corresponds to all MOs except those defined as "deleted"
|
! It corresponds to all MOs except those defined as "deleted"
|
||||||
END_DOC
|
END_DOC
|
||||||
n_basis_orb = n_all_but_del_orb
|
if(mu_of_r_potential == "pure_act")then
|
||||||
|
n_basis_orb = n_act_orb
|
||||||
|
else
|
||||||
|
n_basis_orb = n_all_but_del_orb
|
||||||
|
endif
|
||||||
END_PROVIDER
|
END_PROVIDER
|
||||||
|
|
||||||
BEGIN_PROVIDER [integer, list_basis, (n_basis_orb)]
|
BEGIN_PROVIDER [integer, list_basis, (n_basis_orb)]
|
||||||
@ -89,9 +93,15 @@ BEGIN_PROVIDER [integer, list_basis, (n_basis_orb)]
|
|||||||
! It corresponds to all MOs except those defined as "deleted"
|
! It corresponds to all MOs except those defined as "deleted"
|
||||||
END_DOC
|
END_DOC
|
||||||
integer :: i
|
integer :: i
|
||||||
do i = 1, n_all_but_del_orb
|
if(mu_of_r_potential == "pure_act")then
|
||||||
list_basis(i) = list_all_but_del_orb(i)
|
do i = 1, n_act_orb
|
||||||
enddo
|
list_basis(i) = list_act(i)
|
||||||
|
enddo
|
||||||
|
else
|
||||||
|
do i = 1, n_all_but_del_orb
|
||||||
|
list_basis(i) = list_all_but_del_orb(i)
|
||||||
|
enddo
|
||||||
|
endif
|
||||||
END_PROVIDER
|
END_PROVIDER
|
||||||
|
|
||||||
BEGIN_PROVIDER [double precision, basis_mos_in_r_array, (n_basis_orb,n_points_final_grid)]
|
BEGIN_PROVIDER [double precision, basis_mos_in_r_array, (n_basis_orb,n_points_final_grid)]
|
||||||
|
@ -26,7 +26,7 @@
|
|||||||
do ipoint = 1, n_points_final_grid
|
do ipoint = 1, n_points_final_grid
|
||||||
if(mu_of_r_potential.EQ."hf")then
|
if(mu_of_r_potential.EQ."hf")then
|
||||||
mu_of_r_prov(ipoint,istate) = mu_of_r_hf(ipoint)
|
mu_of_r_prov(ipoint,istate) = mu_of_r_hf(ipoint)
|
||||||
else if(mu_of_r_potential.EQ."cas_ful".or.mu_of_r_potential.EQ."cas_truncated")then
|
else if(mu_of_r_potential.EQ."cas_ful".or.mu_of_r_potential.EQ."cas_truncated".or.mu_of_r_potential.EQ."pure_act")then
|
||||||
mu_of_r_prov(ipoint,istate) = mu_of_r_psi_cas(ipoint,istate)
|
mu_of_r_prov(ipoint,istate) = mu_of_r_psi_cas(ipoint,istate)
|
||||||
else
|
else
|
||||||
print*,'you requested the following mu_of_r_potential'
|
print*,'you requested the following mu_of_r_potential'
|
||||||
|
Loading…
Reference in New Issue
Block a user