Merge branch 'develop'
@ -31,14 +31,14 @@ OPENMP : 1 ; Append OpenMP flags
|
|||||||
# -ftz : Flushes denormal results to zero
|
# -ftz : Flushes denormal results to zero
|
||||||
#
|
#
|
||||||
[OPT]
|
[OPT]
|
||||||
FCFLAGS : -xHost -O2 -ip -opt-prefetch -ftz -g
|
FCFLAGS : -xSSE4.2 -O2 -ip -opt-prefetch -ftz -g
|
||||||
|
|
||||||
# Profiling flags
|
# Profiling flags
|
||||||
#################
|
#################
|
||||||
#
|
#
|
||||||
[PROFILE]
|
[PROFILE]
|
||||||
FC : -p -g
|
FC : -p -g
|
||||||
FCFLAGS : -xHost -O2 -ip -opt-prefetch -ftz
|
FCFLAGS : -xSSE4.2 -O2 -ip -opt-prefetch -ftz
|
||||||
|
|
||||||
# Debugging flags
|
# Debugging flags
|
||||||
#################
|
#################
|
||||||
|
4
configure
vendored
@ -17,9 +17,11 @@ Options:
|
|||||||
who contains a binary, than you can compile then
|
who contains a binary, than you can compile then
|
||||||
individualy if you want
|
individualy if you want
|
||||||
|
|
||||||
Example:
|
Examples:
|
||||||
|
|
||||||
./configure config/gfortran.cfg --production
|
./configure config/gfortran.cfg --production
|
||||||
|
./configure config/ifort.cfg --development
|
||||||
|
|
||||||
|
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
8
ocaml/.gitignore
vendored
@ -38,12 +38,12 @@ qp_print
|
|||||||
qp_run
|
qp_run
|
||||||
qp_set_ddci
|
qp_set_ddci
|
||||||
qp_set_mo_class
|
qp_set_mo_class
|
||||||
Input_pseudo.ml
|
|
||||||
Input_integrals_bielec.ml
|
|
||||||
Input_hartree_fock.ml
|
|
||||||
Input_perturbation.ml
|
|
||||||
Input_determinants.ml
|
Input_determinants.ml
|
||||||
|
Input_hartree_fock.ml
|
||||||
|
Input_integrals_bielec.ml
|
||||||
|
Input_perturbation.ml
|
||||||
Input_properties.ml
|
Input_properties.ml
|
||||||
|
Input_pseudo.ml
|
||||||
qp_edit.ml
|
qp_edit.ml
|
||||||
qp_edit
|
qp_edit
|
||||||
qp_edit.native
|
qp_edit.native
|
||||||
|
36
plugins/Alavi/.gitignore
vendored
@ -1,23 +1,23 @@
|
|||||||
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
|
# Automatically created by $QP_ROOT/scripts/module/module_handler.py
|
||||||
IRPF90_temp
|
|
||||||
IRPF90_man
|
|
||||||
irpf90_entities
|
|
||||||
tags
|
|
||||||
irpf90.make
|
|
||||||
Makefile
|
|
||||||
Makefile.depend
|
|
||||||
.ninja_log
|
|
||||||
.ninja_deps
|
.ninja_deps
|
||||||
ezfio_interface.irp.f
|
.ninja_log
|
||||||
Ezfio_files
|
AO_Basis
|
||||||
|
Bitmask
|
||||||
Determinants
|
Determinants
|
||||||
|
Electrons
|
||||||
|
Ezfio_files
|
||||||
|
IRPF90_man
|
||||||
|
IRPF90_temp
|
||||||
|
Integrals_Bielec
|
||||||
Integrals_Monoelec
|
Integrals_Monoelec
|
||||||
MO_Basis
|
MO_Basis
|
||||||
Utils
|
Makefile
|
||||||
Pseudo
|
Makefile.depend
|
||||||
Bitmask
|
|
||||||
AO_Basis
|
|
||||||
Electrons
|
|
||||||
Nuclei
|
Nuclei
|
||||||
Integrals_Bielec
|
Pseudo
|
||||||
alavi_graph
|
Utils
|
||||||
|
alavi_graph
|
||||||
|
ezfio_interface.irp.f
|
||||||
|
irpf90.make
|
||||||
|
irpf90_entities
|
||||||
|
tags
|
48
plugins/CAS_SD/.gitignore
vendored
@ -1,30 +1,30 @@
|
|||||||
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
|
# Automatically created by $QP_ROOT/scripts/module/module_handler.py
|
||||||
IRPF90_temp
|
.ninja_deps
|
||||||
|
.ninja_log
|
||||||
|
AO_Basis
|
||||||
|
Bitmask
|
||||||
|
Determinants
|
||||||
|
Electrons
|
||||||
|
Ezfio_files
|
||||||
|
Generators_CAS
|
||||||
|
Hartree_Fock
|
||||||
IRPF90_man
|
IRPF90_man
|
||||||
irpf90_entities
|
IRPF90_temp
|
||||||
tags
|
Integrals_Bielec
|
||||||
irpf90.make
|
Integrals_Monoelec
|
||||||
|
MOGuess
|
||||||
|
MO_Basis
|
||||||
Makefile
|
Makefile
|
||||||
Makefile.depend
|
Makefile.depend
|
||||||
.ninja_log
|
|
||||||
.ninja_deps
|
|
||||||
ezfio_interface.irp.f
|
|
||||||
Ezfio_files
|
|
||||||
Perturbation
|
|
||||||
Determinants
|
|
||||||
Utils
|
|
||||||
Integrals_Monoelec
|
|
||||||
MO_Basis
|
|
||||||
Selectors_full
|
|
||||||
Integrals_Bielec
|
|
||||||
Pseudo
|
|
||||||
Bitmask
|
|
||||||
Generators_CAS
|
|
||||||
AO_Basis
|
|
||||||
Electrons
|
|
||||||
MOGuess
|
|
||||||
Nuclei
|
Nuclei
|
||||||
Hartree_Fock
|
Perturbation
|
||||||
Properties
|
Properties
|
||||||
|
Pseudo
|
||||||
|
Selectors_full
|
||||||
|
Utils
|
||||||
|
cas_sd
|
||||||
cas_sd_selected
|
cas_sd_selected
|
||||||
cas_sd
|
ezfio_interface.irp.f
|
||||||
|
irpf90.make
|
||||||
|
irpf90_entities
|
||||||
|
tags
|
@ -5,6 +5,12 @@ from generate_h_apply import *
|
|||||||
s = H_apply("CAS_SD")
|
s = H_apply("CAS_SD")
|
||||||
print s
|
print s
|
||||||
|
|
||||||
|
|
||||||
|
s = H_apply("CAS_SD_selected_no_skip")
|
||||||
|
s.set_selection_pt2("epstein_nesbet_2x2")
|
||||||
|
s.unset_skip()
|
||||||
|
print s
|
||||||
|
|
||||||
s = H_apply("CAS_SD_selected")
|
s = H_apply("CAS_SD_selected")
|
||||||
s.set_selection_pt2("epstein_nesbet_2x2")
|
s.set_selection_pt2("epstein_nesbet_2x2")
|
||||||
print s
|
print s
|
||||||
|
@ -17,52 +17,69 @@ Documentation
|
|||||||
Undocumented
|
Undocumented
|
||||||
|
|
||||||
|
|
||||||
`h_apply_cas_sd <http://github.com/LCPQ/quantum_package/tree/master/src/CAS_SD/H_apply.irp.f_shell_16#L408>`_
|
`h_apply_cas_sd <http://github.com/LCPQ/quantum_package/tree/master/src/CAS_SD/H_apply.irp.f_shell_22#L408>`_
|
||||||
Calls H_apply on the HF determinant and selects all connected single and double
|
Calls H_apply on the HF determinant and selects all connected single and double
|
||||||
excitations (of the same symmetry). Auto-generated by the ``generate_h_apply`` script.
|
excitations (of the same symmetry). Auto-generated by the ``generate_h_apply`` script.
|
||||||
|
|
||||||
|
|
||||||
`h_apply_cas_sd_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/CAS_SD/H_apply.irp.f_shell_16#L1>`_
|
`h_apply_cas_sd_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/CAS_SD/H_apply.irp.f_shell_22#L1>`_
|
||||||
Generate all double excitations of key_in using the bit masks of holes and
|
Generate all double excitations of key_in using the bit masks of holes and
|
||||||
particles.
|
particles.
|
||||||
Assume N_int is already provided.
|
Assume N_int is already provided.
|
||||||
|
|
||||||
|
|
||||||
`h_apply_cas_sd_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/CAS_SD/H_apply.irp.f_shell_16#L264>`_
|
`h_apply_cas_sd_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/CAS_SD/H_apply.irp.f_shell_22#L264>`_
|
||||||
Generate all single excitations of key_in using the bit masks of holes and
|
Generate all single excitations of key_in using the bit masks of holes and
|
||||||
particles.
|
particles.
|
||||||
Assume N_int is already provided.
|
Assume N_int is already provided.
|
||||||
|
|
||||||
|
|
||||||
`h_apply_cas_sd_pt2 <http://github.com/LCPQ/quantum_package/tree/master/src/CAS_SD/H_apply.irp.f_shell_16#L1848>`_
|
`h_apply_cas_sd_pt2 <http://github.com/LCPQ/quantum_package/tree/master/src/CAS_SD/H_apply.irp.f_shell_22#L2586>`_
|
||||||
Calls H_apply on the HF determinant and selects all connected single and double
|
Calls H_apply on the HF determinant and selects all connected single and double
|
||||||
excitations (of the same symmetry). Auto-generated by the ``generate_h_apply`` script.
|
excitations (of the same symmetry). Auto-generated by the ``generate_h_apply`` script.
|
||||||
|
|
||||||
|
|
||||||
`h_apply_cas_sd_pt2_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/CAS_SD/H_apply.irp.f_shell_16#L1362>`_
|
`h_apply_cas_sd_pt2_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/CAS_SD/H_apply.irp.f_shell_22#L2100>`_
|
||||||
Generate all double excitations of key_in using the bit masks of holes and
|
Generate all double excitations of key_in using the bit masks of holes and
|
||||||
particles.
|
particles.
|
||||||
Assume N_int is already provided.
|
Assume N_int is already provided.
|
||||||
|
|
||||||
|
|
||||||
`h_apply_cas_sd_pt2_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/CAS_SD/H_apply.irp.f_shell_16#L1666>`_
|
`h_apply_cas_sd_pt2_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/CAS_SD/H_apply.irp.f_shell_22#L2404>`_
|
||||||
Generate all single excitations of key_in using the bit masks of holes and
|
Generate all single excitations of key_in using the bit masks of holes and
|
||||||
particles.
|
particles.
|
||||||
Assume N_int is already provided.
|
Assume N_int is already provided.
|
||||||
|
|
||||||
|
|
||||||
`h_apply_cas_sd_selected <http://github.com/LCPQ/quantum_package/tree/master/src/CAS_SD/H_apply.irp.f_shell_16#L1116>`_
|
`h_apply_cas_sd_selected <http://github.com/LCPQ/quantum_package/tree/master/src/CAS_SD/H_apply.irp.f_shell_22#L1854>`_
|
||||||
Calls H_apply on the HF determinant and selects all connected single and double
|
Calls H_apply on the HF determinant and selects all connected single and double
|
||||||
excitations (of the same symmetry). Auto-generated by the ``generate_h_apply`` script.
|
excitations (of the same symmetry). Auto-generated by the ``generate_h_apply`` script.
|
||||||
|
|
||||||
|
|
||||||
`h_apply_cas_sd_selected_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/CAS_SD/H_apply.irp.f_shell_16#L596>`_
|
`h_apply_cas_sd_selected_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/CAS_SD/H_apply.irp.f_shell_22#L1334>`_
|
||||||
Generate all double excitations of key_in using the bit masks of holes and
|
Generate all double excitations of key_in using the bit masks of holes and
|
||||||
particles.
|
particles.
|
||||||
Assume N_int is already provided.
|
Assume N_int is already provided.
|
||||||
|
|
||||||
|
|
||||||
`h_apply_cas_sd_selected_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/CAS_SD/H_apply.irp.f_shell_16#L920>`_
|
`h_apply_cas_sd_selected_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/CAS_SD/H_apply.irp.f_shell_22#L1658>`_
|
||||||
|
Generate all single excitations of key_in using the bit masks of holes and
|
||||||
|
particles.
|
||||||
|
Assume N_int is already provided.
|
||||||
|
|
||||||
|
|
||||||
|
`h_apply_cas_sd_selected_no_skip <http://github.com/LCPQ/quantum_package/tree/master/src/CAS_SD/H_apply.irp.f_shell_22#L1116>`_
|
||||||
|
Calls H_apply on the HF determinant and selects all connected single and double
|
||||||
|
excitations (of the same symmetry). Auto-generated by the ``generate_h_apply`` script.
|
||||||
|
|
||||||
|
|
||||||
|
`h_apply_cas_sd_selected_no_skip_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/CAS_SD/H_apply.irp.f_shell_22#L596>`_
|
||||||
|
Generate all double excitations of key_in using the bit masks of holes and
|
||||||
|
particles.
|
||||||
|
Assume N_int is already provided.
|
||||||
|
|
||||||
|
|
||||||
|
`h_apply_cas_sd_selected_no_skip_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/CAS_SD/H_apply.irp.f_shell_22#L920>`_
|
||||||
Generate all single excitations of key_in using the bit masks of holes and
|
Generate all single excitations of key_in using the bit masks of holes and
|
||||||
particles.
|
particles.
|
||||||
Assume N_int is already provided.
|
Assume N_int is already provided.
|
||||||
|
@ -9,6 +9,7 @@ program full_ci
|
|||||||
N_st = N_states
|
N_st = N_states
|
||||||
allocate (pt2(N_st), norm_pert(N_st),H_pert_diag(N_st))
|
allocate (pt2(N_st), norm_pert(N_st),H_pert_diag(N_st))
|
||||||
character*(64) :: perturbation
|
character*(64) :: perturbation
|
||||||
|
PROVIDE N_det_cas
|
||||||
|
|
||||||
N_det_old = 0
|
N_det_old = 0
|
||||||
pt2 = 1.d0
|
pt2 = 1.d0
|
||||||
@ -52,7 +53,7 @@ program full_ci
|
|||||||
print *, 'E = ', CI_energy
|
print *, 'E = ', CI_energy
|
||||||
print *, 'E+PT2 = ', CI_energy+pt2
|
print *, 'E+PT2 = ', CI_energy+pt2
|
||||||
print *, '-----'
|
print *, '-----'
|
||||||
call ezfio_set_cas_sd_energy(CI_energy)
|
call ezfio_set_cas_sd_energy(CI_energy(1))
|
||||||
if (abort_all) then
|
if (abort_all) then
|
||||||
exit
|
exit
|
||||||
endif
|
endif
|
||||||
@ -60,16 +61,34 @@ program full_ci
|
|||||||
exit
|
exit
|
||||||
endif
|
endif
|
||||||
enddo
|
enddo
|
||||||
|
call diagonalize_CI
|
||||||
|
|
||||||
|
if(do_pt2_end)then
|
||||||
|
print*,'Last iteration only to compute the PT2'
|
||||||
|
threshold_selectors = 1.d0
|
||||||
|
threshold_generators = 0.999d0
|
||||||
|
call H_apply_CAS_SD_PT2(pt2, norm_pert, H_pert_diag, N_st)
|
||||||
|
|
||||||
|
print *, 'Final step'
|
||||||
|
print *, 'N_det = ', N_det
|
||||||
|
print *, 'N_states = ', N_states
|
||||||
|
print *, 'PT2 = ', pt2
|
||||||
|
print *, 'E = ', CI_energy
|
||||||
|
print *, 'E+PT2 = ', CI_energy+pt2
|
||||||
|
print *, '-----'
|
||||||
|
call ezfio_set_cas_sd_energy_pt2(CI_energy(1)+pt2(1))
|
||||||
|
endif
|
||||||
|
|
||||||
|
|
||||||
integer :: exc_max, degree_min
|
integer :: exc_max, degree_min
|
||||||
exc_max = 0
|
exc_max = 0
|
||||||
print *, 'CAS determinants : ', N_det_generators
|
print *, 'CAS determinants : ', N_det_cas
|
||||||
do i=1,min(N_det_generators,10)
|
do i=1,min(N_det_cas,10)
|
||||||
do k=i,N_det_generators
|
do k=i,N_det_cas
|
||||||
call get_excitation_degree(psi_det_generators(1,1,k),psi_det_generators(1,1,i),degree,N_int)
|
call get_excitation_degree(psi_cas(1,1,k),psi_cas(1,1,i),degree,N_int)
|
||||||
exc_max = max(exc_max,degree)
|
exc_max = max(exc_max,degree)
|
||||||
enddo
|
enddo
|
||||||
call debug_det(psi_det_generators(1,1,i),N_int)
|
call debug_det(psi_cas(1,1,i),N_int)
|
||||||
print *, ''
|
print *, ''
|
||||||
enddo
|
enddo
|
||||||
print *, 'Max excitation degree in the CAS :', exc_max
|
print *, 'Max excitation degree in the CAS :', exc_max
|
||||||
|
Before Width: | Height: | Size: 104 KiB After Width: | Height: | Size: 111 KiB |
42
plugins/CID/.gitignore
vendored
@ -1,28 +1,28 @@
|
|||||||
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
|
# Automatically created by $QP_ROOT/scripts/module/module_handler.py
|
||||||
IRPF90_temp
|
|
||||||
IRPF90_man
|
|
||||||
irpf90_entities
|
|
||||||
tags
|
|
||||||
irpf90.make
|
|
||||||
Makefile
|
|
||||||
Makefile.depend
|
|
||||||
.ninja_log
|
|
||||||
.ninja_deps
|
.ninja_deps
|
||||||
ezfio_interface.irp.f
|
.ninja_log
|
||||||
Ezfio_files
|
|
||||||
Determinants
|
|
||||||
Integrals_Monoelec
|
|
||||||
MO_Basis
|
|
||||||
Selectors_full
|
|
||||||
Utils
|
|
||||||
Pseudo
|
|
||||||
AO_Basis
|
AO_Basis
|
||||||
Bitmask
|
Bitmask
|
||||||
SingleRefMethod
|
Determinants
|
||||||
Electrons
|
Electrons
|
||||||
MOGuess
|
Ezfio_files
|
||||||
Nuclei
|
|
||||||
Hartree_Fock
|
Hartree_Fock
|
||||||
|
IRPF90_man
|
||||||
|
IRPF90_temp
|
||||||
Integrals_Bielec
|
Integrals_Bielec
|
||||||
|
Integrals_Monoelec
|
||||||
|
MOGuess
|
||||||
|
MO_Basis
|
||||||
|
Makefile
|
||||||
|
Makefile.depend
|
||||||
|
Nuclei
|
||||||
|
Pseudo
|
||||||
|
Selectors_full
|
||||||
|
SingleRefMethod
|
||||||
|
Utils
|
||||||
cid
|
cid
|
||||||
cid_lapack
|
cid_lapack
|
||||||
|
ezfio_interface.irp.f
|
||||||
|
irpf90.make
|
||||||
|
irpf90_entities
|
||||||
|
tags
|
48
plugins/CID_SC2_selected/.gitignore
vendored
@ -1,31 +1,31 @@
|
|||||||
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
|
# Automatically created by $QP_ROOT/scripts/module/module_handler.py
|
||||||
IRPF90_temp
|
.ninja_deps
|
||||||
|
.ninja_log
|
||||||
|
AO_Basis
|
||||||
|
Bitmask
|
||||||
|
CID
|
||||||
|
CID_selected
|
||||||
|
Determinants
|
||||||
|
Electrons
|
||||||
|
Ezfio_files
|
||||||
|
Hartree_Fock
|
||||||
IRPF90_man
|
IRPF90_man
|
||||||
irpf90_entities
|
IRPF90_temp
|
||||||
tags
|
Integrals_Bielec
|
||||||
irpf90.make
|
Integrals_Monoelec
|
||||||
|
MOGuess
|
||||||
|
MO_Basis
|
||||||
Makefile
|
Makefile
|
||||||
Makefile.depend
|
Makefile.depend
|
||||||
.ninja_log
|
Nuclei
|
||||||
.ninja_deps
|
|
||||||
ezfio_interface.irp.f
|
|
||||||
Ezfio_files
|
|
||||||
Perturbation
|
Perturbation
|
||||||
Determinants
|
Properties
|
||||||
Integrals_Monoelec
|
Pseudo
|
||||||
MO_Basis
|
|
||||||
Selectors_full
|
Selectors_full
|
||||||
SingleRefMethod
|
SingleRefMethod
|
||||||
Utils
|
Utils
|
||||||
CID
|
cid_sc2_selection
|
||||||
Pseudo
|
ezfio_interface.irp.f
|
||||||
Properties
|
irpf90.make
|
||||||
Bitmask
|
irpf90_entities
|
||||||
AO_Basis
|
tags
|
||||||
Electrons
|
|
||||||
MOGuess
|
|
||||||
CID_selected
|
|
||||||
Nuclei
|
|
||||||
Hartree_Fock
|
|
||||||
Integrals_Bielec
|
|
||||||
cid_sc2_selection
|
|
48
plugins/CID_selected/.gitignore
vendored
@ -1,30 +1,30 @@
|
|||||||
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
|
# Automatically created by $QP_ROOT/scripts/module/module_handler.py
|
||||||
IRPF90_temp
|
|
||||||
IRPF90_man
|
|
||||||
irpf90_entities
|
|
||||||
tags
|
|
||||||
irpf90.make
|
|
||||||
Makefile
|
|
||||||
Makefile.depend
|
|
||||||
.ninja_log
|
|
||||||
.ninja_deps
|
.ninja_deps
|
||||||
ezfio_interface.irp.f
|
.ninja_log
|
||||||
Ezfio_files
|
|
||||||
Perturbation
|
|
||||||
Determinants
|
|
||||||
Utils
|
|
||||||
Integrals_Monoelec
|
|
||||||
MO_Basis
|
|
||||||
Selectors_full
|
|
||||||
Integrals_Bielec
|
|
||||||
CID
|
|
||||||
Pseudo
|
|
||||||
AO_Basis
|
AO_Basis
|
||||||
Bitmask
|
Bitmask
|
||||||
SingleRefMethod
|
CID
|
||||||
|
Determinants
|
||||||
Electrons
|
Electrons
|
||||||
MOGuess
|
Ezfio_files
|
||||||
Nuclei
|
|
||||||
Hartree_Fock
|
Hartree_Fock
|
||||||
|
IRPF90_man
|
||||||
|
IRPF90_temp
|
||||||
|
Integrals_Bielec
|
||||||
|
Integrals_Monoelec
|
||||||
|
MOGuess
|
||||||
|
MO_Basis
|
||||||
|
Makefile
|
||||||
|
Makefile.depend
|
||||||
|
Nuclei
|
||||||
|
Perturbation
|
||||||
Properties
|
Properties
|
||||||
cid_selection
|
Pseudo
|
||||||
|
Selectors_full
|
||||||
|
SingleRefMethod
|
||||||
|
Utils
|
||||||
|
cid_selection
|
||||||
|
ezfio_interface.irp.f
|
||||||
|
irpf90.make
|
||||||
|
irpf90_entities
|
||||||
|
tags
|
42
plugins/CIS/.gitignore
vendored
@ -1,28 +1,28 @@
|
|||||||
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
|
# Automatically created by $QP_ROOT/scripts/module/module_handler.py
|
||||||
IRPF90_temp
|
|
||||||
IRPF90_man
|
|
||||||
irpf90_entities
|
|
||||||
tags
|
|
||||||
irpf90.make
|
|
||||||
Makefile
|
|
||||||
Makefile.depend
|
|
||||||
.ninja_log
|
|
||||||
.ninja_deps
|
.ninja_deps
|
||||||
ezfio_interface.irp.f
|
.ninja_log
|
||||||
Ezfio_files
|
|
||||||
Determinants
|
|
||||||
Integrals_Monoelec
|
|
||||||
MO_Basis
|
|
||||||
Selectors_full
|
|
||||||
Utils
|
|
||||||
Pseudo
|
|
||||||
AO_Basis
|
AO_Basis
|
||||||
Bitmask
|
Bitmask
|
||||||
SingleRefMethod
|
Determinants
|
||||||
Electrons
|
Electrons
|
||||||
MOGuess
|
Ezfio_files
|
||||||
Nuclei
|
|
||||||
Hartree_Fock
|
Hartree_Fock
|
||||||
|
IRPF90_man
|
||||||
|
IRPF90_temp
|
||||||
Integrals_Bielec
|
Integrals_Bielec
|
||||||
|
Integrals_Monoelec
|
||||||
|
MOGuess
|
||||||
|
MO_Basis
|
||||||
|
Makefile
|
||||||
|
Makefile.depend
|
||||||
|
Nuclei
|
||||||
|
Pseudo
|
||||||
|
Selectors_full
|
||||||
|
SingleRefMethod
|
||||||
|
Utils
|
||||||
|
cis
|
||||||
|
ezfio_interface.irp.f
|
||||||
|
irpf90.make
|
||||||
|
irpf90_entities
|
||||||
super_ci
|
super_ci
|
||||||
cis
|
tags
|
42
plugins/CISD/.gitignore
vendored
@ -1,28 +1,28 @@
|
|||||||
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
|
# Automatically created by $QP_ROOT/scripts/module/module_handler.py
|
||||||
IRPF90_temp
|
|
||||||
IRPF90_man
|
|
||||||
irpf90_entities
|
|
||||||
tags
|
|
||||||
irpf90.make
|
|
||||||
Makefile
|
|
||||||
Makefile.depend
|
|
||||||
.ninja_log
|
|
||||||
.ninja_deps
|
.ninja_deps
|
||||||
ezfio_interface.irp.f
|
.ninja_log
|
||||||
Ezfio_files
|
|
||||||
Determinants
|
|
||||||
Integrals_Monoelec
|
|
||||||
MO_Basis
|
|
||||||
Selectors_full
|
|
||||||
Utils
|
|
||||||
Pseudo
|
|
||||||
AO_Basis
|
AO_Basis
|
||||||
Bitmask
|
Bitmask
|
||||||
SingleRefMethod
|
Determinants
|
||||||
Electrons
|
Electrons
|
||||||
MOGuess
|
Ezfio_files
|
||||||
Nuclei
|
|
||||||
Hartree_Fock
|
Hartree_Fock
|
||||||
|
IRPF90_man
|
||||||
|
IRPF90_temp
|
||||||
Integrals_Bielec
|
Integrals_Bielec
|
||||||
|
Integrals_Monoelec
|
||||||
|
MOGuess
|
||||||
|
MO_Basis
|
||||||
|
Makefile
|
||||||
|
Makefile.depend
|
||||||
|
Nuclei
|
||||||
|
Pseudo
|
||||||
|
Selectors_full
|
||||||
|
SingleRefMethod
|
||||||
|
Utils
|
||||||
|
cisd
|
||||||
cisd_lapack
|
cisd_lapack
|
||||||
cisd
|
ezfio_interface.irp.f
|
||||||
|
irpf90.make
|
||||||
|
irpf90_entities
|
||||||
|
tags
|
Before Width: | Height: | Size: 92 KiB After Width: | Height: | Size: 96 KiB |
48
plugins/CISD_SC2_selected/.gitignore
vendored
@ -1,31 +1,31 @@
|
|||||||
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
|
# Automatically created by $QP_ROOT/scripts/module/module_handler.py
|
||||||
IRPF90_temp
|
.ninja_deps
|
||||||
|
.ninja_log
|
||||||
|
AO_Basis
|
||||||
|
Bitmask
|
||||||
|
CISD
|
||||||
|
CISD_selected
|
||||||
|
Determinants
|
||||||
|
Electrons
|
||||||
|
Ezfio_files
|
||||||
|
Hartree_Fock
|
||||||
IRPF90_man
|
IRPF90_man
|
||||||
irpf90_entities
|
IRPF90_temp
|
||||||
tags
|
Integrals_Bielec
|
||||||
irpf90.make
|
Integrals_Monoelec
|
||||||
|
MOGuess
|
||||||
|
MO_Basis
|
||||||
Makefile
|
Makefile
|
||||||
Makefile.depend
|
Makefile.depend
|
||||||
.ninja_log
|
Nuclei
|
||||||
.ninja_deps
|
|
||||||
ezfio_interface.irp.f
|
|
||||||
Ezfio_files
|
|
||||||
Perturbation
|
Perturbation
|
||||||
Determinants
|
Properties
|
||||||
Integrals_Monoelec
|
Pseudo
|
||||||
MO_Basis
|
|
||||||
Selectors_full
|
Selectors_full
|
||||||
SingleRefMethod
|
SingleRefMethod
|
||||||
Utils
|
Utils
|
||||||
Pseudo
|
cisd_sc2_selection
|
||||||
Properties
|
ezfio_interface.irp.f
|
||||||
Bitmask
|
irpf90.make
|
||||||
AO_Basis
|
irpf90_entities
|
||||||
Electrons
|
tags
|
||||||
CISD_selected
|
|
||||||
MOGuess
|
|
||||||
CISD
|
|
||||||
Nuclei
|
|
||||||
Hartree_Fock
|
|
||||||
Integrals_Bielec
|
|
||||||
cisd_sc2_selection
|
|
Before Width: | Height: | Size: 116 KiB After Width: | Height: | Size: 123 KiB |
48
plugins/CISD_selected/.gitignore
vendored
@ -1,30 +1,30 @@
|
|||||||
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
|
# Automatically created by $QP_ROOT/scripts/module/module_handler.py
|
||||||
IRPF90_temp
|
|
||||||
IRPF90_man
|
|
||||||
irpf90_entities
|
|
||||||
tags
|
|
||||||
irpf90.make
|
|
||||||
Makefile
|
|
||||||
Makefile.depend
|
|
||||||
.ninja_log
|
|
||||||
.ninja_deps
|
.ninja_deps
|
||||||
ezfio_interface.irp.f
|
.ninja_log
|
||||||
Ezfio_files
|
|
||||||
Perturbation
|
|
||||||
Determinants
|
|
||||||
Utils
|
|
||||||
Integrals_Monoelec
|
|
||||||
MO_Basis
|
|
||||||
Selectors_full
|
|
||||||
Integrals_Bielec
|
|
||||||
Pseudo
|
|
||||||
AO_Basis
|
AO_Basis
|
||||||
Bitmask
|
Bitmask
|
||||||
SingleRefMethod
|
|
||||||
Electrons
|
|
||||||
MOGuess
|
|
||||||
CISD
|
CISD
|
||||||
Nuclei
|
Determinants
|
||||||
|
Electrons
|
||||||
|
Ezfio_files
|
||||||
Hartree_Fock
|
Hartree_Fock
|
||||||
|
IRPF90_man
|
||||||
|
IRPF90_temp
|
||||||
|
Integrals_Bielec
|
||||||
|
Integrals_Monoelec
|
||||||
|
MOGuess
|
||||||
|
MO_Basis
|
||||||
|
Makefile
|
||||||
|
Makefile.depend
|
||||||
|
Nuclei
|
||||||
|
Perturbation
|
||||||
Properties
|
Properties
|
||||||
cisd_selection
|
Pseudo
|
||||||
|
Selectors_full
|
||||||
|
SingleRefMethod
|
||||||
|
Utils
|
||||||
|
cisd_selection
|
||||||
|
ezfio_interface.irp.f
|
||||||
|
irpf90.make
|
||||||
|
irpf90_entities
|
||||||
|
tags
|
Before Width: | Height: | Size: 110 KiB After Width: | Height: | Size: 116 KiB |
36
plugins/Casino/.gitignore
vendored
@ -1,23 +1,23 @@
|
|||||||
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
|
# Automatically created by $QP_ROOT/scripts/module/module_handler.py
|
||||||
IRPF90_temp
|
|
||||||
IRPF90_man
|
|
||||||
irpf90_entities
|
|
||||||
tags
|
|
||||||
irpf90.make
|
|
||||||
Makefile
|
|
||||||
Makefile.depend
|
|
||||||
.ninja_log
|
|
||||||
.ninja_deps
|
.ninja_deps
|
||||||
ezfio_interface.irp.f
|
.ninja_log
|
||||||
Ezfio_files
|
AO_Basis
|
||||||
|
Bitmask
|
||||||
Determinants
|
Determinants
|
||||||
|
Electrons
|
||||||
|
Ezfio_files
|
||||||
|
IRPF90_man
|
||||||
|
IRPF90_temp
|
||||||
|
Integrals_Bielec
|
||||||
Integrals_Monoelec
|
Integrals_Monoelec
|
||||||
MO_Basis
|
MO_Basis
|
||||||
Utils
|
Makefile
|
||||||
Pseudo
|
Makefile.depend
|
||||||
Bitmask
|
|
||||||
AO_Basis
|
|
||||||
Electrons
|
|
||||||
Nuclei
|
Nuclei
|
||||||
Integrals_Bielec
|
Pseudo
|
||||||
save_for_casino
|
Utils
|
||||||
|
ezfio_interface.irp.f
|
||||||
|
irpf90.make
|
||||||
|
irpf90_entities
|
||||||
|
save_for_casino
|
||||||
|
tags
|
48
plugins/DDCI_selected/.gitignore
vendored
@ -1,29 +1,29 @@
|
|||||||
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
|
# Automatically created by $QP_ROOT/scripts/module/module_handler.py
|
||||||
IRPF90_temp
|
.ninja_deps
|
||||||
|
.ninja_log
|
||||||
|
AO_Basis
|
||||||
|
Bitmask
|
||||||
|
Determinants
|
||||||
|
Electrons
|
||||||
|
Ezfio_files
|
||||||
|
Generators_CAS
|
||||||
|
Hartree_Fock
|
||||||
IRPF90_man
|
IRPF90_man
|
||||||
irpf90_entities
|
IRPF90_temp
|
||||||
tags
|
Integrals_Bielec
|
||||||
irpf90.make
|
Integrals_Monoelec
|
||||||
|
MOGuess
|
||||||
|
MO_Basis
|
||||||
Makefile
|
Makefile
|
||||||
Makefile.depend
|
Makefile.depend
|
||||||
.ninja_log
|
|
||||||
.ninja_deps
|
|
||||||
ezfio_interface.irp.f
|
|
||||||
Ezfio_files
|
|
||||||
Perturbation
|
|
||||||
Determinants
|
|
||||||
Utils
|
|
||||||
Integrals_Monoelec
|
|
||||||
MO_Basis
|
|
||||||
Selectors_full
|
|
||||||
Integrals_Bielec
|
|
||||||
Pseudo
|
|
||||||
Bitmask
|
|
||||||
Generators_CAS
|
|
||||||
AO_Basis
|
|
||||||
Electrons
|
|
||||||
MOGuess
|
|
||||||
Nuclei
|
Nuclei
|
||||||
Hartree_Fock
|
Perturbation
|
||||||
Properties
|
Properties
|
||||||
ddci
|
Pseudo
|
||||||
|
Selectors_full
|
||||||
|
Utils
|
||||||
|
ddci
|
||||||
|
ezfio_interface.irp.f
|
||||||
|
irpf90.make
|
||||||
|
irpf90_entities
|
||||||
|
tags
|
Before Width: | Height: | Size: 105 KiB After Width: | Height: | Size: 112 KiB |
52
plugins/Full_CI/.gitignore
vendored
@ -1,32 +1,32 @@
|
|||||||
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
|
# Automatically created by $QP_ROOT/scripts/module/module_handler.py
|
||||||
IRPF90_temp
|
.ninja_deps
|
||||||
|
.ninja_log
|
||||||
|
AO_Basis
|
||||||
|
Bitmask
|
||||||
|
Determinants
|
||||||
|
Electrons
|
||||||
|
Ezfio_files
|
||||||
|
Generators_full
|
||||||
|
Hartree_Fock
|
||||||
IRPF90_man
|
IRPF90_man
|
||||||
irpf90_entities
|
IRPF90_temp
|
||||||
tags
|
Integrals_Bielec
|
||||||
irpf90.make
|
Integrals_Monoelec
|
||||||
|
MOGuess
|
||||||
|
MO_Basis
|
||||||
Makefile
|
Makefile
|
||||||
Makefile.depend
|
Makefile.depend
|
||||||
.ninja_log
|
|
||||||
.ninja_deps
|
|
||||||
ezfio_interface.irp.f
|
|
||||||
Ezfio_files
|
|
||||||
Perturbation
|
|
||||||
Determinants
|
|
||||||
Utils
|
|
||||||
Integrals_Monoelec
|
|
||||||
MO_Basis
|
|
||||||
Selectors_full
|
|
||||||
Integrals_Bielec
|
|
||||||
Pseudo
|
|
||||||
Generators_full
|
|
||||||
Bitmask
|
|
||||||
AO_Basis
|
|
||||||
Electrons
|
|
||||||
MOGuess
|
|
||||||
Nuclei
|
Nuclei
|
||||||
Hartree_Fock
|
Perturbation
|
||||||
Properties
|
Properties
|
||||||
target_pt2
|
Pseudo
|
||||||
|
Selectors_full
|
||||||
|
Utils
|
||||||
|
ezfio_interface.irp.f
|
||||||
full_ci
|
full_ci
|
||||||
var_pt2_ratio
|
full_ci_no_skip
|
||||||
full_ci_no_skip
|
irpf90.make
|
||||||
|
irpf90_entities
|
||||||
|
tags
|
||||||
|
target_pt2
|
||||||
|
var_pt2_ratio
|
Before Width: | Height: | Size: 104 KiB After Width: | Height: | Size: 111 KiB |
BIN
plugins/Generators_CAS/tree_dependency.png
Normal file
After Width: | Height: | Size: 69 KiB |
@ -43,7 +43,7 @@ Needed Modules
|
|||||||
.. Do not edit this section. It was auto-generated from the
|
.. Do not edit this section. It was auto-generated from the
|
||||||
.. by the `update_README.py` script.
|
.. by the `update_README.py` script.
|
||||||
|
|
||||||
.. image:: tree_dependency.pdf
|
.. image:: tree_dependency.png
|
||||||
|
|
||||||
* `Determinants <http://github.com/LCPQ/quantum_package/tree/master/src/Determinants>`_
|
* `Determinants <http://github.com/LCPQ/quantum_package/tree/master/src/Determinants>`_
|
||||||
* `Hartree_Fock <http://github.com/LCPQ/quantum_package/tree/master/src/Hartree_Fock>`_
|
* `Hartree_Fock <http://github.com/LCPQ/quantum_package/tree/master/src/Hartree_Fock>`_
|
||||||
|
BIN
plugins/Generators_full/tree_dependency.png
Normal file
After Width: | Height: | Size: 82 KiB |
38
plugins/Hartree_Fock/.gitignore
vendored
@ -1,24 +1,24 @@
|
|||||||
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
|
# Automatically created by $QP_ROOT/scripts/module/module_handler.py
|
||||||
IRPF90_temp
|
.ninja_deps
|
||||||
|
.ninja_log
|
||||||
|
AO_Basis
|
||||||
|
Bitmask
|
||||||
|
Electrons
|
||||||
|
Ezfio_files
|
||||||
|
Huckel_guess
|
||||||
IRPF90_man
|
IRPF90_man
|
||||||
irpf90_entities
|
IRPF90_temp
|
||||||
tags
|
Integrals_Bielec
|
||||||
irpf90.make
|
Integrals_Monoelec
|
||||||
|
MOGuess
|
||||||
|
MO_Basis
|
||||||
Makefile
|
Makefile
|
||||||
Makefile.depend
|
Makefile.depend
|
||||||
.ninja_log
|
|
||||||
.ninja_deps
|
|
||||||
ezfio_interface.irp.f
|
|
||||||
Ezfio_files
|
|
||||||
Integrals_Monoelec
|
|
||||||
MO_Basis
|
|
||||||
Integrals_Bielec
|
|
||||||
Pseudo
|
|
||||||
Bitmask
|
|
||||||
AO_Basis
|
|
||||||
Electrons
|
|
||||||
MOGuess
|
|
||||||
Nuclei
|
Nuclei
|
||||||
|
Pseudo
|
||||||
|
SCF
|
||||||
Utils
|
Utils
|
||||||
Huckel_guess
|
ezfio_interface.irp.f
|
||||||
SCF
|
irpf90.make
|
||||||
|
irpf90_entities
|
||||||
|
tags
|
Before Width: | Height: | Size: 63 KiB After Width: | Height: | Size: 66 KiB |
46
plugins/MP2/.gitignore
vendored
@ -1,29 +1,29 @@
|
|||||||
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
|
# Automatically created by $QP_ROOT/scripts/module/module_handler.py
|
||||||
IRPF90_temp
|
|
||||||
IRPF90_man
|
|
||||||
irpf90_entities
|
|
||||||
tags
|
|
||||||
irpf90.make
|
|
||||||
Makefile
|
|
||||||
Makefile.depend
|
|
||||||
.ninja_log
|
|
||||||
.ninja_deps
|
.ninja_deps
|
||||||
ezfio_interface.irp.f
|
.ninja_log
|
||||||
Ezfio_files
|
|
||||||
Perturbation
|
|
||||||
Determinants
|
|
||||||
Utils
|
|
||||||
Integrals_Monoelec
|
|
||||||
MO_Basis
|
|
||||||
Selectors_full
|
|
||||||
Integrals_Bielec
|
|
||||||
Pseudo
|
|
||||||
AO_Basis
|
AO_Basis
|
||||||
Bitmask
|
Bitmask
|
||||||
SingleRefMethod
|
Determinants
|
||||||
Electrons
|
Electrons
|
||||||
MOGuess
|
Ezfio_files
|
||||||
Nuclei
|
|
||||||
Hartree_Fock
|
Hartree_Fock
|
||||||
|
IRPF90_man
|
||||||
|
IRPF90_temp
|
||||||
|
Integrals_Bielec
|
||||||
|
Integrals_Monoelec
|
||||||
|
MOGuess
|
||||||
|
MO_Basis
|
||||||
|
Makefile
|
||||||
|
Makefile.depend
|
||||||
|
Nuclei
|
||||||
|
Perturbation
|
||||||
Properties
|
Properties
|
||||||
mp2
|
Pseudo
|
||||||
|
Selectors_full
|
||||||
|
SingleRefMethod
|
||||||
|
Utils
|
||||||
|
ezfio_interface.irp.f
|
||||||
|
irpf90.make
|
||||||
|
irpf90_entities
|
||||||
|
mp2
|
||||||
|
tags
|
48
plugins/MRCC/.gitignore
vendored
@ -1,29 +1,29 @@
|
|||||||
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
|
# Automatically created by $QP_ROOT/scripts/module/module_handler.py
|
||||||
IRPF90_temp
|
.ninja_deps
|
||||||
|
.ninja_log
|
||||||
|
AO_Basis
|
||||||
|
Bitmask
|
||||||
|
Determinants
|
||||||
|
Electrons
|
||||||
|
Ezfio_files
|
||||||
|
Generators_full
|
||||||
|
Hartree_Fock
|
||||||
IRPF90_man
|
IRPF90_man
|
||||||
irpf90_entities
|
IRPF90_temp
|
||||||
tags
|
Integrals_Bielec
|
||||||
irpf90.make
|
Integrals_Monoelec
|
||||||
|
MOGuess
|
||||||
|
MO_Basis
|
||||||
Makefile
|
Makefile
|
||||||
Makefile.depend
|
Makefile.depend
|
||||||
.ninja_log
|
|
||||||
.ninja_deps
|
|
||||||
ezfio_interface.irp.f
|
|
||||||
Ezfio_files
|
|
||||||
Perturbation
|
|
||||||
Determinants
|
|
||||||
Utils
|
|
||||||
Integrals_Monoelec
|
|
||||||
MO_Basis
|
|
||||||
Selectors_full
|
|
||||||
Integrals_Bielec
|
|
||||||
Pseudo
|
|
||||||
Generators_full
|
|
||||||
Bitmask
|
|
||||||
AO_Basis
|
|
||||||
Electrons
|
|
||||||
MOGuess
|
|
||||||
Nuclei
|
Nuclei
|
||||||
Hartree_Fock
|
Perturbation
|
||||||
Properties
|
Properties
|
||||||
mrcc
|
Pseudo
|
||||||
|
Selectors_full
|
||||||
|
Utils
|
||||||
|
ezfio_interface.irp.f
|
||||||
|
irpf90.make
|
||||||
|
irpf90_entities
|
||||||
|
mrcc
|
||||||
|
tags
|
@ -2,18 +2,20 @@ use bitmasks
|
|||||||
BEGIN_SHELL [ /usr/bin/env python ]
|
BEGIN_SHELL [ /usr/bin/env python ]
|
||||||
from generate_h_apply import *
|
from generate_h_apply import *
|
||||||
|
|
||||||
s = H_apply("mrcc_simple")
|
s = H_apply("mrcc")
|
||||||
s.data["parameters"] = ", delta_ij_sd_, Ndet_sd"
|
s.data["parameters"] = ", delta_ij_, delta_ii_,Ndet_cas, Ndet_non_cas"
|
||||||
s.data["declarations"] += """
|
s.data["declarations"] += """
|
||||||
integer, intent(in) :: Ndet_sd
|
integer, intent(in) :: Ndet_cas,Ndet_non_cas
|
||||||
double precision, intent(in) :: delta_ij_sd_(Ndet_sd,Ndet_sd,*)
|
double precision, intent(in) :: delta_ij_(Ndet_cas,Ndet_non_cas,*)
|
||||||
|
double precision, intent(in) :: delta_ii_(Ndet_cas,*)
|
||||||
"""
|
"""
|
||||||
s.data["keys_work"] = "call mrcc_dress_simple(delta_ij_sd_,Ndet_sd,i_generator,key_idx,keys_out,N_int,iproc)"
|
s.data["keys_work"] = "call mrcc_dress(delta_ij_,delta_ii_,Ndet_cas,Ndet_non_cas,i_generator,key_idx,keys_out,N_int,iproc)"
|
||||||
s.data["params_post"] += ", delta_ij_sd_, Ndet_sd"
|
s.data["params_post"] += ", delta_ij_, delta_ii_, Ndet_cas, Ndet_non_cas"
|
||||||
s.data["params_main"] += "delta_ij_sd_, Ndet_sd"
|
s.data["params_main"] += "delta_ij_, delta_ii_, Ndet_cas, Ndet_non_cas"
|
||||||
s.data["decls_main"] += """
|
s.data["decls_main"] += """
|
||||||
integer, intent(in) :: Ndet_sd
|
integer, intent(in) :: Ndet_cas,Ndet_non_cas
|
||||||
double precision, intent(in) :: delta_ij_sd_(Ndet_sd,Ndet_sd,*)
|
double precision, intent(in) :: delta_ij_(Ndet_cas,Ndet_non_cas,*)
|
||||||
|
double precision, intent(in) :: delta_ii_(Ndet_cas,*)
|
||||||
"""
|
"""
|
||||||
s.data["finalization"] = ""
|
s.data["finalization"] = ""
|
||||||
s.data["copy_buffer"] = ""
|
s.data["copy_buffer"] = ""
|
||||||
@ -22,11 +24,5 @@ s.data["size_max"] = "3072"
|
|||||||
print s
|
print s
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
s.data["subroutine"] = "H_apply_mrcc"
|
|
||||||
s.data["keys_work"] = "call mrcc_dress(delta_ij_sd_,Ndet_sd,i_generator,key_idx,keys_out,N_int,iproc)"
|
|
||||||
print s
|
|
||||||
|
|
||||||
END_SHELL
|
END_SHELL
|
||||||
|
|
||||||
|
@ -20,23 +20,23 @@ Documentation
|
|||||||
.. Do not edit this section. It was auto-generated from the
|
.. Do not edit this section. It was auto-generated from the
|
||||||
.. by the `update_README.py` script.
|
.. by the `update_README.py` script.
|
||||||
|
|
||||||
`ci_eigenvectors_dressed <http://github.com/LCPQ/quantum_package/tree/master/src/MRCC/mrcc_utils.irp.f#L94>`_
|
`ci_eigenvectors_dressed <http://github.com/LCPQ/quantum_package/tree/master/src/MRCC/mrcc_utils.irp.f#L76>`_
|
||||||
Eigenvectors/values of the CI matrix
|
Eigenvectors/values of the CI matrix
|
||||||
|
|
||||||
|
|
||||||
`ci_eigenvectors_s2_dressed <http://github.com/LCPQ/quantum_package/tree/master/src/MRCC/mrcc_utils.irp.f#L95>`_
|
`ci_eigenvectors_s2_dressed <http://github.com/LCPQ/quantum_package/tree/master/src/MRCC/mrcc_utils.irp.f#L77>`_
|
||||||
Eigenvectors/values of the CI matrix
|
Eigenvectors/values of the CI matrix
|
||||||
|
|
||||||
|
|
||||||
`ci_electronic_energy_dressed <http://github.com/LCPQ/quantum_package/tree/master/src/MRCC/mrcc_utils.irp.f#L93>`_
|
`ci_electronic_energy_dressed <http://github.com/LCPQ/quantum_package/tree/master/src/MRCC/mrcc_utils.irp.f#L75>`_
|
||||||
Eigenvectors/values of the CI matrix
|
Eigenvectors/values of the CI matrix
|
||||||
|
|
||||||
|
|
||||||
`ci_energy_dressed <http://github.com/LCPQ/quantum_package/tree/master/src/MRCC/mrcc_utils.irp.f#L160>`_
|
`ci_energy_dressed <http://github.com/LCPQ/quantum_package/tree/master/src/MRCC/mrcc_utils.irp.f#L142>`_
|
||||||
N_states lowest eigenvalues of the dressed CI matrix
|
N_states lowest eigenvalues of the dressed CI matrix
|
||||||
|
|
||||||
|
|
||||||
`davidson_diag_hjj_mrcc <http://github.com/LCPQ/quantum_package/tree/master/src/MRCC/davidson.irp.f#L51>`_
|
`davidson_diag_hjj_mrcc <http://github.com/LCPQ/quantum_package/tree/master/src/MRCC/davidson.irp.f#L56>`_
|
||||||
Davidson diagonalization with specific diagonal elements of the H matrix
|
Davidson diagonalization with specific diagonal elements of the H matrix
|
||||||
.br
|
.br
|
||||||
H_jj : specific diagonal H matrix elements to diagonalize de Davidson
|
H_jj : specific diagonal H matrix elements to diagonalize de Davidson
|
||||||
@ -76,66 +76,45 @@ Documentation
|
|||||||
Initial guess vectors are not necessarily orthonormal
|
Initial guess vectors are not necessarily orthonormal
|
||||||
|
|
||||||
|
|
||||||
`delta_ij <http://github.com/LCPQ/quantum_package/tree/master/src/MRCC/mrcc_utils.irp.f#L48>`_
|
`delta_ii <http://github.com/LCPQ/quantum_package/tree/master/src/MRCC/mrcc_utils.irp.f#L39>`_
|
||||||
Dressing matrix in N_det basis
|
Dressing matrix in N_det basis
|
||||||
|
|
||||||
|
|
||||||
`delta_ij_non_cas <http://github.com/LCPQ/quantum_package/tree/master/src/MRCC/mrcc_utils.irp.f#L39>`_
|
`delta_ij <http://github.com/LCPQ/quantum_package/tree/master/src/MRCC/mrcc_utils.irp.f#L38>`_
|
||||||
Dressing matrix in SD basis
|
Dressing matrix in N_det basis
|
||||||
|
|
||||||
|
|
||||||
`diagonalize_ci_dressed <http://github.com/LCPQ/quantum_package/tree/master/src/MRCC/mrcc_utils.irp.f#L175>`_
|
`diagonalize_ci_dressed <http://github.com/LCPQ/quantum_package/tree/master/src/MRCC/mrcc_utils.irp.f#L157>`_
|
||||||
Replace the coefficients of the CI states by the coefficients of the
|
Replace the coefficients of the CI states by the coefficients of the
|
||||||
eigenstates of the CI matrix
|
eigenstates of the CI matrix
|
||||||
|
|
||||||
|
|
||||||
`dressing_type <http://github.com/LCPQ/quantum_package/tree/master/src/MRCC/mrcc_utils.irp.f#L31>`_
|
|
||||||
[ Simple | MRCC ]
|
|
||||||
|
|
||||||
|
|
||||||
`find_triples_and_quadruples <http://github.com/LCPQ/quantum_package/tree/master/src/MRCC/mrcc_dress.irp.f#L206>`_
|
`find_triples_and_quadruples <http://github.com/LCPQ/quantum_package/tree/master/src/MRCC/mrcc_dress.irp.f#L206>`_
|
||||||
Undocumented
|
Undocumented
|
||||||
|
|
||||||
|
|
||||||
`h_apply_mrcc <http://github.com/LCPQ/quantum_package/tree/master/src/MRCC/H_apply.irp.f_shell_31#L990>`_
|
`h_apply_mrcc <http://github.com/LCPQ/quantum_package/tree/master/src/MRCC/H_apply.irp.f_shell_27#L416>`_
|
||||||
Calls H_apply on the HF determinant and selects all connected single and double
|
Calls H_apply on the HF determinant and selects all connected single and double
|
||||||
excitations (of the same symmetry). Auto-generated by the ``generate_h_apply`` script.
|
excitations (of the same symmetry). Auto-generated by the ``generate_h_apply`` script.
|
||||||
|
|
||||||
|
|
||||||
`h_apply_mrcc_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/MRCC/H_apply.irp.f_shell_31#L577>`_
|
`h_apply_mrcc_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/MRCC/H_apply.irp.f_shell_27#L1>`_
|
||||||
Generate all double excitations of key_in using the bit masks of holes and
|
Generate all double excitations of key_in using the bit masks of holes and
|
||||||
particles.
|
particles.
|
||||||
Assume N_int is already provided.
|
Assume N_int is already provided.
|
||||||
|
|
||||||
|
|
||||||
`h_apply_mrcc_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/MRCC/H_apply.irp.f_shell_31#L843>`_
|
`h_apply_mrcc_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/MRCC/H_apply.irp.f_shell_27#L268>`_
|
||||||
Generate all single excitations of key_in using the bit masks of holes and
|
Generate all single excitations of key_in using the bit masks of holes and
|
||||||
particles.
|
particles.
|
||||||
Assume N_int is already provided.
|
Assume N_int is already provided.
|
||||||
|
|
||||||
|
|
||||||
`h_apply_mrcc_simple <http://github.com/LCPQ/quantum_package/tree/master/src/MRCC/H_apply.irp.f_shell_31#L414>`_
|
`h_matrix_dressed <http://github.com/LCPQ/quantum_package/tree/master/src/MRCC/mrcc_utils.irp.f#L50>`_
|
||||||
Calls H_apply on the HF determinant and selects all connected single and double
|
|
||||||
excitations (of the same symmetry). Auto-generated by the ``generate_h_apply`` script.
|
|
||||||
|
|
||||||
|
|
||||||
`h_apply_mrcc_simple_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/MRCC/H_apply.irp.f_shell_31#L1>`_
|
|
||||||
Generate all double excitations of key_in using the bit masks of holes and
|
|
||||||
particles.
|
|
||||||
Assume N_int is already provided.
|
|
||||||
|
|
||||||
|
|
||||||
`h_apply_mrcc_simple_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/MRCC/H_apply.irp.f_shell_31#L267>`_
|
|
||||||
Generate all single excitations of key_in using the bit masks of holes and
|
|
||||||
particles.
|
|
||||||
Assume N_int is already provided.
|
|
||||||
|
|
||||||
|
|
||||||
`h_matrix_dressed <http://github.com/LCPQ/quantum_package/tree/master/src/MRCC/mrcc_utils.irp.f#L78>`_
|
|
||||||
Dressed H with Delta_ij
|
Dressed H with Delta_ij
|
||||||
|
|
||||||
|
|
||||||
`h_u_0_mrcc <http://github.com/LCPQ/quantum_package/tree/master/src/MRCC/davidson.irp.f#L355>`_
|
`h_u_0_mrcc <http://github.com/LCPQ/quantum_package/tree/master/src/MRCC/davidson.irp.f#L360>`_
|
||||||
Computes v_0 = H|u_0>
|
Computes v_0 = H|u_0>
|
||||||
.br
|
.br
|
||||||
n : number of determinants
|
n : number of determinants
|
||||||
|
@ -35,11 +35,16 @@ subroutine davidson_diag_mrcc(dets_in,u_in,energies,dim_in,sze,N_st,Nint,iunit,i
|
|||||||
allocate(H_jj(sze))
|
allocate(H_jj(sze))
|
||||||
|
|
||||||
!$OMP PARALLEL DEFAULT(NONE) &
|
!$OMP PARALLEL DEFAULT(NONE) &
|
||||||
!$OMP SHARED(sze,H_jj,dets_in,Nint,istate,delta_ij) &
|
!$OMP SHARED(sze,H_jj,N_det_cas,dets_in,Nint,istate,delta_ii,idx_cas) &
|
||||||
!$OMP PRIVATE(i)
|
!$OMP PRIVATE(i)
|
||||||
!$OMP DO SCHEDULE(guided)
|
!$OMP DO SCHEDULE(guided)
|
||||||
do i=1,sze
|
do i=1,sze
|
||||||
H_jj(i) = diag_h_mat_elem(dets_in(1,1,i),Nint) + delta_ij(i,i,istate)
|
H_jj(i) = diag_h_mat_elem(dets_in(1,1,i),Nint)
|
||||||
|
enddo
|
||||||
|
!$OMP END DO
|
||||||
|
!$OMP DO SCHEDULE(guided)
|
||||||
|
do i=1,N_det_cas
|
||||||
|
H_jj(idx_cas(i)) += delta_ii(i,istate)
|
||||||
enddo
|
enddo
|
||||||
!$OMP END DO
|
!$OMP END DO
|
||||||
!$OMP END PARALLEL
|
!$OMP END PARALLEL
|
||||||
@ -370,16 +375,16 @@ subroutine H_u_0_mrcc(v_0,u_0,H_jj,n,keys_tmp,Nint,istate)
|
|||||||
integer, allocatable :: idx(:)
|
integer, allocatable :: idx(:)
|
||||||
double precision :: hij
|
double precision :: hij
|
||||||
double precision, allocatable :: vt(:)
|
double precision, allocatable :: vt(:)
|
||||||
integer :: i,j,k,l, jj
|
integer :: i,j,k,l, jj,ii
|
||||||
integer :: i0, j0
|
integer :: i0, j0
|
||||||
ASSERT (Nint > 0)
|
ASSERT (Nint > 0)
|
||||||
ASSERT (Nint == N_int)
|
ASSERT (Nint == N_int)
|
||||||
ASSERT (n>0)
|
ASSERT (n>0)
|
||||||
PROVIDE ref_bitmask_energy delta_ij
|
PROVIDE ref_bitmask_energy delta_ij
|
||||||
integer, parameter :: block_size = 157
|
integer, parameter :: block_size = 157
|
||||||
!$OMP PARALLEL DEFAULT(NONE) &
|
!$OMP PARALLEL DEFAULT(NONE) &
|
||||||
!$OMP PRIVATE(i,hij,j,k,idx,jj,vt) &
|
!$OMP PRIVATE(i,hij,j,k,idx,jj,ii,vt) &
|
||||||
!$OMP SHARED(n,H_jj,u_0,keys_tmp,Nint,v_0,istate,delta_ij)
|
!$OMP SHARED(n_det_cas,n_det_non_cas,idx_cas,idx_non_cas,n,H_jj,u_0,keys_tmp,Nint,v_0,istate,delta_ij)
|
||||||
!$OMP DO SCHEDULE(static)
|
!$OMP DO SCHEDULE(static)
|
||||||
do i=1,n
|
do i=1,n
|
||||||
v_0(i) = H_jj(i) * u_0(i)
|
v_0(i) = H_jj(i) * u_0(i)
|
||||||
@ -389,20 +394,30 @@ subroutine H_u_0_mrcc(v_0,u_0,H_jj,n,keys_tmp,Nint,istate)
|
|||||||
Vt = 0.d0
|
Vt = 0.d0
|
||||||
!$OMP DO SCHEDULE(guided)
|
!$OMP DO SCHEDULE(guided)
|
||||||
do i=1,n
|
do i=1,n
|
||||||
! idx(0) = i
|
idx(0) = i
|
||||||
! call filter_connected_davidson(keys_tmp,keys_tmp(1,1,i),Nint,i-1,idx)
|
call filter_connected_davidson(keys_tmp,keys_tmp(1,1,i),Nint,i-1,idx)
|
||||||
! do jj=1,idx(0)
|
do jj=1,idx(0)
|
||||||
! j = idx(jj)
|
j = idx(jj)
|
||||||
! if ( (dabs(u_0(j)) > 1.d-7).or.((dabs(u_0(i)) > 1.d-7)) ) then
|
! if ( (dabs(u_0(j)) > 1.d-7).or.((dabs(u_0(i)) > 1.d-7)) ) then
|
||||||
do j = 1, i-1
|
|
||||||
call i_H_j(keys_tmp(1,1,j),keys_tmp(1,1,i),Nint,hij)
|
call i_H_j(keys_tmp(1,1,j),keys_tmp(1,1,i),Nint,hij)
|
||||||
hij = hij + delta_ij(j,i,istate)
|
hij = hij
|
||||||
vt (i) = vt (i) + hij*u_0(j)
|
vt (i) = vt (i) + hij*u_0(j)
|
||||||
vt (j) = vt (j) + hij*u_0(i)
|
vt (j) = vt (j) + hij*u_0(i)
|
||||||
! endif
|
! endif
|
||||||
enddo
|
enddo
|
||||||
enddo
|
enddo
|
||||||
!$OMP END DO
|
!$OMP END DO
|
||||||
|
|
||||||
|
!$OMP DO SCHEDULE(guided)
|
||||||
|
do ii=1,n_det_cas
|
||||||
|
i = idx_cas(ii)
|
||||||
|
do jj = 1, n_det_non_cas
|
||||||
|
j = idx_non_cas(jj)
|
||||||
|
vt (i) = vt (i) + delta_ij(ii,jj,istate)*u_0(j)
|
||||||
|
vt (j) = vt (j) + delta_ij(ii,jj,istate)*u_0(i)
|
||||||
|
enddo
|
||||||
|
enddo
|
||||||
|
!$OMP END DO
|
||||||
!$OMP CRITICAL
|
!$OMP CRITICAL
|
||||||
do i=1,n
|
do i=1,n
|
||||||
v_0(i) = v_0(i) + vt(i)
|
v_0(i) = v_0(i) + vt(i)
|
||||||
|
@ -12,13 +12,14 @@ BEGIN_PROVIDER [ integer(omp_lock_kind), psi_cas_lock, (psi_det_size) ]
|
|||||||
|
|
||||||
END_PROVIDER
|
END_PROVIDER
|
||||||
|
|
||||||
subroutine mrcc_dress(delta_ij_,Ndet,i_generator,n_selected,det_buffer,Nint,iproc)
|
subroutine mrcc_dress(delta_ij_, delta_ii_, Ndet_cas, Ndet_non_cas,i_generator,n_selected,det_buffer,Nint,iproc)
|
||||||
use bitmasks
|
use bitmasks
|
||||||
implicit none
|
implicit none
|
||||||
|
|
||||||
integer, intent(in) :: i_generator,n_selected, Nint, iproc
|
integer, intent(in) :: i_generator,n_selected, Nint, iproc
|
||||||
integer, intent(in) :: Ndet
|
integer, intent(in) :: Ndet_cas, Ndet_non_cas
|
||||||
double precision, intent(inout) :: delta_ij_(Ndet,Ndet,*)
|
double precision, intent(inout) :: delta_ij_(Ndet_cas,Ndet_non_cas,*)
|
||||||
|
double precision, intent(inout) :: delta_ii_(Ndet_cas,*)
|
||||||
|
|
||||||
integer(bit_kind), intent(in) :: det_buffer(Nint,2,n_selected)
|
integer(bit_kind), intent(in) :: det_buffer(Nint,2,n_selected)
|
||||||
integer :: i,j,k,l
|
integer :: i,j,k,l
|
||||||
@ -42,7 +43,7 @@ subroutine mrcc_dress(delta_ij_,Ndet,i_generator,n_selected,det_buffer,Nint,ipro
|
|||||||
|
|
||||||
call find_triples_and_quadruples(i_generator,n_selected,det_buffer,Nint,tq,N_tq)
|
call find_triples_and_quadruples(i_generator,n_selected,det_buffer,Nint,tq,N_tq)
|
||||||
|
|
||||||
allocate (dIa_hla(N_states,Ndet))
|
allocate (dIa_hla(N_states,Ndet_non_cas))
|
||||||
|
|
||||||
! |I>
|
! |I>
|
||||||
|
|
||||||
@ -136,12 +137,11 @@ subroutine mrcc_dress(delta_ij_,Ndet,i_generator,n_selected,det_buffer,Nint,ipro
|
|||||||
do l_sd=1,idx_alpha(0)
|
do l_sd=1,idx_alpha(0)
|
||||||
k_sd = idx_alpha(l_sd)
|
k_sd = idx_alpha(l_sd)
|
||||||
do i_state=1,N_states
|
do i_state=1,N_states
|
||||||
delta_ij_(idx_non_cas(k_sd),idx_cas(i_I),i_state) += dIa_hla(i_state,k_sd)
|
delta_ij_(i_I,k_sd,i_state) += dIa_hla(i_state,k_sd)
|
||||||
delta_ij_(idx_cas(i_I),idx_non_cas(k_sd),i_state) += dIa_hla(i_state,k_sd)
|
|
||||||
if(dabs(psi_cas_coef(i_I,i_state)).ge.5.d-5)then
|
if(dabs(psi_cas_coef(i_I,i_state)).ge.5.d-5)then
|
||||||
delta_ij_(idx_cas(i_I),idx_cas(i_I),i_state) -= dIa_hla(i_state,k_sd) * ci_inv(i_state) * psi_non_cas_coef(k_sd,i_state)
|
delta_ii_(i_I,i_state) -= dIa_hla(i_state,k_sd) * ci_inv(i_state) * psi_non_cas_coef(k_sd,i_state)
|
||||||
else
|
else
|
||||||
delta_ij_(idx_cas(i_I),idx_cas(i_I),i_state) = 0.d0
|
delta_ii_(i_I,i_state) = 0.d0
|
||||||
endif
|
endif
|
||||||
enddo
|
enddo
|
||||||
enddo
|
enddo
|
||||||
|
@ -5,20 +5,19 @@
|
|||||||
! cm/<Psi_0|H|D_m> or perturbative 1/Delta_E(m)
|
! cm/<Psi_0|H|D_m> or perturbative 1/Delta_E(m)
|
||||||
END_DOC
|
END_DOC
|
||||||
integer :: i,k
|
integer :: i,k
|
||||||
double precision :: ihpsi(N_states), hii
|
double precision :: ihpsi(N_states), hii
|
||||||
|
|
||||||
do i=1,N_det_non_cas
|
do i=1,N_det_non_cas
|
||||||
call i_h_psi(psi_non_cas(1,1,i), psi_cas, psi_cas_coef, N_int, N_det_cas, &
|
call i_h_psi(psi_non_cas(1,1,i), psi_cas, psi_cas_coef, N_int, N_det_cas,&
|
||||||
size(psi_cas_coef,1), n_states, ihpsi)
|
size(psi_cas_coef,1), n_states, ihpsi)
|
||||||
call i_h_j(psi_non_cas(1,1,i),psi_non_cas(1,1,i),N_int,hii)
|
call i_h_j(psi_non_cas(1,1,i),psi_non_cas(1,1,i),N_int,hii)
|
||||||
do k=1,N_states
|
do k=1,N_states
|
||||||
|
lambda_pert(k,i) = 1.d0 / (psi_cas_energy_diagonalized(k)-hii)
|
||||||
lambda_pert(k,i) = 1.d0 / (psi_cas_energy_diagonalized(k)-hii)
|
if (dabs(ihpsi(k)).le.1.d-3) then
|
||||||
lambda_mrcc(k,i) = psi_non_cas_coef(i,k)/ihpsi(k)
|
lambda_mrcc(k,i) = lambda_pert(k,i)
|
||||||
if (dabs(ihpsi(k)).le.1.d-3) then
|
else
|
||||||
lambda_mrcc(k,i) = 1.d0 / (psi_cas_energy_diagonalized(k)-hii)
|
lambda_mrcc(k,i) = psi_non_cas_coef(i,k)/ihpsi(k)
|
||||||
cycle
|
endif
|
||||||
endif
|
|
||||||
enddo
|
enddo
|
||||||
enddo
|
enddo
|
||||||
|
|
||||||
@ -27,134 +26,117 @@ END_PROVIDER
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
!BEGIN_PROVIDER [ double precision, delta_ij_non_cas, (N_det_non_cas, N_det_non_cas,N_states) ]
|
||||||
|
!implicit none
|
||||||
|
!BEGIN_DOC
|
||||||
|
!! Dressing matrix in SD basis
|
||||||
|
!END_DOC
|
||||||
|
!delta_ij_non_cas = 0.d0
|
||||||
|
!call H_apply_mrcc_simple(delta_ij_non_cas,N_det_non_cas)
|
||||||
|
!END_PROVIDER
|
||||||
|
|
||||||
BEGIN_PROVIDER [ character*(32), dressing_type ]
|
BEGIN_PROVIDER [ double precision, delta_ij, (N_det_cas,N_det_non_cas,N_states) ]
|
||||||
implicit none
|
&BEGIN_PROVIDER [ double precision, delta_ii, (N_det_cas,N_states) ]
|
||||||
BEGIN_DOC
|
|
||||||
! [ Simple | MRCC ]
|
|
||||||
END_DOC
|
|
||||||
dressing_type = "MRCC"
|
|
||||||
END_PROVIDER
|
|
||||||
|
|
||||||
BEGIN_PROVIDER [ double precision, delta_ij_non_cas, (N_det_non_cas, N_det_non_cas,N_states) ]
|
|
||||||
implicit none
|
|
||||||
BEGIN_DOC
|
|
||||||
! Dressing matrix in SD basis
|
|
||||||
END_DOC
|
|
||||||
delta_ij_non_cas = 0.d0
|
|
||||||
call H_apply_mrcc_simple(delta_ij_non_cas,N_det_non_cas)
|
|
||||||
END_PROVIDER
|
|
||||||
|
|
||||||
BEGIN_PROVIDER [ double precision, delta_ij, (N_det,N_det,N_states) ]
|
|
||||||
implicit none
|
implicit none
|
||||||
BEGIN_DOC
|
BEGIN_DOC
|
||||||
! Dressing matrix in N_det basis
|
! Dressing matrix in N_det basis
|
||||||
END_DOC
|
END_DOC
|
||||||
integer :: i,j,m
|
integer :: i,j,m
|
||||||
delta_ij = 0.d0
|
delta_ij = 0.d0
|
||||||
if (dressing_type == "MRCC") then
|
delta_ii = 0.d0
|
||||||
call H_apply_mrcc(delta_ij,N_det)
|
call H_apply_mrcc(delta_ij,delta_ii,N_det_cas,N_det_non_cas)
|
||||||
else if (dressing_type == "Simple") then
|
|
||||||
do m=1,N_states
|
|
||||||
do j=1,N_det_non_cas
|
|
||||||
do i=1,N_det_non_cas
|
|
||||||
delta_ij(idx_non_cas(i),idx_non_cas(j),m) = delta_ij_non_cas(i,j,m)
|
|
||||||
enddo
|
|
||||||
enddo
|
|
||||||
enddo
|
|
||||||
endif
|
|
||||||
do i = 1, N_det
|
|
||||||
do j = 1, N_det
|
|
||||||
do m = 1, N_states
|
|
||||||
if(isnan(delta_ij(j,i,m)))then
|
|
||||||
delta_ij(j,i,m) = 0.d0
|
|
||||||
endif
|
|
||||||
enddo
|
|
||||||
enddo
|
|
||||||
enddo
|
|
||||||
|
|
||||||
END_PROVIDER
|
END_PROVIDER
|
||||||
|
|
||||||
BEGIN_PROVIDER [ double precision, h_matrix_dressed, (N_det,N_det) ]
|
BEGIN_PROVIDER [ double precision, h_matrix_dressed, (N_det,N_det,N_states) ]
|
||||||
implicit none
|
implicit none
|
||||||
BEGIN_DOC
|
BEGIN_DOC
|
||||||
! Dressed H with Delta_ij
|
! Dressed H with Delta_ij
|
||||||
END_DOC
|
END_DOC
|
||||||
integer :: i, j
|
integer :: i, j,istate,ii,jj
|
||||||
do j=1,N_det
|
do istate = 1,N_states
|
||||||
do i=1,N_det
|
do j=1,N_det
|
||||||
h_matrix_dressed(i,j) = h_matrix_all_dets(i,j) + delta_ij(i,j,1)
|
do i=1,N_det
|
||||||
|
h_matrix_dressed(i,j,istate) = h_matrix_all_dets(i,j)
|
||||||
|
enddo
|
||||||
enddo
|
enddo
|
||||||
|
do ii = 1, N_det_cas
|
||||||
|
i =idx_cas(ii)
|
||||||
|
h_matrix_dressed(i,i,istate) += delta_ii(ii,istate)
|
||||||
|
do jj = 1, N_det_non_cas
|
||||||
|
j =idx_cas(jj)
|
||||||
|
h_matrix_dressed(i,j,istate) += delta_ij(ii,jj,istate)
|
||||||
|
h_matrix_dressed(j,i,istate) += delta_ij(ii,jj,istate)
|
||||||
|
enddo
|
||||||
|
enddo
|
||||||
enddo
|
enddo
|
||||||
|
|
||||||
END_PROVIDER
|
END_PROVIDER
|
||||||
|
|
||||||
|
|
||||||
BEGIN_PROVIDER [ double precision, CI_electronic_energy_dressed, (N_states_diag) ]
|
BEGIN_PROVIDER [ double precision, CI_electronic_energy_dressed, (N_states_diag) ]
|
||||||
&BEGIN_PROVIDER [ double precision, CI_eigenvectors_dressed, (N_det,N_states_diag) ]
|
&BEGIN_PROVIDER [ double precision, CI_eigenvectors_dressed, (N_det,N_states_diag) ]
|
||||||
&BEGIN_PROVIDER [ double precision, CI_eigenvectors_s2_dressed, (N_states_diag) ]
|
&BEGIN_PROVIDER [ double precision, CI_eigenvectors_s2_dressed, (N_states_diag) ]
|
||||||
implicit none
|
implicit none
|
||||||
BEGIN_DOC
|
BEGIN_DOC
|
||||||
! Eigenvectors/values of the CI matrix
|
! Eigenvectors/values of the CI matrix
|
||||||
END_DOC
|
END_DOC
|
||||||
integer :: i,j
|
integer :: i,j
|
||||||
|
|
||||||
do j=1,N_states_diag
|
do j=1,N_states_diag
|
||||||
do i=1,N_det
|
do i=1,N_det
|
||||||
CI_eigenvectors_dressed(i,j) = psi_coef(i,j)
|
CI_eigenvectors_dressed(i,j) = psi_coef(i,j)
|
||||||
enddo
|
enddo
|
||||||
enddo
|
enddo
|
||||||
|
|
||||||
if (diag_algorithm == "Davidson") then
|
if (diag_algorithm == "Davidson") then
|
||||||
|
|
||||||
integer :: istate
|
integer :: istate
|
||||||
istate = 1
|
istate = 1
|
||||||
call davidson_diag_mrcc(psi_det,CI_eigenvectors_dressed,CI_electronic_energy_dressed, &
|
call davidson_diag_mrcc(psi_det,CI_eigenvectors_dressed,CI_electronic_energy_dressed,&
|
||||||
size(CI_eigenvectors_dressed,1),N_det,N_states_diag,N_int,output_determinants,istate)
|
size(CI_eigenvectors_dressed,1),N_det,N_states_diag,N_int,output_determinants,istate)
|
||||||
|
|
||||||
else if (diag_algorithm == "Lapack") then
|
else if (diag_algorithm == "Lapack") then
|
||||||
|
|
||||||
double precision, allocatable :: eigenvectors(:,:), eigenvalues(:)
|
double precision, allocatable :: eigenvectors(:,:), eigenvalues(:)
|
||||||
allocate (eigenvectors(size(H_matrix_dressed,1),N_det))
|
allocate (eigenvectors(size(H_matrix_dressed,1),N_det))
|
||||||
allocate (eigenvalues(N_det))
|
allocate (eigenvalues(N_det))
|
||||||
call lapack_diag(eigenvalues,eigenvectors, &
|
call lapack_diag(eigenvalues,eigenvectors, &
|
||||||
H_matrix_dressed,size(H_matrix_dressed,1),N_det)
|
H_matrix_dressed,size(H_matrix_dressed,1),N_det)
|
||||||
CI_electronic_energy_dressed(:) = 0.d0
|
CI_electronic_energy_dressed(:) = 0.d0
|
||||||
do i=1,N_det
|
do i=1,N_det
|
||||||
CI_eigenvectors_dressed(i,1) = eigenvectors(i,1)
|
CI_eigenvectors_dressed(i,1) = eigenvectors(i,1)
|
||||||
enddo
|
enddo
|
||||||
integer :: i_state
|
integer :: i_state
|
||||||
double precision :: s2
|
double precision :: s2
|
||||||
i_state = 0
|
i_state = 0
|
||||||
if (s2_eig) then
|
if (s2_eig) then
|
||||||
do j=1,N_det
|
do j=1,N_det
|
||||||
call get_s2_u0(psi_det,eigenvectors(1,j),N_det,N_det,s2)
|
call get_s2_u0(psi_det,eigenvectors(1,j),N_det,N_det,s2)
|
||||||
if(dabs(s2-expected_s2).le.0.3d0)then
|
if(dabs(s2-expected_s2).le.0.3d0)then
|
||||||
i_state += 1
|
i_state += 1
|
||||||
do i=1,N_det
|
do i=1,N_det
|
||||||
CI_eigenvectors_dressed(i,i_state) = eigenvectors(i,j)
|
CI_eigenvectors_dressed(i,i_state) = eigenvectors(i,j)
|
||||||
enddo
|
enddo
|
||||||
CI_electronic_energy_dressed(i_state) = eigenvalues(j)
|
CI_electronic_energy_dressed(i_state) = eigenvalues(j)
|
||||||
CI_eigenvectors_s2_dressed(i_state) = s2
|
CI_eigenvectors_s2_dressed(i_state) = s2
|
||||||
endif
|
endif
|
||||||
if (i_state.ge.N_states_diag) then
|
if (i_state.ge.N_states_diag) then
|
||||||
exit
|
exit
|
||||||
endif
|
endif
|
||||||
enddo
|
enddo
|
||||||
else
|
else
|
||||||
do j=1,N_states_diag
|
do j=1,N_states_diag
|
||||||
call get_s2_u0(psi_det,eigenvectors(1,j),N_det,N_det,s2)
|
call get_s2_u0(psi_det,eigenvectors(1,j),N_det,N_det,s2)
|
||||||
i_state += 1
|
i_state += 1
|
||||||
do i=1,N_det
|
do i=1,N_det
|
||||||
CI_eigenvectors_dressed(i,i_state) = eigenvectors(i,j)
|
CI_eigenvectors_dressed(i,i_state) = eigenvectors(i,j)
|
||||||
enddo
|
enddo
|
||||||
CI_electronic_energy_dressed(i_state) = eigenvalues(j)
|
CI_electronic_energy_dressed(i_state) = eigenvalues(j)
|
||||||
CI_eigenvectors_s2_dressed(i_state) = s2
|
CI_eigenvectors_s2_dressed(i_state) = s2
|
||||||
enddo
|
enddo
|
||||||
endif
|
endif
|
||||||
deallocate(eigenvectors,eigenvalues)
|
deallocate(eigenvectors,eigenvalues)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
END_PROVIDER
|
END_PROVIDER
|
||||||
|
|
||||||
BEGIN_PROVIDER [ double precision, CI_energy_dressed, (N_states_diag) ]
|
BEGIN_PROVIDER [ double precision, CI_energy_dressed, (N_states_diag) ]
|
||||||
|
Before Width: | Height: | Size: 104 KiB After Width: | Height: | Size: 111 KiB |
4
plugins/Molden/.gitignore
vendored
@ -1,4 +1,4 @@
|
|||||||
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
|
# Automatically created by /home/giner/quantum_package/scripts/module/module_handler.py
|
||||||
IRPF90_temp
|
IRPF90_temp
|
||||||
IRPF90_man
|
IRPF90_man
|
||||||
irpf90_entities
|
irpf90_entities
|
||||||
@ -15,4 +15,4 @@ Utils
|
|||||||
AO_Basis
|
AO_Basis
|
||||||
Electrons
|
Electrons
|
||||||
Nuclei
|
Nuclei
|
||||||
print_mo
|
print_mo
|
||||||
|
Before Width: | Height: | Size: 34 KiB After Width: | Height: | Size: 31 KiB |
@ -356,7 +356,7 @@ Needed Modules
|
|||||||
.. Do not edit this section. It was auto-generated from the
|
.. Do not edit this section. It was auto-generated from the
|
||||||
.. by the `update_README.py` script.
|
.. by the `update_README.py` script.
|
||||||
|
|
||||||
.. image:: tree_dependency.pdf
|
.. image:: tree_dependency.png
|
||||||
|
|
||||||
* `Properties <http://github.com/LCPQ/quantum_package/tree/master/src/Properties>`_
|
* `Properties <http://github.com/LCPQ/quantum_package/tree/master/src/Properties>`_
|
||||||
* `Hartree_Fock <http://github.com/LCPQ/quantum_package/tree/master/src/Hartree_Fock>`_
|
* `Hartree_Fock <http://github.com/LCPQ/quantum_package/tree/master/src/Hartree_Fock>`_
|
||||||
|
BIN
plugins/Perturbation/tree_dependency.png
Normal file
After Width: | Height: | Size: 86 KiB |
@ -148,7 +148,7 @@ Needed Modules
|
|||||||
.. Do not edit this section. It was auto-generated from the
|
.. Do not edit this section. It was auto-generated from the
|
||||||
.. by the `update_README.py` script.
|
.. by the `update_README.py` script.
|
||||||
|
|
||||||
.. image:: tree_dependency.pdf
|
.. image:: tree_dependency.png
|
||||||
|
|
||||||
* `Determinants <http://github.com/LCPQ/quantum_package/tree/master/src/Determinants>`_
|
* `Determinants <http://github.com/LCPQ/quantum_package/tree/master/src/Determinants>`_
|
||||||
|
|
||||||
|
BIN
plugins/Properties/tree_dependency.png
Normal file
After Width: | Height: | Size: 68 KiB |
36
plugins/QmcChem/.gitignore
vendored
@ -1,23 +1,23 @@
|
|||||||
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
|
# Automatically created by $QP_ROOT/scripts/module/module_handler.py
|
||||||
IRPF90_temp
|
|
||||||
IRPF90_man
|
|
||||||
irpf90_entities
|
|
||||||
tags
|
|
||||||
irpf90.make
|
|
||||||
Makefile
|
|
||||||
Makefile.depend
|
|
||||||
.ninja_log
|
|
||||||
.ninja_deps
|
.ninja_deps
|
||||||
ezfio_interface.irp.f
|
.ninja_log
|
||||||
Ezfio_files
|
AO_Basis
|
||||||
|
Bitmask
|
||||||
Determinants
|
Determinants
|
||||||
|
Electrons
|
||||||
|
Ezfio_files
|
||||||
|
IRPF90_man
|
||||||
|
IRPF90_temp
|
||||||
|
Integrals_Bielec
|
||||||
Integrals_Monoelec
|
Integrals_Monoelec
|
||||||
MO_Basis
|
MO_Basis
|
||||||
Utils
|
Makefile
|
||||||
Pseudo
|
Makefile.depend
|
||||||
Bitmask
|
|
||||||
AO_Basis
|
|
||||||
Electrons
|
|
||||||
Nuclei
|
Nuclei
|
||||||
Integrals_Bielec
|
Pseudo
|
||||||
save_for_qmcchem
|
Utils
|
||||||
|
ezfio_interface.irp.f
|
||||||
|
irpf90.make
|
||||||
|
irpf90_entities
|
||||||
|
save_for_qmcchem
|
||||||
|
tags
|
||||||
|
@ -181,7 +181,7 @@ Needed Modules
|
|||||||
.. Do not edit this section. It was auto-generated from the
|
.. Do not edit this section. It was auto-generated from the
|
||||||
.. by the `update_README.py` script.
|
.. by the `update_README.py` script.
|
||||||
|
|
||||||
.. image:: tree_dependency.pdf
|
.. image:: tree_dependency.png
|
||||||
|
|
||||||
* `Determinants <http://github.com/LCPQ/quantum_package/tree/master/src/Determinants>`_
|
* `Determinants <http://github.com/LCPQ/quantum_package/tree/master/src/Determinants>`_
|
||||||
* `Hartree_Fock <http://github.com/LCPQ/quantum_package/tree/master/src/Hartree_Fock>`_
|
* `Hartree_Fock <http://github.com/LCPQ/quantum_package/tree/master/src/Hartree_Fock>`_
|
||||||
|
BIN
plugins/Selectors_full/tree_dependency.png
Normal file
After Width: | Height: | Size: 82 KiB |
BIN
plugins/SingleRefMethod/tree_dependency.png
Normal file
After Width: | Height: | Size: 38 KiB |
28
plugins/loc_cele/.gitignore
vendored
@ -1,18 +1,18 @@
|
|||||||
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
|
# Automatically created by $QP_ROOT/scripts/module/module_handler.py
|
||||||
IRPF90_temp
|
|
||||||
IRPF90_man
|
|
||||||
irpf90_entities
|
|
||||||
tags
|
|
||||||
irpf90.make
|
|
||||||
Makefile
|
|
||||||
Makefile.depend
|
|
||||||
.ninja_log
|
|
||||||
.ninja_deps
|
.ninja_deps
|
||||||
ezfio_interface.irp.f
|
.ninja_log
|
||||||
Ezfio_files
|
|
||||||
MO_Basis
|
|
||||||
Utils
|
|
||||||
AO_Basis
|
AO_Basis
|
||||||
Electrons
|
Electrons
|
||||||
|
Ezfio_files
|
||||||
|
IRPF90_man
|
||||||
|
IRPF90_temp
|
||||||
|
MO_Basis
|
||||||
|
Makefile
|
||||||
|
Makefile.depend
|
||||||
Nuclei
|
Nuclei
|
||||||
loc_cele
|
Utils
|
||||||
|
ezfio_interface.irp.f
|
||||||
|
irpf90.make
|
||||||
|
irpf90_entities
|
||||||
|
loc_cele
|
||||||
|
tags
|
@ -29,6 +29,16 @@ Error:
|
|||||||
""" % f
|
""" % f
|
||||||
sys.exit(1)
|
sys.exit(1)
|
||||||
|
|
||||||
|
# __
|
||||||
|
# /__ | _ |_ _. | _. ._ o _. |_ | _ _
|
||||||
|
# \_| | (_) |_) (_| | \/ (_| | | (_| |_) | (/_ _>
|
||||||
|
#
|
||||||
|
|
||||||
|
from qp_path import QP_ROOT, QP_SRC, QP_EZFIO
|
||||||
|
|
||||||
|
EZFIO_LIB = join(QP_ROOT, "lib", "libezfio.a")
|
||||||
|
ROOT_BUILD_NINJA = join(QP_ROOT, "config", "build.ninja")
|
||||||
|
|
||||||
header = r"""#
|
header = r"""#
|
||||||
# _______ _____
|
# _______ _____
|
||||||
# __ __ \___ _______ _________ /____ ________ ___
|
# __ __ \___ _______ _________ /____ ________ ___
|
||||||
@ -48,17 +58,8 @@ header = r"""#
|
|||||||
# Generated automatically by {0}
|
# Generated automatically by {0}
|
||||||
#
|
#
|
||||||
#
|
#
|
||||||
""".format(__file__)
|
""".format(__file__).replace(QP_ROOT,"$QP_ROOT")
|
||||||
|
|
||||||
# __
|
|
||||||
# /__ | _ |_ _. | _. ._ o _. |_ | _ _
|
|
||||||
# \_| | (_) |_) (_| | \/ (_| | | (_| |_) | (/_ _>
|
|
||||||
#
|
|
||||||
|
|
||||||
from qp_path import QP_ROOT, QP_SRC, QP_EZFIO
|
|
||||||
|
|
||||||
EZFIO_LIB = join(QP_ROOT, "lib", "libezfio.a")
|
|
||||||
ROOT_BUILD_NINJA = join(QP_ROOT, "config", "build.ninja")
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# |\ | _. ._ _ _ _| _|_ ._ | _
|
# |\ | _. ._ _ _ _| _|_ ._ | _
|
||||||
@ -896,10 +897,10 @@ if __name__ == "__main__":
|
|||||||
"Is intolerable !",
|
"Is intolerable !",
|
||||||
"You need a main file:",
|
"You need a main file:",
|
||||||
"- Create it in {0}",
|
"- Create it in {0}",
|
||||||
"- Or delete {0} `qp_install_module.py uninstall {0}`"
|
"- Or delete {0} `qp_install_module.py uninstall {0}`",
|
||||||
"- Or install a module who need {0} with a main "]
|
"- Or install a module who need {0} with a main "]
|
||||||
|
|
||||||
print "\n".join(l_msg).format(module)
|
print "\n".join(l_msg).format(module.rel)
|
||||||
sys.exit(1)
|
sys.exit(1)
|
||||||
|
|
||||||
# ~#~#~#~#~#~#~#~#~#~#~#~ #
|
# ~#~#~#~#~#~#~#~#~#~#~#~ #
|
||||||
|
@ -21,15 +21,15 @@ function do_gitingore()
|
|||||||
# Do not modify this file. Add your ignored files to the gitignore
|
# Do not modify this file. Add your ignored files to the gitignore
|
||||||
# (without the dot at the beginning) file.
|
# (without the dot at the beginning) file.
|
||||||
#
|
#
|
||||||
IRPF90_temp
|
|
||||||
IRPF90_man
|
|
||||||
irpf90.make
|
|
||||||
tags
|
|
||||||
Makefile.depend
|
|
||||||
irpf90_entities
|
|
||||||
build.ninja
|
build.ninja
|
||||||
.ninja_log
|
irpf90_entities
|
||||||
|
irpf90.make
|
||||||
|
IRPF90_man
|
||||||
|
IRPF90_temp
|
||||||
|
Makefile.depend
|
||||||
.ninja_deps
|
.ninja_deps
|
||||||
|
.ninja_log
|
||||||
|
tags
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
if [[ -f gitignore ]]
|
if [[ -f gitignore ]]
|
||||||
@ -59,3 +59,6 @@ else
|
|||||||
done
|
done
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# Sort the .gitignore to reduce conflict in git merges
|
||||||
|
sort .gitignore |uniq > .gitignore.new
|
||||||
|
mv .gitignore.new .gitignore
|
||||||
|
@ -24,6 +24,7 @@ import shutil
|
|||||||
try:
|
try:
|
||||||
from docopt import docopt
|
from docopt import docopt
|
||||||
from qp_path import QP_SRC
|
from qp_path import QP_SRC
|
||||||
|
from qp_path import QP_ROOT
|
||||||
except ImportError:
|
except ImportError:
|
||||||
print "source .quantum_package.rc"
|
print "source .quantum_package.rc"
|
||||||
raise
|
raise
|
||||||
@ -284,5 +285,8 @@ if __name__ == '__main__':
|
|||||||
path = os.path.join(module_abs, ".gitignore")
|
path = os.path.join(module_abs, ".gitignore")
|
||||||
|
|
||||||
with open(path, "w+") as f:
|
with open(path, "w+") as f:
|
||||||
f.write("# Automatically created by {0} \n".format(__file__))
|
f.write("# Automatically created by {0} \n".format(__file__).replace(QP_ROOT,"$QP_ROOT"))
|
||||||
f.write("\n".join(l_dir + l_file + l_symlink + l_exe))
|
l_text = l_dir + l_file + l_symlink + l_exe
|
||||||
|
l_text.sort()
|
||||||
|
f.write("\n".join(l_text))
|
||||||
|
|
||||||
|
Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 16 KiB |
Before Width: | Height: | Size: 30 KiB After Width: | Height: | Size: 32 KiB |
44
src/Determinants/.gitignore
vendored
@ -1,28 +1,28 @@
|
|||||||
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
|
# Automatically created by $QP_ROOT/scripts/module/module_handler.py
|
||||||
IRPF90_temp
|
|
||||||
IRPF90_man
|
|
||||||
irpf90_entities
|
|
||||||
tags
|
|
||||||
irpf90.make
|
|
||||||
Makefile
|
|
||||||
Makefile.depend
|
|
||||||
.ninja_log
|
|
||||||
.ninja_deps
|
.ninja_deps
|
||||||
ezfio_interface.irp.f
|
.ninja_log
|
||||||
|
AO_Basis
|
||||||
|
Bitmask
|
||||||
|
Electrons
|
||||||
Ezfio_files
|
Ezfio_files
|
||||||
|
IRPF90_man
|
||||||
|
IRPF90_temp
|
||||||
|
Integrals_Bielec
|
||||||
Integrals_Monoelec
|
Integrals_Monoelec
|
||||||
MO_Basis
|
MO_Basis
|
||||||
Utils
|
Makefile
|
||||||
Pseudo
|
Makefile.depend
|
||||||
Bitmask
|
|
||||||
AO_Basis
|
|
||||||
Electrons
|
|
||||||
Nuclei
|
Nuclei
|
||||||
Integrals_Bielec
|
Pseudo
|
||||||
guess_triplet
|
Utils
|
||||||
guess_singlet
|
|
||||||
truncate_wf
|
|
||||||
save_natorb
|
|
||||||
program_initial_determinants
|
|
||||||
det_svd
|
det_svd
|
||||||
guess_doublet
|
ezfio_interface.irp.f
|
||||||
|
guess_doublet
|
||||||
|
guess_singlet
|
||||||
|
guess_triplet
|
||||||
|
irpf90.make
|
||||||
|
irpf90_entities
|
||||||
|
program_initial_determinants
|
||||||
|
save_natorb
|
||||||
|
tags
|
||||||
|
truncate_wf
|
Before Width: | Height: | Size: 59 KiB After Width: | Height: | Size: 63 KiB |
Before Width: | Height: | Size: 7.7 KiB After Width: | Height: | Size: 8.4 KiB |
Before Width: | Height: | Size: 3.6 KiB After Width: | Height: | Size: 3.9 KiB |
Before Width: | Height: | Size: 43 KiB After Width: | Height: | Size: 46 KiB |
30
src/Integrals_Monoelec/.gitignore
vendored
@ -1,20 +1,20 @@
|
|||||||
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
|
# Automatically created by $QP_ROOT/scripts/module/module_handler.py
|
||||||
IRPF90_temp
|
|
||||||
IRPF90_man
|
|
||||||
irpf90_entities
|
|
||||||
tags
|
|
||||||
irpf90.make
|
|
||||||
Makefile
|
|
||||||
Makefile.depend
|
|
||||||
.ninja_log
|
|
||||||
.ninja_deps
|
.ninja_deps
|
||||||
ezfio_interface.irp.f
|
.ninja_log
|
||||||
Ezfio_files
|
|
||||||
MO_Basis
|
|
||||||
Utils
|
|
||||||
Pseudo
|
|
||||||
AO_Basis
|
AO_Basis
|
||||||
Electrons
|
Electrons
|
||||||
|
Ezfio_files
|
||||||
|
IRPF90_man
|
||||||
|
IRPF90_temp
|
||||||
|
MO_Basis
|
||||||
|
Makefile
|
||||||
|
Makefile.depend
|
||||||
Nuclei
|
Nuclei
|
||||||
|
Pseudo
|
||||||
|
Utils
|
||||||
check_orthonormality
|
check_orthonormality
|
||||||
save_ortho_mos
|
ezfio_interface.irp.f
|
||||||
|
irpf90.make
|
||||||
|
irpf90_entities
|
||||||
|
save_ortho_mos
|
||||||
|
tags
|
@ -728,23 +728,30 @@ double precision int_prod_bessel_loc,binom_func,accu,prod,ylm,bigI,arg
|
|||||||
accu=accu+v_k(k)*crochet(n_k(k)+2+ntot,g_a+g_b+dz_k(k))
|
accu=accu+v_k(k)*crochet(n_k(k)+2+ntot,g_a+g_b+dz_k(k))
|
||||||
enddo
|
enddo
|
||||||
Vloc=accu*fourpi*bigI(0,0,0,0,n_a(1)+n_b(1),n_a(2)+n_b(2),n_a(3)+n_b(3))
|
Vloc=accu*fourpi*bigI(0,0,0,0,n_a(1)+n_b(1),n_a(2)+n_b(2),n_a(3)+n_b(3))
|
||||||
!bigI frequantly is null
|
!bigI frequently is null
|
||||||
return
|
return
|
||||||
endif
|
endif
|
||||||
|
|
||||||
freal=dexp(-g_a*ac**2-g_b*bc**2)
|
freal=dexp(-g_a*ac**2-g_b*bc**2)
|
||||||
|
|
||||||
d2=0.d0
|
d2 = 0.d0
|
||||||
do i=1,3
|
do i=1,3
|
||||||
d(i)=g_a*(a(i)-c(i))+g_b*(b(i)-c(i))
|
d(i)=g_a*(a(i)-c(i))+g_b*(b(i)-c(i))
|
||||||
d2=d2+d(i)**2
|
d2=d2+d(i)*d(i)
|
||||||
enddo
|
enddo
|
||||||
d2=dsqrt(d2)
|
d2=dsqrt(d2)
|
||||||
dreal=2.d0*d2
|
dreal=2.d0*d2
|
||||||
|
|
||||||
|
|
||||||
theta_DC0=dacos(d(3)/d2)
|
theta_DC0=dacos(d(3)/d2)
|
||||||
phi_DC0=datan2(d(2)/d2,d(1)/d2)
|
phi_DC0=datan2(d(2)/d2,d(1)/d2)
|
||||||
|
|
||||||
|
if (isnan(theta_DC0).or.isnan(phi_DC0)) then
|
||||||
|
print *, 'NaN in /src/Integrals_Monoelec/pseudopot.f90 at line 449.'
|
||||||
|
print *, 'Try to break symmetry in your molecule (1.-16 is OK).'
|
||||||
|
stop 1
|
||||||
|
endif
|
||||||
|
|
||||||
allocate (array_R_loc(-2:ntot_max+klocmax_max,klocmax_max,0:ntot_max))
|
allocate (array_R_loc(-2:ntot_max+klocmax_max,klocmax_max,0:ntot_max))
|
||||||
allocate (array_coefs(0:ntot_max,0:ntot_max,0:ntot_max,0:ntot_max,0:ntot_max,0:ntot_max))
|
allocate (array_coefs(0:ntot_max,0:ntot_max,0:ntot_max,0:ntot_max,0:ntot_max,0:ntot_max))
|
||||||
|
|
||||||
|
Before Width: | Height: | Size: 39 KiB After Width: | Height: | Size: 41 KiB |
32
src/MOGuess/.gitignore
vendored
@ -1,20 +1,20 @@
|
|||||||
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
|
# Automatically created by $QP_ROOT/scripts/module/module_handler.py
|
||||||
IRPF90_temp
|
|
||||||
IRPF90_man
|
|
||||||
irpf90_entities
|
|
||||||
tags
|
|
||||||
irpf90.make
|
|
||||||
Makefile
|
|
||||||
Makefile.depend
|
|
||||||
.ninja_log
|
|
||||||
.ninja_deps
|
.ninja_deps
|
||||||
ezfio_interface.irp.f
|
.ninja_log
|
||||||
Ezfio_files
|
|
||||||
Integrals_Monoelec
|
|
||||||
MO_Basis
|
|
||||||
Utils
|
|
||||||
Pseudo
|
|
||||||
AO_Basis
|
AO_Basis
|
||||||
Electrons
|
Electrons
|
||||||
|
Ezfio_files
|
||||||
|
H_CORE_guess
|
||||||
|
IRPF90_man
|
||||||
|
IRPF90_temp
|
||||||
|
Integrals_Monoelec
|
||||||
|
MO_Basis
|
||||||
|
Makefile
|
||||||
|
Makefile.depend
|
||||||
Nuclei
|
Nuclei
|
||||||
H_CORE_guess
|
Pseudo
|
||||||
|
Utils
|
||||||
|
ezfio_interface.irp.f
|
||||||
|
irpf90.make
|
||||||
|
irpf90_entities
|
||||||
|
tags
|
Before Width: | Height: | Size: 44 KiB After Width: | Height: | Size: 46 KiB |
Before Width: | Height: | Size: 26 KiB After Width: | Height: | Size: 27 KiB |
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 12 KiB |
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 16 KiB |
Before Width: | Height: | Size: 2.5 KiB After Width: | Height: | Size: 2.7 KiB |