mirror of
https://github.com/QuantumPackage/qp2.git
synced 2024-12-21 11:03:29 +01:00
Hierarchy CI
This commit is contained in:
parent
19185c06f4
commit
69138a2d25
@ -34,3 +34,9 @@ doc: Maximum number of excitation for beta determinants with respect to the Hart
|
|||||||
interface: ezfio,ocaml,provider
|
interface: ezfio,ocaml,provider
|
||||||
default: -1
|
default: -1
|
||||||
|
|
||||||
|
[twice_hierarchy_max]
|
||||||
|
type: integer
|
||||||
|
doc: Twice the maximum hierarchy parameter (excitation degree plus half the seniority number). Using -1 selects all determinants
|
||||||
|
interface: ezfio,ocaml,provider
|
||||||
|
default: -1
|
||||||
|
|
||||||
|
@ -713,6 +713,25 @@ subroutine fill_buffer_double(i_generator, sp, h1, h2, bannedOrb, banned, fock_d
|
|||||||
if (do_cycle) cycle
|
if (do_cycle) cycle
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
if (twice_hierarchy_max >= 0) then
|
||||||
|
s = 0
|
||||||
|
do k=1,N_int
|
||||||
|
s = s + popcnt(ieor(det(k,1),det(k,2)))
|
||||||
|
enddo
|
||||||
|
if ( mod(s,2)>0 ) stop 'For now, hierarchy CI is defined only for an even number of electrons'
|
||||||
|
if (excitation_ref == 1) then
|
||||||
|
call get_excitation_degree(HF_bitmask,det(1,1),degree,N_int)
|
||||||
|
else if (excitation_ref == 2) then
|
||||||
|
stop 'For now, hierarchy CI is defined only for a single reference determinant'
|
||||||
|
! do k=1,N_dominant_dets_of_cfgs
|
||||||
|
! call get_excitation_degree(dominant_dets_of_cfgs(1,1,k),det(1,1),degree,N_int)
|
||||||
|
! enddo
|
||||||
|
endif
|
||||||
|
integer :: twice_hierarchy
|
||||||
|
twice_hierarchy = degree + s/2
|
||||||
|
if (twice_hierarchy_max > twice_hierarchy_max) cycle
|
||||||
|
endif
|
||||||
|
|
||||||
Hii = diag_H_mat_elem_fock(psi_det_generators(1,1,i_generator),det,fock_diag_tmp,N_int)
|
Hii = diag_H_mat_elem_fock(psi_det_generators(1,1,i_generator),det,fock_diag_tmp,N_int)
|
||||||
|
|
||||||
w = 0d0
|
w = 0d0
|
||||||
|
Loading…
Reference in New Issue
Block a user