mirror of
https://github.com/QuantumPackage/qp2.git
synced 2024-12-22 12:23:43 +01:00
Fixed small bugs
This commit is contained in:
parent
92e44f53ba
commit
82bbf95fea
@ -141,6 +141,10 @@ END_PROVIDER
|
||||
n_act_orb_tmp = 0
|
||||
n_virt_orb_tmp = 0
|
||||
n_del_orb_tmp = 0
|
||||
core_bitmask = 0_bit_kind
|
||||
inact_bitmask = 0_bit_kind
|
||||
act_bitmask = 0_bit_kind
|
||||
virt_bitmask = 0_bit_kind
|
||||
do i = 1, mo_num
|
||||
if(mo_class(i) == 'Core')then
|
||||
n_core_orb_tmp += 1
|
||||
|
@ -3,8 +3,8 @@ program casscf
|
||||
BEGIN_DOC
|
||||
! TODO : Put the documentation of the program here
|
||||
END_DOC
|
||||
! no_vvvv_integrals = .True.
|
||||
! SOFT_TOUCH no_vvvv_integrals
|
||||
no_vvvv_integrals = .True.
|
||||
SOFT_TOUCH no_vvvv_integrals
|
||||
call run
|
||||
end
|
||||
|
||||
@ -13,15 +13,13 @@ subroutine run
|
||||
double precision :: energy_old, energy
|
||||
logical :: converged
|
||||
integer :: iteration
|
||||
PROVIDE mo_two_e_integrals_in_map
|
||||
converged = .False.
|
||||
|
||||
energy = 0.d0
|
||||
mo_label = "MCSCF"
|
||||
iteration = 1
|
||||
do while (.not.converged)
|
||||
call run_cipsi
|
||||
|
||||
call run_stochastic_cipsi
|
||||
energy_old = energy
|
||||
energy = eone+etwo+ecore
|
||||
|
||||
@ -39,6 +37,7 @@ subroutine run
|
||||
iteration += 1
|
||||
FREE mo_integrals_map mo_two_e_integrals_in_map psi_det psi_coef
|
||||
SOFT_TOUCH mo_coef N_det
|
||||
|
||||
enddo
|
||||
|
||||
end
|
||||
|
@ -135,7 +135,7 @@ subroutine ZMQ_pt2(E, pt2,relative_error, error, variance, norm, N_in)
|
||||
PROVIDE psi_occ_pattern_hii det_to_occ_pattern
|
||||
endif
|
||||
|
||||
if (N_det < max(4,N_states)) then
|
||||
if (N_det <= max(4,N_states)) then
|
||||
pt2=0.d0
|
||||
variance=0.d0
|
||||
norm=0.d0
|
||||
@ -719,6 +719,15 @@ END_PROVIDER
|
||||
|
||||
double precision :: rss
|
||||
double precision, external :: memory_of_double, memory_of_int
|
||||
if (N_det_generators == 1) then
|
||||
pt2_w = 1.d0
|
||||
pt2_cw = 1.d0
|
||||
pt2_W_T = 1.d0
|
||||
pt2_u_0 = 1.d0
|
||||
pt2_n_0 = 1
|
||||
return
|
||||
endif
|
||||
|
||||
rss = memory_of_double(2*N_det_generators+1)
|
||||
call check_mem(rss,irp_here)
|
||||
|
||||
@ -754,7 +763,7 @@ END_PROVIDER
|
||||
end if
|
||||
pt2_n_0(1) += 1
|
||||
if(N_det_generators - pt2_n_0(1) < pt2_minDetInFirstTeeth * pt2_N_teeth) then
|
||||
stop "teeth building failed"
|
||||
print *, "teeth building failed"
|
||||
end if
|
||||
end do
|
||||
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||
|
@ -55,6 +55,7 @@ END_PROVIDER
|
||||
nongen(inongen) = i
|
||||
endif
|
||||
enddo
|
||||
ASSERT (m == N_det_generators)
|
||||
|
||||
psi_det_sorted_gen(:,:,:N_det_generators) = psi_det_generators(:,:,:N_det_generators)
|
||||
psi_coef_sorted_gen(:N_det_generators, :) = psi_coef_generators(:N_det_generators, :)
|
||||
|
Loading…
Reference in New Issue
Block a user