10
0
mirror of https://github.com/LCPQ/quantum_package synced 2024-06-26 15:12:14 +02:00

Merge branch 'master' of github.com:scemama/quantum_package

This commit is contained in:
Anthony Scemama 2015-06-30 10:46:53 +02:00
commit 7dcc82c223
126 changed files with 1495 additions and 1059 deletions

15
.gitignore vendored
View File

@ -1,15 +1,8 @@
quantum_package.rc
EZFIO/
irpf90/
EMSL_Basis/
ninja/
bin/
*.log
quantum_package_static.tar.gz
resultsFile
opam_installer.sh
*.mod
*.p
build.ninja
.ninja_log
.ninja_deps
.ninja_deps
bin/
lib/
config/qp_create_ninja.pickle

View File

@ -138,6 +138,8 @@ Optional:
size: <str> The size information.
(by default is one)
Example : 1, =sum(ao_num); (ao_num,3)
ATTENTION : The module and the value are separed by a "." not a "_".
For exemple (determinants.n_det)
ezfio_name: <str> The name for the EZFIO lib
(by default is <provider_name>)
ezfio_dir: <str> Will be the folder of EZFIO.

View File

@ -57,6 +57,6 @@ FCFLAGS : -xSSE2 -C -fpe0
#################
#
[OPENMP]
FC : -fopenmp
FC : -openmp
IRPF90_FLAGS : --openmp

26
configure vendored
View File

