Skip to content

Commit

Permalink
Merge pull request #70 from QuantumPackage/dev-lct
Browse files Browse the repository at this point in the history
Version 2.1
  • Loading branch information
scemama committed Oct 28, 2019
2 parents af01bbe + 294cd67 commit d516a57
Show file tree
Hide file tree
Showing 77 changed files with 1,596 additions and 2,180 deletions.
41 changes: 2 additions & 39 deletions TODO
Expand Up @@ -2,16 +2,8 @@

* Faire que le slave de Hartree-fock est le calcul des integrales AO en parallele

# Web/doc

* Creer une page web pas trop degueu et la mettre ici : http://lcpq.github.io/quantum_package

* Creer une page avec la liste de tous les exectuables


# Exterieur

* Molden format : http://cheminf.cmbi.ru.nl/molden/molden_format.html : read+write. Thomas est dessus
* 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)
Expand All @@ -24,51 +16,22 @@

# User doc:

* Videos:
+) RHF
* Renvoyer a la doc des modules : c'est pour les programmeurs au depart!
* Mettre le mp2 comme exercice

* Interfaces : molden/fcidump
* Natural orbitals
* Parameters for Hartree-Fock
* Parameters for Davidson
* Running in parallel

# Programmers doc:

* Example : Simple Hartree-Fock program from scratch
* Examples : subroutine example_module

# Config file for Cray

# EZFIO sans fork

Refaire les benchmarks
# enleverle psi_det_size for all complicated stuffs with dimension of psi_coef

# Documentation de qpsh
# Config file for Cray

# Documentation de /etc

# Toto
Re-design de qp command

Doc: plugins et qp_plugins

Ajouter les symetries dans devel

<<<<<<< HEAD
Compiler ezfio avec openmp

# Parallelize i_H_psi
=======

# Parallelize i_H_psi
<<<<<<< HEAD
=======


>>>>>>> minor_modifs
IMPORTANT:

Davidson Diagonalization
Expand Down
7 changes: 6 additions & 1 deletion configure
Expand Up @@ -3,18 +3,23 @@
# Quantum Package configuration script
#

unset CC
unset CXX

TEMP=$(getopt -o c:i:h -l config:,install:,help -n $0 -- "$@") || exit 1
eval set -- "$TEMP"

export QP_ROOT="$( cd "$(dirname "$0")" ; pwd -P )"
echo "QP_ROOT="$QP_ROOT
unset CC
unset CCXX

# When updating version, update also etc files

BATS_URL="https://github.com/bats-core/bats-core/archive/v1.1.0.tar.gz"
BUBBLE_URL="https://github.com/projectatomic/bubblewrap/releases/download/v0.3.3/bubblewrap-0.3.3.tar.xz"
DOCOPT_URL="https://github.com/docopt/docopt/archive/0.6.2.tar.gz"
EZFIO_URL="https://gitlab.com/scemama/EZFIO/-/archive/v1.4.0/EZFIO-v1.4.0.tar.gz"
EZFIO_URL="https://gitlab.com/scemama/EZFIO/-/archive/v1.6.1/EZFIO-v1.6.1.tar.gz"
F77ZMQ_URL="https://github.com/scemama/f77_zmq/archive/v4.2.5.tar.gz"
GMP_URL="ftp://ftp.gnu.org/gnu/gmp/gmp-6.1.2.tar.bz2"
IRPF90_URL="https://gitlab.com/scemama/irpf90/-/archive/v1.7.6/irpf90-v1.7.6.tar.gz"
Expand Down
76 changes: 41 additions & 35 deletions data/basis/aug-cc-pvtz
Expand Up @@ -92,52 +92,58 @@ F 1
1 0.0816000 1.0000000

BERYLLIUM
S 9
1 6863.0000000 0.0002360
2 1030.0000000 0.0018260
3 234.7000000 0.0094520
4 66.5600000 0.0379570
5 21.6900000 0.1199650
6 7.7340000 0.2821620
7 2.9160000 0.4274040
8 1.1300000 0.2662780
9 0.1101000 -0.0072750
S 9
1 6863.0000000 -0.0000430
2 1030.0000000 -0.0003330
3 234.7000000 -0.0017360
4 66.5600000 -0.0070120
5 21.6900000 -0.0231260
6 7.7340000 -0.0581380
7 2.9160000 -0.1145560
8 1.1300000 -0.1359080
9 0.1101000 0.5774410
S 11
1 6.863000E+03 2.360000E-04
2 1.030000E+03 1.826000E-03
3 2.347000E+02 9.452000E-03
4 6.656000E+01 3.795700E-02
5 2.169000E+01 1.199650E-01
6 7.734000E+00 2.821620E-01
7 2.916000E+00 4.274040E-01
8 1.130000E+00 2.662780E-01
9 2.577000E-01 1.819300E-02
10 1.101000E-01 -7.275000E-03
11 4.409000E-02 1.903000E-03
S 11
1 6.863000E+03 -4.300000E-05
2 1.030000E+03 -3.330000E-04
3 2.347000E+02 -1.736000E-03
4 6.656000E+01 -7.012000E-03
5 2.169000E+01 -2.312600E-02
6 7.734000E+00 -5.813800E-02
7 2.916000E+00 -1.145560E-01
8 1.130000E+00 -1.359080E-01
9 2.577000E-01 2.280260E-01
10 1.101000E-01 5.774410E-01
11 4.409000E-02 3.178730E-01
S 1
1 0.2577000 1.0000000
1 2.577000E-01 1.000000E+00
S 1
1 0.0440900 1.0000000
1 4.409000E-02 1.000000E+00
S 1
1 0.0150300 1.0000000
P 3
1 7.4360000 0.0107360
2 1.5770000 0.0628540
3 0.4352000 0.2481800
1 1.470000E-02 1.000000E+00
P 5
1 7.436000E+00 1.073600E-02
2 1.577000E+00 6.285400E-02
3 4.352000E-01 2.481800E-01
4 1.438000E-01 5.236990E-01
5 4.994000E-02 3.534250E-01
P 1
1 0.1438000 1.0000000
1 1.438000E-01 1.000000E+00
P 1
1 0.0499400 1.0000000
1 4.994000E-02 1.000000E+00
P 1
1 0.0070600 1.0000000
1 9.300000E-03 1.000000E+00
D 1
1 0.3480000 1.0000000
1 3.493000E-01 1.000000E+00
D 1
1 0.1803000 1.0000000
1 1.724000E-01 1.000000E+00
D 1
1 0.0654000 1.0000000
1 5.880000E-02 1.000000E+00
F 1
1 0.3250000 1.0000000
1 3.423000E-01 1.0000000
F 1
1 0.1533000 1.0000000
1 1.188000E-01 1.000000E+00

