mirror of
https://github.com/QuantumPackage/qp2.git
synced 2024-12-22 20:34:58 +01: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
|
||||
ezfio_interface.irp.f
|
||||
share
|
||||
venv
|
||||
|
@ -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 <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
|
||||
- |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 <package>
|
||||
./configure --install=<package>
|
||||
|
||||
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 qp_path import QP_SRC, QP_ROOT
|
||||
except ImportError:
|
||||
print("source .quantum_package.rc")
|
||||
print("source quantum_package.rc")
|
||||
raise
|
||||
|
||||
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
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
|
||||
EOF
|
||||
|
||||
else
|
||||
error "${PACKAGE} unknown."
|
||||
fail
|
||||
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=
|
||||
|
||||
# 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
|
||||
|
@ -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
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user