@ -158,7 +158,7 @@ def check_output(*popenargs, **kwargs):
>>> check_output(['/usr/bin/python', '--version'])
Python 2.6.2
"""
process = subprocess.Popen(stdout=subprocess.PIPE, *popenargs, **kwargs)
process = subprocess.Popen(stdout=subprocess.PIPE,stderr=subprocess.PIPE, *popenargs, **kwargs)
output, unused_err = process.communicate()
retcode = process.poll()
if retcode:
@ -190,7 +190,7 @@ def checking(d_dependency):
def check_availability(binary):
"""
If avalabie return the path who can can't find the
If avalable return the path who can find the
binary else return 0
"""
@ -198,7 +198,19 @@ def checking(d_dependency):
check_python()
try:
return check_output(["which", binary])
a = check_output(["which", binary])
if binary == "irpf90":
version = check_output("irpf90 -v".split()).strip()
from distutils.version import LooseVersion
if LooseVersion(version) < LooseVersion("1.6.7"):
return 0
else:
return a
return a
except subprocess.CalledProcessError:
default_path = d_info[binary].default_path
if os.path.exists(default_path):
@ -208,7 +220,7 @@ def checking(d_dependency):
def get_list_descendant(d_dependency, l_installed, l_needed):
"""
Descendant a node reachable by repeated proceeding from parent to child.
Descendant : a node reachable by repeated proceeding from parent to child.
"""
d_need_genealogy = dict()
@ -265,7 +277,7 @@ def installation(l_install_descendant):
def create_rule_ninja():
l_rules = [
"rule download", " command = wget ${url} -O ${out} -o /dev/null",
"rule download", " command = wget --no-check-certificate ${url} -O ${out} -o /dev/null",
" description = Downloading ${descr}", ""
]
@ -423,8 +435,8 @@ def create_ninja_and_rc(l_installed):
'export IRPF90={0}'.format(find_path("irpf90", l_installed)),
'export NINJA={0}'.format(find_path("ninja", l_installed)),
'export QP_PYTHON={0}'.format(":".join(l_python)), "",
'export PYTHONPATH="${PYTHONPATH}":"${QP_PYTHON}"',
'export PATH="${PATH}":"${QP_PYTHON}":"${QP_ROOT}"/bin:"${QP_ROOT}"/ocaml',
'export PYTHONPATH="${QP_PYTHON}":"${PYTHONPATH}"',
'export PATH="${QP_PYTHON}":"${QP_ROOT}"/bin:"${QP_ROOT}"/ocaml:"${PATH}"',
'export LD_LIBRARY_PATH="${QP_ROOT}"/lib:"${LD_LIBRARY_PATH}"',
'export LIBRARY_PATH="${QP_ROOT}"/lib:"${LIBRARY_PATH}"', "",
'source ${QP_ROOT}/install/EZFIO/Bash/ezfio.sh}"', "",

10
install/.gitignore vendored Normal file
View File

@ -0,0 +1,10 @@
config/qp_create_ninja.pickle
Downloads
_build
docopt
emsl
EZFIO
irpf90
resultsFile
zlib
build.ninja

View File

@ -0,0 +1,25 @@
#!/bin/bash
# This script should be included
# pro:
#
# solid way to compare fancy version strings:
# support any length of sub-parts (ie: 1.3alpha.2.dev2 > 1.1 ?)
# support alpha-betical sort (ie: 1.alpha < 1.beta2)
# support big size version (ie: 1.10003939209329320932 > 1.2039209378273789273 ?)
# can easily be modified to support n arguments. (leaved as an exercise ;) )
# usually very usefull with 3 arguments: (ie: 1.2 < my_version < 2.7 )
# cons:
#
# uses a lot of various calls to different programs. So it's not that efficient.
# uses a pretty recent version of sort and it might not be available on your system. (check with man sort)
function version_gt() { test "$(echo "$@" | tr " " "\n" | sort -V | tail -n 1)" == "$1"; }
irp_cur_version=`irpf90 -v`
irp_need_version=1.6.7
if version_gt $irp_cur_version $irp_need_version; then
echo "OK"
fi
echo "FAIL"

View File

@ -13,8 +13,16 @@ function _install()
[[ -x ./irpf90/bin/irpf90 ]] || return 1
[[ -x ./irpf90/bin/irpman ]] || return 1
rm -rf -- ../bin/irpf90 ../bin/irpman
echo 'exec ${QP_ROOT}/install/irpf90/bin/irpf90 $@' > ../bin/irpf90 || return 1
echo 'exec ${QP_ROOT}/install/irpf90/bin/irpman $@' > ../bin/irpman || return 1
cat << EOF > ../bin/irpf90 || return 1
#!/bin/bash
exec \${QP_ROOT}/install/irpf90/bin/irpf90 \$@
EOF
cat << EOF > ../bin/irpman || return 1
#!/bin/bash
exec \${QP_ROOT}/install/irpf90/bin/irpman \$@
EOF
chmod +x ../bin/irpf90 ../bin/irpman || return 1
return 0
}

View File

@ -0,0 +1,4 @@
==================
All_singles Module
==================

View File

@ -1,32 +1,31 @@
#
# Do not modify this file. Add your ignored files to the gitignore
# (without the dot at the beginning) file.
#
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
IRPF90_temp
IRPF90_man
irpf90.make
tags
Makefile.depend
irpf90_entities
tags
irpf90.make
Makefile
Makefile.depend
build.ninja
.ninja_log
.ninja_deps
Pseudo
Integrals_Monoelec
Generators_CAS
Bitmask
Integrals_Bielec
AOs
Selectors_full
MOs
Hartree_Fock
ezfio_interface.irp.f
Ezfio_files
Perturbation
Determinants
Electrons
Utils
Properties
Nuclei
Integrals_Monoelec
MO_Basis
Selectors_full
Integrals_Bielec
Pseudo
Bitmask
Generators_CAS
AO_Basis
Electrons
MOGuess
Ezfio_files
Nuclei
Hartree_Fock
Properties
cas_sd_selected
cas_sd
cas_sd

View File

@ -34,24 +34,24 @@ Documentation
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#L1842>`_
`h_apply_cas_sd_pt2 <http://github.com/LCPQ/quantum_package/tree/master/src/CAS_SD/H_apply.irp.f_shell_16#L1892>`_
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#L1358>`_
`h_apply_cas_sd_pt2_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/CAS_SD/H_apply.irp.f_shell_16#L1383>`_
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#L1661>`_
`h_apply_cas_sd_pt2_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/CAS_SD/H_apply.irp.f_shell_16#L1701>`_
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#L1112>`_
`h_apply_cas_sd_selected <http://github.com/LCPQ/quantum_package/tree/master/src/CAS_SD/H_apply.irp.f_shell_16#L1137>`_
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.
@ -62,7 +62,7 @@ Documentation
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#L917>`_
`h_apply_cas_sd_selected_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/CAS_SD/H_apply.irp.f_shell_16#L932>`_
Generate all single excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 101 KiB

After

Width:  |  Height:  |  Size: 104 KiB

View File

@ -1,30 +1,29 @@
#
# Do not modify this file. Add your ignored files to the gitignore
# (without the dot at the beginning) file.
#
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
IRPF90_temp
IRPF90_man
irpf90.make
tags
Makefile.depend
irpf90_entities
tags
irpf90.make
Makefile
Makefile.depend
build.ninja
.ninja_log
.ninja_deps
Pseudo
Integrals_Monoelec
Bitmask
Integrals_Bielec
AOs
Selectors_full
MOs
Hartree_Fock
Determinants
Electrons
Utils
Nuclei
MOGuess
SingleRefMethod
ezfio_interface.irp.f
Ezfio_files
Determinants
Integrals_Monoelec
MO_Basis
Selectors_full
Utils
Pseudo
AO_Basis
Bitmask
SingleRefMethod
Electrons
MOGuess
Nuclei
Hartree_Fock
Integrals_Bielec
cid
cid_lapack
cid_lapack

View File

@ -1,9 +1,9 @@
! Generates subroutine H_apply_cisd
! Generates subroutine H_apply_cid
! ----------------------------------
BEGIN_SHELL [ /usr/bin/env python ]
from generate_h_apply import H_apply
H = H_apply("cisd",do_double_exc=True,do_mono_exc=False)
H = H_apply("cid",do_double_exc=True,do_mono_exc=False)
print H
END_SHELL

View File

@ -1,7 +1,7 @@
CISD
CID
====
This is a test directory which builds a CISD by setting the follwoing rules:
This is a test directory which builds a CID by setting the follwoing rules:
* The only generator determinant is the Hartee-Fock (single-reference method)
* All generated determinants are included in the wave function (no perturbative
@ -26,22 +26,179 @@ Documentation
.. Do not edit this section. It was auto-generated from the
.. by the `update_README.py` script.
`cisd <http://github.com/LCPQ/quantum_package/tree/master/src/CID/cid_lapack.irp.f#L1>`_
`cid <http://github.com/LCPQ/quantum_package/tree/master/src/CID/cid_lapack.irp.f#L1>`_
Undocumented
`h_apply_cisd <http://github.com/LCPQ/quantum_package/tree/master/src/CID/H_apply.irp.f_shell_8#L406>`_
`h_apply_cid <http://github.com/LCPQ/quantum_package/tree/master/src/CID/H_apply.irp.f_shell_8#L406>`_
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_cisd_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/CID/H_apply.irp.f_shell_8#L1>`_
`h_apply_cid_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/CID/H_apply.irp.f_shell_8#L1>`_
Generate all double excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_cisd_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/CID/H_apply.irp.f_shell_8#L263>`_
`h_apply_cid_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/CID/H_apply.irp.f_shell_8#L263>`_
Generate all single excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_cisd_selection <http://github.com/LCPQ/quantum_package/tree/master/src/CID/H_apply.irp.f#L13>`_
Undocumented
`h_apply_cisd_selection_delta_rho_one_point <http://github.com/LCPQ/quantum_package/tree/master/src/CID/H_apply.irp.f_shell_10#L1283>`_
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_cisd_selection_delta_rho_one_point_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/CID/H_apply.irp.f_shell_10#L765>`_
Generate all double excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_cisd_selection_delta_rho_one_point_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/CID/H_apply.irp.f_shell_10#L1088>`_
Generate all single excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_cisd_selection_dipole_moment_z <http://github.com/LCPQ/quantum_package/tree/master/src/CID/H_apply.irp.f_shell_10#L6631>`_
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_cisd_selection_dipole_moment_z_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/CID/H_apply.irp.f_shell_10#L6113>`_
Generate all double excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_cisd_selection_dipole_moment_z_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/CID/H_apply.irp.f_shell_10#L6436>`_
Generate all single excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_cisd_selection_epstein_nesbet <http://github.com/LCPQ/quantum_package/tree/master/src/CID/H_apply.irp.f_shell_10#L5103>`_
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_cisd_selection_epstein_nesbet_2x2 <http://github.com/LCPQ/quantum_package/tree/master/src/CID/H_apply.irp.f_shell_10#L5867>`_
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_cisd_selection_epstein_nesbet_2x2_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/CID/H_apply.irp.f_shell_10#L5349>`_
Generate all double excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_cisd_selection_epstein_nesbet_2x2_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/CID/H_apply.irp.f_shell_10#L5672>`_
Generate all single excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_cisd_selection_epstein_nesbet_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/CID/H_apply.irp.f_shell_10#L4585>`_
Generate all double excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_cisd_selection_epstein_nesbet_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/CID/H_apply.irp.f_shell_10#L4908>`_
Generate all single excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_cisd_selection_epstein_nesbet_sc2 <http://github.com/LCPQ/quantum_package/tree/master/src/CID/H_apply.irp.f_shell_10#L4339>`_
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_cisd_selection_epstein_nesbet_sc2_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/CID/H_apply.irp.f_shell_10#L3821>`_
Generate all double excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_cisd_selection_epstein_nesbet_sc2_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/CID/H_apply.irp.f_shell_10#L4144>`_
Generate all single excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_cisd_selection_epstein_nesbet_sc2_no_projected <http://github.com/LCPQ/quantum_package/tree/master/src/CID/H_apply.irp.f_shell_10#L3575>`_
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_cisd_selection_epstein_nesbet_sc2_no_projected_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/CID/H_apply.irp.f_shell_10#L3057>`_
Generate all double excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_cisd_selection_epstein_nesbet_sc2_no_projected_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/CID/H_apply.irp.f_shell_10#L3380>`_
Generate all single excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_cisd_selection_epstein_nesbet_sc2_projected <http://github.com/LCPQ/quantum_package/tree/master/src/CID/H_apply.irp.f_shell_10#L2811>`_
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_cisd_selection_epstein_nesbet_sc2_projected_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/CID/H_apply.irp.f_shell_10#L2293>`_
Generate all double excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_cisd_selection_epstein_nesbet_sc2_projected_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/CID/H_apply.irp.f_shell_10#L2616>`_
Generate all single excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_cisd_selection_h_core <http://github.com/LCPQ/quantum_package/tree/master/src/CID/H_apply.irp.f_shell_10#L2047>`_
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_cisd_selection_h_core_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/CID/H_apply.irp.f_shell_10#L1529>`_
Generate all double excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_cisd_selection_h_core_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/CID/H_apply.irp.f_shell_10#L1852>`_
Generate all single excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_cisd_selection_moller_plesset <http://github.com/LCPQ/quantum_package/tree/master/src/CID/H_apply.irp.f_shell_10#L519>`_
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_cisd_selection_moller_plesset_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/CID/H_apply.irp.f_shell_10#L1>`_
Generate all double excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_cisd_selection_moller_plesset_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/CID/H_apply.irp.f_shell_10#L324>`_
Generate all single excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.

View File

@ -1,4 +1,4 @@
program cisd
program cid
implicit none
integer :: i
@ -6,7 +6,7 @@ program cisd
print *, 'N_states = ', N_states
N_det = 1
touch psi_det psi_coef N_det
call H_apply_cisd
call H_apply_cid
print *, 'N_det = ', N_det
do i = 1,N_states
print *, 'energy = ',CI_energy(i)

View File

@ -1,4 +1,4 @@
program cisd
program cid
implicit none
integer :: i
@ -6,7 +6,7 @@ program cisd
touch diag_algorithm
print *, 'HF = ', HF_energy
print *, 'N_states = ', N_states
call H_apply_cisd
call H_apply_cid
print *, 'N_det = ', N_det
do i = 1,N_states
print *, 'energy = ',CI_energy(i)

Binary file not shown.

Before

Width:  |  Height:  |  Size: 88 KiB

After

Width:  |  Height:  |  Size: 91 KiB

View File

@ -1,35 +1,32 @@
#
# Do not modify this file. Add your ignored files to the gitignore
# (without the dot at the beginning) file.
#
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
IRPF90_temp
IRPF90_man
irpf90.make
tags
Makefile.depend
irpf90_entities
tags
irpf90.make
Makefile
Makefile.depend
build.ninja
.ninja_log
.ninja_deps
CID_selected
Pseudo
Integrals_Monoelec
Bitmask
CID
Integrals_Bielec
CISD_selected
AOs
Selectors_full
MOs
Hartree_Fock
Perturbation
CISD
Determinants
Electrons
Utils
Properties
Nuclei
MOGuess
SingleRefMethod
ezfio_interface.irp.f
Ezfio_files
cid_sc2_selection
Perturbation
Determinants
Integrals_Monoelec
MO_Basis
Selectors_full
SingleRefMethod
Utils
CID
Pseudo
Properties
Bitmask
AO_Basis
Electrons
MOGuess
CID_selected
Nuclei
Hartree_Fock
Integrals_Bielec
cid_sc2_selection

Binary file not shown.

Before

Width:  |  Height:  |  Size: 112 KiB

After

Width:  |  Height:  |  Size: 115 KiB

View File

@ -1,33 +1,31 @@
#
# Do not modify this file. Add your ignored files to the gitignore
# (without the dot at the beginning) file.
#
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
IRPF90_temp
IRPF90_man
irpf90.make
tags
Makefile.depend
irpf90_entities
tags
irpf90.make
Makefile
Makefile.depend
build.ninja
.ninja_log
.ninja_deps
Pseudo
Integrals_Monoelec
Bitmask
CID
Integrals_Bielec
AOs
Selectors_full
MOs
Hartree_Fock
Perturbation
CISD
Determinants
Electrons
Utils
Properties
Nuclei
MOGuess
SingleRefMethod
ezfio_interface.irp.f
Ezfio_files
cid_selection
Perturbation
Determinants
Utils
Integrals_Monoelec
MO_Basis
Selectors_full
Integrals_Bielec
CID
Pseudo
AO_Basis
Bitmask
SingleRefMethod
Electrons
MOGuess
Nuclei
Hartree_Fock
Properties
cid_selection

View File

@ -8,10 +8,6 @@ Documentation
.. Do not edit this section. It was auto-generated from the
.. by the `update_README.py` script.
`cisd <http://github.com/LCPQ/quantum_package/tree/master/src/CID_selected/cid_selection.irp.f#L1>`_
Undocumented
`h_apply_cisd_selection <http://github.com/LCPQ/quantum_package/tree/master/src/CID_selected/H_apply.irp.f#L13>`_
Undocumented

Binary file not shown.

Before

Width:  |  Height:  |  Size: 105 KiB

After

Width:  |  Height:  |  Size: 109 KiB

View File

@ -1,30 +1,29 @@
#
# Do not modify this file. Add your ignored files to the gitignore
# (without the dot at the beginning) file.
#
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
IRPF90_temp
IRPF90_man
irpf90.make
tags
Makefile.depend
irpf90_entities
tags
irpf90.make
Makefile
Makefile.depend
build.ninja
.ninja_log
.ninja_deps
Pseudo
Integrals_Monoelec
Bitmask
Integrals_Bielec
AOs
Selectors_full
MOs
Hartree_Fock
Determinants
Electrons
Utils
Nuclei
MOGuess
SingleRefMethod
ezfio_interface.irp.f
Ezfio_files
Determinants
Integrals_Monoelec
MO_Basis
Selectors_full
Utils
Pseudo
AO_Basis
Bitmask
SingleRefMethod
Electrons
MOGuess
Nuclei
Hartree_Fock
Integrals_Bielec
super_ci
cis
cis

Binary file not shown.

Before

Width:  |  Height:  |  Size: 88 KiB

After

Width:  |  Height:  |  Size: 91 KiB

View File

@ -1,30 +1,29 @@
#
# Do not modify this file. Add your ignored files to the gitignore
# (without the dot at the beginning) file.
#
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
IRPF90_temp
IRPF90_man
irpf90.make
tags
Makefile.depend
irpf90_entities
tags
irpf90.make
Makefile
Makefile.depend
build.ninja
.ninja_log
.ninja_deps
Pseudo
Integrals_Monoelec
Bitmask
Integrals_Bielec
AOs
Selectors_full
MOs
Hartree_Fock
Determinants
Electrons
Utils
Nuclei
MOGuess
SingleRefMethod
ezfio_interface.irp.f
Ezfio_files
Determinants
Integrals_Monoelec
MO_Basis
Selectors_full
Utils
Pseudo
AO_Basis
Bitmask
SingleRefMethod
Electrons
MOGuess
Nuclei
Hartree_Fock
Integrals_Bielec
cisd_lapack
cisd
cisd

View File

@ -26,10 +26,6 @@ Documentation
.. Do not edit this section. It was auto-generated from the
.. by the `update_README.py` script.
`cisd <http://github.com/LCPQ/quantum_package/tree/master/src/CISD/cisd_lapack.irp.f#L1>`_
Undocumented
`h_apply_cisd <http://github.com/LCPQ/quantum_package/tree/master/src/CISD/H_apply.irp.f_shell_8#L406>`_
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.
@ -46,3 +42,160 @@ Documentation
particles.
Assume N_int is already provided.
`h_apply_cisd_selection <http://github.com/LCPQ/quantum_package/tree/master/src/CISD/H_apply.irp.f#L13>`_
Undocumented
`h_apply_cisd_selection_delta_rho_one_point <http://github.com/LCPQ/quantum_package/tree/master/src/CISD/H_apply.irp.f_shell_10#L6067>`_
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_cisd_selection_delta_rho_one_point_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD/H_apply.irp.f_shell_10#L5524>`_
Generate all double excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_cisd_selection_delta_rho_one_point_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD/H_apply.irp.f_shell_10#L5862>`_
Generate all single excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_cisd_selection_dipole_moment_z <http://github.com/LCPQ/quantum_package/tree/master/src/CISD/H_apply.irp.f_shell_10#L6856>`_
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_cisd_selection_dipole_moment_z_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD/H_apply.irp.f_shell_10#L6313>`_
Generate all double excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_cisd_selection_dipole_moment_z_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD/H_apply.irp.f_shell_10#L6651>`_
Generate all single excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_cisd_selection_epstein_nesbet <http://github.com/LCPQ/quantum_package/tree/master/src/CISD/H_apply.irp.f_shell_10#L1333>`_
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_cisd_selection_epstein_nesbet_2x2 <http://github.com/LCPQ/quantum_package/tree/master/src/CISD/H_apply.irp.f_shell_10#L2122>`_
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_cisd_selection_epstein_nesbet_2x2_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD/H_apply.irp.f_shell_10#L1579>`_
Generate all double excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_cisd_selection_epstein_nesbet_2x2_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD/H_apply.irp.f_shell_10#L1917>`_
Generate all single excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_cisd_selection_epstein_nesbet_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD/H_apply.irp.f_shell_10#L790>`_
Generate all double excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_cisd_selection_epstein_nesbet_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD/H_apply.irp.f_shell_10#L1128>`_
Generate all single excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_cisd_selection_epstein_nesbet_sc2 <http://github.com/LCPQ/quantum_package/tree/master/src/CISD/H_apply.irp.f_shell_10#L4489>`_
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_cisd_selection_epstein_nesbet_sc2_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD/H_apply.irp.f_shell_10#L3946>`_
Generate all double excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_cisd_selection_epstein_nesbet_sc2_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD/H_apply.irp.f_shell_10#L4284>`_
Generate all single excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_cisd_selection_epstein_nesbet_sc2_no_projected <http://github.com/LCPQ/quantum_package/tree/master/src/CISD/H_apply.irp.f_shell_10#L3700>`_
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_cisd_selection_epstein_nesbet_sc2_no_projected_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD/H_apply.irp.f_shell_10#L3157>`_
Generate all double excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_cisd_selection_epstein_nesbet_sc2_no_projected_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD/H_apply.irp.f_shell_10#L3495>`_
Generate all single excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_cisd_selection_epstein_nesbet_sc2_projected <http://github.com/LCPQ/quantum_package/tree/master/src/CISD/H_apply.irp.f_shell_10#L2911>`_
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_cisd_selection_epstein_nesbet_sc2_projected_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD/H_apply.irp.f_shell_10#L2368>`_
Generate all double excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_cisd_selection_epstein_nesbet_sc2_projected_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD/H_apply.irp.f_shell_10#L2706>`_
Generate all single excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_cisd_selection_h_core <http://github.com/LCPQ/quantum_package/tree/master/src/CISD/H_apply.irp.f_shell_10#L544>`_
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_cisd_selection_h_core_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD/H_apply.irp.f_shell_10#L1>`_
Generate all double excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_cisd_selection_h_core_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD/H_apply.irp.f_shell_10#L339>`_
Generate all single excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_cisd_selection_moller_plesset <http://github.com/LCPQ/quantum_package/tree/master/src/CISD/H_apply.irp.f_shell_10#L5278>`_
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_cisd_selection_moller_plesset_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD/H_apply.irp.f_shell_10#L4735>`_
Generate all double excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_cisd_selection_moller_plesset_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD/H_apply.irp.f_shell_10#L5073>`_
Generate all single excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 88 KiB

After

Width:  |  Height:  |  Size: 92 KiB

View File

@ -12,41 +12,41 @@ Documentation
Undocumented
`h_apply_pt2 <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_SC2_selected/H_apply.irp.f_shell_17#L1253>`_
`h_apply_pt2 <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_SC2_selected/H_apply.irp.f_shell_17#L1303>`_
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_pt2_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_SC2_selected/H_apply.irp.f_shell_17#L767>`_
`h_apply_pt2_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_SC2_selected/H_apply.irp.f_shell_17#L792>`_
Generate all double excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_pt2_en_sc2 <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_SC2_selected/H_apply.irp.f_shell_17#L1946>`_
`h_apply_pt2_en_sc2 <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_SC2_selected/H_apply.irp.f_shell_17#L2021>`_
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_pt2_en_sc2_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_SC2_selected/H_apply.irp.f_shell_17#L1460>`_
`h_apply_pt2_en_sc2_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_SC2_selected/H_apply.irp.f_shell_17#L1510>`_
Generate all double excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_pt2_en_sc2_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_SC2_selected/H_apply.irp.f_shell_17#L1765>`_
`h_apply_pt2_en_sc2_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_SC2_selected/H_apply.irp.f_shell_17#L1830>`_
Generate all single excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_pt2_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_SC2_selected/H_apply.irp.f_shell_17#L1072>`_
`h_apply_pt2_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_SC2_selected/H_apply.irp.f_shell_17#L1112>`_
Generate all single excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_sc2_selected <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_SC2_selected/H_apply.irp.f_shell_17#L521>`_
`h_apply_sc2_selected <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_SC2_selected/H_apply.irp.f_shell_17#L546>`_
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.
@ -57,7 +57,7 @@ Documentation
Assume N_int is already provided.
`h_apply_sc2_selected_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_SC2_selected/H_apply.irp.f_shell_17#L326>`_
`h_apply_sc2_selected_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_SC2_selected/H_apply.irp.f_shell_17#L341>`_
Generate all single excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.

View File

@ -8,162 +8,158 @@ Documentation
.. Do not edit this section. It was auto-generated from the
.. by the `update_README.py` script.
`cisd <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_selected/cisd_selection.irp.f#L1>`_
Undocumented
`h_apply_cisd_selection <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_selected/H_apply.irp.f#L13>`_
Undocumented
`h_apply_cisd_selection_delta_rho_one_point <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_selected/H_apply.irp.f_shell_10#L1283>`_
`h_apply_cisd_selection_delta_rho_one_point <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_selected/H_apply.irp.f_shell_10#L6067>`_
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_cisd_selection_delta_rho_one_point_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_selected/H_apply.irp.f_shell_10#L765>`_
`h_apply_cisd_selection_delta_rho_one_point_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_selected/H_apply.irp.f_shell_10#L5524>`_
Generate all double excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_cisd_selection_delta_rho_one_point_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_selected/H_apply.irp.f_shell_10#L1088>`_
`h_apply_cisd_selection_delta_rho_one_point_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_selected/H_apply.irp.f_shell_10#L5862>`_
Generate all single excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_cisd_selection_dipole_moment_z <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_selected/H_apply.irp.f_shell_10#L6631>`_
`h_apply_cisd_selection_dipole_moment_z <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_selected/H_apply.irp.f_shell_10#L6856>`_
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_cisd_selection_dipole_moment_z_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_selected/H_apply.irp.f_shell_10#L6113>`_
`h_apply_cisd_selection_dipole_moment_z_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_selected/H_apply.irp.f_shell_10#L6313>`_
Generate all double excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_cisd_selection_dipole_moment_z_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_selected/H_apply.irp.f_shell_10#L6436>`_
`h_apply_cisd_selection_dipole_moment_z_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_selected/H_apply.irp.f_shell_10#L6651>`_
Generate all single excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_cisd_selection_epstein_nesbet <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_selected/H_apply.irp.f_shell_10#L5103>`_
`h_apply_cisd_selection_epstein_nesbet <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_selected/H_apply.irp.f_shell_10#L1333>`_
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_cisd_selection_epstein_nesbet_2x2 <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_selected/H_apply.irp.f_shell_10#L5867>`_
`h_apply_cisd_selection_epstein_nesbet_2x2 <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_selected/H_apply.irp.f_shell_10#L2122>`_
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_cisd_selection_epstein_nesbet_2x2_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_selected/H_apply.irp.f_shell_10#L5349>`_
`h_apply_cisd_selection_epstein_nesbet_2x2_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_selected/H_apply.irp.f_shell_10#L1579>`_
Generate all double excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_cisd_selection_epstein_nesbet_2x2_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_selected/H_apply.irp.f_shell_10#L5672>`_
`h_apply_cisd_selection_epstein_nesbet_2x2_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_selected/H_apply.irp.f_shell_10#L1917>`_
Generate all single excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_cisd_selection_epstein_nesbet_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_selected/H_apply.irp.f_shell_10#L4585>`_
`h_apply_cisd_selection_epstein_nesbet_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_selected/H_apply.irp.f_shell_10#L790>`_
Generate all double excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_cisd_selection_epstein_nesbet_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_selected/H_apply.irp.f_shell_10#L4908>`_
`h_apply_cisd_selection_epstein_nesbet_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_selected/H_apply.irp.f_shell_10#L1128>`_
Generate all single excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_cisd_selection_epstein_nesbet_sc2 <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_selected/H_apply.irp.f_shell_10#L4339>`_
`h_apply_cisd_selection_epstein_nesbet_sc2 <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_selected/H_apply.irp.f_shell_10#L4489>`_
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_cisd_selection_epstein_nesbet_sc2_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_selected/H_apply.irp.f_shell_10#L3821>`_
`h_apply_cisd_selection_epstein_nesbet_sc2_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_selected/H_apply.irp.f_shell_10#L3946>`_
Generate all double excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_cisd_selection_epstein_nesbet_sc2_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_selected/H_apply.irp.f_shell_10#L4144>`_
`h_apply_cisd_selection_epstein_nesbet_sc2_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_selected/H_apply.irp.f_shell_10#L4284>`_
Generate all single excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_cisd_selection_epstein_nesbet_sc2_no_projected <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_selected/H_apply.irp.f_shell_10#L3575>`_
`h_apply_cisd_selection_epstein_nesbet_sc2_no_projected <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_selected/H_apply.irp.f_shell_10#L3700>`_
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_cisd_selection_epstein_nesbet_sc2_no_projected_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_selected/H_apply.irp.f_shell_10#L3057>`_
`h_apply_cisd_selection_epstein_nesbet_sc2_no_projected_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_selected/H_apply.irp.f_shell_10#L3157>`_
Generate all double excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_cisd_selection_epstein_nesbet_sc2_no_projected_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_selected/H_apply.irp.f_shell_10#L3380>`_
`h_apply_cisd_selection_epstein_nesbet_sc2_no_projected_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_selected/H_apply.irp.f_shell_10#L3495>`_
Generate all single excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_cisd_selection_epstein_nesbet_sc2_projected <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_selected/H_apply.irp.f_shell_10#L2811>`_
`h_apply_cisd_selection_epstein_nesbet_sc2_projected <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_selected/H_apply.irp.f_shell_10#L2911>`_
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_cisd_selection_epstein_nesbet_sc2_projected_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_selected/H_apply.irp.f_shell_10#L2293>`_
`h_apply_cisd_selection_epstein_nesbet_sc2_projected_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_selected/H_apply.irp.f_shell_10#L2368>`_
Generate all double excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_cisd_selection_epstein_nesbet_sc2_projected_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_selected/H_apply.irp.f_shell_10#L2616>`_
`h_apply_cisd_selection_epstein_nesbet_sc2_projected_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_selected/H_apply.irp.f_shell_10#L2706>`_
Generate all single excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_cisd_selection_h_core <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_selected/H_apply.irp.f_shell_10#L2047>`_
`h_apply_cisd_selection_h_core <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_selected/H_apply.irp.f_shell_10#L544>`_
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_cisd_selection_h_core_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_selected/H_apply.irp.f_shell_10#L1529>`_
`h_apply_cisd_selection_h_core_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_selected/H_apply.irp.f_shell_10#L1>`_
Generate all double excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_cisd_selection_h_core_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_selected/H_apply.irp.f_shell_10#L1852>`_
`h_apply_cisd_selection_h_core_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_selected/H_apply.irp.f_shell_10#L339>`_
Generate all single excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_cisd_selection_moller_plesset <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_selected/H_apply.irp.f_shell_10#L519>`_
`h_apply_cisd_selection_moller_plesset <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_selected/H_apply.irp.f_shell_10#L5278>`_
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_cisd_selection_moller_plesset_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_selected/H_apply.irp.f_shell_10#L1>`_
`h_apply_cisd_selection_moller_plesset_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_selected/H_apply.irp.f_shell_10#L4735>`_
Generate all double excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_cisd_selection_moller_plesset_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_selected/H_apply.irp.f_shell_10#L324>`_
`h_apply_cisd_selection_moller_plesset_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/CISD_selected/H_apply.irp.f_shell_10#L5073>`_
Generate all single excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.

View File

@ -1,31 +1,30 @@
#
# Do not modify this file. Add your ignored files to the gitignore
# (without the dot at the beginning) file.
#
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
IRPF90_temp
IRPF90_man
irpf90.make
tags
Makefile.depend
irpf90_entities
tags
irpf90.make
Makefile
Makefile.depend
build.ninja
.ninja_log
.ninja_deps
Pseudo
Integrals_Monoelec
Generators_CAS
Bitmask
Integrals_Bielec
AOs
Selectors_full
MOs
Hartree_Fock
ezfio_interface.irp.f
Ezfio_files
Perturbation
Determinants
Electrons
Utils
Properties
Nuclei
Integrals_Monoelec
MO_Basis
Selectors_full
Integrals_Bielec
Pseudo
Bitmask
Generators_CAS
AO_Basis
Electrons
MOGuess
Ezfio_files
ddci
Nuclei
Hartree_Fock
Properties
ddci

View File

@ -12,24 +12,24 @@ Documentation
Undocumented
`h_apply_ddci_pt2 <http://github.com/LCPQ/quantum_package/tree/master/src/DDCI_selected/H_apply.irp.f_shell_15#L1267>`_
`h_apply_ddci_pt2 <http://github.com/LCPQ/quantum_package/tree/master/src/DDCI_selected/H_apply.irp.f_shell_15#L1341>`_
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_ddci_pt2_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/DDCI_selected/H_apply.irp.f_shell_15#L774>`_
`h_apply_ddci_pt2_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/DDCI_selected/H_apply.irp.f_shell_15#L811>`_
Generate all double excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_ddci_pt2_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/DDCI_selected/H_apply.irp.f_shell_15#L1083>`_
`h_apply_ddci_pt2_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/DDCI_selected/H_apply.irp.f_shell_15#L1143>`_
Generate all single excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_ddci_selection <http://github.com/LCPQ/quantum_package/tree/master/src/DDCI_selected/H_apply.irp.f_shell_15#L528>`_
`h_apply_ddci_selection <http://github.com/LCPQ/quantum_package/tree/master/src/DDCI_selected/H_apply.irp.f_shell_15#L565>`_
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.
@ -40,7 +40,7 @@ Documentation
Assume N_int is already provided.
`h_apply_ddci_selection_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/DDCI_selected/H_apply.irp.f_shell_15#L330>`_
`h_apply_ddci_selection_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/DDCI_selected/H_apply.irp.f_shell_15#L353>`_
Generate all single excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 102 KiB

After

Width:  |  Height:  |  Size: 105 KiB

View File

@ -1,25 +1,24 @@
#
# Do not modify this file. Add your ignored files to the gitignore
# (without the dot at the beginning) file.
#
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
IRPF90_temp
IRPF90_man
irpf90.make
tags
Makefile.depend
irpf90_entities
tags
irpf90.make
Makefile
Makefile.depend
build.ninja
.ninja_log
.ninja_deps
Pseudo
Integrals_Monoelec
Bitmask
Integrals_Bielec
AOs
MOs
Determinants
Electrons
Utils
Nuclei
ezfio_interface.irp.f
Ezfio_files
fcidump
Determinants
Integrals_Monoelec
MO_Basis
Utils
Pseudo
Bitmask
AO_Basis
Electrons
Nuclei
Integrals_Bielec
fcidump

Binary file not shown.

Before

Width:  |  Height:  |  Size: 59 KiB

After

Width:  |  Height:  |  Size: 64 KiB

View File

@ -1,34 +1,33 @@
#
# Do not modify this file. Add your ignored files to the gitignore
# (without the dot at the beginning) file.
#
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
IRPF90_temp
IRPF90_man
irpf90.make
tags
Makefile.depend
irpf90_entities
tags
irpf90.make
Makefile
Makefile.depend
build.ninja
.ninja_log
.ninja_deps
Generators_full
Pseudo
Integrals_Monoelec
Bitmask
Integrals_Bielec
AOs
Selectors_full
MOs
Hartree_Fock
ezfio_interface.irp.f
Ezfio_files
Perturbation
Determinants
Electrons
Utils
Properties
Nuclei
Integrals_Monoelec
MO_Basis
Selectors_full
Integrals_Bielec
Pseudo
Generators_full
Bitmask
AO_Basis
Electrons
MOGuess
Ezfio_files
Nuclei
Hartree_Fock
Properties
target_pt2
full_ci
var_pt2_ratio
full_ci_no_skip
full_ci_no_skip

View File

@ -14,7 +14,7 @@ Documentation
Undocumented
`h_apply_fci <http://github.com/LCPQ/quantum_package/tree/master/src/Full_CI/H_apply.irp.f_shell_43#L519>`_
`h_apply_fci <http://github.com/LCPQ/quantum_package/tree/master/src/Full_CI/H_apply.irp.f_shell_43#L544>`_
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.
@ -25,126 +25,126 @@ Documentation
Assume N_int is already provided.
`h_apply_fci_mono <http://github.com/LCPQ/quantum_package/tree/master/src/Full_CI/H_apply.irp.f_shell_43#L2712>`_
`h_apply_fci_mono <http://github.com/LCPQ/quantum_package/tree/master/src/Full_CI/H_apply.irp.f_shell_43#L2812>`_
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_fci_mono_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/Full_CI/H_apply.irp.f_shell_43#L2192>`_
`h_apply_fci_mono_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/Full_CI/H_apply.irp.f_shell_43#L2267>`_
Generate all double excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_fci_mono_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/Full_CI/H_apply.irp.f_shell_43#L2515>`_
`h_apply_fci_mono_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/Full_CI/H_apply.irp.f_shell_43#L2605>`_
Generate all single excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_fci_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/Full_CI/H_apply.irp.f_shell_43#L324>`_
`h_apply_fci_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/Full_CI/H_apply.irp.f_shell_43#L339>`_
Generate all single excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_fci_no_skip <http://github.com/LCPQ/quantum_package/tree/master/src/Full_CI/H_apply.irp.f_shell_43#L1974>`_
`h_apply_fci_no_skip <http://github.com/LCPQ/quantum_package/tree/master/src/Full_CI/H_apply.irp.f_shell_43#L2049>`_
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_fci_no_skip_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/Full_CI/H_apply.irp.f_shell_43#L1456>`_
`h_apply_fci_no_skip_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/Full_CI/H_apply.irp.f_shell_43#L1506>`_
Generate all double excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_fci_no_skip_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/Full_CI/H_apply.irp.f_shell_43#L1779>`_
`h_apply_fci_no_skip_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/Full_CI/H_apply.irp.f_shell_43#L1844>`_
Generate all single excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_fci_pt2 <http://github.com/LCPQ/quantum_package/tree/master/src/Full_CI/H_apply.irp.f_shell_43#L1249>`_
`h_apply_fci_pt2 <http://github.com/LCPQ/quantum_package/tree/master/src/Full_CI/H_apply.irp.f_shell_43#L1299>`_
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_fci_pt2_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/Full_CI/H_apply.irp.f_shell_43#L765>`_
`h_apply_fci_pt2_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/Full_CI/H_apply.irp.f_shell_43#L790>`_
Generate all double excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_fci_pt2_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/Full_CI/H_apply.irp.f_shell_43#L1068>`_
`h_apply_fci_pt2_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/Full_CI/H_apply.irp.f_shell_43#L1108>`_
Generate all single excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_pt2_mono_delta_rho <http://github.com/LCPQ/quantum_package/tree/master/src/Full_CI/H_apply.irp.f_shell_43#L4210>`_
`h_apply_pt2_mono_delta_rho <http://github.com/LCPQ/quantum_package/tree/master/src/Full_CI/H_apply.irp.f_shell_43#L4360>`_
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_pt2_mono_delta_rho_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/Full_CI/H_apply.irp.f_shell_43#L3724>`_
`h_apply_pt2_mono_delta_rho_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/Full_CI/H_apply.irp.f_shell_43#L3849>`_
Generate all double excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_pt2_mono_delta_rho_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/Full_CI/H_apply.irp.f_shell_43#L4027>`_
`h_apply_pt2_mono_delta_rho_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/Full_CI/H_apply.irp.f_shell_43#L4167>`_
Generate all single excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_pt2_mono_di_delta_rho <http://github.com/LCPQ/quantum_package/tree/master/src/Full_CI/H_apply.irp.f_shell_43#L5665>`_
`h_apply_pt2_mono_di_delta_rho <http://github.com/LCPQ/quantum_package/tree/master/src/Full_CI/H_apply.irp.f_shell_43#L5865>`_
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_pt2_mono_di_delta_rho_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/Full_CI/H_apply.irp.f_shell_43#L5181>`_
`h_apply_pt2_mono_di_delta_rho_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/Full_CI/H_apply.irp.f_shell_43#L5356>`_
Generate all double excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_pt2_mono_di_delta_rho_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/Full_CI/H_apply.irp.f_shell_43#L5484>`_
`h_apply_pt2_mono_di_delta_rho_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/Full_CI/H_apply.irp.f_shell_43#L5674>`_
Generate all single excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_select_mono_delta_rho <http://github.com/LCPQ/quantum_package/tree/master/src/Full_CI/H_apply.irp.f_shell_43#L3478>`_
`h_apply_select_mono_delta_rho <http://github.com/LCPQ/quantum_package/tree/master/src/Full_CI/H_apply.irp.f_shell_43#L3603>`_
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_select_mono_delta_rho_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/Full_CI/H_apply.irp.f_shell_43#L2958>`_
`h_apply_select_mono_delta_rho_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/Full_CI/H_apply.irp.f_shell_43#L3058>`_
Generate all double excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_select_mono_delta_rho_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/Full_CI/H_apply.irp.f_shell_43#L3281>`_
`h_apply_select_mono_delta_rho_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/Full_CI/H_apply.irp.f_shell_43#L3396>`_
Generate all single excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_select_mono_di_delta_rho <http://github.com/LCPQ/quantum_package/tree/master/src/Full_CI/H_apply.irp.f_shell_43#L4935>`_
`h_apply_select_mono_di_delta_rho <http://github.com/LCPQ/quantum_package/tree/master/src/Full_CI/H_apply.irp.f_shell_43#L5110>`_
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_select_mono_di_delta_rho_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/Full_CI/H_apply.irp.f_shell_43#L4417>`_
`h_apply_select_mono_di_delta_rho_diexc <http://github.com/LCPQ/quantum_package/tree/master/src/Full_CI/H_apply.irp.f_shell_43#L4567>`_
Generate all double excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.
`h_apply_select_mono_di_delta_rho_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/Full_CI/H_apply.irp.f_shell_43#L4740>`_
`h_apply_select_mono_di_delta_rho_monoexc <http://github.com/LCPQ/quantum_package/tree/master/src/Full_CI/H_apply.irp.f_shell_43#L4905>`_
Generate all single excitations of key_in using the bit masks of holes and
particles.
Assume N_int is already provided.

View File

@ -28,6 +28,7 @@ program full_ci
print *, '-----'
endif
double precision :: i_H_psi_array(N_states),diag_H_mat_elem,h,i_O1_psi_array(N_states)
double precision :: E_CI_before(N_states)
if(read_wf)then
call i_H_psi(psi_det(1,1,N_det),psi_det,psi_coef,N_int,N_det,psi_det_size,N_states,i_H_psi_array)
h = diag_H_mat_elem(psi_det(1,1,N_det),N_int)
@ -38,6 +39,7 @@ program full_ci
integer :: n_det_before
print*,'Beginning the selection ...'
E_CI_before = CI_energy
do while (N_det < N_det_max.and.maxval(abs(pt2(1:N_st))) > pt2_max)
n_det_before = N_det
call H_apply_FCI(pt2, norm_pert, H_pert_diag, N_st)
@ -57,12 +59,13 @@ program full_ci
if(n_det_before == N_det)then
selection_criterion = selection_criterion * 0.5d0
endif
print *, 'N_det = ', N_det
print *, 'N_states = ', N_states
print *, 'PT2 = ', pt2
print *, 'E = ', CI_energy
print *, 'E+PT2 = ', CI_energy+pt2
print *, 'N_det = ', N_det
print *, 'N_states = ', N_states
print *, 'PT2 = ', pt2
print *, 'E = ', CI_energy
print *, 'E(before)+PT2 = ', E_CI_before+pt2
print *, '-----'
E_CI_before = CI_energy
call ezfio_set_full_ci_energy(CI_energy)
if (abort_all) then
exit

View File

@ -28,6 +28,7 @@ program full_ci
print *, '-----'
endif
double precision :: i_H_psi_array(N_states),diag_H_mat_elem,h,i_O1_psi_array(N_states)
double precision :: E_CI_before(N_states)
if(read_wf)then
call i_H_psi(psi_det(1,1,N_det),psi_det,psi_coef,N_int,N_det,psi_det_size,N_states,i_H_psi_array)
h = diag_H_mat_elem(psi_det(1,1,N_det),N_int)
@ -38,6 +39,7 @@ program full_ci
integer :: n_det_before
print*,'Beginning the selection ...'
E_CI_before = CI_energy
do while (N_det < N_det_max.and.maxval(abs(pt2(1:N_st))) > pt2_max)
n_det_before = N_det
call H_apply_FCI_no_skip(pt2, norm_pert, H_pert_diag, N_st)
@ -61,8 +63,9 @@ program full_ci
print *, 'N_states = ', N_states
print *, 'PT2 = ', pt2
print *, 'E = ', CI_energy
print *, 'E+PT2 = ', CI_energy+pt2
print *, 'E+PT2 = ', E_CI_before+pt2
print *, '-----'
E_CI_before = CI_energy
call ezfio_set_full_ci_energy(CI_energy)
if (abort_all) then
exit
@ -73,6 +76,7 @@ program full_ci
call diagonalize_CI
if(do_pt2_end)then
print*,'Last iteration only to compute the PT2'
! print*,'The thres'
threshold_selectors = 1.d0
threshold_generators = 0.999d0
call H_apply_FCI_PT2(pt2, norm_pert, H_pert_diag, N_st)

Binary file not shown.

Before

Width:  |  Height:  |  Size: 100 KiB

After

Width:  |  Height:  |  Size: 104 KiB

View File

@ -1,13 +1,23 @@
#
# Do not modify this file. Add your ignored files to the gitignore
# (without the dot at the beginning) file.
#
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
IRPF90_temp
IRPF90_man
irpf90.make
tags
Makefile.depend
irpf90_entities
tags
irpf90.make
Makefile
Makefile.depend
build.ninja
.ninja_log
.ninja_deps
ezfio_interface.irp.f
Ezfio_files
Determinants
Integrals_Monoelec
MO_Basis
Utils
Pseudo
Bitmask
AO_Basis
Electrons
Nuclei
Integrals_Bielec

Binary file not shown.

Before

Width:  |  Height:  |  Size: 61 KiB

After

Width:  |  Height:  |  Size: 65 KiB

View File

@ -1,13 +1,25 @@
#
# Do not modify this file. Add your ignored files to the gitignore
# (without the dot at the beginning) file.
#
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
IRPF90_temp
IRPF90_man
irpf90.make
tags
Makefile.depend
irpf90_entities
tags
irpf90.make
Makefile
Makefile.depend
build.ninja
.ninja_log
.ninja_deps
ezfio_interface.irp.f
Ezfio_files
Determinants
Integrals_Monoelec
MO_Basis
Utils
Pseudo
Bitmask
AO_Basis
Electrons
MOGuess
Nuclei
Hartree_Fock
Integrals_Bielec

Binary file not shown.

Before

Width:  |  Height:  |  Size: 74 KiB

After

Width:  |  Height:  |  Size: 78 KiB

View File

@ -2,40 +2,3 @@
Generators_restart Module
=========================
Documentation
=============
.. Do not edit this section. It was auto-generated from the
.. by the `update_README.py` script.
`n_det_generators <http://github.com/LCPQ/quantum_package/tree/master/src/Generators_restart/generators.irp.f#L3>`_
Read the wave function
`psi_coef_generators <http://github.com/LCPQ/quantum_package/tree/master/src/Generators_restart/generators.irp.f#L21>`_
read wf
.br
`psi_det_generators <http://github.com/LCPQ/quantum_package/tree/master/src/Generators_restart/generators.irp.f#L20>`_
read wf
.br
`select_max <http://github.com/LCPQ/quantum_package/tree/master/src/Generators_restart/generators.irp.f#L52>`_
Memo to skip useless selectors
`size_select_max <http://github.com/LCPQ/quantum_package/tree/master/src/Generators_restart/generators.irp.f#L44>`_
Size of the select_max array
Needed Modules
==============
.. Do not edit this section. It was auto-generated from the
.. by the `update_README.py` script.
.. image:: tree_dependency.png
* `Determinants <http://github.com/LCPQ/quantum_package/tree/master/src/Determinants>`_

View File

@ -1,26 +1,25 @@
#
# Do not modify this file. Add your ignored files to the gitignore
# (without the dot at the beginning) file.
#
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
IRPF90_temp
IRPF90_man
irpf90.make
tags
Makefile.depend
irpf90_entities
tags
irpf90.make
Makefile
Makefile.depend
build.ninja
.ninja_log
.ninja_deps
Pseudo
Integrals_Monoelec
Bitmask
Integrals_Bielec
AOs
MOs
Electrons
Utils
Nuclei
MOGuess
ezfio_interface.irp.f
Ezfio_files
Integrals_Monoelec
MO_Basis
Integrals_Bielec
Pseudo
Bitmask
AO_Basis
Electrons
MOGuess
Nuclei
Utils
Huckel_guess
SCF
SCF

Binary file not shown.

Before

Width:  |  Height:  |  Size: 59 KiB

After

Width:  |  Height:  |  Size: 63 KiB

View File

@ -1,31 +1,30 @@
#
# Do not modify this file. Add your ignored files to the gitignore
# (without the dot at the beginning) file.
#
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
IRPF90_temp
IRPF90_man
irpf90.make
tags
Makefile.depend
irpf90_entities
tags
irpf90.make
Makefile
Makefile.depend
build.ninja
.ninja_log
.ninja_deps
Pseudo
Integrals_Monoelec
Bitmask
Integrals_Bielec
AOs
Selectors_full
MOs
Hartree_Fock
ezfio_interface.irp.f
Ezfio_files
Perturbation
Determinants
Electrons
Utils
Properties
Nuclei
MOGuess
Integrals_Monoelec
MO_Basis
Selectors_full
Integrals_Bielec
Pseudo
AO_Basis
Bitmask
SingleRefMethod
Ezfio_files
mp2
Electrons
MOGuess
Nuclei
Hartree_Fock
Properties
mp2

Binary file not shown.

Before

Width:  |  Height:  |  Size: 102 KiB

After

Width:  |  Height:  |  Size: 106 KiB

View File

@ -1,31 +1,30 @@
#
# Do not modify this file. Add your ignored files to the gitignore
# (without the dot at the beginning) file.
#
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
IRPF90_temp
IRPF90_man
irpf90.make
tags
Makefile.depend
irpf90_entities
tags
irpf90.make
Makefile
Makefile.depend
build.ninja
.ninja_log
.ninja_deps
Generators_full
Pseudo
Integrals_Monoelec
Bitmask
Integrals_Bielec
AOs
Selectors_full
MOs
Hartree_Fock
ezfio_interface.irp.f
Ezfio_files
Perturbation
Determinants
Electrons
Utils
Properties
Nuclei
Integrals_Monoelec
MO_Basis
Selectors_full
Integrals_Bielec
Pseudo
Generators_full
Bitmask
AO_Basis
Electrons
MOGuess
Ezfio_files
mrcc
Nuclei
Hartree_Fock
Properties
mrcc

View File

@ -1,21 +1,32 @@
BEGIN_PROVIDER [ double precision, lambda_mrcc, (N_states,psi_det_size) ]
&BEGIN_PROVIDER [ double precision, lambda_pert, (N_states,psi_det_size) ]
implicit none
BEGIN_DOC
! cm/<Psi_0|H|D_m>
END_DOC
integer :: i,k
double precision :: ihpsi(N_states)
do i=1,N_det_non_cas
double precision :: ihpsi(N_states), hij(N_states)
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)
double precision :: hij
call i_h_j(psi_non_cas(1,1,i),psi_non_cas(1,1,i),N_int,hij)
do k=1,N_states
if (dabs(ihpsi(k)) > 1.d-5) then
lambda_mrcc(k,i) = psi_non_cas_coef(i,k)/ihpsi(k)
lambda_mrcc(k,i) = min( lambda_mrcc (k,i),0.d0 )
lambda_pert(k,i) = 1d0 / (CI_electronic_energy(k)-hij(k))
lambda_mrcc(k,i) = psi_non_cas_coef(i,k)/ihpsi(k)
if ((lambda_mrcc(k,i)/lambda_pert(k,i))<0.d0 .or. (lambda_mrcc(k,i)/lambda_pert(k,i))>4.d0) then
lambda_mrcc(k,i) = lambda_pert(k,i)
else
lambda_mrcc(k,i) = 0.d0
if ((lambda_mrcc(k,i)/lambda_pert(k,i))<0.1d0 .or. (lambda_mrcc(k,i)/lambda_pert(k,i))>=0d0) then
lambda_mrcc(k,i) = lambda_mrcc(k,i)*((cos((lambda_mrcc(k,i)/lambda_pert(k,i))*3.141592653589793d0/0.1d0+3.141592653589793d0)+1d0)/2.d0) &
+ lambda_pert(k,i)*(1.d0-((cos((lambda_mrcc(k,i)/lambda_pert(k,i))*3.141592653589793d0/0.1d0+3.141592653589793d0)+1.d0)/2.d0))
elseif ((lambda_mrcc(k,i)/lambda_pert(k,i))<=4.0d0 .or. (lambda_mrcc(k,i)/lambda_pert(k,i))>2.0d0) then
lambda_mrcc(k,i) = lambda_mrcc(k,i)*(1.d0-(cos(abs(2.d0-(lambda_mrcc(k,i)/lambda_pert(k,i)))*3.141592653589793d0/2.0d0+3.141592653589793d0)+1.d0)/2d0) &
+ lambda_pert(k,i)*((cos(abs(2.d0-(lambda_mrcc(k,i)/lambda_pert(k,i)))*3.141592653589793d0/2.0d0+3.141592653589793d0)+1.d0)/2.d0)
else
lambda_mrcc(k,i) = lambda_mrcc(k,i)
endif
endif
enddo
enddo
@ -23,6 +34,8 @@ END_PROVIDER
BEGIN_PROVIDER [ character*(32), dressing_type ]
implicit none
BEGIN_DOC

Binary file not shown.

Before

Width:  |  Height:  |  Size: 100 KiB

After

Width:  |  Height:  |  Size: 104 KiB

View File

@ -1 +1 @@
MOs Utils
MO_Basis Utils

View File

@ -35,6 +35,6 @@ Needed Modules
.. image:: tree_dependency.png
* `MOs <http://github.com/LCPQ/quantum_package/tree/master/src/MOs>`_
* `MO_Basis <http://github.com/LCPQ/quantum_package/tree/master/src/MO_Basis>`_
* `Utils <http://github.com/LCPQ/quantum_package/tree/master/src/Utils>`_

View File

@ -1,13 +1,26 @@
#
# Do not modify this file. Add your ignored files to the gitignore
# (without the dot at the beginning) file.
#
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
IRPF90_temp
IRPF90_man
irpf90.make
tags
Makefile.depend
irpf90_entities
tags
irpf90.make
Makefile
Makefile.depend
build.ninja
.ninja_log
.ninja_deps
ezfio_interface.irp.f
Ezfio_files
Determinants
Integrals_Monoelec
MO_Basis
Utils
Pseudo
Properties
Bitmask
AO_Basis
Electrons
MOGuess
Nuclei
Hartree_Fock
Integrals_Bielec

View File

@ -85,7 +85,7 @@ Documentation
Undocumented
`perturb_buffer_by_mono_delta_rho_one_point <http://github.com/LCPQ/quantum_package/tree/master/src/Perturbation/perturbation.irp.f_shell_13#L161>`_
`perturb_buffer_by_mono_delta_rho_one_point <http://github.com/LCPQ/quantum_package/tree/master/src/Perturbation/perturbation.irp.f_shell_13#L791>`_
Applly pertubration ``delta_rho_one_point`` to the buffer of determinants generated in the H_apply
routine.
@ -95,12 +95,12 @@ Documentation
routine.
`perturb_buffer_by_mono_epstein_nesbet <http://github.com/LCPQ/quantum_package/tree/master/src/Perturbation/perturbation.irp.f_shell_13#L686>`_
`perturb_buffer_by_mono_epstein_nesbet <http://github.com/LCPQ/quantum_package/tree/master/src/Perturbation/perturbation.irp.f_shell_13#L161>`_
Applly pertubration ``epstein_nesbet`` to the buffer of determinants generated in the H_apply
routine.
`perturb_buffer_by_mono_epstein_nesbet_2x2 <http://github.com/LCPQ/quantum_package/tree/master/src/Perturbation/perturbation.irp.f_shell_13#L791>`_
`perturb_buffer_by_mono_epstein_nesbet_2x2 <http://github.com/LCPQ/quantum_package/tree/master/src/Perturbation/perturbation.irp.f_shell_13#L266>`_
Applly pertubration ``epstein_nesbet_2x2`` to the buffer of determinants generated in the H_apply
routine.
@ -120,17 +120,17 @@ Documentation
routine.
`perturb_buffer_by_mono_h_core <http://github.com/LCPQ/quantum_package/tree/master/src/Perturbation/perturbation.irp.f_shell_13#L266>`_
`perturb_buffer_by_mono_h_core <http://github.com/LCPQ/quantum_package/tree/master/src/Perturbation/perturbation.irp.f_shell_13#L56>`_
Applly pertubration ``h_core`` to the buffer of determinants generated in the H_apply
routine.
`perturb_buffer_by_mono_moller_plesset <http://github.com/LCPQ/quantum_package/tree/master/src/Perturbation/perturbation.irp.f_shell_13#L56>`_
`perturb_buffer_by_mono_moller_plesset <http://github.com/LCPQ/quantum_package/tree/master/src/Perturbation/perturbation.irp.f_shell_13#L686>`_
Applly pertubration ``moller_plesset`` to the buffer of determinants generated in the H_apply
routine.
`perturb_buffer_delta_rho_one_point <http://github.com/LCPQ/quantum_package/tree/master/src/Perturbation/perturbation.irp.f_shell_13#L110>`_
`perturb_buffer_delta_rho_one_point <http://github.com/LCPQ/quantum_package/tree/master/src/Perturbation/perturbation.irp.f_shell_13#L740>`_
Applly pertubration ``delta_rho_one_point`` to the buffer of determinants generated in the H_apply
routine.
@ -140,12 +140,12 @@ Documentation
routine.
`perturb_buffer_epstein_nesbet <http://github.com/LCPQ/quantum_package/tree/master/src/Perturbation/perturbation.irp.f_shell_13#L635>`_
`perturb_buffer_epstein_nesbet <http://github.com/LCPQ/quantum_package/tree/master/src/Perturbation/perturbation.irp.f_shell_13#L110>`_
Applly pertubration ``epstein_nesbet`` to the buffer of determinants generated in the H_apply
routine.
`perturb_buffer_epstein_nesbet_2x2 <http://github.com/LCPQ/quantum_package/tree/master/src/Perturbation/perturbation.irp.f_shell_13#L740>`_
`perturb_buffer_epstein_nesbet_2x2 <http://github.com/LCPQ/quantum_package/tree/master/src/Perturbation/perturbation.irp.f_shell_13#L215>`_
Applly pertubration ``epstein_nesbet_2x2`` to the buffer of determinants generated in the H_apply
routine.
@ -165,12 +165,12 @@ Documentation
routine.
`perturb_buffer_h_core <http://github.com/LCPQ/quantum_package/tree/master/src/Perturbation/perturbation.irp.f_shell_13#L215>`_
`perturb_buffer_h_core <http://github.com/LCPQ/quantum_package/tree/master/src/Perturbation/perturbation.irp.f_shell_13#L5>`_
Applly pertubration ``h_core`` to the buffer of determinants generated in the H_apply
routine.
`perturb_buffer_moller_plesset <http://github.com/LCPQ/quantum_package/tree/master/src/Perturbation/perturbation.irp.f_shell_13#L5>`_
`perturb_buffer_moller_plesset <http://github.com/LCPQ/quantum_package/tree/master/src/Perturbation/perturbation.irp.f_shell_13#L635>`_
Applly pertubration ``moller_plesset`` to the buffer of determinants generated in the H_apply
routine.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 76 KiB

After

Width:  |  Height:  |  Size: 80 KiB

View File

@ -1,13 +1,23 @@
#
# Do not modify this file. Add your ignored files to the gitignore
# (without the dot at the beginning) file.
#
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
IRPF90_temp
IRPF90_man
irpf90.make
tags
Makefile.depend
irpf90_entities
tags
irpf90.make
Makefile
Makefile.depend
build.ninja
.ninja_log
.ninja_deps
ezfio_interface.irp.f
Ezfio_files
Determinants
Integrals_Monoelec
MO_Basis
Utils
Pseudo
Bitmask
AO_Basis
Electrons
Nuclei
Integrals_Bielec

Binary file not shown.

Before

Width:  |  Height:  |  Size: 59 KiB

After

Width:  |  Height:  |  Size: 64 KiB

View File

@ -1,13 +1,25 @@
#
# Do not modify this file. Add your ignored files to the gitignore
# (without the dot at the beginning) file.
#
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
IRPF90_temp
IRPF90_man
irpf90.make
tags
Makefile.depend
irpf90_entities
tags
irpf90.make
Makefile
Makefile.depend
build.ninja
.ninja_log
.ninja_deps
ezfio_interface.irp.f
Ezfio_files
Determinants
Integrals_Monoelec
MO_Basis
Utils
Pseudo
Bitmask
AO_Basis
Electrons
MOGuess
Nuclei
Hartree_Fock
Integrals_Bielec

Binary file not shown.

Before

Width:  |  Height:  |  Size: 74 KiB

After

Width:  |  Height:  |  Size: 77 KiB

View File

@ -1,13 +1,19 @@
#
# Do not modify this file. Add your ignored files to the gitignore
# (without the dot at the beginning) file.
#
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
IRPF90_temp
IRPF90_man
irpf90.make
tags
Makefile.depend
irpf90_entities
tags
irpf90.make
Makefile
Makefile.depend
build.ninja
.ninja_log
.ninja_deps
ezfio_interface.irp.f
Ezfio_files
MO_Basis
Utils
Bitmask
AO_Basis
Electrons
Nuclei

Binary file not shown.

Before

Width:  |  Height:  |  Size: 34 KiB

After

Width:  |  Height:  |  Size: 36 KiB

View File

@ -18,9 +18,8 @@ p = re.compile(ur'-I IRPF90_temp/\S*\s+')
mod = re.compile(ur'module\s+(?P<mod>\S+).+end\s?module\s+(?P=mod)?',
re.MULTILINE | re.IGNORECASE)
tmpdir_root = os.environ.get("TMPDIR",failobj="/dev/shm")
TMPDIR = os.path.join(tmpdir_root,os.environ["USER"],"qp_compiler")
tmpdir_root = os.environ.get("TMPDIR", failobj="/dev/shm")
TMPDIR = os.path.join(tmpdir_root, os.environ["USER"], "qp_compiler")
def return_filename_to_cache(command):

View File

@ -320,6 +320,37 @@ def ninja_symlink_build(path_module, l_symlink):
return l_string
#
# _ o _|_ o _ ._ _ ._ _
# o (_| | |_ | (_| | | (_) | (/_
# _| _|
def ninja_gitignore_rule():
"""
Return the command to create the gitignore
"""
return ["rule build_gitignore",
" command = module_handler.py create_git_ignore $module_rel",
" description = Create gitignore for $module_rel", ""]
def ninja_gitignore_build(path_module, l_symlink, d_binaries):
"""
"""
path_gitignore = join(path_module.abs, ".gitignore")
l_b = [i.abs for i in d_binaries[path_module]]
l_sym = [i.destination for i in l_symlink]
l_string = ["build {0}: build_gitignore {1} || {2}".format(path_gitignore,
" ".join(l_b),
" ".join(l_sym)),
" module_rel = {0}".format(path_module.rel),
""]
return l_string
# _ _ _
# o ._ ._ _|_ (_| / \ ._ _ _. | _
# | | |_) | | \_/ o | | | (_| |< (/_
@ -474,21 +505,25 @@ def ninja_readme_rule():
For not dealted the readme when ninja -t clean and the generator option
"""
l_string = ["rule build_readme",
" command = cd $module_abs ; update_README.py",
" command = cd $module_abs ; update_README.py $module_root",
" description = update_README $module_rel",
" generator = 1", ""]
return l_string
def ninja_readme_build(path_module):
def ninja_readme_build(path_module, d_irp, dict_root_path):
"""
Rule for creation the readme
"""
path_irp_man = join(path_module.abs, "irpf90.make")
path_readme = join(path_module.abs, "README.rst")
root_module = dict_root_path[module]
l_depend = d_irp[path_module]["l_depend"] + [join(root_module.abs, "tags")]
l_string = ["build {0}: build_readme {1}".format(path_readme,
path_irp_man),
" ".join(l_depend)),
" module_root = {0}".format(root_module.abs),
" module_abs = {0}".format(path_module.abs),
" module_rel = {0}".format(path_module.rel), ""]
@ -533,7 +568,7 @@ def get_dict_binaries(l_module, mode="production"):
Example : The module Full_CI can produce the binary SCF
so you dont need to compile at all the module Hartree-Fock
But you need to change the path acordingle
But you need to change the path acordingly
Full_CI/Hartree-Fock/SCF
"""
d_binaries = defaultdict(list)
@ -664,10 +699,11 @@ def ninja_dot_tree_rule():
return l_string
def ninja_dot_tree_build(path_module):
def ninja_dot_tree_build(path_module, l_module):
path_tree = join(path_module.abs, "tree_dependency.png")
l_string = ["build {0}: build_dot_tree".format(path_tree),
l_dep = [join(path.abs, "NEEDED_CHILDREN_MODULES") for path in l_module]
l_string = ["build {0}: build_dot_tree {1}".format(path_tree, " ".join(l_dep)),
" module_abs = {0}".format(path_module.abs),
" module_rel = {0}".format(path_module.rel), ""]
@ -695,7 +731,7 @@ def create_build_ninja_module(path_module):
" pool = console", " description = Compile all the module",
""]
l_string += ["rule make_clean", " command = clean_modules.sh",
l_string += ["rule make_clean", " command = module_handler.py clean {0}".format(path_module.rel),
" description = Cleaning module {0}".format(path_module.rel),
""]
@ -711,7 +747,7 @@ def create_build_ninja_module(path_module):
f.write("\n".join(l_string))
def create_build_ninja_global():
def create_build_ninja_global(l_module):
l_string = ["rule update_build_ninja_root",
" command = {0} update".format(__file__),
@ -723,7 +759,7 @@ def create_build_ninja_global():
""]
l_string += ["rule make_clean",
" command = cd {0} ; clean_modules.sh *".format(QP_SRC),
" command = module_handler.py clean {0}".format(" ".join([m.rel for m in l_module])),
" description = Cleaning all modules", ""]
l_string += ["build dummy_target: update_build_ninja_root",
@ -782,6 +818,7 @@ if __name__ == "__main__":
l_string += ninja_irpf90_make_rule()
l_string += ninja_readme_rule()
l_string += ninja_gitignore_rule()
l_string += ninja_binaries_rule()
@ -816,8 +853,18 @@ if __name__ == "__main__":
d_genealogy_path = dict_module_genelogy_path(d_genealogy)
d_irp = get_file_dependency(d_genealogy_path)
dict_root = module_instance.dict_root
dict_root_path = dict_module_genelogy_path(dict_root)
l_module = d_genealogy_path.keys()
for module in l_module:
# ~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~ #
# d o t _ t r e e & r e a d m e #
# ~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~ #
l_string += ninja_dot_tree_build(module, l_module)
l_string += ninja_readme_build(module, d_irp, dict_root_path)
# ~#~#~#~#~#~#~#~#~#~#~#~#~ #
# M o d u l e _ t o _ i r p #
# ~#~#~#~#~#~#~#~#~#~#~#~#~ #
@ -832,7 +879,7 @@ if __name__ == "__main__":
d_binaries = get_dict_binaries(l_module, mode="development")
l_module = d_binaries.keys()
create_build_ninja_global()
create_build_ninja_global(l_module)
for module_to_compile in l_module:
@ -853,15 +900,11 @@ if __name__ == "__main__":
l_string += ninja_irpf90_make_build(module_to_compile, l_children,
d_irp)
# ~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~ #
# d o t _ t r e e & r e a d m e #
# ~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~ #
l_string += ninja_dot_tree_build(module_to_compile)
l_string += ninja_readme_build(module_to_compile)
l_string += ninja_binaries_build(module_to_compile, l_children,
d_binaries)
l_string += ninja_gitignore_build(module_to_compile, l_symlink, d_binaries)
with open(join(QP_ROOT, "config", "build.ninja"), "w+") as f:
f.write(header)
f.write("\n".join(l_string))

View File

@ -44,6 +44,8 @@ Optional:
size: <str> The size information.
(by default is one)
Example : 1, =sum(ao_num); (ao_num,3)
ATTENTION : The module and the value are separed by a "." not a "_".
For exemple (determinants.n_det)
ezfio_name: <str> The name for the EZFIO lib
(by default is <provider_name>)
ezfio_dir: <str> Will be the folder of EZFIO.
@ -228,6 +230,8 @@ def get_dict_config_file(module_obj):
# pvd = provider
pvd = section.lower()
d[pvd]["module"] = module_obj
# Create the dictionary who containt the value per default
d_default = {"ezfio_name": pvd,
"ezfio_dir": module_obj.lower,
@ -255,7 +259,7 @@ def get_dict_config_file(module_obj):
sys.exit(1)
try:
interface = map(str.lower, config_file.get(section, "interface").split(","))
interface = [i.lower().strip() for i in config_file.get(section, "interface").split(",")]
except ConfigParser.NoOptionError:
error("doc", pvd, module_obj.path)
sys.exit(1)
@ -317,7 +321,7 @@ def create_ezfio_provider(dict_ezfio_cfg):
ez_p.set_doc(dict_info['doc'])
ez_p.set_ezfio_dir(dict_info['ezfio_dir'])
ez_p.set_ezfio_name(dict_info['ezfio_name'])
ez_p.set_output("output_%s" % dict_info['ezfio_dir'])
ez_p.set_output("output_%s" % dict_info['module'].lower)
# (nuclei.nucl_num,pseudo.klocmax) => (nucl_num,klocmax)
ez_p.set_size(re.sub(r'\w+\.', "", dict_info['size']))

View File

@ -277,7 +277,7 @@ class H_apply(object):
do k=1,N_st
norm_psi(k) = norm_psi(k) + psi_coef_generators(i_generator,k)*psi_coef_generators(i_generator,k)
! delta_pt2(k) = 0.d0
! pt2_old(k) = 0.d0
pt2_old(k) = 0.d0
! pt2(k) = select_max(i_generator)
enddo
!$ call omp_unset_lock(lck)

View File

@ -1,37 +0,0 @@
#!/bin/bash
#
# Cleans a module directory
if [[ -z ${QP_ROOT} ]]
then
print "The QP_ROOT environment variable is not set."
print "Please reload the quantum_package.rc file."
exit -1
fi
source ${QP_ROOT}/scripts/qp_include.sh
function do_clean()
{
rm -rf -- \
IRPF90_temp IRPF90_man \
$(module_handler.py print_descendant) include \
ezfio_interface.irp.f irpf90.make irpf90_entities tags $(ls_exe) *.mod
}
if [[ -z $1 ]]
then
check_current_dir_is_module
do_clean
else
check_current_dir_is_src
for i in $@
do
if [[ -d $i ]]
then
cd $i
do_clean
cd $OLDPWD
fi
done
fi

View File

@ -1,13 +1,13 @@
#!/usr/bin/env python
# -*- coding: utf-8 -*-
"""
Create the NEEDED_MODULE
aka the genealogy (children module, subchildren module and so on),
of a NEEDED_CHILDREN_MODULES file
Module utilitary
Usage:
module_handler.py print_descendant [<NEEDED_CHILDREN_MODULES>]
module_handler.py create_png [<NEEDED_CHILDREN_MODULES>]
module_handler.py print_descendant [<module_name>...]
module_handler.py create_png [<module_name>...]
module_handler.py clean [<module_name>...]
module_handler.py create_git_ignore [<module_name>...]
Options:
print_descendant Print the genealogy of the NEEDED_CHILDREN_MODULES
@ -19,16 +19,27 @@ Options:
import os
import sys
import os.path
from collections import namedtuple
import shutil
try:
from docopt import docopt
from qp_path import QP_SRC
except ImportError:
print "source .quantum_package.rc"
raise
# Canot cache for namedtuple are not hashable
def is_module(path_module):
return os.path.isfile(os.path.join(QP_SRC,
path_module,
"NEEDED_CHILDREN_MODULES"))
def is_exe(fpath):
return os.path.isfile(fpath) and os.access(fpath, os.X_OK)
def get_dict_child(l_root_abs=None):
"""Loop over MODULE in QP_ROOT/src, open all the NEEDED_CHILDREN_MODULES
and create a dict[MODULE] = [sub module needed, ...]
@ -36,8 +47,7 @@ def get_dict_child(l_root_abs=None):
d_ref = dict()
if not l_root_abs:
qp_root = os.environ['QP_ROOT']
l_root_abs = [os.path.join(qp_root, 'src')]
l_root_abs = [QP_SRC]
for root_abs in l_root_abs:
for module_rel in os.listdir(root_abs):
@ -201,19 +211,70 @@ if __name__ == '__main__':
arguments = docopt(__doc__)
if not arguments['<NEEDED_CHILDREN_MODULES>']:
if not arguments['<module_name>']:
dir_ = os.getcwd()
l_module = [os.path.basename(dir_)]
else:
path_file = os.path.abspath(arguments['<NEEDED_CHILDREN_MODULES>'])
path_file = os.path.expanduser(path_file)
path_file = os.path.expandvars(path_file)
dir_ = os.path.dirname(path_file)
l_module = arguments['<module_name>']
for module in l_module:
if not is_module(module):
print "{0} is not a volide module. Abort".format(module)
print "No NEEDED_CHILDREN_MODULES in it"
sys.exit(1)
path_file = os.path.basename(dir_)
m = ModuleHandler()
if arguments['print_descendant']:
print " ".join(sorted(m.l_module))
for module in l_module:
print " ".join(sorted(m.l_descendant_unique([module])))
if arguments["create_png"]:
m.create_png([path_file])
m.create_png(l_module)
if arguments["clean"] or arguments["create_git_ignore"]:
l_dir = ['IRPF90_temp', 'IRPF90_man']
l_file = ["irpf90_entities", "tags", "irpf90.make",
"Makefile", "Makefile.depend",
"build.ninja", ".ninja_log", ".ninja_deps",
"ezfio_interface.irp.f"]
for module in l_module:
module_abs = os.path.realpath(os.path.join(QP_SRC, module))
l_symlink = m.l_descendant_unique([module])
l_exe = [f for f in os.listdir(module_abs) if is_exe(os.path.join(module_abs,f))]
if arguments["clean"]:
for f in l_dir:
try:
shutil.rmtree(os.path.join(module_abs, f))
except:
pass
for symlink in l_symlink:
try:
os.unlink(os.path.join(module_abs, symlink))
except:
pass
for f in l_file:
try:
os.remove(os.path.join(module_abs, f))
except:
pass
for f in l_exe:
try:
os.remove(os.path.join(module_abs, f))
except:
pass
if arguments["create_git_ignore"]:
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))

View File

@ -5,12 +5,12 @@ Usage:
qp_install_module.py create -n <name> [<children_module>...]
qp_install_module.py download -n <name> [<path_folder>...]
qp_install_module.py install <name>...
qp_install_module.py list (--installed|--avalaible-local|--avalaible-remote)
qp_install_module.py uninstall <name>...
qp_install_module.py list (--installed | --available-local)
qp_install_module.py uninstall <name>... [--and_ancestor]
Options:
list: List all the module avalaible
list: List all the module available
create: Create a new module
"""
@ -22,6 +22,8 @@ try:
from module_handler import ModuleHandler, get_dict_child
from module_handler import get_l_module_descendant
from update_README import Doc_key, Needed_key
from qp_path import QP_SRC, QP_PLUGINS
except ImportError:
print "source .quantum_package.rc"
raise
@ -59,15 +61,13 @@ def save_new_module(path, l_child):
if __name__ == '__main__':
arguments = docopt(__doc__)
qp_root_src = os.path.join(os.environ['QP_ROOT'], "src")
qp_root_plugin = os.path.join(os.environ['QP_ROOT'], "plugins")
if arguments["list"]:
if arguments["--installed"]:
l_repository = [qp_root_src]
if arguments["--avalaible-local"]:
l_repository = [qp_root_plugin]
l_repository = [QP_SRC]
elif arguments["--available-local"]:
l_repository = [QP_PLUGINS]
m_instance = ModuleHandler(l_repository)
@ -75,11 +75,11 @@ if __name__ == '__main__':
print "* {0}".format(module)
elif arguments["create"]:
m_instance = ModuleHandler([qp_root_src])
m_instance = ModuleHandler([QP_SRC])
l_children = arguments["<children_module>"]
path = os.path.join(qp_root_src, arguments["<name>"])
path = os.path.join(QP_SRC, arguments["<name>"])
print "You will create the module:"
print path
@ -87,7 +87,8 @@ if __name__ == '__main__':
for children in l_children:
if children not in m_instance.dict_descendant:
print "This module ({0}) is not a valide module.".format(children)
print "Run `list` flag for the list of module avalaible"
print "Run `list` flag for the list of module available"
print "Maybe you need to install some module first"
print "Aborting..."
sys.exit(1)
@ -104,7 +105,7 @@ if __name__ == '__main__':
elif arguments["download"]:
pass
# d_local = get_dict_child([qp_root_src])
# d_local = get_dict_child([QP_SRC])
# d_remote = get_dict_child(arguments["<path_folder>"])
#
# d_child = d_local.copy()
@ -119,8 +120,8 @@ if __name__ == '__main__':
elif arguments["install"]:
d_local = get_dict_child([qp_root_src])
d_plugin = get_dict_child([qp_root_plugin])
d_local = get_dict_child([QP_SRC])
d_plugin = get_dict_child([QP_PLUGINS])
d_child = d_local.copy()
d_child.update(d_plugin)
@ -143,31 +144,43 @@ if __name__ == '__main__':
print "Installation...",
for module_to_cp in l_module_to_cp:
src = os.path.join(qp_root_plugin, module_to_cp)
des = os.path.join(qp_root_src, module_to_cp)
src = os.path.join(QP_PLUGINS, module_to_cp)
des = os.path.join(QP_SRC, module_to_cp)
try:
os.symlink(src, des)
except OSError:
print "Your src directory is broken. Please remove %s"%des
print "Your src directory is broken. Please remove %s" % des
raise
print "Done"
print "You can now compile as usual"
elif arguments["uninstall"]:
d_local = get_dict_child([qp_root_src])
m_instance = ModuleHandler([QP_SRC])
d_descendant = m_instance.dict_descendant
d_local = get_dict_child([QP_SRC])
l_name = arguments["<name>"]
l_failed = [ name for name in l_name if name not in d_local ]
l_failed = [name for name in l_name if name not in d_local]
if l_failed:
print "Modules not installed:"
for name in sorted(l_failed):
print "* %s"%name
print "* %s" % name
sys.exit(1)
else:
if arguments["--and_ancestor"]:
l_name_to_remove = l_name + [module for module in m_instance.l_module for name in l_name if name in d_descendant[module]]
print "You will remove all of:"
print l_name_to_remove
else:
l_name_to_remove = l_name
def unlink(x):
try:
os.unlink(os.path.join(qp_root_src,x))
os.unlink(os.path.join(QP_SRC, x))
except OSError:
print "%s is a core module which can not be renmoved"%x
map(unlink,l_name)
print "%s is a core module which can not be renmoved" % x
map(unlink, l_name_to_remove)