BORON
S 8
Expand Down
99 changes: 0 additions & 99 deletions ocaml/Input_bitmasks.ml
Expand Up @@ -6,10 +6,6 @@ module Bitmasks : sig
type t =
{ n_int : N_int_number.t;
bit_kind : Bit_kind.t;
n_mask_gen : Bitmask_number.t;
generators : int64 array;
n_mask_cas : Bitmask_number.t;
cas : int64 array;
} [@@deriving sexp]
;;
val read : unit -> t option
Expand All @@ -18,12 +14,7 @@ end = struct
type t =
{ n_int : N_int_number.t;
bit_kind : Bit_kind.t;
n_mask_gen : Bitmask_number.t;
generators : int64 array;
n_mask_cas : Bitmask_number.t;
cas : int64 array;
} [@@deriving sexp]
;;

let get_default = Qpackage.get_ezfio_default "bitmasks";;

Expand All @@ -36,7 +27,6 @@ end = struct
;
Ezfio.get_bitmasks_n_int ()
|> N_int_number.of_int
;;

let read_bit_kind () =
if not (Ezfio.has_bitmasks_bit_kind ()) then
Expand All @@ -46,89 +36,12 @@ end = struct
;
Ezfio.get_bitmasks_bit_kind ()
|> Bit_kind.of_int
;;

let read_n_mask_gen () =
if not (Ezfio.has_bitmasks_n_mask_gen ()) then
Ezfio.set_bitmasks_n_mask_gen 1
;
Ezfio.get_bitmasks_n_mask_gen ()
|> Bitmask_number.of_int
;;


let full_mask n_int =
let range = "[1-"^
(string_of_int (Ezfio.get_mo_basis_mo_num ()))^"]"
in
MO_class.create_active range
|> MO_class.to_bitlist n_int
;;

let read_generators () =
if not (Ezfio.has_bitmasks_generators ()) then
begin
let n_int =
read_n_int ()
in
let act =
full_mask n_int
in
let result = [ act ; act ; act ; act ; act ; act ]
|> List.map (fun x ->
let y = Bitlist.to_int64_list x in y@y )
|> List.concat
in
let generators = Ezfio.ezfio_array_of_list ~rank:4
~dim:([| (N_int_number.to_int n_int) ; 2; 6; 1|]) ~data:result
in
Ezfio.set_bitmasks_generators generators
end;
Ezfio.get_bitmasks_generators ()
|> Ezfio.flattened_ezfio
;;

let read_n_mask_cas () =
if not (Ezfio.has_bitmasks_n_mask_cas ()) then
Ezfio.set_bitmasks_n_mask_cas 1
;
Ezfio.get_bitmasks_n_mask_cas ()
|> Bitmask_number.of_int
;;


let read_cas () =
if not (Ezfio.has_bitmasks_cas ()) then
begin
let n_int =
read_n_int ()
in
let act =
full_mask n_int
in
let result = [ act ; act ]
|> List.map (fun x ->
let y = Bitlist.to_int64_list x in y@y )
|> List.concat
in
let cas = Ezfio.ezfio_array_of_list ~rank:3
~dim:([| (N_int_number.to_int n_int) ; 2; 1|]) ~data:result
in
Ezfio.set_bitmasks_cas cas
end;
Ezfio.get_bitmasks_cas ()
|> Ezfio.flattened_ezfio
;;

let read () =
if (Ezfio.has_mo_basis_mo_num ()) then
Some
{ n_int = read_n_int ();
bit_kind = read_bit_kind ();
n_mask_gen = read_n_mask_gen ();
generators = read_generators ();
n_mask_cas = read_n_mask_cas ();
cas = read_cas ();
}
else
None
Expand All @@ -138,21 +51,9 @@ end = struct
Printf.sprintf "
n_int = %s
bit_kind = %s
n_mask_gen = %s
generators = %s
n_mask_cas = %s
cas = %s
"
(N_int_number.to_string b.n_int)
(Bit_kind.to_string b.bit_kind)
(Bitmask_number.to_string b.n_mask_gen)
(Array.to_list b.generators
|> List.map (fun x-> Int64.to_string x)
|> String.concat ", ")
(Bitmask_number.to_string b.n_mask_cas)
(Array.to_list b.cas
|> List.map (fun x-> Int64.to_string x)
|> String.concat ", ")
end


0 comments on commit d516a57

Please sign in to comment.