diff --git a/.gitignore b/.gitignore index 096e385b..dd4d7186 100644 --- a/.gitignore +++ b/.gitignore @@ -9,3 +9,4 @@ config/qp_create_ninja.pickle src/*/.gitignore ezfio_interface.irp.f share +venv diff --git a/INSTALL.rst b/INSTALL.rst index dd961950..09bd4842 100644 --- a/INSTALL.rst +++ b/INSTALL.rst @@ -28,6 +28,12 @@ and need to be installed. 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|. +Now all the requirements are met, you can compile the programs using + +.. code:: bash + + make + Requirements ============ @@ -48,6 +54,7 @@ Requirements - `Bubblewrap `_ : Sandboxing tool required by Opam - `libcap `_ : POSIX capabilities required by Bubblewrap - |Ninja| : a parallel build system +- |pkg-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 - ./configure --install + ./configure --install= The following packages are supported by the :command:`configure` installer: diff --git a/TODO b/TODO deleted file mode 100644 index abdb618f..00000000 --- a/TODO +++ /dev/null @@ -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 diff --git a/TODO.org b/TODO.org new file mode 100644 index 00000000..870855d2 --- /dev/null +++ b/TODO.org @@ -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} + K> configuration \in SOMO-SOMO SOMO-DOMO DOMO-VMO SOMO-VMO + W : matrice mono x mono + - [ ] Fonction conf -> + - [ ] Compute 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 + + < K | E_rs] | Psi> + + C.D^t + + K : toutes les mono + + = \sum_m diff --git a/bin/qp_name b/bin/qp_name index d15e16d0..e13b9a5d 100755 --- a/bin/qp_name +++ b/bin/qp_name @@ -30,7 +30,7 @@ try: from docopt import docopt from qp_path import QP_SRC, QP_ROOT except ImportError: - print("source .quantum_package.rc") + print("source quantum_package.rc") raise diff --git a/bin/qp_set_frozen_core b/bin/qp_set_frozen_core index b00797e2..879c71de 100755 --- a/bin/qp_set_frozen_core +++ b/bin/qp_set_frozen_core @@ -49,7 +49,7 @@ import os.path try: import qp_path except ImportError: - print("source .quantum_package.rc") + print("source quantum_package.rc") raise from docopt import docopt diff --git a/bin/qp_set_frozen_large_core b/bin/qp_set_frozen_large_core index 6950b90c..92df4118 100755 --- a/bin/qp_set_frozen_large_core +++ b/bin/qp_set_frozen_large_core @@ -23,7 +23,7 @@ import os.path try: import qp_path except ImportError: - print("source .quantum_package.rc") + print("source quantum_package.rc") raise from docopt import docopt diff --git a/configure b/configure index dcb104b7..4a4a38dd 100755 --- a/configure +++ b/configure @@ -410,6 +410,9 @@ EOF rm --recursive --force -- bats-core-1.1.0 \ "\${QP_ROOT}"/external/bats.tar.gz EOF + else + error "${PACKAGE} unknown." + fail fi diff --git a/etc/ninja.rc b/etc/ninja.rc deleted file mode 100644 index 0ac28966..00000000 --- a/etc/ninja.rc +++ /dev/null @@ -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 - -} diff --git a/etc/paths.rc b/etc/paths.rc index 366286d7..aff62f6e 100644 --- a/etc/paths.rc +++ b/etc/paths.rc @@ -3,7 +3,7 @@ QP_PYTHON= # Load dependencies -for i in ezfio.rc irpf90.rc ninja.rc ocaml.rc +for i in ezfio.rc irpf90.rc ocaml.rc do source $i done diff --git a/scripts/compilation/qp_create_ninja b/scripts/compilation/qp_create_ninja index 3d4e56dc..ad61d363 100755 --- a/scripts/compilation/qp_create_ninja +++ b/scripts/compilation/qp_create_ninja @@ -38,7 +38,7 @@ def comp_path(path): from qp_path import QP_ROOT, QP_SRC, QP_EZFIO -LIB = " -lz" +LIB = " -lz" 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" 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} # @@ -416,7 +416,7 @@ def get_l_file_for_module(path_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) @@ -711,7 +711,7 @@ def save_subninja_file(path_module): ""] path_ninja_cur = join(path_module.abs, "build.ninja") - + with open(path_ninja_cur, "w") as f: f.write(header) f.write("\n".join(l_string)) @@ -851,7 +851,7 @@ if __name__ == "__main__": # ~#~#~#~#~#~#~#~#~#~#~#~ # for module_to_compile in l_module: - + if module_to_compile.rel == "dummy": continue