View File

@ -13,6 +13,24 @@ URL = "http://github.com/LCPQ/quantum_package/tree/master/src/"
import os
import subprocess
from collections import namedtuple
import sys
"""
NEED to call in a module
First arg can be the root parent
"""
try:
ROOT_module = os.path.realpath(sys.argv[1])
except:
ROOT_module = os.getcwd()
if ROOT_module != os.getcwd():
change = True
else:
change = False
MODULE_NAME = os.path.basename(os.getcwd())
header = """
.. Do not edit this section. It was auto-generated from the
@ -71,7 +89,8 @@ def update_needed(data):
def extract_doc(item):
"""Extracts the documentation contained in IRPF90_man file"""
with open("IRPF90_man/%s.l" % (item), 'r') as f:
path = os.path.join(ROOT_module, "IRPF90_man/%s.l" % (item))
with open(path, 'r') as f:
l_line = f.readlines()
result = []
@ -97,15 +116,24 @@ def update_documentation(data):
# If the file does not exist, don't do anything
with open('tags', 'r') as f:
l_info = [IRP_info(*i.split()) for i in f.readlines()
if "/" not in i.split()[1]]
path = os.path.join(ROOT_module, "tags")
with open(path, 'r') as f:
dump = f.readlines()
l_info = []
for i in dump:
name, f, ligne = i.split()
if not change and "/" not in i:
l_info.append(IRP_info(name, f, ligne))
elif change and MODULE_NAME in i:
l_info.append(IRP_info(name, f.split("/")[-1], ligne))
l_line = []
module_name = os.path.basename(os.getcwd())
for irp in l_info:
url = os.path.join(URL, module_name, irp.file)
url = os.path.join(URL, MODULE_NAME, irp.file)
doc = extract_doc(irp.name)
l_line += ["`{0} <{1}#L{2}>`_".format(irp.name, url, irp.line), doc,

View File

@ -1,78 +0,0 @@
#!/bin/bash
#
# Useful functions in all scripts
# Make a list unique
function unique_list()
{
for d in $@
do
echo $d
done | sort | uniq
}
function check_current_dir_is_src()
{
if [[ "${PWD}" == "${QP_ROOT}/src" ]]
then
return 0
else
echo "Current directory should be \$QP_ROOT/src"
exit -1
fi
}
function check_current_dir_is_module()
{
# If the prefix ${QP_ROOT}/src/ can be removed from $PWD, it means that
# $PWD is somewhere below ${QP_ROOT}/src/ so it is a module.
# If the prefix ${QP_ROOT}/src/ can not be removed from $PWD, then
# "${PWD##${QP_ROOT}/src/}" == "$PWD".
if [[ "${PWD##${QP_ROOT}/src/}" != "$PWD" ]]
then
return 0
else
echo "You are not in a submodule"
exit -1
fi
}
# List of executables in the current directory
function ls_exe()
{
find . -perm /u+x -type f
}
function asksure() {
echo -n $@ "(Y/N) "
answer=w
while [[ $answer != [YyNn] ]]
do
read answer
[[ $answer = [Yy] ]] && retval=0 || retval=1
done
return $retval
}
function error()
{
echo "-------------------- Error --------------------"
printf "$@\n"
echo "-----------------------------------------------"
exit -1
}
if [[ -z ${DEBUG} ]]
then
function info ()
{
:
}
else
function info ()
{
echo "$@"
}
fi

View File

@ -11,5 +11,6 @@ except:
sys.exit(1)
else:
QP_SRC = os.path.join(QP_ROOT, "src")
QP_PLUGINS = os.path.join(QP_ROOT, "plugins")
QP_EZFIO = os.path.join(QP_ROOT, "install", "EZFIO")
QP_OCAML = os.path.join(QP_ROOT, "ocaml")

27
src/.gitignore vendored
View File

@ -1,2 +1,25 @@
Makefile.config
ezfio_interface.irp.f
CAS_SD
CID
CID_SC2_selected
CID_selected
CIS
CISD
CISD_SC2_selected
CISD_selected
DDCI_selected
DensityMatrix
FCIdump
Full_CI
Generators_CAS
Generators_full
Generators_restart
Hartree_Fock
Molden
MP2
MRCC
Perturbation
Properties
QmcChem
Selectors_full
Selectors_no_sorted
SingleRefMethod

15
src/AO_Basis/.gitignore vendored Normal file
View File

@ -0,0 +1,15 @@
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
IRPF90_temp
IRPF90_man
irpf90_entities
tags
irpf90.make
Makefile
Makefile.depend
build.ninja
.ninja_log
.ninja_deps
ezfio_interface.irp.f
Nuclei
Ezfio_files
Utils

View File

@ -46,135 +46,135 @@ Documentation
.. Do not edit this section. It was auto-generated from the
.. by the `update_README.py` script.
`ao_coef <http://github.com/LCPQ/quantum_package/tree/master/src/AOs/aos.irp.f#L62>`_
`ao_coef <http://github.com/LCPQ/quantum_package/tree/master/src/AO_Basis/aos.irp.f#L62>`_
AO Coefficients, read from input. Those should not be used directly, as
the MOs are expressed on the basis of **normalized** AOs.
`ao_coef_normalized <http://github.com/LCPQ/quantum_package/tree/master/src/AOs/aos.irp.f#L84>`_
`ao_coef_normalized <http://github.com/LCPQ/quantum_package/tree/master/src/AO_Basis/aos.irp.f#L84>`_
Coefficients including the AO normalization
`ao_coef_normalized_ordered <http://github.com/LCPQ/quantum_package/tree/master/src/AOs/aos.irp.f#L107>`_
`ao_coef_normalized_ordered <http://github.com/LCPQ/quantum_package/tree/master/src/AO_Basis/aos.irp.f#L107>`_
Sorted primitives to accelerate 4 index MO transformation
`ao_coef_normalized_ordered_transp <http://github.com/LCPQ/quantum_package/tree/master/src/AOs/aos.irp.f#L133>`_
`ao_coef_normalized_ordered_transp <http://github.com/LCPQ/quantum_package/tree/master/src/AO_Basis/aos.irp.f#L133>`_
Transposed ao_coef_normalized_ordered
`ao_expo <http://github.com/LCPQ/quantum_package/tree/master/src/AOs/aos.irp.f#L41>`_
`ao_expo <http://github.com/LCPQ/quantum_package/tree/master/src/AO_Basis/aos.irp.f#L41>`_
AO Exponents read from input
`ao_expo_ordered <http://github.com/LCPQ/quantum_package/tree/master/src/AOs/aos.irp.f#L108>`_
`ao_expo_ordered <http://github.com/LCPQ/quantum_package/tree/master/src/AO_Basis/aos.irp.f#L108>`_
Sorted primitives to accelerate 4 index MO transformation
`ao_expo_ordered_transp <http://github.com/LCPQ/quantum_package/tree/master/src/AOs/aos.irp.f#L147>`_
`ao_expo_ordered_transp <http://github.com/LCPQ/quantum_package/tree/master/src/AO_Basis/aos.irp.f#L147>`_
Transposed ao_expo_ordered
`ao_l <http://github.com/LCPQ/quantum_package/tree/master/src/AOs/aos.irp.f#L162>`_
`ao_l <http://github.com/LCPQ/quantum_package/tree/master/src/AO_Basis/aos.irp.f#L162>`_
ao_l = l value of the AO: a+b+c in x^a y^b z^c
`ao_l_char <http://github.com/LCPQ/quantum_package/tree/master/src/AOs/aos.irp.f#L163>`_
`ao_l_char <http://github.com/LCPQ/quantum_package/tree/master/src/AO_Basis/aos.irp.f#L163>`_
ao_l = l value of the AO: a+b+c in x^a y^b z^c
`ao_l_char_space <http://github.com/LCPQ/quantum_package/tree/master/src/AOs/aos.irp.f#L311>`_
`ao_l_char_space <http://github.com/LCPQ/quantum_package/tree/master/src/AO_Basis/aos.irp.f#L311>`_
Undocumented
`ao_md5 <http://github.com/LCPQ/quantum_package/tree/master/src/AOs/aos.irp.f#L403>`_
`ao_md5 <http://github.com/LCPQ/quantum_package/tree/master/src/AO_Basis/aos.irp.f#L403>`_
MD5 key characteristic of the AO basis
`ao_nucl <http://github.com/LCPQ/quantum_package/tree/master/src/AOs/aos.irp.f#L209>`_
`ao_nucl <http://github.com/LCPQ/quantum_package/tree/master/src/AO_Basis/aos.irp.f#L209>`_
Index of the nuclei on which the ao is centered
`ao_num <http://github.com/LCPQ/quantum_package/tree/master/src/AOs/aos.irp.f#L1>`_
`ao_num <http://github.com/LCPQ/quantum_package/tree/master/src/AO_Basis/aos.irp.f#L1>`_
Number of atomic orbitals
`ao_num_align <http://github.com/LCPQ/quantum_package/tree/master/src/AOs/aos.irp.f#L2>`_
`ao_num_align <http://github.com/LCPQ/quantum_package/tree/master/src/AO_Basis/aos.irp.f#L2>`_
Number of atomic orbitals
`ao_overlap <http://github.com/LCPQ/quantum_package/tree/master/src/AOs/ao_overlap.irp.f#L1>`_
`ao_overlap <http://github.com/LCPQ/quantum_package/tree/master/src/AO_Basis/ao_overlap.irp.f#L1>`_
Overlap between atomic basis functions:
:math:`\int \chi_i(r) \chi_j(r) dr)`
`ao_overlap_abs <http://github.com/LCPQ/quantum_package/tree/master/src/AOs/ao_overlap.irp.f#L65>`_
`ao_overlap_abs <http://github.com/LCPQ/quantum_package/tree/master/src/AO_Basis/ao_overlap.irp.f#L65>`_
Overlap between absolute value of atomic basis functions:
:math:`\int |\chi_i(r)| |\chi_j(r)| dr)`
`ao_overlap_x <http://github.com/LCPQ/quantum_package/tree/master/src/AOs/ao_overlap.irp.f#L2>`_
`ao_overlap_x <http://github.com/LCPQ/quantum_package/tree/master/src/AO_Basis/ao_overlap.irp.f#L2>`_
Overlap between atomic basis functions:
:math:`\int \chi_i(r) \chi_j(r) dr)`
`ao_overlap_y <http://github.com/LCPQ/quantum_package/tree/master/src/AOs/ao_overlap.irp.f#L3>`_
`ao_overlap_y <http://github.com/LCPQ/quantum_package/tree/master/src/AO_Basis/ao_overlap.irp.f#L3>`_
Overlap between atomic basis functions:
:math:`\int \chi_i(r) \chi_j(r) dr)`
`ao_overlap_z <http://github.com/LCPQ/quantum_package/tree/master/src/AOs/ao_overlap.irp.f#L4>`_
`ao_overlap_z <http://github.com/LCPQ/quantum_package/tree/master/src/AO_Basis/ao_overlap.irp.f#L4>`_
Overlap between atomic basis functions:
:math:`\int \chi_i(r) \chi_j(r) dr)`
`ao_power <http://github.com/LCPQ/quantum_package/tree/master/src/AOs/aos.irp.f#L19>`_
`ao_power <http://github.com/LCPQ/quantum_package/tree/master/src/AO_Basis/aos.irp.f#L19>`_
Powers of x,y and z read from input
`ao_prim_num <http://github.com/LCPQ/quantum_package/tree/master/src/AOs/aos.irp.f#L177>`_
`ao_prim_num <http://github.com/LCPQ/quantum_package/tree/master/src/AO_Basis/aos.irp.f#L177>`_
Number of primitives per atomic orbital
`ao_prim_num_max <http://github.com/LCPQ/quantum_package/tree/master/src/AOs/aos.irp.f#L199>`_
`ao_prim_num_max <http://github.com/LCPQ/quantum_package/tree/master/src/AO_Basis/aos.irp.f#L199>`_
Undocumented
`ao_prim_num_max_align <http://github.com/LCPQ/quantum_package/tree/master/src/AOs/aos.irp.f#L200>`_
`ao_prim_num_max_align <http://github.com/LCPQ/quantum_package/tree/master/src/AO_Basis/aos.irp.f#L200>`_
Undocumented
`l_to_charater <http://github.com/LCPQ/quantum_package/tree/master/src/AOs/aos.irp.f#L218>`_
`l_to_charater <http://github.com/LCPQ/quantum_package/tree/master/src/AO_Basis/aos.irp.f#L218>`_
character corresponding to the "L" value of an AO orbital
`n_aos_max <http://github.com/LCPQ/quantum_package/tree/master/src/AOs/aos.irp.f#L231>`_
`n_aos_max <http://github.com/LCPQ/quantum_package/tree/master/src/AO_Basis/aos.irp.f#L231>`_
Number of AOs per atom
`n_pt_max_i_x <http://github.com/LCPQ/quantum_package/tree/master/src/AOs/dimensions_integrals.irp.f#L2>`_
`n_pt_max_i_x <http://github.com/LCPQ/quantum_package/tree/master/src/AO_Basis/dimensions_integrals.irp.f#L2>`_
Undocumented
`n_pt_max_integrals <http://github.com/LCPQ/quantum_package/tree/master/src/AOs/dimensions_integrals.irp.f#L1>`_
`n_pt_max_integrals <http://github.com/LCPQ/quantum_package/tree/master/src/AO_Basis/dimensions_integrals.irp.f#L1>`_
Undocumented
`nucl_aos <http://github.com/LCPQ/quantum_package/tree/master/src/AOs/aos.irp.f#L244>`_
`nucl_aos <http://github.com/LCPQ/quantum_package/tree/master/src/AO_Basis/aos.irp.f#L244>`_
List of AOs attached on each atom
`nucl_list_shell_aos <http://github.com/LCPQ/quantum_package/tree/master/src/AOs/aos.irp.f#L262>`_
`nucl_list_shell_aos <http://github.com/LCPQ/quantum_package/tree/master/src/AO_Basis/aos.irp.f#L262>`_
Index of the shell type Aos and of the corresponding Aos
Per convention, for P,D,F and G AOs, we take the index
of the AO with the the corresponding power in the "X" axis
`nucl_n_aos <http://github.com/LCPQ/quantum_package/tree/master/src/AOs/aos.irp.f#L230>`_
`nucl_n_aos <http://github.com/LCPQ/quantum_package/tree/master/src/AO_Basis/aos.irp.f#L230>`_
Number of AOs per atom
`nucl_num_shell_aos <http://github.com/LCPQ/quantum_package/tree/master/src/AOs/aos.irp.f#L263>`_
`nucl_num_shell_aos <http://github.com/LCPQ/quantum_package/tree/master/src/AO_Basis/aos.irp.f#L263>`_
Index of the shell type Aos and of the corresponding Aos
Per convention, for P,D,F and G AOs, we take the index
of the AO with the the corresponding power in the "X" axis

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

13
src/AOs/.gitignore vendored
View File

@ -1,13 +0,0 @@
#
# 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
.ninja_deps

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

View File

@ -1,13 +1,18 @@
#
# Do not modify this file. Add your ignored files to the gitignore
# (without the dot at the beginning) file.
#
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
IRPF90_temp
IRPF90_man
irpf90.make
tags
Makefile.depend
irpf90_entities
tags
irpf90.make
Makefile
Makefile.depend
build.ninja
.ninja_log
.ninja_deps
ezfio_interface.irp.f
Ezfio_files
MO_Basis
Utils
AO_Basis
Electrons
Nuclei

View File

@ -1 +1 @@
MOs
MO_Basis

View File

@ -42,7 +42,7 @@ Needed Modules
.. image:: tree_dependency.png
* `MOs <http://github.com/LCPQ/quantum_package/tree/master/src/MOs>`_
* `MO_Basis <http://github.com/LCPQ/quantum_package/tree/master/src/MO_Basis>`_
Documentation
=============

Binary file not shown.

Before

Width:  |  Height:  |  Size: 28 KiB

After

Width:  |  Height:  |  Size: 30 KiB

View File

@ -1,32 +1,30 @@
#
# Do not modify this file. Add your ignored files to the gitignore
# (without the dot at the beginning) file.
#
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
IRPF90_temp
IRPF90_man
irpf90.make
tags
Makefile.depend
irpf90_entities
tags
irpf90.make
Makefile
Makefile.depend
build.ninja
.ninja_log
.ninja_deps
Pseudo
Integrals_Monoelec
Bitmask
Integrals_Bielec
AOs
MOs
Electrons
Utils
Nuclei
ezfio_interface.irp.f
Ezfio_files
Integrals_Monoelec
MO_Basis
Utils
Pseudo
Bitmask
AO_Basis
Electrons
Nuclei
Integrals_Bielec
guess_triplet
guess_singlet
truncate_wf
save_natorb
save_for_qmcchem
program_beginer_determinants
program_initial_determinants
save_for_casino
det_svd
guess_doublet
guess_doublet

View File

@ -55,58 +55,58 @@ default: 0.999
[n_states_diag]
type: integer
doc: n_states_diag
interface: ezfio, provider
interface: ezfio,provider
[n_int]
interface: ezfio, provider
interface: ezfio
doc: n_int
type: N_int_number
[bit_kind]
interface: ezfio, provider
interface: ezfio
doc: bit_kind
type: Bit_kind
[mo_label]
interface: ezfio, provider
doc: o_label
interface: ezfio
doc: mo_label
type: character*(64)
[n_det]
interface: ezfio, provider
interface: ezfio
doc: n_det
type: integer
[psi_coef]
interface: ezfio, provider
interface: ezfio
doc: psi_coef
type: double precision
size: (determinants.n_det,determinants.n_states)
[psi_det]
interface: ezfio, provider
interface: ezfio
doc: psi_det
type: integer*8
size: (determinants.n_int*determinants.bit_kind/8,2,determinants.n_det)
[det_num]
interface: ezfio, provider
interface: ezfio,provider
doc: det_num
type: integer
[det_occ]
interface: ezfio, provider
interface: ezfio,provider
doc: det_occ
type: integer
size: (electrons.elec_alpha_num,determinants.det_num,2)
[det_coef]
interface: ezfio, provider
interface: ezfio,provider
doc: det_coef
type: double precision
size: (determinants.det_num)
[expected_s2]
interface: ezfio, provider
interface: ezfio,provider
doc: expcted_s2
type: double precision

View File

@ -205,10 +205,22 @@ Documentation
degree : Degree of excitation
`det_coef <http://github.com/LCPQ/quantum_package/tree/master/src/Determinants/ezfio_interface.irp.f#L138>`_
det_coef
`det_connections <http://github.com/LCPQ/quantum_package/tree/master/src/Determinants/slater_rules.irp.f#L1139>`_
Build connection proxy between determinants
`det_num <http://github.com/LCPQ/quantum_package/tree/master/src/Determinants/ezfio_interface.irp.f#L248>`_
det_num
`det_occ <http://github.com/LCPQ/quantum_package/tree/master/src/Determinants/ezfio_interface.irp.f#L226>`_
det_occ
`det_search_key <http://github.com/LCPQ/quantum_package/tree/master/src/Determinants/connected_to_ref.irp.f#L1>`_
Return an integer*8 corresponding to a determinant index for searching
@ -505,15 +517,15 @@ Documentation
determinants. idx_cas gives the indice of the CAS determinant in psi_det.
`n_det_max <http://github.com/LCPQ/quantum_package/tree/master/src/Determinants/ezfio_interface.irp.f#L28>`_
`n_det_max <http://github.com/LCPQ/quantum_package/tree/master/src/Determinants/ezfio_interface.irp.f#L50>`_
Max number of determinants in the wave function
`n_det_max_jacobi <http://github.com/LCPQ/quantum_package/tree/master/src/Determinants/ezfio_interface.irp.f#L72>`_
`n_det_max_jacobi <http://github.com/LCPQ/quantum_package/tree/master/src/Determinants/ezfio_interface.irp.f#L94>`_
Maximum number of determinants diagonalized by Jacobi
`n_det_max_property <http://github.com/LCPQ/quantum_package/tree/master/src/Determinants/ezfio_interface.irp.f#L182>`_
`n_det_max_property <http://github.com/LCPQ/quantum_package/tree/master/src/Determinants/ezfio_interface.irp.f#L292>`_
Max number of determinants in the wave function when you select for a given property
@ -537,7 +549,7 @@ Documentation
Number of single excitation bitmasks
`n_states <http://github.com/LCPQ/quantum_package/tree/master/src/Determinants/ezfio_interface.irp.f#L50>`_
`n_states <http://github.com/LCPQ/quantum_package/tree/master/src/Determinants/ezfio_interface.irp.f#L72>`_
Number of states to consider
@ -585,7 +597,7 @@ Documentation
rho(alpha) - rho(beta)
`only_single_double_dm <http://github.com/LCPQ/quantum_package/tree/master/src/Determinants/ezfio_interface.irp.f#L116>`_
`only_single_double_dm <http://github.com/LCPQ/quantum_package/tree/master/src/Determinants/ezfio_interface.irp.f#L182>`_
If true, The One body DM is calculated with ignoring the Double<->Doubles extra diag elements
@ -762,7 +774,7 @@ Documentation
Reads the determinants from the EZFIO file
`read_wf <http://github.com/LCPQ/quantum_package/tree/master/src/Determinants/ezfio_interface.irp.f#L94>`_
`read_wf <http://github.com/LCPQ/quantum_package/tree/master/src/Determinants/ezfio_interface.irp.f#L160>`_
If true, read the wave function from the EZFIO file
@ -787,7 +799,7 @@ Documentation
Undocumented
`s2_eig <http://github.com/LCPQ/quantum_package/tree/master/src/Determinants/ezfio_interface.irp.f#L138>`_
`s2_eig <http://github.com/LCPQ/quantum_package/tree/master/src/Determinants/ezfio_interface.irp.f#L116>`_
Force the wave function to be an eigenfunction of S^2
@ -862,7 +874,7 @@ Documentation
convergence of the correlation energy of SC2 iterations
`threshold_generators <http://github.com/LCPQ/quantum_package/tree/master/src/Determinants/ezfio_interface.irp.f#L160>`_
`threshold_generators <http://github.com/LCPQ/quantum_package/tree/master/src/Determinants/ezfio_interface.irp.f#L270>`_
Thresholds on generators (fraction of the norm)

View File

@ -52,6 +52,10 @@ END_PROVIDER
call davidson_diag(psi_det,CI_eigenvectors,CI_electronic_energy, &
size(CI_eigenvectors,1),N_det,N_states_diag,N_int,output_determinants)
do j=1,N_states_diag
call get_s2_u0(psi_det,CI_eigenvectors(1,j),N_det,size(CI_eigenvectors,1),CI_eigenvectors_s2(j))
enddo
else if (diag_algorithm == "Lapack") then
@ -69,7 +73,8 @@ END_PROVIDER
if (s2_eig) then
i_state = 0
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,size(eigenvectors,1),s2)
print*,'s2 = ',s2
if(dabs(s2-expected_s2).le.0.3d0)then
i_state += 1
do i=1,N_det

View File

@ -1,4 +1,4 @@
subroutine get_s2(key_i,key_j,phase,Nint)
subroutine get_s2(key_i,key_j,s2,Nint)
implicit none
use bitmasks
BEGIN_DOC
@ -7,21 +7,21 @@ subroutine get_s2(key_i,key_j,phase,Nint)
integer, intent(in) :: Nint
integer(bit_kind), intent(in) :: key_i(Nint,2)
integer(bit_kind), intent(in) :: key_j(Nint,2)
double precision, intent(out) :: phase
double precision, intent(out) :: s2
integer :: exc(0:2,2,2)
integer :: degree
double precision :: phase_spsm
integer :: nup, i
phase = 0.d0
s2 = 0.d0
!$FORCEINLINE
call get_excitation_degree(key_i,key_j,degree,Nint)
select case (degree)
case(2)
call get_double_excitation(key_i,key_j,exc,phase_spsm,Nint)
call get_double_excitation(key_j,key_i,exc,phase_spsm,Nint)
if (exc(0,1,1) == 1) then ! Mono alpha + mono-beta
if ( (exc(1,1,1) == exc(1,2,2)).and.(exc(1,1,2) == exc(1,2,1)) ) then
phase = -phase_spsm
s2 = -phase_spsm
endif
endif
case(0)
@ -29,7 +29,7 @@ subroutine get_s2(key_i,key_j,phase,Nint)
do i=1,Nint
nup += popcnt(iand(xor(key_i(i,1),key_i(i,2)),key_i(i,1)))
enddo
phase = dble(nup)
s2 = dble(nup)
end select
end
@ -72,7 +72,7 @@ BEGIN_PROVIDER [ double precision, s2_values, (N_states) ]
integer :: i
double precision :: s2
do i = 1, N_states
call get_s2_u0(psi_det,psi_coef(1,i),n_det,psi_det_size,s2)
call get_s2_u0(psi_det,psi_coef(1,i),n_det,size(psi_coef,1),s2)
s2_values(i) = s2
enddo
@ -89,18 +89,32 @@ subroutine get_s2_u0(psi_keys_tmp,psi_coefs_tmp,n,nmax,s2)
integer :: i,j,l
double precision :: s2_tmp
s2 = 0.d0
!print*,'IN get_s2_u0'
!print*,'n,nmax = ',n,nmax
double precision :: accu
accu = 0.d0
do i = 1,n
accu += psi_coefs_tmp(i) * psi_coefs_tmp(i)
! print*,'psi_coef = ',psi_coefs_tmp(i)
enddo
!print*,'accu = ',accu
!print*,''
!$OMP PARALLEL DO DEFAULT(NONE) &
!$OMP PRIVATE(i,j,s2_tmp) SHARED(n,psi_coefs_tmp,psi_keys_tmp,N_int) &
!$OMP REDUCTION(+:s2) SCHEDULE(dynamic)
!$OMP PRIVATE(i,j,s2_tmp) SHARED(n,psi_coefs_tmp,psi_keys_tmp,N_int) REDUCTION(+:s2) SCHEDULE(dynamic)
do i=1,n
call get_s2(psi_keys_tmp(1,1,i),psi_keys_tmp(1,1,i),s2_tmp,N_int)
s2 += psi_coefs_tmp(i)*psi_coefs_tmp(i)*s2_tmp
do j=i+1,n
call get_s2(psi_keys_tmp(1,1,i),psi_keys_tmp(1,1,j),s2_tmp,N_int)
s2 += (psi_coefs_tmp(i)+psi_coefs_tmp(i))*psi_coefs_tmp(j)*s2_tmp
! s2 = s2 + 2.d0 * psi_coefs_tmp(i)*psi_coefs_tmp(j)*s2_tmp
enddo
enddo
!$OMP END PARALLEL DO
do i=1,n
call get_s2(psi_keys_tmp(1,1,i),psi_keys_tmp(1,1,i),s2_tmp,N_int)
s2 += psi_coefs_tmp(i)*psi_coefs_tmp(i)*s2_tmp
enddo
s2 += S_z2_Sz
!print*,'s2 = ',s2
!print*,''
end

Binary file not shown.

Before

Width:  |  Height:  |  Size: 55 KiB

After

Width:  |  Height:  |  Size: 59 KiB

View File

@ -1,13 +1,13 @@
#
# Do not modify this file. Add your ignored files to the gitignore
# (without the dot at the beginning) file.
#
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
IRPF90_temp
IRPF90_man
irpf90.make
tags
Makefile.depend
irpf90_entities
tags
irpf90.make
Makefile
Makefile.depend
build.ninja
.ninja_log
.ninja_deps
ezfio_interface.irp.f
Ezfio_files

View File

@ -1,13 +1,12 @@
#
# Do not modify this file. Add your ignored files to the gitignore
# (without the dot at the beginning) file.
#
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
IRPF90_temp
IRPF90_man
irpf90.make
tags
Makefile.depend
irpf90_entities
tags
irpf90.make
Makefile
Makefile.depend
build.ninja
.ninja_log
.ninja_deps
ezfio_interface.irp.f

View File

@ -30,8 +30,8 @@ Documentation
.br
`output_aos <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L1>`_
Output file for AOs
`output_ao_basis <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L1>`_
Output file for AO_Basis
`output_bitmask <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L21>`_
@ -54,135 +54,79 @@ Documentation
Output file for CID_selected
`output_cis <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L121>`_
Output file for CIS
`output_cisd <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L141>`_
Output file for CISD
`output_cisd_sc2_selected <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L161>`_
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#L181>`_
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#L201>`_
Output file for DDCI_selected
`output_densityfit <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L221>`_
Output file for DensityFit
`output_densitymatrix <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L241>`_
Output file for DensityMatrix
`output_determinants <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L261>`_
`output_determinants <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L121>`_
Output file for Determinants
`output_electrons <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L281>`_
`output_electrons <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L141>`_
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_ezfio_files <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L161>`_
Output file for Ezfio_files
`output_fcidump <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L321>`_
Output file for FCIdump
`output_full_ci <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L341>`_
Output file for Full_CI
`output_generators_cas <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L361>`_
`output_generators_cas <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L181>`_
Output file for Generators_CAS
`output_generators_full <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L381>`_
`output_generators_full <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L201>`_
Output file for Generators_full
`output_generators_restart <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L401>`_
Output file for Generators_restart
`output_hartree_fock <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L421>`_
`output_hartree_fock <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L221>`_
Output file for Hartree_Fock
`output_integrals_bielec <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L441>`_
`output_integrals_bielec <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L241>`_
Output file for Integrals_Bielec
`output_integrals_monoelec <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L461>`_
`output_integrals_monoelec <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L261>`_
Output file for Integrals_Monoelec
`output_moguess <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L481>`_
`output_mo_basis <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L281>`_
Output file for MO_Basis
`output_moguess <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L301>`_
Output file for MOGuess
`output_molden <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L501>`_
Output file for Molden
`output_mos <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L521>`_
Output file for MOs
`output_mp2 <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L541>`_
Output file for MP2
`output_mrcc <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L561>`_
`output_mrcc <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L321>`_
Output file for MRCC
`output_nuclei <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L581>`_
`output_nuclei <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L341>`_
Output file for Nuclei
`output_perturbation <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L601>`_
`output_perturbation <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L361>`_
Output file for Perturbation
`output_properties <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L621>`_
`output_properties <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L381>`_
Output file for Properties
`output_pseudo <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L641>`_
`output_pseudo <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L401>`_
Output file for Pseudo
`output_qmcchem <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L661>`_
Output file for QmcChem
`output_selectors_full <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L681>`_
`output_selectors_full <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L421>`_
Output file for Selectors_full
`output_selectors_no_sorted <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L701>`_
Output file for Selectors_no_sorted
`output_singlerefmethod <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L721>`_
`output_singlerefmethod <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L441>`_
Output file for SingleRefMethod
`output_utils <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L741>`_
`output_utils <http://github.com/LCPQ/quantum_package/tree/master/src/Ezfio_files/output.irp.f_shell_40#L461>`_
Output file for Utils

View File

@ -1,13 +1,20 @@
#
# Do not modify this file. Add your ignored files to the gitignore
# (without the dot at the beginning) file.
#
# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py
IRPF90_temp
IRPF90_man
irpf90.make
tags
Makefile.depend
irpf90_entities
tags
irpf90.make
Makefile
Makefile.depend
build.ninja
.ninja_log
.ninja_deps
ezfio_interface.irp.f
Ezfio_files
MO_Basis
Utils
Pseudo
Bitmask
AO_Basis
Electrons
Nuclei

Binary file not shown.

Before

Width:  |  Height:  |  Size: 39 KiB

After

Width:  |  Height:  |  Size: 43 KiB

Some files were not shown because too many files have changed in this diff Show More