Anthony Scemama
4098b05202
commit 96715abd7bc0645b994fc4fff1c764e7bec3042e Author: Anthony Scemama <scemama@irsamc.ups-tlse.fr> Date: Thu Sep 6 12:08:34 2018 +0200 Tasks commit e43b1e2faff5ad1ec4ecd2eb99e8d86e0000a9a2 Author: Anthony Scemama <scemama@irsamc.ups-tlse.fr> Date: Thu Sep 6 11:47:02 2018 +0200 Fixed print commit c498c8944b5695b953909711a2e9a542e1bc6015 Author: Anthony Scemama <scemama@irsamc.ups-tlse.fr> Date: Thu Sep 6 11:11:51 2018 +0200 PT2 and shiftedBk fixed commit 965cf0361d54df096c9bfca93f9d50ecd946c198 Author: Anthony Scemama <scemama@irsamc.ups-tlse.fr> Date: Wed Sep 5 18:48:59 2018 +0200 Shifted Bk multistate broken commit 87ef641b65a122fa1256605cbe098c1a0de04bc0 Author: Anthony Scemama <scemama@irsamc.ups-tlse.fr> Date: Wed Sep 5 17:23:38 2018 +0200 PT2 fixed commit a2adb533bcaf96191a24ff5fcef86cd14ac00697 Author: Anthony Scemama <scemama@irsamc.ups-tlse.fr> Date: Wed Sep 5 16:55:05 2018 +0200 Working on PT2 (broken) commit 33f52991b65ac42ced5521ef0e713df765268860 Author: Anthony Scemama <scemama@irsamc.ups-tlse.fr> Date: Wed Sep 5 12:13:23 2018 +0200 Fixed missing argument commit 712bf75f76421880299dc65b30acfda3d531f709 Author: Anthony Scemama <scemama@irsamc.ups-tlse.fr> Date: Wed Sep 5 11:42:31 2018 +0200 Fixed floating invalid in PT2 commit cf2412ebd99f9acf573a5180603611f1c3e35155 Author: Anthony Scemama <scemama@irsamc.ups-tlse.fr> Date: Wed Sep 5 11:34:37 2018 +0200 n_states_diag >= n_states commit bb415435e4d9be72a285ec789c3d63046a9173e4 Author: Anthony Scemama <scemama@irsamc.ups-tlse.fr> Date: Wed Sep 5 11:23:41 2018 +0200 Fixed final print commit |
||
---|---|---|
bin | ||
config | ||
data | ||
doc | ||
include | ||
install | ||
lib | ||
ocaml | ||
plugins | ||
promela | ||
scripts | ||
src | ||
tests | ||
.gitattributes | ||
.gitignore | ||
.travis.yml | ||
configure | ||
LICENSE | ||
README.md |
IMPORTANT
If you have problems upgrading to the current version, first try
qp_upgrade_ocaml.sh
. If it fails, then consider
re-installing everything from scratch including the OCaml compiler. To
do this, you will have to remove the quantum_package
directory and the $HOME/.opam
directory as
well.
Set of quantum chemistry programs and libraries. (under GNU GENERAL PUBLIC LICENSE v2)
For more information, you can visit the wiki of the project, or below for the installation instructions.
Demo
Installation
Requirements
- Fortran compiler (
ifort
andgfortran
are tested) - Python >= 2.6
- GNU make
- Bash
- Blas/Lapack
- unzip
- g++ (For ninja)
Standard installation
1) Configure
$ ./configure.py <config_file>
For example you can type
./configure.py config/gfortran.cfg
This command has two purposes :
- Download and install all the requirements. Installing OCaml and the Core library may take some time (up to 20min on an old machine).
- Create the file which contains all the dependencies for the
binaries.
It’s not a Makefile, but a Ninja file (so don’t typemake
it’s hopeless, typeninja
instead)
Compilation Flags
(<config_file>
)
<config_file>
is the path to the file which
contains all the compilation flags (optimization flags, Lapack libary,
etc). There are two example configure files in
$QP_ROOT/config
: ifort.cfg
and
gfortran.cfg
. You can copy these files to create a new file
adapted to your architecture.
2) Load environment variables
source quantum_package.rc
This file contains all the environment variables needed by the quantum package both to compile and run. This should also be done before running calculations.
Optional) Add some modules
Usage:
qp_module.py create -n <name> [<children_modules>...]
qp_module.py download -n <name> [<path_folder>...]
qp_module.py install <name>...
qp_module.py list (--installed | --available-local)
qp_module.py uninstall <name>
For exemple you can type :
qp_module.py install Full_CI
3) Compiling the Fortran
Just type ninja
if you are in $QP_ROOT
. The
compilation will take approximately 3 min.
5) Testing if all is ok
cd tests ; ./run_tests.sh
Note on EZFIO.cfg
Format specification:
Required:
[<provider_name>] The name of the provider in irp.f90 and in the EZFIO lib
doc:<str> The plain text documentation
type:<str> A type supported by the OCaml.
type `ei_handler.py get_supported_type` for a list
interface:<str> The interface is a list of strings sepeared by "," which can contain :
- ezfio : to build the EZFIO API
- provider : to build the corresponding providers
- ocaml : to build the corresponding bindings in OCaml
Optional:
default: <str> The default value,
needed if 'ocaml' is in interface list.
! No list is allowed for now !
size: <str> The size information.
(by default is one)
Example : 1; =sum(ao_num); (ao_num,3)
WARNING : The module and the value are separed by a "." not a "_".
For example (determinants.n_det)
ezfio_name: <str> The name in the EZFIO API
(by default is <provider_name>)
ezfio_dir: <str> Will be the directory of EZFIO.
(by default is <module_lower>)
Example of EZFIO.cfg:
[thresh_SCF]
doc: Threshold on the convergence of the Hartree Fock energy
type: Threshold
default: 1.e-10
interface: provider,ezfio,ocaml
size: 1
[energy]
type: Strictly_negative_float
doc: Calculated HF energy
interface: ezfio
FAQ
My hartree-Fock segfault !
A old version of Lapack have a bug. Just relax your convergence criterium
Error: ezfio_* is already defined.
Why ?
You have two or more ezfio configuration files for the same variable.
Check files in $QP_ROOT/install/EZFIO/config/
and the all
the EZFIO.cfg
.
Fix
- rm $QP_ROOT/install/EZFIO/config/*
- ninja
Error: Seg Fault (139)
Segmentation fault (core dumped)
Program exited with code 139.
Why ?
It’s caused when we call the DGEMM routine of LAPACK.
Fix
Set ulimit -s unlimited
, before runing
qp_run
. It seems to fix the problem.
Error: f77zmq not symbol found
In the Makefile of the f77zmq, you should NOT use ar but
libtool -static