Epic merge for the doc...
@ -31,14 +31,14 @@ OPENMP : 1 ; Append OpenMP flags
|
||||
# -ftz : Flushes denormal results to zero
|
||||
#
|
||||
[OPT]
|
||||
FCFLAGS : -xHost -O2 -ip -opt-prefetch -ftz -g
|
||||
FCFLAGS : -xSSE4.2 -O2 -ip -opt-prefetch -ftz -g
|
||||
|
||||
# Profiling flags
|
||||
#################
|
||||
#
|
||||
[PROFILE]
|
||||
FC : -p -g
|
||||
FCFLAGS : -xHost -O2 -ip -opt-prefetch -ftz
|
||||
FCFLAGS : -xSSE4.2 -O2 -ip -opt-prefetch -ftz
|
||||
|
||||
# Debugging flags
|
||||
#################
|
||||
|
4
configure
vendored
@ -17,9 +17,11 @@ Options:
|
||||
who contains a binary, than you can compile then
|
||||
individualy if you want
|
||||
|
||||
Example:
|
||||
Examples:
|
||||
|
||||
./configure config/gfortran.cfg --production
|
||||
./configure config/ifort.cfg --development
|
||||
|
||||
|
||||
"""
|
||||
|
||||
|
8
ocaml/.gitignore
vendored
@ -38,12 +38,12 @@ qp_print
|
||||
qp_run
|
||||
qp_set_ddci
|
||||
qp_set_mo_class
|
||||
Input_pseudo.ml
|
||||
Input_integrals_bielec.ml
|
||||
Input_hartree_fock.ml
|
||||
Input_perturbation.ml
|
||||
Input_determinants.ml
|
||||
Input_hartree_fock.ml
|
||||
Input_integrals_bielec.ml
|
||||
Input_perturbation.ml
|
||||
Input_properties.ml
|
||||
Input_pseudo.ml
|
||||
qp_edit.ml
|
||||
qp_edit
|
||||
qp_edit.native
|
||||
|
34
plugins/Alavi/.gitignore
vendored
@ -1,23 +1,23 @@
|
||||
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
|
||||
IRPF90_temp
|
||||
IRPF90_man
|
||||
irpf90_entities
|
||||
tags
|
||||
irpf90.make
|
||||
Makefile
|
||||
Makefile.depend
|
||||
.ninja_log
|
||||
# Automatically created by $QP_ROOT/scripts/module/module_handler.py
|
||||
.ninja_deps
|
||||
ezfio_interface.irp.f
|
||||
Ezfio_files
|
||||
.ninja_log
|
||||
AO_Basis
|
||||
Bitmask
|
||||
Determinants
|
||||
Electrons
|
||||
Ezfio_files
|
||||
IRPF90_man
|
||||
IRPF90_temp
|
||||
Integrals_Bielec
|
||||
Integrals_Monoelec
|
||||
MO_Basis
|
||||
Utils
|
||||
Pseudo
|
||||
Bitmask
|
||||
AO_Basis
|
||||
Electrons
|
||||
Makefile
|
||||
Makefile.depend
|
||||
Nuclei
|
||||
Integrals_Bielec
|
||||
Pseudo
|
||||
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
|
||||
IRPF90_temp
|
||||
# Automatically created by $QP_ROOT/scripts/module/module_handler.py
|
||||
.ninja_deps
|
||||
.ninja_log
|
||||
AO_Basis
|
||||
Bitmask
|
||||
Determinants
|
||||
Electrons
|
||||
Ezfio_files
|
||||
Generators_CAS
|
||||
Hartree_Fock
|
||||
IRPF90_man
|
||||
irpf90_entities
|
||||
tags
|
||||
irpf90.make
|
||||
IRPF90_temp
|
||||
Integrals_Bielec
|
||||
Integrals_Monoelec
|
||||
MOGuess
|
||||
MO_Basis
|
||||
Makefile
|
||||
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
|
||||
Hartree_Fock
|
||||
Perturbation
|
||||
Properties
|
||||
cas_sd_selected
|
||||
Pseudo
|
||||
Selectors_full
|
||||
Utils
|
||||
cas_sd
|
||||
cas_sd_selected
|
||||
ezfio_interface.irp.f
|
||||
irpf90.make
|
||||
irpf90_entities
|
||||
tags
|
@ -5,6 +5,12 @@ from generate_h_apply import *
|
||||
s = H_apply("CAS_SD")
|
||||
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.set_selection_pt2("epstein_nesbet_2x2")
|
||||
print s
|
||||
|
@ -17,52 +17,69 @@ Documentation
|
||||
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
|
||||
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
|
||||
particles.
|
||||
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
|
||||
particles.
|
||||
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
|
||||
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
|
||||
particles.
|
||||
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
|
||||
particles.
|
||||
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
|
||||
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
|
||||
particles.
|
||||
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
|
||||
particles.
|
||||
Assume N_int is already provided.
|
||||
|
@ -9,6 +9,7 @@ program full_ci
|
||||
N_st = N_states
|
||||
allocate (pt2(N_st), norm_pert(N_st),H_pert_diag(N_st))
|
||||
character*(64) :: perturbation
|
||||
PROVIDE N_det_cas
|
||||
|
||||
N_det_old = 0
|
||||
pt2 = 1.d0
|
||||
@ -52,7 +53,7 @@ program full_ci
|
||||
print *, 'E = ', CI_energy
|
||||
print *, 'E+PT2 = ', CI_energy+pt2
|
||||
print *, '-----'
|
||||
call ezfio_set_cas_sd_energy(CI_energy)
|
||||
call ezfio_set_cas_sd_energy(CI_energy(1))
|
||||
if (abort_all) then
|
||||
exit
|
||||
endif
|
||||
@ -60,16 +61,34 @@ program full_ci
|
||||
exit
|
||||
endif
|
||||
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
|
||||
exc_max = 0
|
||||
print *, 'CAS determinants : ', N_det_generators
|
||||
do i=1,min(N_det_generators,10)
|
||||
do k=i,N_det_generators
|
||||
call get_excitation_degree(psi_det_generators(1,1,k),psi_det_generators(1,1,i),degree,N_int)
|
||||
print *, 'CAS determinants : ', N_det_cas
|
||||
do i=1,min(N_det_cas,10)
|
||||
do k=i,N_det_cas
|
||||
call get_excitation_degree(psi_cas(1,1,k),psi_cas(1,1,i),degree,N_int)
|
||||
exc_max = max(exc_max,degree)
|
||||
enddo
|
||||
call debug_det(psi_det_generators(1,1,i),N_int)
|
||||
call debug_det(psi_cas(1,1,i),N_int)
|
||||
print *, ''
|
||||
enddo
|
||||
print *, 'Max excitation degree in the CAS :', exc_max
|
||||
|
Before Width: | Height: | Size: 104 KiB After Width: | Height: | Size: 111 KiB |
40
plugins/CID/.gitignore
vendored
@ -1,28 +1,28 @@
|
||||
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
|
||||
IRPF90_temp
|
||||
IRPF90_man
|
||||
irpf90_entities
|
||||
tags
|
||||
irpf90.make
|
||||
Makefile
|
||||
Makefile.depend
|
||||
.ninja_log
|
||||
# Automatically created by $QP_ROOT/scripts/module/module_handler.py
|
||||
.ninja_deps
|
||||
ezfio_interface.irp.f
|
||||
Ezfio_files
|
||||
Determinants
|
||||
Integrals_Monoelec
|
||||
MO_Basis
|
||||
Selectors_full
|
||||
Utils
|
||||
Pseudo
|
||||
.ninja_log
|
||||
AO_Basis
|
||||
Bitmask
|
||||
SingleRefMethod
|
||||
Determinants
|
||||
Electrons
|
||||
MOGuess
|
||||
Nuclei
|
||||
Ezfio_files
|
||||
Hartree_Fock
|
||||
IRPF90_man
|
||||
IRPF90_temp
|
||||
Integrals_Bielec
|
||||
Integrals_Monoelec
|
||||
MOGuess
|
||||
MO_Basis
|
||||
Makefile
|
||||
Makefile.depend
|
||||
Nuclei
|
||||
Pseudo
|
||||
Selectors_full
|
||||
SingleRefMethod
|
||||
Utils
|
||||
cid
|
||||
cid_lapack
|
||||
ezfio_interface.irp.f
|
||||
irpf90.make
|
||||
irpf90_entities
|
||||
tags
|
46
plugins/CID_SC2_selected/.gitignore
vendored
@ -1,31 +1,31 @@
|
||||
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
|
||||
IRPF90_temp
|
||||
# Automatically created by $QP_ROOT/scripts/module/module_handler.py
|
||||
.ninja_deps
|
||||
.ninja_log
|
||||
AO_Basis
|
||||
Bitmask
|
||||
CID
|
||||
CID_selected
|
||||
Determinants
|
||||
Electrons
|
||||
Ezfio_files
|
||||
Hartree_Fock
|
||||
IRPF90_man
|
||||
irpf90_entities
|
||||
tags
|
||||
irpf90.make
|
||||
IRPF90_temp
|
||||
Integrals_Bielec
|
||||
Integrals_Monoelec
|
||||
MOGuess
|
||||
MO_Basis
|
||||
Makefile
|
||||
Makefile.depend
|
||||
.ninja_log
|
||||
.ninja_deps
|
||||
ezfio_interface.irp.f
|
||||
Ezfio_files
|
||||
Nuclei
|
||||
Perturbation
|
||||
Determinants
|
||||
Integrals_Monoelec
|
||||
MO_Basis
|
||||
Properties
|
||||
Pseudo
|
||||
Selectors_full
|
||||
SingleRefMethod
|
||||
Utils
|
||||
CID
|
||||
Pseudo
|
||||
Properties
|
||||
Bitmask
|
||||
AO_Basis
|
||||
Electrons
|
||||
MOGuess
|
||||
CID_selected
|
||||
Nuclei
|
||||
Hartree_Fock
|
||||
Integrals_Bielec
|
||||
cid_sc2_selection
|
||||
ezfio_interface.irp.f
|
||||
irpf90.make
|
||||
irpf90_entities
|
||||
tags
|
46
plugins/CID_selected/.gitignore
vendored
@ -1,30 +1,30 @@
|
||||
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
|
||||
IRPF90_temp
|
||||
IRPF90_man
|
||||
irpf90_entities
|
||||
tags
|
||||
irpf90.make
|
||||
Makefile
|
||||
Makefile.depend
|
||||
.ninja_log
|
||||
# Automatically created by $QP_ROOT/scripts/module/module_handler.py
|
||||
.ninja_deps
|
||||
ezfio_interface.irp.f
|
||||
Ezfio_files
|
||||
Perturbation
|
||||
Determinants
|
||||
Utils
|
||||
Integrals_Monoelec
|
||||
MO_Basis
|
||||
Selectors_full
|
||||
Integrals_Bielec
|
||||
CID
|
||||
Pseudo
|
||||
.ninja_log
|
||||
AO_Basis
|
||||
Bitmask
|
||||
SingleRefMethod
|
||||
CID
|
||||
Determinants
|
||||
Electrons
|
||||
MOGuess
|
||||
Nuclei
|
||||
Ezfio_files
|
||||
Hartree_Fock
|
||||
IRPF90_man
|
||||
IRPF90_temp
|
||||
Integrals_Bielec
|
||||
Integrals_Monoelec
|
||||
MOGuess
|
||||
MO_Basis
|
||||
Makefile
|
||||
Makefile.depend
|
||||
Nuclei
|
||||
Perturbation
|
||||
Properties
|
||||
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
|
||||
IRPF90_temp
|
||||
IRPF90_man
|
||||
irpf90_entities
|
||||
tags
|
||||
irpf90.make
|
||||
Makefile
|
||||
Makefile.depend
|
||||
.ninja_log
|
||||
# Automatically created by $QP_ROOT/scripts/module/module_handler.py
|
||||
.ninja_deps
|
||||
ezfio_interface.irp.f
|
||||
Ezfio_files
|
||||
Determinants
|
||||
Integrals_Monoelec
|
||||
MO_Basis
|
||||
Selectors_full
|
||||
Utils
|
||||
Pseudo
|
||||
.ninja_log
|
||||
AO_Basis
|
||||
Bitmask
|
||||
SingleRefMethod
|
||||
Determinants
|
||||
Electrons
|
||||
MOGuess
|
||||
Nuclei
|
||||
Ezfio_files
|
||||
Hartree_Fock
|
||||
IRPF90_man
|
||||
IRPF90_temp
|
||||
Integrals_Bielec
|
||||
super_ci
|
||||
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
|
||||
tags
|
42
plugins/CISD/.gitignore
vendored
@ -1,28 +1,28 @@
|
||||
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
|
||||
IRPF90_temp
|
||||
IRPF90_man
|
||||
irpf90_entities
|
||||
tags
|
||||
irpf90.make
|
||||
Makefile
|
||||
Makefile.depend
|
||||
.ninja_log
|
||||
# Automatically created by $QP_ROOT/scripts/module/module_handler.py
|
||||
.ninja_deps
|
||||
ezfio_interface.irp.f
|
||||
Ezfio_files
|
||||
Determinants
|
||||
Integrals_Monoelec
|
||||
MO_Basis
|
||||
Selectors_full
|
||||
Utils
|
||||
Pseudo
|
||||
.ninja_log
|
||||
AO_Basis
|
||||
Bitmask
|
||||
SingleRefMethod
|
||||
Determinants
|
||||
Electrons
|
||||
MOGuess
|
||||
Nuclei
|
||||
Ezfio_files
|
||||
Hartree_Fock
|
||||
IRPF90_man
|
||||
IRPF90_temp
|
||||
Integrals_Bielec
|
||||
cisd_lapack
|
||||
Integrals_Monoelec
|
||||
MOGuess
|
||||
MO_Basis
|
||||
Makefile
|
||||
Makefile.depend
|
||||
Nuclei
|
||||
Pseudo
|
||||
Selectors_full
|
||||
SingleRefMethod
|
||||
Utils
|
||||
cisd
|
||||
cisd_lapack
|
||||
ezfio_interface.irp.f
|
||||
irpf90.make
|
||||
irpf90_entities
|
||||
tags
|
Before Width: | Height: | Size: 92 KiB After Width: | Height: | Size: 96 KiB |
46
plugins/CISD_SC2_selected/.gitignore
vendored
@ -1,31 +1,31 @@
|
||||
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
|
||||
IRPF90_temp
|
||||
# Automatically created by $QP_ROOT/scripts/module/module_handler.py
|
||||
.ninja_deps
|
||||
.ninja_log
|
||||
AO_Basis
|
||||
Bitmask
|
||||
CISD
|
||||
CISD_selected
|
||||
Determinants
|
||||
Electrons
|
||||
Ezfio_files
|
||||
Hartree_Fock
|
||||
IRPF90_man
|
||||
irpf90_entities
|
||||
tags
|
||||
irpf90.make
|
||||
IRPF90_temp
|
||||
Integrals_Bielec
|
||||
Integrals_Monoelec
|
||||
MOGuess
|
||||
MO_Basis
|
||||
Makefile
|
||||
Makefile.depend
|
||||
.ninja_log
|
||||
.ninja_deps
|
||||
ezfio_interface.irp.f
|
||||
Ezfio_files
|
||||
Nuclei
|
||||
Perturbation
|
||||
Determinants
|
||||
Integrals_Monoelec
|
||||
MO_Basis
|
||||
Properties
|
||||
Pseudo
|
||||
Selectors_full
|
||||
SingleRefMethod
|
||||
Utils
|
||||
Pseudo
|
||||
Properties
|
||||
Bitmask
|
||||
AO_Basis
|
||||
Electrons
|
||||
CISD_selected
|
||||
MOGuess
|
||||
CISD
|
||||
Nuclei
|
||||
Hartree_Fock
|
||||
Integrals_Bielec
|
||||
cisd_sc2_selection
|
||||
ezfio_interface.irp.f
|
||||
irpf90.make
|
||||
irpf90_entities
|
||||
tags
|
Before Width: | Height: | Size: 116 KiB After Width: | Height: | Size: 123 KiB |
46
plugins/CISD_selected/.gitignore
vendored
@ -1,30 +1,30 @@
|
||||
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
|
||||
IRPF90_temp
|
||||
IRPF90_man
|
||||
irpf90_entities
|
||||
tags
|
||||
irpf90.make
|
||||
Makefile
|
||||
Makefile.depend
|
||||
.ninja_log
|
||||
# Automatically created by $QP_ROOT/scripts/module/module_handler.py
|
||||
.ninja_deps
|
||||
ezfio_interface.irp.f
|
||||
Ezfio_files
|
||||
Perturbation
|
||||
Determinants
|
||||
Utils
|
||||
Integrals_Monoelec
|
||||
MO_Basis
|
||||
Selectors_full
|
||||
Integrals_Bielec
|
||||
Pseudo
|
||||
.ninja_log
|
||||
AO_Basis
|
||||
Bitmask
|
||||
SingleRefMethod
|
||||
Electrons
|
||||
MOGuess
|
||||
CISD
|
||||
Nuclei
|
||||
Determinants
|
||||
Electrons
|
||||
Ezfio_files
|
||||
Hartree_Fock
|
||||
IRPF90_man
|
||||
IRPF90_temp
|
||||
Integrals_Bielec
|
||||
Integrals_Monoelec
|
||||
MOGuess
|
||||
MO_Basis
|
||||
Makefile
|
||||
Makefile.depend
|
||||
Nuclei
|
||||
Perturbation
|
||||
Properties
|
||||
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 |
34
plugins/Casino/.gitignore
vendored
@ -1,23 +1,23 @@
|
||||
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
|
||||
IRPF90_temp
|
||||
IRPF90_man
|
||||
irpf90_entities
|
||||
tags
|
||||
irpf90.make
|
||||
Makefile
|
||||
Makefile.depend
|
||||
.ninja_log
|
||||
# Automatically created by $QP_ROOT/scripts/module/module_handler.py
|
||||
.ninja_deps
|
||||
ezfio_interface.irp.f
|
||||
Ezfio_files
|
||||
.ninja_log
|
||||
AO_Basis
|
||||
Bitmask
|
||||
Determinants
|
||||
Electrons
|
||||
Ezfio_files
|
||||
IRPF90_man
|
||||
IRPF90_temp
|
||||
Integrals_Bielec
|
||||
Integrals_Monoelec
|
||||
MO_Basis
|
||||
Utils
|
||||
Pseudo
|
||||
Bitmask
|
||||
AO_Basis
|
||||
Electrons
|
||||
Makefile
|
||||
Makefile.depend
|
||||
Nuclei
|
||||
Integrals_Bielec
|
||||
Pseudo
|
||||
Utils
|
||||
ezfio_interface.irp.f
|
||||
irpf90.make
|
||||
irpf90_entities
|
||||
save_for_casino
|
||||
tags
|
46
plugins/DDCI_selected/.gitignore
vendored
@ -1,29 +1,29 @@
|
||||
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
|
||||
IRPF90_temp
|
||||
# Automatically created by $QP_ROOT/scripts/module/module_handler.py
|
||||
.ninja_deps
|
||||
.ninja_log
|
||||
AO_Basis
|
||||
Bitmask
|
||||
Determinants
|
||||
Electrons
|
||||
Ezfio_files
|
||||
Generators_CAS
|
||||
Hartree_Fock
|
||||
IRPF90_man
|
||||
irpf90_entities
|
||||
tags
|
||||
irpf90.make
|
||||
IRPF90_temp
|
||||
Integrals_Bielec
|
||||
Integrals_Monoelec
|
||||
MOGuess
|
||||
MO_Basis
|
||||
Makefile
|
||||
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
|
||||
Hartree_Fock
|
||||
Perturbation
|
||||
Properties
|
||||
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 |
50
plugins/Full_CI/.gitignore
vendored
@ -1,32 +1,32 @@
|
||||
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
|
||||
IRPF90_temp
|
||||
# Automatically created by $QP_ROOT/scripts/module/module_handler.py
|
||||
.ninja_deps
|
||||
.ninja_log
|
||||
AO_Basis
|
||||
Bitmask
|
||||
Determinants
|
||||
Electrons
|
||||
Ezfio_files
|
||||
Generators_full
|
||||
Hartree_Fock
|
||||
IRPF90_man
|
||||
irpf90_entities
|
||||
tags
|
||||
irpf90.make
|
||||
IRPF90_temp
|
||||
Integrals_Bielec
|
||||
Integrals_Monoelec
|
||||
MOGuess
|
||||
MO_Basis
|
||||
Makefile
|
||||
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
|
||||
Hartree_Fock
|
||||
Perturbation
|
||||
Properties
|
||||
target_pt2
|
||||
Pseudo
|
||||
Selectors_full
|
||||
Utils
|
||||
ezfio_interface.irp.f
|
||||
full_ci
|
||||
var_pt2_ratio
|
||||
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
|
||||
.. 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>`_
|
||||
* `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
|
||||
IRPF90_temp
|
||||
# Automatically created by $QP_ROOT/scripts/module/module_handler.py
|
||||
.ninja_deps
|
||||
.ninja_log
|
||||
AO_Basis
|
||||
Bitmask
|
||||
Electrons
|
||||
Ezfio_files
|
||||
Huckel_guess
|
||||
IRPF90_man
|
||||
irpf90_entities
|
||||
tags
|
||||
irpf90.make
|
||||
IRPF90_temp
|
||||
Integrals_Bielec
|
||||
Integrals_Monoelec
|
||||
MOGuess
|
||||
MO_Basis
|
||||
Makefile
|
||||
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
|
||||
Utils
|
||||
Huckel_guess
|
||||
Pseudo
|
||||
SCF
|
||||
Utils
|
||||
ezfio_interface.irp.f
|
||||
irpf90.make
|
||||
irpf90_entities
|
||||
tags
|
Before Width: | Height: | Size: 63 KiB After Width: | Height: | Size: 66 KiB |
44
plugins/MP2/.gitignore
vendored
@ -1,29 +1,29 @@
|
||||
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
|
||||
IRPF90_temp
|
||||
IRPF90_man
|
||||
irpf90_entities
|
||||
tags
|
||||
irpf90.make
|
||||
Makefile
|
||||
Makefile.depend
|
||||
.ninja_log
|
||||
# Automatically created by $QP_ROOT/scripts/module/module_handler.py
|
||||
.ninja_deps
|
||||
ezfio_interface.irp.f
|
||||
Ezfio_files
|
||||
Perturbation
|
||||
Determinants
|
||||
Utils
|
||||
Integrals_Monoelec
|
||||
MO_Basis
|
||||
Selectors_full
|
||||
Integrals_Bielec
|
||||
Pseudo
|
||||
.ninja_log
|
||||
AO_Basis
|
||||
Bitmask
|
||||
SingleRefMethod
|
||||
Determinants
|
||||
Electrons
|
||||
MOGuess
|
||||
Nuclei
|
||||
Ezfio_files
|
||||
Hartree_Fock
|
||||
IRPF90_man
|
||||
IRPF90_temp
|
||||
Integrals_Bielec
|
||||
Integrals_Monoelec
|
||||
MOGuess
|
||||
MO_Basis
|
||||
Makefile
|
||||
Makefile.depend
|
||||
Nuclei
|
||||
Perturbation
|
||||
Properties
|
||||
Pseudo
|
||||
Selectors_full
|
||||
SingleRefMethod
|
||||
Utils
|
||||
ezfio_interface.irp.f
|
||||
irpf90.make
|
||||
irpf90_entities
|
||||
mp2
|
||||
tags
|
46
plugins/MRCC/.gitignore
vendored
@ -1,29 +1,29 @@
|
||||
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
|
||||
IRPF90_temp
|
||||
# Automatically created by $QP_ROOT/scripts/module/module_handler.py
|
||||
.ninja_deps
|
||||
.ninja_log
|
||||
AO_Basis
|
||||
Bitmask
|
||||
Determinants
|
||||
Electrons
|
||||
Ezfio_files
|
||||
Generators_full
|
||||
Hartree_Fock
|
||||
IRPF90_man
|
||||
irpf90_entities
|
||||
tags
|
||||
irpf90.make
|
||||
IRPF90_temp
|
||||
Integrals_Bielec
|
||||
Integrals_Monoelec
|
||||
MOGuess
|
||||
MO_Basis
|
||||
Makefile
|
||||
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
|
||||
Hartree_Fock
|
||||
Perturbation
|
||||
Properties
|
||||
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 ]
|
||||
from generate_h_apply import *
|
||||
|
||||
s = H_apply("mrcc_simple")
|
||||
s.data["parameters"] = ", delta_ij_sd_, Ndet_sd"
|
||||
s = H_apply("mrcc")
|
||||
s.data["parameters"] = ", delta_ij_, delta_ii_,Ndet_cas, Ndet_non_cas"
|
||||
s.data["declarations"] += """
|
||||
integer, intent(in) :: Ndet_sd
|
||||
double precision, intent(in) :: delta_ij_sd_(Ndet_sd,Ndet_sd,*)
|
||||
integer, intent(in) :: Ndet_cas,Ndet_non_cas
|
||||
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["params_post"] += ", delta_ij_sd_, Ndet_sd"
|
||||
s.data["params_main"] += "delta_ij_sd_, Ndet_sd"
|
||||
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_, delta_ii_, Ndet_cas, Ndet_non_cas"
|
||||
s.data["params_main"] += "delta_ij_, delta_ii_, Ndet_cas, Ndet_non_cas"
|
||||
s.data["decls_main"] += """
|
||||
integer, intent(in) :: Ndet_sd
|
||||
double precision, intent(in) :: delta_ij_sd_(Ndet_sd,Ndet_sd,*)
|
||||
integer, intent(in) :: Ndet_cas,Ndet_non_cas
|
||||
double precision, intent(in) :: delta_ij_(Ndet_cas,Ndet_non_cas,*)
|
||||
double precision, intent(in) :: delta_ii_(Ndet_cas,*)
|
||||
"""
|
||||
s.data["finalization"] = ""
|
||||
s.data["copy_buffer"] = ""
|
||||
@ -22,11 +24,5 @@ s.data["size_max"] = "3072"
|
||||
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
|
||||
|
||||
|
@ -20,23 +20,23 @@ Documentation
|
||||
.. Do not edit this section. It was auto-generated from the
|
||||
.. 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
|
||||
|
||||
|
||||
`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
|
||||
|
||||
|
||||
`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
|
||||
|
||||
|
||||
`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
|
||||
|
||||
|
||||
`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
|
||||
.br
|
||||
H_jj : specific diagonal H matrix elements to diagonalize de Davidson
|
||||
@ -76,66 +76,45 @@ Documentation
|
||||
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
|
||||
|
||||
|
||||
`delta_ij_non_cas <http://github.com/LCPQ/quantum_package/tree/master/src/MRCC/mrcc_utils.irp.f#L39>`_
|
||||
Dressing matrix in SD basis
|
||||
`delta_ij <http://github.com/LCPQ/quantum_package/tree/master/src/MRCC/mrcc_utils.irp.f#L38>`_
|
||||
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
|
||||
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>`_
|
||||
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
|
||||
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
|
||||
particles.
|
||||
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
|
||||
particles.
|
||||
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>`_
|
||||
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>`_
|
||||
`h_matrix_dressed <http://github.com/LCPQ/quantum_package/tree/master/src/MRCC/mrcc_utils.irp.f#L50>`_
|
||||
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>
|
||||
.br
|
||||
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))
|
||||
|
||||
!$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 DO SCHEDULE(guided)
|
||||
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
|
||||
!$OMP END DO
|
||||
!$OMP END PARALLEL
|
||||
@ -370,7 +375,7 @@ subroutine H_u_0_mrcc(v_0,u_0,H_jj,n,keys_tmp,Nint,istate)
|
||||
integer, allocatable :: idx(:)
|
||||
double precision :: hij
|
||||
double precision, allocatable :: vt(:)
|
||||
integer :: i,j,k,l, jj
|
||||
integer :: i,j,k,l, jj,ii
|
||||
integer :: i0, j0
|
||||
ASSERT (Nint > 0)
|
||||
ASSERT (Nint == N_int)
|
||||
@ -378,8 +383,8 @@ subroutine H_u_0_mrcc(v_0,u_0,H_jj,n,keys_tmp,Nint,istate)
|
||||
PROVIDE ref_bitmask_energy delta_ij
|
||||
integer, parameter :: block_size = 157
|
||||
!$OMP PARALLEL DEFAULT(NONE) &
|
||||
!$OMP PRIVATE(i,hij,j,k,idx,jj,vt) &
|
||||
!$OMP SHARED(n,H_jj,u_0,keys_tmp,Nint,v_0,istate,delta_ij)
|
||||
!$OMP PRIVATE(i,hij,j,k,idx,jj,ii,vt) &
|
||||
!$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)
|
||||
do i=1,n
|
||||
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
|
||||
!$OMP DO SCHEDULE(guided)
|
||||
do i=1,n
|
||||
! idx(0) = i
|
||||
! call filter_connected_davidson(keys_tmp,keys_tmp(1,1,i),Nint,i-1,idx)
|
||||
! do jj=1,idx(0)
|
||||
! j = idx(jj)
|
||||
idx(0) = i
|
||||
call filter_connected_davidson(keys_tmp,keys_tmp(1,1,i),Nint,i-1,idx)
|
||||
do jj=1,idx(0)
|
||||
j = idx(jj)
|
||||
! 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)
|
||||
hij = hij + delta_ij(j,i,istate)
|
||||
hij = hij
|
||||
vt (i) = vt (i) + hij*u_0(j)
|
||||
vt (j) = vt (j) + hij*u_0(i)
|
||||
! endif
|
||||
enddo
|
||||
enddo
|
||||
!$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
|
||||
do i=1,n
|
||||
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
|
||||
|
||||
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
|
||||
implicit none
|
||||
|
||||
integer, intent(in) :: i_generator,n_selected, Nint, iproc
|
||||
integer, intent(in) :: Ndet
|
||||
double precision, intent(inout) :: delta_ij_(Ndet,Ndet,*)
|
||||
integer, intent(in) :: Ndet_cas, Ndet_non_cas
|
||||
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 :: 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)
|
||||
|
||||
allocate (dIa_hla(N_states,Ndet))
|
||||
allocate (dIa_hla(N_states,Ndet_non_cas))
|
||||
|
||||
! |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)
|
||||
k_sd = idx_alpha(l_sd)
|
||||
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_(idx_cas(i_I),idx_non_cas(k_sd),i_state) += dIa_hla(i_state,k_sd)
|
||||
delta_ij_(i_I,k_sd,i_state) += dIa_hla(i_state,k_sd)
|
||||
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
|
||||
delta_ij_(idx_cas(i_I),idx_cas(i_I),i_state) = 0.d0
|
||||
delta_ii_(i_I,i_state) = 0.d0
|
||||
endif
|
||||
enddo
|
||||
enddo
|
||||
|
@ -5,20 +5,19 @@
|
||||
! cm/<Psi_0|H|D_m> or perturbative 1/Delta_E(m)
|
||||
END_DOC
|
||||
integer :: i,k
|
||||
double precision :: ihpsi(N_states), hii
|
||||
double precision :: ihpsi(N_states), hii
|
||||
|
||||
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, &
|
||||
size(psi_cas_coef,1), n_states, ihpsi)
|
||||
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,&
|
||||
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)
|
||||
do k=1,N_states
|
||||
|
||||
lambda_pert(k,i) = 1.d0 / (psi_cas_energy_diagonalized(k)-hii)
|
||||
lambda_mrcc(k,i) = psi_non_cas_coef(i,k)/ihpsi(k)
|
||||
if (dabs(ihpsi(k)).le.1.d-3) then
|
||||
lambda_mrcc(k,i) = 1.d0 / (psi_cas_energy_diagonalized(k)-hii)
|
||||
cycle
|
||||
endif
|
||||
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) = lambda_pert(k,i)
|
||||
else
|
||||
lambda_mrcc(k,i) = psi_non_cas_coef(i,k)/ihpsi(k)
|
||||
endif
|
||||
enddo
|
||||
enddo
|
||||
|
||||
@ -27,133 +26,116 @@ 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 ]
|
||||
implicit none
|
||||
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) ]
|
||||
BEGIN_PROVIDER [ double precision, delta_ij, (N_det_cas,N_det_non_cas,N_states) ]
|
||||
&BEGIN_PROVIDER [ double precision, delta_ii, (N_det_cas,N_states) ]
|
||||
implicit none
|
||||
BEGIN_DOC
|
||||
! Dressing matrix in N_det basis
|
||||
END_DOC
|
||||
integer :: i,j,m
|
||||
delta_ij = 0.d0
|
||||
if (dressing_type == "MRCC") then
|
||||
call H_apply_mrcc(delta_ij,N_det)
|
||||
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
|
||||
|
||||
delta_ii = 0.d0
|
||||
call H_apply_mrcc(delta_ij,delta_ii,N_det_cas,N_det_non_cas)
|
||||
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
|
||||
BEGIN_DOC
|
||||
! Dressed H with Delta_ij
|
||||
END_DOC
|
||||
integer :: i, j
|
||||
do j=1,N_det
|
||||
do i=1,N_det
|
||||
h_matrix_dressed(i,j) = h_matrix_all_dets(i,j) + delta_ij(i,j,1)
|
||||
integer :: i, j,istate,ii,jj
|
||||
do istate = 1,N_states
|
||||
do j=1,N_det
|
||||
do i=1,N_det
|
||||
h_matrix_dressed(i,j,istate) = h_matrix_all_dets(i,j)
|
||||
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
|
||||
|
||||
END_PROVIDER
|
||||
|
||||
|
||||
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_s2_dressed, (N_states_diag) ]
|
||||
implicit none
|
||||
BEGIN_DOC
|
||||
! Eigenvectors/values of the CI matrix
|
||||
END_DOC
|
||||
integer :: i,j
|
||||
implicit none
|
||||
BEGIN_DOC
|
||||
! Eigenvectors/values of the CI matrix
|
||||
END_DOC
|
||||
integer :: i,j
|
||||
|
||||
do j=1,N_states_diag
|
||||
do i=1,N_det
|
||||
CI_eigenvectors_dressed(i,j) = psi_coef(i,j)
|
||||
enddo
|
||||
enddo
|
||||
do j=1,N_states_diag
|
||||
do i=1,N_det
|
||||
CI_eigenvectors_dressed(i,j) = psi_coef(i,j)
|
||||
enddo
|
||||
enddo
|
||||
|
||||
if (diag_algorithm == "Davidson") then
|
||||
if (diag_algorithm == "Davidson") then
|
||||
|
||||
integer :: istate
|
||||
istate = 1
|
||||
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)
|
||||
integer :: istate
|
||||
istate = 1
|
||||
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)
|
||||
|
||||
else if (diag_algorithm == "Lapack") then
|
||||
else if (diag_algorithm == "Lapack") then
|
||||
|
||||
double precision, allocatable :: eigenvectors(:,:), eigenvalues(:)
|
||||
allocate (eigenvectors(size(H_matrix_dressed,1),N_det))
|
||||
allocate (eigenvalues(N_det))
|
||||
call lapack_diag(eigenvalues,eigenvectors, &
|
||||
H_matrix_dressed,size(H_matrix_dressed,1),N_det)
|
||||
CI_electronic_energy_dressed(:) = 0.d0
|
||||
do i=1,N_det
|
||||
double precision, allocatable :: eigenvectors(:,:), eigenvalues(:)
|
||||
allocate (eigenvectors(size(H_matrix_dressed,1),N_det))
|
||||
allocate (eigenvalues(N_det))
|
||||
call lapack_diag(eigenvalues,eigenvectors, &
|
||||
H_matrix_dressed,size(H_matrix_dressed,1),N_det)
|
||||
CI_electronic_energy_dressed(:) = 0.d0
|
||||
do i=1,N_det
|
||||
CI_eigenvectors_dressed(i,1) = eigenvectors(i,1)
|
||||
enddo
|
||||
integer :: i_state
|
||||
double precision :: s2
|
||||
i_state = 0
|
||||
if (s2_eig) then
|
||||
do j=1,N_det
|
||||
call get_s2_u0(psi_det,eigenvectors(1,j),N_det,N_det,s2)
|
||||
if(dabs(s2-expected_s2).le.0.3d0)then
|
||||
i_state += 1
|
||||
do i=1,N_det
|
||||
CI_eigenvectors_dressed(i,i_state) = eigenvectors(i,j)
|
||||
enddo
|
||||
CI_electronic_energy_dressed(i_state) = eigenvalues(j)
|
||||
CI_eigenvectors_s2_dressed(i_state) = s2
|
||||
endif
|
||||
if (i_state.ge.N_states_diag) then
|
||||
exit
|
||||
endif
|
||||
enddo
|
||||
else
|
||||
do j=1,N_states_diag
|
||||
call get_s2_u0(psi_det,eigenvectors(1,j),N_det,N_det,s2)
|
||||
i_state += 1
|
||||
do i=1,N_det
|
||||
CI_eigenvectors_dressed(i,i_state) = eigenvectors(i,j)
|
||||
enddo
|
||||
CI_electronic_energy_dressed(i_state) = eigenvalues(j)
|
||||
CI_eigenvectors_s2_dressed(i_state) = s2
|
||||
enddo
|
||||
endif
|
||||
deallocate(eigenvectors,eigenvalues)
|
||||
endif
|
||||
enddo
|
||||
integer :: i_state
|
||||
double precision :: s2
|
||||
i_state = 0
|
||||
if (s2_eig) then
|
||||
do j=1,N_det
|
||||
call get_s2_u0(psi_det,eigenvectors(1,j),N_det,N_det,s2)
|
||||
if(dabs(s2-expected_s2).le.0.3d0)then
|
||||
i_state += 1
|
||||
do i=1,N_det
|
||||
CI_eigenvectors_dressed(i,i_state) = eigenvectors(i,j)
|
||||
enddo
|
||||
CI_electronic_energy_dressed(i_state) = eigenvalues(j)
|
||||
CI_eigenvectors_s2_dressed(i_state) = s2
|
||||
endif
|
||||
if (i_state.ge.N_states_diag) then
|
||||
exit
|
||||
endif
|
||||
enddo
|
||||
else
|
||||
do j=1,N_states_diag
|
||||
call get_s2_u0(psi_det,eigenvectors(1,j),N_det,N_det,s2)
|
||||
i_state += 1
|
||||
do i=1,N_det
|
||||
CI_eigenvectors_dressed(i,i_state) = eigenvectors(i,j)
|
||||
enddo
|
||||
CI_electronic_energy_dressed(i_state) = eigenvalues(j)
|
||||
CI_eigenvectors_s2_dressed(i_state) = s2
|
||||
enddo
|
||||
endif
|
||||
deallocate(eigenvectors,eigenvalues)
|
||||
endif
|
||||
|
||||
END_PROVIDER
|
||||
|
||||
|
Before Width: | Height: | Size: 104 KiB After Width: | Height: | Size: 111 KiB |
2
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_man
|
||||
irpf90_entities
|
||||
|
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
|
||||
.. 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>`_
|
||||
* `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
|
||||
.. 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>`_
|
||||
|
||||
|
BIN
plugins/Properties/tree_dependency.png
Normal file
After Width: | Height: | Size: 68 KiB |
34
plugins/QmcChem/.gitignore
vendored
@ -1,23 +1,23 @@
|
||||
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
|
||||
IRPF90_temp
|
||||
IRPF90_man
|
||||
irpf90_entities
|
||||
tags
|
||||
irpf90.make
|
||||
Makefile
|
||||
Makefile.depend
|
||||
.ninja_log
|
||||
# Automatically created by $QP_ROOT/scripts/module/module_handler.py
|
||||
.ninja_deps
|
||||
ezfio_interface.irp.f
|
||||
Ezfio_files
|
||||
.ninja_log
|
||||
AO_Basis
|
||||
Bitmask
|
||||
Determinants
|
||||
Electrons
|
||||
Ezfio_files
|
||||
IRPF90_man
|
||||
IRPF90_temp
|
||||
Integrals_Bielec
|
||||
Integrals_Monoelec
|
||||
MO_Basis
|
||||
Utils
|
||||
Pseudo
|
||||
Bitmask
|
||||
AO_Basis
|
||||
Electrons
|
||||
Makefile
|
||||
Makefile.depend
|
||||
Nuclei
|
||||
Integrals_Bielec
|
||||
Pseudo
|
||||
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
|
||||
.. 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>`_
|
||||
* `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 |
26
plugins/loc_cele/.gitignore
vendored
@ -1,18 +1,18 @@
|
||||
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
|
||||
IRPF90_temp
|
||||
IRPF90_man
|
||||
irpf90_entities
|
||||
tags
|
||||
irpf90.make
|
||||
Makefile
|
||||
Makefile.depend
|
||||
.ninja_log
|
||||
# Automatically created by $QP_ROOT/scripts/module/module_handler.py
|
||||
.ninja_deps
|
||||
ezfio_interface.irp.f
|
||||
Ezfio_files
|
||||
MO_Basis
|
||||
Utils
|
||||
.ninja_log
|
||||
AO_Basis
|
||||
Electrons
|
||||
Ezfio_files
|
||||
IRPF90_man
|
||||
IRPF90_temp
|
||||
MO_Basis
|
||||
Makefile
|
||||
Makefile.depend
|
||||
Nuclei
|
||||
Utils
|
||||
ezfio_interface.irp.f
|
||||
irpf90.make
|
||||
irpf90_entities
|
||||
loc_cele
|
||||
tags
|
@ -29,6 +29,16 @@ Error:
|
||||
""" % f
|
||||
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"""#
|
||||
# _______ _____
|
||||
# __ __ \___ _______ _________ /____ ________ ___
|
||||
@ -48,17 +58,8 @@ header = r"""#
|
||||
# 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 !",
|
||||
"You need a main file:",
|
||||
"- 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 "]
|
||||
|
||||
print "\n".join(l_msg).format(module)
|
||||
print "\n".join(l_msg).format(module.rel)
|
||||
sys.exit(1)
|
||||
|
||||
# ~#~#~#~#~#~#~#~#~#~#~#~ #
|
||||
|
@ -21,15 +21,15 @@ function do_gitingore()
|
||||
# Do not modify this file. Add your ignored files to the gitignore
|
||||
# (without the dot at the beginning) file.
|
||||
#
|
||||
IRPF90_temp
|
||||
IRPF90_man
|
||||
irpf90.make
|
||||
tags
|
||||
Makefile.depend
|
||||
irpf90_entities
|
||||
build.ninja
|
||||
.ninja_log
|
||||
irpf90_entities
|
||||
irpf90.make
|
||||
IRPF90_man
|
||||
IRPF90_temp
|
||||
Makefile.depend
|
||||
.ninja_deps
|
||||
.ninja_log
|
||||
tags
|
||||
EOF
|
||||
|
||||
if [[ -f gitignore ]]
|
||||
@ -59,3 +59,6 @@ else
|
||||
done
|
||||
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:
|
||||
from docopt import docopt
|
||||
from qp_path import QP_SRC
|
||||
from qp_path import QP_ROOT
|
||||
except ImportError:
|
||||
print "source .quantum_package.rc"
|
||||
raise
|
||||
@ -284,5 +285,8 @@ if __name__ == '__main__':
|
||||
path = os.path.join(module_abs, ".gitignore")
|
||||
|
||||
with open(path, "w+") as f:
|
||||
f.write("# Automatically created by {0} \n".format(__file__))
|
||||
f.write("\n".join(l_dir + l_file + l_symlink + l_exe))
|
||||
f.write("# Automatically created by {0} \n".format(__file__).replace(QP_ROOT,"$QP_ROOT"))
|
||||
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 |
42
src/Determinants/.gitignore
vendored
@ -1,28 +1,28 @@
|
||||
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
|
||||
IRPF90_temp
|
||||
IRPF90_man
|
||||
irpf90_entities
|
||||
tags
|
||||
irpf90.make
|
||||
Makefile
|
||||
Makefile.depend
|
||||
.ninja_log
|
||||
# Automatically created by $QP_ROOT/scripts/module/module_handler.py
|
||||
.ninja_deps
|
||||
ezfio_interface.irp.f
|
||||
.ninja_log
|
||||
AO_Basis
|
||||
Bitmask
|
||||
Electrons
|
||||
Ezfio_files
|
||||
IRPF90_man
|
||||
IRPF90_temp
|
||||
Integrals_Bielec
|
||||
Integrals_Monoelec
|
||||
MO_Basis
|
||||
Utils
|
||||
Pseudo
|
||||
Bitmask
|
||||
AO_Basis
|
||||
Electrons
|
||||
Makefile
|
||||
Makefile.depend
|
||||
Nuclei
|
||||
Integrals_Bielec
|
||||
guess_triplet
|
||||
guess_singlet
|
||||
truncate_wf
|
||||
save_natorb
|
||||
program_initial_determinants
|
||||
Pseudo
|
||||
Utils
|
||||
det_svd
|
||||
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 |
188
src/Ezfio_files/README.rst
Normal file
@ -0,0 +1,188 @@
|
||||
==================
|
||||
Ezfio_files Module
|
||||
==================
|
||||
|
||||
This modules essentially contains the name of the EZFIO directory in the
|
||||
``ezfio_filename`` variable. This is read as the first argument of the
|
||||
command-line, or as the ``QP_INPUT`` environment variable.
|
||||
Documentation
|
||||
=============
|
||||
|
||||
.. Do not edit this section. It was auto-generated from the
|
||||
.. by the `update_README.py` script.
|
||||
|
||||
`ezfio_filename <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/ezfio.irp.f#L1>`_
|
||||
Name of EZFIO file. It is obtained from the QPACKAGE_INPUT environment
|
||||
variable if it is set, or as the 1st argument of the command line.
|
||||
|
||||
|
||||
`getunitandopen <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/get_unit_and_open.irp.f#L1>`_
|
||||
:f:
|
||||
file name
|
||||
.br
|
||||
:mode:
|
||||
'R' : READ, UNFORMATTED
|
||||
'W' : WRITE, UNFORMATTED
|
||||
'r' : READ, FORMATTED
|
||||
'w' : WRITE, FORMATTED
|
||||
'a' : APPEND, FORMATTED
|
||||
'x' : READ/WRITE, FORMATTED
|
||||
.br
|
||||
|
||||
|
||||
`output_alavi <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L1>`_
|
||||
Output file for Alavi
|
||||
|
||||
|
||||
`output_ao_basis <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L21>`_
|
||||
Output file for AO_Basis
|
||||
|
||||
|
||||
`output_bitmask <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L41>`_
|
||||
Output file for Bitmask
|
||||
|
||||
|
||||
`output_cas_sd <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L81>`_
|
||||
Output file for CAS_SD
|
||||
|
||||
|
||||
`output_casino <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L61>`_
|
||||
Output file for Casino
|
||||
|
||||
|
||||
`output_cid <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L101>`_
|
||||
Output file for CID
|
||||
|
||||
|
||||
`output_cid_sc2_selected <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L121>`_
|
||||
Output file for CID_SC2_selected
|
||||
|
||||
|
||||
`output_cid_selected <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L141>`_
|
||||
Output file for CID_selected
|
||||
|
||||
|
||||
`output_cis <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L161>`_
|
||||
Output file for CIS
|
||||
|
||||
|
||||
`output_cisd <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L181>`_
|
||||
Output file for CISD
|
||||
|
||||
|
||||
`output_cisd_sc2_selected <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L201>`_
|
||||
Output file for CISD_SC2_selected
|
||||
|
||||
|
||||
`output_cisd_selected <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L221>`_
|
||||
Output file for CISD_selected
|
||||
|
||||
|
||||
`output_cpu_time_0 <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f#L2>`_
|
||||
Initial CPU and wall times when printing in the output files
|
||||
|
||||
|
||||
`output_ddci_selected <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L241>`_
|
||||
Output file for DDCI_selected
|
||||
|
||||
|
||||
`output_determinants <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L261>`_
|
||||
Output file for Determinants
|
||||
|
||||
|
||||
`output_electrons <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L281>`_
|
||||
Output file for Electrons
|
||||
|
||||
|
||||
`output_ezfio_files <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L301>`_
|
||||
Output file for Ezfio_files
|
||||
|
||||
|
||||
`output_generators_cas <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L321>`_
|
||||
Output file for Generators_CAS
|
||||
|
||||
|
||||
`output_generators_full <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L341>`_
|
||||
Output file for Generators_full
|
||||
|
||||
|
||||
`output_hartree_fock <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L361>`_
|
||||
Output file for Hartree_Fock
|
||||
|
||||
|
||||
`output_integrals_bielec <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L381>`_
|
||||
Output file for Integrals_Bielec
|
||||
|
||||
|
||||
`output_integrals_monoelec <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L401>`_
|
||||
Output file for Integrals_Monoelec
|
||||
|
||||
|
||||
`output_loc_cele <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L421>`_
|
||||
Output file for loc_cele
|
||||
|
||||
|
||||
`output_mo_basis <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L441>`_
|
||||
Output file for MO_Basis
|
||||
|
||||
|
||||
`output_moguess <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L461>`_
|
||||
Output file for MOGuess
|
||||
|
||||
|
||||
`output_mp2 <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L481>`_
|
||||
Output file for MP2
|
||||
|
||||
|
||||
`output_mrcc <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L501>`_
|
||||
Output file for MRCC
|
||||
|
||||
|
||||
`output_nuclei <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L521>`_
|
||||
Output file for Nuclei
|
||||
|
||||
|
||||
`output_perturbation <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L541>`_
|
||||
Output file for Perturbation
|
||||
|
||||
|
||||
`output_properties <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L561>`_
|
||||
Output file for Properties
|
||||
|
||||
|
||||
`output_pseudo <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L581>`_
|
||||
Output file for Pseudo
|
||||
|
||||
|
||||
`output_selectors_full <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L601>`_
|
||||
Output file for Selectors_full
|
||||
|
||||
|
||||
`output_singlerefmethod <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L621>`_
|
||||
Output file for SingleRefMethod
|
||||
|
||||
|
||||
`output_utils <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L641>`_
|
||||
Output file for Utils
|
||||
|
||||
|
||||
`output_wall_time_0 <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f#L1>`_
|
||||
Initial CPU and wall times when printing in the output files
|
||||
|
||||
|
||||
`write_bool <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f#L88>`_
|
||||
Write an logical value in output
|
||||
|
||||
|
||||
`write_double <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f#L58>`_
|
||||
Write a double precision value in output
|
||||
|
||||
|
||||
`write_int <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f#L73>`_
|
||||
Write an integer value in output
|
||||
|
||||
|
||||
`write_time <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f#L42>`_
|
||||
Write a time stamp in the output for chronological reconstruction
|
||||
|
||||
|
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 |
28
src/Integrals_Monoelec/.gitignore
vendored
@ -1,20 +1,20 @@
|
||||
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
|
||||
IRPF90_temp
|
||||
IRPF90_man
|
||||
irpf90_entities
|
||||
tags
|
||||
irpf90.make
|
||||
Makefile
|
||||
Makefile.depend
|
||||
.ninja_log
|
||||
# Automatically created by $QP_ROOT/scripts/module/module_handler.py
|
||||
.ninja_deps
|
||||
ezfio_interface.irp.f
|
||||
Ezfio_files
|
||||
MO_Basis
|
||||
Utils
|
||||
Pseudo
|
||||
.ninja_log
|
||||
AO_Basis
|
||||
Electrons
|
||||
Ezfio_files
|
||||
IRPF90_man
|
||||
IRPF90_temp
|
||||
MO_Basis
|
||||
Makefile
|
||||
Makefile.depend
|
||||
Nuclei
|
||||
Pseudo
|
||||
Utils
|
||||
check_orthonormality
|
||||
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))
|
||||
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))
|
||||
!bigI frequantly is null
|
||||
!bigI frequently is null
|
||||
return
|
||||
endif
|
||||
|
||||
freal=dexp(-g_a*ac**2-g_b*bc**2)
|
||||
|
||||
d2=0.d0
|
||||
d2 = 0.d0
|
||||
do i=1,3
|
||||
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
|
||||
d2=dsqrt(d2)
|
||||
dreal=2.d0*d2
|
||||
|
||||
|
||||
theta_DC0=dacos(d(3)/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_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
|
||||
IRPF90_temp
|
||||
IRPF90_man
|
||||
irpf90_entities
|
||||
tags
|
||||
irpf90.make
|
||||
Makefile
|
||||
Makefile.depend
|
||||
.ninja_log
|
||||
# Automatically created by $QP_ROOT/scripts/module/module_handler.py
|
||||
.ninja_deps
|
||||
ezfio_interface.irp.f
|
||||
Ezfio_files
|
||||
Integrals_Monoelec
|
||||
MO_Basis
|
||||
Utils
|
||||
Pseudo
|
||||
.ninja_log
|
||||
AO_Basis
|
||||
Electrons
|
||||
Nuclei
|
||||
Ezfio_files
|
||||
H_CORE_guess
|
||||
IRPF90_man
|
||||
IRPF90_temp
|
||||
Integrals_Monoelec
|
||||
MO_Basis
|
||||
Makefile
|
||||
Makefile.depend
|
||||
Nuclei
|
||||
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 |