mirror of
https://github.com/QuantumPackage/qp2.git
synced 2024-08-29 20:23:40 +02:00
Merge branch 'csf' of github.com:QuantumPackage/qp2 into csf
This commit is contained in:
commit
46cc5048dc
1
.gitignore
vendored
1
.gitignore
vendored
@ -9,3 +9,4 @@ config/qp_create_ninja.pickle
|
|||||||
src/*/.gitignore
|
src/*/.gitignore
|
||||||
ezfio_interface.irp.f
|
ezfio_interface.irp.f
|
||||||
share
|
share
|
||||||
|
venv
|
||||||
|
@ -28,6 +28,12 @@ and need to be installed.
|
|||||||
When all dependencies have been installed, ( the :command:`configure` will tell you)
|
When all dependencies have been installed, ( the :command:`configure` will tell you)
|
||||||
source the :file:`quantum_package.rc` in order to load all environment variables and compile the |QP|.
|
source the :file:`quantum_package.rc` in order to load all environment variables and compile the |QP|.
|
||||||
|
|
||||||
|
Now all the requirements are met, you can compile the programs using
|
||||||
|
|
||||||
|
.. code:: bash
|
||||||
|
|
||||||
|
make
|
||||||
|
|
||||||
|
|
||||||
Requirements
|
Requirements
|
||||||
============
|
============
|
||||||
@ -48,6 +54,7 @@ Requirements
|
|||||||
- `Bubblewrap <https://github.com/projectatomic/bubblewrap>`_ : Sandboxing tool required by Opam
|
- `Bubblewrap <https://github.com/projectatomic/bubblewrap>`_ : Sandboxing tool required by Opam
|
||||||
- `libcap <https://git.kernel.org/pub/scm/linux/kernel/git/morgan/libcap.git>`_ : POSIX capabilities required by Bubblewrap
|
- `libcap <https://git.kernel.org/pub/scm/linux/kernel/git/morgan/libcap.git>`_ : POSIX capabilities required by Bubblewrap
|
||||||
- |Ninja| : a parallel build system
|
- |Ninja| : a parallel build system
|
||||||
|
- |pkg-config|
|
||||||
|
|
||||||
|
|
||||||
When all the dependencies have been installed, go into the :file:`config`
|
When all the dependencies have been installed, go into the :file:`config`
|
||||||
@ -79,7 +86,7 @@ The command is to be used as follows:
|
|||||||
|
|
||||||
.. code:: bash
|
.. code:: bash
|
||||||
|
|
||||||
./configure --install <package>
|
./configure --install=<package>
|
||||||
|
|
||||||
The following packages are supported by the :command:`configure` installer:
|
The following packages are supported by the :command:`configure` installer:
|
||||||
|
|
||||||
|
43
TODO
43
TODO
@ -1,43 +0,0 @@
|
|||||||
# qpsh
|
|
||||||
|
|
||||||
* Faire que le slave de Hartree-fock est le calcul des integrales AO en parallele
|
|
||||||
|
|
||||||
# Exterieur
|
|
||||||
|
|
||||||
* Un module pour lire les integrales Moleculaires depuis un FCIDUMP
|
|
||||||
* Un module pour lire des integrales Atomiques (voir module de Mimi pour lire les AO Slater)
|
|
||||||
* Format Fchk (gaussian)
|
|
||||||
|
|
||||||
# Tests:
|
|
||||||
|
|
||||||
* Extrapolation
|
|
||||||
* DFT
|
|
||||||
|
|
||||||
|
|
||||||
# User doc:
|
|
||||||
|
|
||||||
* Mettre le mp2 comme exercice
|
|
||||||
* Interfaces : molden/fcidump
|
|
||||||
|
|
||||||
# Programmers doc:
|
|
||||||
|
|
||||||
* Example : Simple Hartree-Fock program from scratch
|
|
||||||
* Examples : subroutine example_module
|
|
||||||
|
|
||||||
# enleverle psi_det_size for all complicated stuffs with dimension of psi_coef
|
|
||||||
|
|
||||||
# Config file for Cray
|
|
||||||
|
|
||||||
# Documentation de /etc
|
|
||||||
|
|
||||||
Ajouter les symetries dans devel
|
|
||||||
|
|
||||||
IMPORTANT:
|
|
||||||
|
|
||||||
Davidson Diagonalization
|
|
||||||
------------------------
|
|
||||||
|
|
||||||
Not enough memory: aborting in davidson_diag_hjj_sjj
|
|
||||||
|
|
||||||
|
|
||||||
qp man does not find the programs in external plugins
|
|
36
TODO.org
Normal file
36
TODO.org
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
det : dans la fonction d'onde vec
|
||||||
|
csf : dans la fonctions d'onde vec
|
||||||
|
conf_det : Nconf x Ndet'(conf)
|
||||||
|
conf_csf : Nconf x Ncsf'(conf)
|
||||||
|
|
||||||
|
csf'(conf) : dans une conf (N_somo(conf) + N_domo(conf))
|
||||||
|
det'(conf) : dans une conf (N_somo(conf) + N_domo(conf))
|
||||||
|
|
||||||
|
det''(conf) : probleme modele avec N_somo(conf)
|
||||||
|
csf''(conf) : probleme modele avec N_somo(conf)
|
||||||
|
|
||||||
|
* [0/2]
|
||||||
|
- [ ] Precalculer dans la base des configurations
|
||||||
|
W_pq = \sum_{K} <Psi | E_pq | K>
|
||||||
|
K> configuration \in SOMO-SOMO SOMO-DOMO DOMO-VMO SOMO-VMO
|
||||||
|
W : matrice mono x mono
|
||||||
|
- [ ] Fonction conf ->
|
||||||
|
- [ ] Compute <i|H|j> in conf basis
|
||||||
|
- [ ] Function hij_conf(i,j) -> matrix Ndet_ixM
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
(1,Ndet) (Ndet,Ndet) (Ndet,1) -> E
|
||||||
|
|
||||||
|
for i=1,Nconf
|
||||||
|
for j=1,Nconf
|
||||||
|
(i,Ndet') [(Ndet',Ndet'') (Ndet'',Ndet'') (Ndet'',Ndet')] (Ndet',j) -> E
|
||||||
|
(i,Ncsf') (Ncsf',Ncsf'') [(Ncsf'',Ndet'') (Ndet'',Ndet'') (Ndet'',Ncsf'')] (Ncsf'',Ncsf') (Ncsf',j) -> E
|
||||||
|
|
||||||
|
<psi | [\sum_K E_pq | K>< K | E_rs] | Psi>
|
||||||
|
|
||||||
|
C.D^t
|
||||||
|
|
||||||
|
K : toutes les mono
|
||||||
|
|
||||||
|
<ij|kl> = \sum_m <ij|mj><ml|kl>
|
@ -30,7 +30,7 @@ try:
|
|||||||
from docopt import docopt
|
from docopt import docopt
|
||||||
from qp_path import QP_SRC, QP_ROOT
|
from qp_path import QP_SRC, QP_ROOT
|
||||||
except ImportError:
|
except ImportError:
|
||||||
print("source .quantum_package.rc")
|
print("source quantum_package.rc")
|
||||||
raise
|
raise
|
||||||
|
|
||||||
|
|
||||||
|
@ -49,7 +49,7 @@ import os.path
|
|||||||
try:
|
try:
|
||||||
import qp_path
|
import qp_path
|
||||||
except ImportError:
|
except ImportError:
|
||||||
print("source .quantum_package.rc")
|
print("source quantum_package.rc")
|
||||||
raise
|
raise
|
||||||
|
|
||||||
from docopt import docopt
|
from docopt import docopt
|
||||||
|
@ -23,7 +23,7 @@ import os.path
|
|||||||
try:
|
try:
|
||||||
import qp_path
|
import qp_path
|
||||||
except ImportError:
|
except ImportError:
|
||||||
print("source .quantum_package.rc")
|
print("source quantum_package.rc")
|
||||||
raise
|
raise
|
||||||
|
|
||||||
from docopt import docopt
|
from docopt import docopt
|
||||||
|
3
configure
vendored
3
configure
vendored
@ -410,6 +410,9 @@ EOF
|
|||||||
rm --recursive --force -- bats-core-1.1.0 \ "\${QP_ROOT}"/external/bats.tar.gz
|
rm --recursive --force -- bats-core-1.1.0 \ "\${QP_ROOT}"/external/bats.tar.gz
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
|
else
|
||||||
|
error "${PACKAGE} unknown."
|
||||||
|
fail
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
13
etc/ninja.rc
13
etc/ninja.rc
@ -1,13 +0,0 @@
|
|||||||
# Configuration for the Ninja package
|
|
||||||
|
|
||||||
export NINJA=${QP_ROOT}/bin/ninja
|
|
||||||
|
|
||||||
function ninja () {
|
|
||||||
if [[ -f ${QP_ROOT}/build.ninja ]] ; then
|
|
||||||
${QP_ROOT}/bin/ninja "$@"
|
|
||||||
else
|
|
||||||
>&2 echo "Error: build.ninja does not exists.
|
|
||||||
You need to run ./configure first."
|
|
||||||
fi
|
|
||||||
|
|
||||||
}
|
|
@ -3,7 +3,7 @@
|
|||||||
QP_PYTHON=
|
QP_PYTHON=
|
||||||
|
|
||||||
# Load dependencies
|
# Load dependencies
|
||||||
for i in ezfio.rc irpf90.rc ninja.rc ocaml.rc
|
for i in ezfio.rc irpf90.rc ocaml.rc
|
||||||
do
|
do
|
||||||
source $i
|
source $i
|
||||||
done
|
done
|
||||||
|
@ -38,7 +38,7 @@ def comp_path(path):
|
|||||||
|
|
||||||
from qp_path import QP_ROOT, QP_SRC, QP_EZFIO
|
from qp_path import QP_ROOT, QP_SRC, QP_EZFIO
|
||||||
|
|
||||||
LIB = " -lz"
|
LIB = " -lz"
|
||||||
EZFIO_LIB = join("$QP_ROOT", "lib", "libezfio_irp.a")
|
EZFIO_LIB = join("$QP_ROOT", "lib", "libezfio_irp.a")
|
||||||
ZMQ_LIB = join("$QP_ROOT", "lib", "libf77zmq.a") + " " + join("$QP_ROOT", "lib", "libzmq.a") + " -lstdc++ -lrt -ldl"
|
ZMQ_LIB = join("$QP_ROOT", "lib", "libf77zmq.a") + " " + join("$QP_ROOT", "lib", "libzmq.a") + " -lstdc++ -lrt -ldl"
|
||||||
ROOT_BUILD_NINJA = join("$QP_ROOT", "config", "build.ninja")
|
ROOT_BUILD_NINJA = join("$QP_ROOT", "config", "build.ninja")
|
||||||
@ -57,7 +57,7 @@ header = r"""#
|
|||||||
# /_/ \__,_/ \___/ /_/|_| \__,_/ _\__, / \___/
|
# /_/ \__,_/ \___/ /_/|_| \__,_/ _\__, / \___/
|
||||||
# /____/
|
# /____/
|
||||||
#
|
#
|
||||||
# https://github.com/LCPQ/quantum_package,
|
# https://github.com/QuantumPackage/qp2,
|
||||||
#
|
#
|
||||||
# Generated automatically by {0}
|
# Generated automatically by {0}
|
||||||
#
|
#
|
||||||
@ -416,7 +416,7 @@ def get_l_file_for_module(path_module):
|
|||||||
|
|
||||||
def get_file_dependency(d_info_module):
|
def get_file_dependency(d_info_module):
|
||||||
"""
|
"""
|
||||||
For a module return all the irp.f90 needed files
|
For a module return all the irp.f90 needed files
|
||||||
"""
|
"""
|
||||||
d_irp = defaultdict(dict)
|
d_irp = defaultdict(dict)
|
||||||
|
|
||||||
@ -711,7 +711,7 @@ def save_subninja_file(path_module):
|
|||||||
""]
|
""]
|
||||||
|
|
||||||
path_ninja_cur = join(path_module.abs, "build.ninja")
|
path_ninja_cur = join(path_module.abs, "build.ninja")
|
||||||
|
|
||||||
with open(path_ninja_cur, "w") as f:
|
with open(path_ninja_cur, "w") as f:
|
||||||
f.write(header)
|
f.write(header)
|
||||||
f.write("\n".join(l_string))
|
f.write("\n".join(l_string))
|
||||||
@ -851,7 +851,7 @@ if __name__ == "__main__":
|
|||||||
# ~#~#~#~#~#~#~#~#~#~#~#~ #
|
# ~#~#~#~#~#~#~#~#~#~#~#~ #
|
||||||
|
|
||||||
for module_to_compile in l_module:
|
for module_to_compile in l_module:
|
||||||
|
|
||||||
if module_to_compile.rel == "dummy":
|
if module_to_compile.rel == "dummy":
|
||||||
continue
|
continue
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user