mirror of
https://gitlab.com/scemama/qmcchem.git
synced 2024-12-21 11:53:30 +01:00
Works with gfortran. Fixed ezfio.ml compiling problem.
This commit is contained in:
parent
ca07066e06
commit
a15f3ae2b1
13
.gitignore
vendored
Normal file
13
.gitignore
vendored
Normal file
@ -0,0 +1,13 @@
|
||||
.ninja_deps
|
||||
.ninja_log
|
||||
EZFIO
|
||||
install/Downloads
|
||||
install/_build
|
||||
lib
|
||||
irpf90
|
||||
qmcchemrc
|
||||
make.config
|
||||
src/ZMQ/f77_zmq.h
|
||||
ezfio_config/properties.config
|
||||
bin/
|
||||
|
20
configure.sh
20
configure.sh
@ -18,7 +18,25 @@ then
|
||||
fi
|
||||
touch _build/ninja.ok
|
||||
fi
|
||||
touch "${QMCCHEM_PATH}"/{src,ocaml}/ls_md5
|
||||
touch "${QMCCHEM_PATH}"/{src,ocaml}/.ls_md5
|
||||
exec "${QMCCHEM_PATH}"/bin/ninja "$@"
|
||||
|
||||
if [[ ! -f make.config ]]
|
||||
then
|
||||
which ifort > /dev/null
|
||||
if [[ $? ]]
|
||||
then
|
||||
cp make.config.ifort make.config
|
||||
else
|
||||
cp make.config.gfortran make.config
|
||||
fi
|
||||
fi
|
||||
|
||||
echo "====================================================================="
|
||||
echo "Configuration OK."
|
||||
echo "Now, source the qmcchemrc file:"
|
||||
echo ""
|
||||
echo "source qmcchemrc"
|
||||
echo ""
|
||||
echo "====================================================================="
|
||||
|
||||
|
18
make.config.gfortran
Normal file
18
make.config.gfortran
Normal file
@ -0,0 +1,18 @@
|
||||
# CPU type
|
||||
|
||||
## ALIGNMENT
|
||||
|
||||
CPU_TYPE="-mavx"
|
||||
|
||||
## FORTRAN compiler
|
||||
FC="gfortran -ffree-line-length-none"
|
||||
NINJA="ninja"
|
||||
FCFLAGS="-O2 -g ${CPU_TYPE}"
|
||||
LIB="-lblas -llapack"
|
||||
|
||||
## IRPF90
|
||||
IRPF90="${QMCCHEM_PATH}/bin/irpf90"
|
||||
IRPF90_FLAGS="--align=16"
|
||||
|
||||
export FC NINJA FCFLAGS LIB IRPF90 IRPF90_FLAGS
|
||||
|
12
ocaml/.gitignore
vendored
Normal file
12
ocaml/.gitignore
vendored
Normal file
@ -0,0 +1,12 @@
|
||||
*.cmi
|
||||
*.cmx
|
||||
*.o
|
||||
ezfio.ml
|
||||
Qptypes.ml
|
||||
.ls_md5
|
||||
.ninja_deps
|
||||
.ninja_log
|
||||
generated.ninja
|
||||
qmcchem
|
||||
qptypes_generator
|
||||
|
@ -1,629 +0,0 @@
|
||||
|
||||
(* File generated by ${QMCCHEM_PATH}/src/create_properties.py. Do not
|
||||
modify here
|
||||
*)
|
||||
|
||||
type t =
|
||||
| Cpu
|
||||
| Wall
|
||||
| Accep
|
||||
| D_var_jast_a_up_dn
|
||||
| D_var_jast_a_up_up
|
||||
| D_var_jast_b_up_dn
|
||||
| D_var_jast_b_up_up
|
||||
| D_var_jast_core_a1
|
||||
| D_var_jast_core_b1
|
||||
| D_var_jast_een_e_a
|
||||
| D_var_jast_een_e_b
|
||||
| D_var_jast_een_n
|
||||
| D_var_jast_pen
|
||||
| Density1d
|
||||
| Dipole
|
||||
| Drift_mod
|
||||
| E_kin
|
||||
| E_loc
|
||||
| E_loc_one
|
||||
| E_loc_per_electron
|
||||
| E_loc_split_core
|
||||
| E_loc_two
|
||||
| E_nucl
|
||||
| E_pot
|
||||
| E_pot_one
|
||||
| N_s_inverted
|
||||
| N_s_updated
|
||||
| N_s_updates
|
||||
| Voronoi_charges
|
||||
| Voronoi_charges_covariance
|
||||
| Voronoi_dipoles
|
||||
| Wf_extension
|
||||
| D_var_jast_a_up_dn_qmcvar
|
||||
| D_var_jast_a_up_up_qmcvar
|
||||
| D_var_jast_b_up_dn_qmcvar
|
||||
| D_var_jast_b_up_up_qmcvar
|
||||
| D_var_jast_core_a1_qmcvar
|
||||
| D_var_jast_core_b1_qmcvar
|
||||
| D_var_jast_een_e_a_qmcvar
|
||||
| D_var_jast_een_e_b_qmcvar
|
||||
| D_var_jast_een_n_qmcvar
|
||||
| D_var_jast_pen_qmcvar
|
||||
| Density1d_qmcvar
|
||||
| Dipole_qmcvar
|
||||
| Drift_mod_qmcvar
|
||||
| E_kin_qmcvar
|
||||
| E_loc_qmcvar
|
||||
| E_loc_one_qmcvar
|
||||
| E_loc_per_electron_qmcvar
|
||||
| E_loc_split_core_qmcvar
|
||||
| E_loc_two_qmcvar
|
||||
| E_nucl_qmcvar
|
||||
| E_pot_qmcvar
|
||||
| E_pot_one_qmcvar
|
||||
| N_s_inverted_qmcvar
|
||||
| N_s_updated_qmcvar
|
||||
| N_s_updates_qmcvar
|
||||
| Voronoi_charges_qmcvar
|
||||
| Voronoi_charges_covariance_qmcvar
|
||||
| Voronoi_dipoles_qmcvar
|
||||
| Wf_extension_qmcvar
|
||||
;;
|
||||
|
||||
let calc = function
|
||||
| Cpu
|
||||
| Wall
|
||||
| Accep -> true
|
||||
| D_var_jast_a_up_dn
|
||||
| D_var_jast_a_up_dn_qmcvar ->
|
||||
begin
|
||||
if (Ezfio.has_properties_d_var_jast_a_up_dn ()) then
|
||||
Ezfio.get_properties_d_var_jast_a_up_dn ()
|
||||
else
|
||||
false
|
||||
end
|
||||
|
||||
| D_var_jast_a_up_up
|
||||
| D_var_jast_a_up_up_qmcvar ->
|
||||
begin
|
||||
if (Ezfio.has_properties_d_var_jast_a_up_up ()) then
|
||||
Ezfio.get_properties_d_var_jast_a_up_up ()
|
||||
else
|
||||
false
|
||||
end
|
||||
|
||||
| D_var_jast_b_up_dn
|
||||
| D_var_jast_b_up_dn_qmcvar ->
|
||||
begin
|
||||
if (Ezfio.has_properties_d_var_jast_b_up_dn ()) then
|
||||
Ezfio.get_properties_d_var_jast_b_up_dn ()
|
||||
else
|
||||
false
|
||||
end
|
||||
|
||||
| D_var_jast_b_up_up
|
||||
| D_var_jast_b_up_up_qmcvar ->
|
||||
begin
|
||||
if (Ezfio.has_properties_d_var_jast_b_up_up ()) then
|
||||
Ezfio.get_properties_d_var_jast_b_up_up ()
|
||||
else
|
||||
false
|
||||
end
|
||||
|
||||
| D_var_jast_core_a1
|
||||
| D_var_jast_core_a1_qmcvar ->
|
||||
begin
|
||||
if (Ezfio.has_properties_d_var_jast_core_a1 ()) then
|
||||
Ezfio.get_properties_d_var_jast_core_a1 ()
|
||||
else
|
||||
false
|
||||
end
|
||||
|
||||
| D_var_jast_core_b1
|
||||
| D_var_jast_core_b1_qmcvar ->
|
||||
begin
|
||||
if (Ezfio.has_properties_d_var_jast_core_b1 ()) then
|
||||
Ezfio.get_properties_d_var_jast_core_b1 ()
|
||||
else
|
||||
false
|
||||
end
|
||||
|
||||
| D_var_jast_een_e_a
|
||||
| D_var_jast_een_e_a_qmcvar ->
|
||||
begin
|
||||
if (Ezfio.has_properties_d_var_jast_een_e_a ()) then
|
||||
Ezfio.get_properties_d_var_jast_een_e_a ()
|
||||
else
|
||||
false
|
||||
end
|
||||
|
||||
| D_var_jast_een_e_b
|
||||
| D_var_jast_een_e_b_qmcvar ->
|
||||
begin
|
||||
if (Ezfio.has_properties_d_var_jast_een_e_b ()) then
|
||||
Ezfio.get_properties_d_var_jast_een_e_b ()
|
||||
else
|
||||
false
|
||||
end
|
||||
|
||||
| D_var_jast_een_n
|
||||
| D_var_jast_een_n_qmcvar ->
|
||||
begin
|
||||
if (Ezfio.has_properties_d_var_jast_een_n ()) then
|
||||
Ezfio.get_properties_d_var_jast_een_n ()
|
||||
else
|
||||
false
|
||||
end
|
||||
|
||||
| D_var_jast_pen
|
||||
| D_var_jast_pen_qmcvar ->
|
||||
begin
|
||||
if (Ezfio.has_properties_d_var_jast_pen ()) then
|
||||
Ezfio.get_properties_d_var_jast_pen ()
|
||||
else
|
||||
false
|
||||
end
|
||||
|
||||
| Density1d
|
||||
| Density1d_qmcvar ->
|
||||
begin
|
||||
if (Ezfio.has_properties_density1d ()) then
|
||||
Ezfio.get_properties_density1d ()
|
||||
else
|
||||
false
|
||||
end
|
||||
|
||||
| Dipole
|
||||
| Dipole_qmcvar ->
|
||||
begin
|
||||
if (Ezfio.has_properties_dipole ()) then
|
||||
Ezfio.get_properties_dipole ()
|
||||
else
|
||||
false
|
||||
end
|
||||
|
||||
| Drift_mod
|
||||
| Drift_mod_qmcvar ->
|
||||
begin
|
||||
if (Ezfio.has_properties_drift_mod ()) then
|
||||
Ezfio.get_properties_drift_mod ()
|
||||
else
|
||||
false
|
||||
end
|
||||
|
||||
| E_kin
|
||||
| E_kin_qmcvar ->
|
||||
begin
|
||||
if (Ezfio.has_properties_e_kin ()) then
|
||||
Ezfio.get_properties_e_kin ()
|
||||
else
|
||||
false
|
||||
end
|
||||
|
||||
| E_loc
|
||||
| E_loc_qmcvar ->
|
||||
begin
|
||||
if (Ezfio.has_properties_e_loc ()) then
|
||||
Ezfio.get_properties_e_loc ()
|
||||
else
|
||||
true
|
||||
end
|
||||
|
||||
| E_loc_one
|
||||
| E_loc_one_qmcvar ->
|
||||
begin
|
||||
if (Ezfio.has_properties_e_loc_one ()) then
|
||||
Ezfio.get_properties_e_loc_one ()
|
||||
else
|
||||
false
|
||||
end
|
||||
|
||||
| E_loc_per_electron
|
||||
| E_loc_per_electron_qmcvar ->
|
||||
begin
|
||||
if (Ezfio.has_properties_e_loc_per_electron ()) then
|
||||
Ezfio.get_properties_e_loc_per_electron ()
|
||||
else
|
||||
false
|
||||
end
|
||||
|
||||
| E_loc_split_core
|
||||
| E_loc_split_core_qmcvar ->
|
||||
begin
|
||||
if (Ezfio.has_properties_e_loc_split_core ()) then
|
||||
Ezfio.get_properties_e_loc_split_core ()
|
||||
else
|
||||
false
|
||||
end
|
||||
|
||||
| E_loc_two
|
||||
| E_loc_two_qmcvar ->
|
||||
begin
|
||||
if (Ezfio.has_properties_e_loc_two ()) then
|
||||
Ezfio.get_properties_e_loc_two ()
|
||||
else
|
||||
false
|
||||
end
|
||||
|
||||
| E_nucl
|
||||
| E_nucl_qmcvar ->
|
||||
begin
|
||||
if (Ezfio.has_properties_e_nucl ()) then
|
||||
Ezfio.get_properties_e_nucl ()
|
||||
else
|
||||
false
|
||||
end
|
||||
|
||||
| E_pot
|
||||
| E_pot_qmcvar ->
|
||||
begin
|
||||
if (Ezfio.has_properties_e_pot ()) then
|
||||
Ezfio.get_properties_e_pot ()
|
||||
else
|
||||
false
|
||||
end
|
||||
|
||||
| E_pot_one
|
||||
| E_pot_one_qmcvar ->
|
||||
begin
|
||||
if (Ezfio.has_properties_e_pot_one ()) then
|
||||
Ezfio.get_properties_e_pot_one ()
|
||||
else
|
||||
false
|
||||
end
|
||||
|
||||
| N_s_inverted
|
||||
| N_s_inverted_qmcvar ->
|
||||
begin
|
||||
if (Ezfio.has_properties_n_s_inverted ()) then
|
||||
Ezfio.get_properties_n_s_inverted ()
|
||||
else
|
||||
false
|
||||
end
|
||||
|
||||
| N_s_updated
|
||||
| N_s_updated_qmcvar ->
|
||||
begin
|
||||
if (Ezfio.has_properties_n_s_updated ()) then
|
||||
Ezfio.get_properties_n_s_updated ()
|
||||
else
|
||||
false
|
||||
end
|
||||
|
||||
| N_s_updates
|
||||
| N_s_updates_qmcvar ->
|
||||
begin
|
||||
if (Ezfio.has_properties_n_s_updates ()) then
|
||||
Ezfio.get_properties_n_s_updates ()
|
||||
else
|
||||
false
|
||||
end
|
||||
|
||||
| Voronoi_charges
|
||||
| Voronoi_charges_qmcvar ->
|
||||
begin
|
||||
if (Ezfio.has_properties_voronoi_charges ()) then
|
||||
Ezfio.get_properties_voronoi_charges ()
|
||||
else
|
||||
false
|
||||
end
|
||||
|
||||
| Voronoi_charges_covariance
|
||||
| Voronoi_charges_covariance_qmcvar ->
|
||||
begin
|
||||
if (Ezfio.has_properties_voronoi_charges_covariance ()) then
|
||||
Ezfio.get_properties_voronoi_charges_covariance ()
|
||||
else
|
||||
false
|
||||
end
|
||||
|
||||
| Voronoi_dipoles
|
||||
| Voronoi_dipoles_qmcvar ->
|
||||
begin
|
||||
if (Ezfio.has_properties_voronoi_dipoles ()) then
|
||||
Ezfio.get_properties_voronoi_dipoles ()
|
||||
else
|
||||
false
|
||||
end
|
||||
|
||||
| Wf_extension
|
||||
| Wf_extension_qmcvar ->
|
||||
begin
|
||||
if (Ezfio.has_properties_wf_extension ()) then
|
||||
Ezfio.get_properties_wf_extension ()
|
||||
else
|
||||
false
|
||||
end
|
||||
|
||||
;;
|
||||
|
||||
let u _ = ();;
|
||||
|
||||
let set_calc = function
|
||||
| Cpu
|
||||
| Wall
|
||||
| Accep -> u
|
||||
| D_var_jast_a_up_dn
|
||||
| D_var_jast_a_up_dn_qmcvar ->
|
||||
Ezfio.set_properties_d_var_jast_a_up_dn
|
||||
|
||||
| D_var_jast_a_up_up
|
||||
| D_var_jast_a_up_up_qmcvar ->
|
||||
Ezfio.set_properties_d_var_jast_a_up_up
|
||||
|
||||
| D_var_jast_b_up_dn
|
||||
| D_var_jast_b_up_dn_qmcvar ->
|
||||
Ezfio.set_properties_d_var_jast_b_up_dn
|
||||
|
||||
| D_var_jast_b_up_up
|
||||
| D_var_jast_b_up_up_qmcvar ->
|
||||
Ezfio.set_properties_d_var_jast_b_up_up
|
||||
|
||||
| D_var_jast_core_a1
|
||||
| D_var_jast_core_a1_qmcvar ->
|
||||
Ezfio.set_properties_d_var_jast_core_a1
|
||||
|
||||
| D_var_jast_core_b1
|
||||
| D_var_jast_core_b1_qmcvar ->
|
||||
Ezfio.set_properties_d_var_jast_core_b1
|
||||
|
||||
| D_var_jast_een_e_a
|
||||
| D_var_jast_een_e_a_qmcvar ->
|
||||
Ezfio.set_properties_d_var_jast_een_e_a
|
||||
|
||||
| D_var_jast_een_e_b
|
||||
| D_var_jast_een_e_b_qmcvar ->
|
||||
Ezfio.set_properties_d_var_jast_een_e_b
|
||||
|
||||
| D_var_jast_een_n
|
||||
| D_var_jast_een_n_qmcvar ->
|
||||
Ezfio.set_properties_d_var_jast_een_n
|
||||
|
||||
| D_var_jast_pen
|
||||
| D_var_jast_pen_qmcvar ->
|
||||
Ezfio.set_properties_d_var_jast_pen
|
||||
|
||||
| Density1d
|
||||
| Density1d_qmcvar ->
|
||||
Ezfio.set_properties_density1d
|
||||
|
||||
| Dipole
|
||||
| Dipole_qmcvar ->
|
||||
Ezfio.set_properties_dipole
|
||||
|
||||
| Drift_mod
|
||||
| Drift_mod_qmcvar ->
|
||||
Ezfio.set_properties_drift_mod
|
||||
|
||||
| E_kin
|
||||
| E_kin_qmcvar ->
|
||||
Ezfio.set_properties_e_kin
|
||||
|
||||
| E_loc
|
||||
| E_loc_qmcvar ->
|
||||
Ezfio.set_properties_e_loc
|
||||
|
||||
| E_loc_one
|
||||
| E_loc_one_qmcvar ->
|
||||
Ezfio.set_properties_e_loc_one
|
||||
|
||||
| E_loc_per_electron
|
||||
| E_loc_per_electron_qmcvar ->
|
||||
Ezfio.set_properties_e_loc_per_electron
|
||||
|
||||
| E_loc_split_core
|
||||
| E_loc_split_core_qmcvar ->
|
||||
Ezfio.set_properties_e_loc_split_core
|
||||
|
||||
| E_loc_two
|
||||
| E_loc_two_qmcvar ->
|
||||
Ezfio.set_properties_e_loc_two
|
||||
|
||||
| E_nucl
|
||||
| E_nucl_qmcvar ->
|
||||
Ezfio.set_properties_e_nucl
|
||||
|
||||
| E_pot
|
||||
| E_pot_qmcvar ->
|
||||
Ezfio.set_properties_e_pot
|
||||
|
||||
| E_pot_one
|
||||
| E_pot_one_qmcvar ->
|
||||
Ezfio.set_properties_e_pot_one
|
||||
|
||||
| N_s_inverted
|
||||
| N_s_inverted_qmcvar ->
|
||||
Ezfio.set_properties_n_s_inverted
|
||||
|
||||
| N_s_updated
|
||||
| N_s_updated_qmcvar ->
|
||||
Ezfio.set_properties_n_s_updated
|
||||
|
||||
| N_s_updates
|
||||
| N_s_updates_qmcvar ->
|
||||
Ezfio.set_properties_n_s_updates
|
||||
|
||||
| Voronoi_charges
|
||||
| Voronoi_charges_qmcvar ->
|
||||
Ezfio.set_properties_voronoi_charges
|
||||
|
||||
| Voronoi_charges_covariance
|
||||
| Voronoi_charges_covariance_qmcvar ->
|
||||
Ezfio.set_properties_voronoi_charges_covariance
|
||||
|
||||
| Voronoi_dipoles
|
||||
| Voronoi_dipoles_qmcvar ->
|
||||
Ezfio.set_properties_voronoi_dipoles
|
||||
|
||||
| Wf_extension
|
||||
| Wf_extension_qmcvar ->
|
||||
Ezfio.set_properties_wf_extension
|
||||
|
||||
;;
|
||||
|
||||
let of_string s =
|
||||
match (String.lowercase s) with
|
||||
| "cpu" -> Cpu
|
||||
| "wall" -> Wall
|
||||
| "accep" -> Accep
|
||||
| "d_var_jast_a_up_dn" -> D_var_jast_a_up_dn
|
||||
| "d_var_jast_a_up_up" -> D_var_jast_a_up_up
|
||||
| "d_var_jast_b_up_dn" -> D_var_jast_b_up_dn
|
||||
| "d_var_jast_b_up_up" -> D_var_jast_b_up_up
|
||||
| "d_var_jast_core_a1" -> D_var_jast_core_a1
|
||||
| "d_var_jast_core_b1" -> D_var_jast_core_b1
|
||||
| "d_var_jast_een_e_a" -> D_var_jast_een_e_a
|
||||
| "d_var_jast_een_e_b" -> D_var_jast_een_e_b
|
||||
| "d_var_jast_een_n" -> D_var_jast_een_n
|
||||
| "d_var_jast_pen" -> D_var_jast_pen
|
||||
| "density1d" -> Density1d
|
||||
| "dipole" -> Dipole
|
||||
| "drift_mod" -> Drift_mod
|
||||
| "e_kin" -> E_kin
|
||||
| "e_loc" -> E_loc
|
||||
| "e_loc_one" -> E_loc_one
|
||||
| "e_loc_per_electron" -> E_loc_per_electron
|
||||
| "e_loc_split_core" -> E_loc_split_core
|
||||
| "e_loc_two" -> E_loc_two
|
||||
| "e_nucl" -> E_nucl
|
||||
| "e_pot" -> E_pot
|
||||
| "e_pot_one" -> E_pot_one
|
||||
| "n_s_inverted" -> N_s_inverted
|
||||
| "n_s_updated" -> N_s_updated
|
||||
| "n_s_updates" -> N_s_updates
|
||||
| "voronoi_charges" -> Voronoi_charges
|
||||
| "voronoi_charges_covariance" -> Voronoi_charges_covariance
|
||||
| "voronoi_dipoles" -> Voronoi_dipoles
|
||||
| "wf_extension" -> Wf_extension
|
||||
| "d_var_jast_a_up_dn_qmcvar" -> D_var_jast_a_up_dn_qmcvar
|
||||
| "d_var_jast_a_up_up_qmcvar" -> D_var_jast_a_up_up_qmcvar
|
||||
| "d_var_jast_b_up_dn_qmcvar" -> D_var_jast_b_up_dn_qmcvar
|
||||
| "d_var_jast_b_up_up_qmcvar" -> D_var_jast_b_up_up_qmcvar
|
||||
| "d_var_jast_core_a1_qmcvar" -> D_var_jast_core_a1_qmcvar
|
||||
| "d_var_jast_core_b1_qmcvar" -> D_var_jast_core_b1_qmcvar
|
||||
| "d_var_jast_een_e_a_qmcvar" -> D_var_jast_een_e_a_qmcvar
|
||||
| "d_var_jast_een_e_b_qmcvar" -> D_var_jast_een_e_b_qmcvar
|
||||
| "d_var_jast_een_n_qmcvar" -> D_var_jast_een_n_qmcvar
|
||||
| "d_var_jast_pen_qmcvar" -> D_var_jast_pen_qmcvar
|
||||
| "density1d_qmcvar" -> Density1d_qmcvar
|
||||
| "dipole_qmcvar" -> Dipole_qmcvar
|
||||
| "drift_mod_qmcvar" -> Drift_mod_qmcvar
|
||||
| "e_kin_qmcvar" -> E_kin_qmcvar
|
||||
| "e_loc_qmcvar" -> E_loc_qmcvar
|
||||
| "e_loc_one_qmcvar" -> E_loc_one_qmcvar
|
||||
| "e_loc_per_electron_qmcvar" -> E_loc_per_electron_qmcvar
|
||||
| "e_loc_split_core_qmcvar" -> E_loc_split_core_qmcvar
|
||||
| "e_loc_two_qmcvar" -> E_loc_two_qmcvar
|
||||
| "e_nucl_qmcvar" -> E_nucl_qmcvar
|
||||
| "e_pot_qmcvar" -> E_pot_qmcvar
|
||||
| "e_pot_one_qmcvar" -> E_pot_one_qmcvar
|
||||
| "n_s_inverted_qmcvar" -> N_s_inverted_qmcvar
|
||||
| "n_s_updated_qmcvar" -> N_s_updated_qmcvar
|
||||
| "n_s_updates_qmcvar" -> N_s_updates_qmcvar
|
||||
| "voronoi_charges_qmcvar" -> Voronoi_charges_qmcvar
|
||||
| "voronoi_charges_covariance_qmcvar" -> Voronoi_charges_covariance_qmcvar
|
||||
| "voronoi_dipoles_qmcvar" -> Voronoi_dipoles_qmcvar
|
||||
| "wf_extension_qmcvar" -> Wf_extension_qmcvar
|
||||
| p -> failwith ("unknown property "^p) ;;
|
||||
|
||||
|
||||
let to_string = function
|
||||
| Cpu -> "Cpu"
|
||||
| Wall -> "Wall"
|
||||
| Accep -> "Accep"
|
||||
| D_var_jast_a_up_dn -> "D_var_jast_a_up_dn"
|
||||
| D_var_jast_a_up_up -> "D_var_jast_a_up_up"
|
||||
| D_var_jast_b_up_dn -> "D_var_jast_b_up_dn"
|
||||
| D_var_jast_b_up_up -> "D_var_jast_b_up_up"
|
||||
| D_var_jast_core_a1 -> "D_var_jast_core_a1"
|
||||
| D_var_jast_core_b1 -> "D_var_jast_core_b1"
|
||||
| D_var_jast_een_e_a -> "D_var_jast_een_e_a"
|
||||
| D_var_jast_een_e_b -> "D_var_jast_een_e_b"
|
||||
| D_var_jast_een_n -> "D_var_jast_een_n"
|
||||
| D_var_jast_pen -> "D_var_jast_pen"
|
||||
| Density1d -> "Density1d"
|
||||
| Dipole -> "Dipole"
|
||||
| Drift_mod -> "Drift_mod"
|
||||
| E_kin -> "E_kin"
|
||||
| E_loc -> "E_loc"
|
||||
| E_loc_one -> "E_loc_one"
|
||||
| E_loc_per_electron -> "E_loc_per_electron"
|
||||
| E_loc_split_core -> "E_loc_split_core"
|
||||
| E_loc_two -> "E_loc_two"
|
||||
| E_nucl -> "E_nucl"
|
||||
| E_pot -> "E_pot"
|
||||
| E_pot_one -> "E_pot_one"
|
||||
| N_s_inverted -> "N_s_inverted"
|
||||
| N_s_updated -> "N_s_updated"
|
||||
| N_s_updates -> "N_s_updates"
|
||||
| Voronoi_charges -> "Voronoi_charges"
|
||||
| Voronoi_charges_covariance -> "Voronoi_charges_covariance"
|
||||
| Voronoi_dipoles -> "Voronoi_dipoles"
|
||||
| Wf_extension -> "Wf_extension"
|
||||
| D_var_jast_a_up_dn_qmcvar -> "D_var_jast_a_up_dn_qmcvar"
|
||||
| D_var_jast_a_up_up_qmcvar -> "D_var_jast_a_up_up_qmcvar"
|
||||
| D_var_jast_b_up_dn_qmcvar -> "D_var_jast_b_up_dn_qmcvar"
|
||||
| D_var_jast_b_up_up_qmcvar -> "D_var_jast_b_up_up_qmcvar"
|
||||
| D_var_jast_core_a1_qmcvar -> "D_var_jast_core_a1_qmcvar"
|
||||
| D_var_jast_core_b1_qmcvar -> "D_var_jast_core_b1_qmcvar"
|
||||
| D_var_jast_een_e_a_qmcvar -> "D_var_jast_een_e_a_qmcvar"
|
||||
| D_var_jast_een_e_b_qmcvar -> "D_var_jast_een_e_b_qmcvar"
|
||||
| D_var_jast_een_n_qmcvar -> "D_var_jast_een_n_qmcvar"
|
||||
| D_var_jast_pen_qmcvar -> "D_var_jast_pen_qmcvar"
|
||||
| Density1d_qmcvar -> "Density1d_qmcvar"
|
||||
| Dipole_qmcvar -> "Dipole_qmcvar"
|
||||
| Drift_mod_qmcvar -> "Drift_mod_qmcvar"
|
||||
| E_kin_qmcvar -> "E_kin_qmcvar"
|
||||
| E_loc_qmcvar -> "E_loc_qmcvar"
|
||||
| E_loc_one_qmcvar -> "E_loc_one_qmcvar"
|
||||
| E_loc_per_electron_qmcvar -> "E_loc_per_electron_qmcvar"
|
||||
| E_loc_split_core_qmcvar -> "E_loc_split_core_qmcvar"
|
||||
| E_loc_two_qmcvar -> "E_loc_two_qmcvar"
|
||||
| E_nucl_qmcvar -> "E_nucl_qmcvar"
|
||||
| E_pot_qmcvar -> "E_pot_qmcvar"
|
||||
| E_pot_one_qmcvar -> "E_pot_one_qmcvar"
|
||||
| N_s_inverted_qmcvar -> "N_s_inverted_qmcvar"
|
||||
| N_s_updated_qmcvar -> "N_s_updated_qmcvar"
|
||||
| N_s_updates_qmcvar -> "N_s_updates_qmcvar"
|
||||
| Voronoi_charges_qmcvar -> "Voronoi_charges_qmcvar"
|
||||
| Voronoi_charges_covariance_qmcvar -> "Voronoi_charges_covariance_qmcvar"
|
||||
| Voronoi_dipoles_qmcvar -> "Voronoi_dipoles_qmcvar"
|
||||
| Wf_extension_qmcvar -> "Wf_extension_qmcvar"
|
||||
;;
|
||||
|
||||
|
||||
let is_scalar = function
|
||||
| Cpu -> true
|
||||
| Wall -> true
|
||||
| Accep -> true
|
||||
| D_var_jast_a_up_dn | D_var_jast_a_up_dn_qmcvar -> false
|
||||
| D_var_jast_a_up_up | D_var_jast_a_up_up_qmcvar -> false
|
||||
| D_var_jast_b_up_dn | D_var_jast_b_up_dn_qmcvar -> false
|
||||
| D_var_jast_b_up_up | D_var_jast_b_up_up_qmcvar -> false
|
||||
| D_var_jast_core_a1 | D_var_jast_core_a1_qmcvar -> false
|
||||
| D_var_jast_core_b1 | D_var_jast_core_b1_qmcvar -> false
|
||||
| D_var_jast_een_e_a | D_var_jast_een_e_a_qmcvar -> false
|
||||
| D_var_jast_een_e_b | D_var_jast_een_e_b_qmcvar -> false
|
||||
| D_var_jast_een_n | D_var_jast_een_n_qmcvar -> false
|
||||
| D_var_jast_pen | D_var_jast_pen_qmcvar -> false
|
||||
| Density1d | Density1d_qmcvar -> false
|
||||
| Dipole | Dipole_qmcvar -> false
|
||||
| Drift_mod | Drift_mod_qmcvar -> false
|
||||
| E_kin | E_kin_qmcvar -> true
|
||||
| E_loc | E_loc_qmcvar -> true
|
||||
| E_loc_one | E_loc_one_qmcvar -> true
|
||||
| E_loc_per_electron | E_loc_per_electron_qmcvar -> false
|
||||
| E_loc_split_core | E_loc_split_core_qmcvar -> false
|
||||
| E_loc_two | E_loc_two_qmcvar -> true
|
||||
| E_nucl | E_nucl_qmcvar -> true
|
||||
| E_pot | E_pot_qmcvar -> true
|
||||
| E_pot_one | E_pot_one_qmcvar -> true
|
||||
| N_s_inverted | N_s_inverted_qmcvar -> true
|
||||
| N_s_updated | N_s_updated_qmcvar -> true
|
||||
| N_s_updates | N_s_updates_qmcvar -> true
|
||||
| Voronoi_charges | Voronoi_charges_qmcvar -> false
|
||||
| Voronoi_charges_covariance | Voronoi_charges_covariance_qmcvar -> false
|
||||
| Voronoi_dipoles | Voronoi_dipoles_qmcvar -> false
|
||||
| Wf_extension | Wf_extension_qmcvar -> true
|
||||
;;
|
||||
|
||||
|
||||
let all = [ Cpu ; Wall ; Accep ;
|
||||
D_var_jast_a_up_dn ; D_var_jast_a_up_up ; D_var_jast_b_up_dn ; D_var_jast_b_up_up ; D_var_jast_core_a1 ; D_var_jast_core_b1 ; D_var_jast_een_e_a ; D_var_jast_een_e_b ; D_var_jast_een_n ; D_var_jast_pen ; Density1d ; Dipole ; Drift_mod ; E_kin ; E_loc ; E_loc_one ; E_loc_per_electron ; E_loc_split_core ; E_loc_two ; E_nucl ; E_pot ; E_pot_one ; N_s_inverted ; N_s_updated ; N_s_updates ; Voronoi_charges ; Voronoi_charges_covariance ; Voronoi_dipoles ; Wf_extension ; ];;
|
@ -8,6 +8,4 @@ fi
|
||||
|
||||
cd ${QMCCHEM_PATH}/ocaml || exit -1
|
||||
|
||||
cp ${QMCCHEM_PATH}/EZFIO/Ocaml/ezfio.ml . || exit -1
|
||||
|
||||
exec ninja -f generated.ninja ${@}
|
||||
|
@ -8,6 +8,8 @@ fi
|
||||
|
||||
cd ${QMCCHEM_PATH}/ocaml || exit -1
|
||||
|
||||
cp ${QMCCHEM_PATH}/EZFIO/Ocaml/ezfio.ml . || exit -1
|
||||
|
||||
LSMD5_FILE=${QMCCHEM_PATH}/ocaml/.ls_md5
|
||||
FILES="*.ml *.mli"
|
||||
MD5=$(ls -ltr --full-time ${FILES} 2>/dev/null | md5sum | cut -d ' ' -f 1)
|
||||
|
8
src/.gitignore
vendored
Normal file
8
src/.gitignore
vendored
Normal file
@ -0,0 +1,8 @@
|
||||
IRPF90_temp/
|
||||
IRPF90_man/
|
||||
irpf90.make
|
||||
irpf90_entities
|
||||
tags
|
||||
.ls_md5
|
||||
Makefile
|
||||
properties.pyc
|
@ -19,7 +19,9 @@ subroutine get_elec_coord_full(elec_coord_full_out,lda)
|
||||
integer(ZMQ_PTR) :: msg
|
||||
character*(32) :: buffer
|
||||
integer :: sze
|
||||
integer :: block_time_int
|
||||
|
||||
block_time_int = int(block_time)
|
||||
msg = f77_zmq_msg_new()
|
||||
sze = 0
|
||||
do k=1,walk_num
|
||||
@ -27,17 +29,18 @@ subroutine get_elec_coord_full(elec_coord_full_out,lda)
|
||||
do i=1,elec_num+1
|
||||
rc = f77_zmq_msg_init(msg)
|
||||
rc = -1
|
||||
do l=1,2*block_time
|
||||
do l=1,2*block_time_int
|
||||
rc = f77_zmq_msg_recv(msg,zmq_to_dataserver_socket,ZMQ_NOBLOCK)
|
||||
if (rc > 0) then
|
||||
exit
|
||||
endif
|
||||
if (l==2*block_time) then
|
||||
call abrt(irp_here, 'Unable to get walkers')
|
||||
endif
|
||||
call sleep(1)
|
||||
enddo
|
||||
if (l>=2*block_time_int) then
|
||||
call abrt(irp_here, 'Unable to get walkers')
|
||||
endif
|
||||
sze += rc
|
||||
buffer = ''
|
||||
rc = f77_zmq_msg_copy_from_data(msg, buffer)
|
||||
rc = f77_zmq_msg_close(msg)
|
||||
buffer = trim(adjustl(buffer))
|
||||
|
@ -50,7 +50,7 @@ subroutine zmq_ezfio_get_logical(cmd_in,w,d)
|
||||
character*(*) :: cmd_in
|
||||
character*(128) :: cmd
|
||||
|
||||
character(len=:), allocatable :: buffer
|
||||
character(len=1), allocatable :: buffer(:)
|
||||
integer :: buffer_size
|
||||
character*(20) :: buffer_size_char
|
||||
integer :: rc
|
||||
@ -61,11 +61,27 @@ subroutine zmq_ezfio_get_logical(cmd_in,w,d)
|
||||
|
||||
rc = f77_zmq_recv(zmq_to_dataserver_socket, buffer_size_char, len(buffer_size_char), ZMQ_SNDMORE)
|
||||
read(buffer_size_char(1:rc),*) buffer_size
|
||||
allocate (character(len=buffer_size) :: buffer)
|
||||
allocate (buffer(buffer_size+1))
|
||||
buffer = ' '
|
||||
call zmq_ezfio_get_logical2(buffer,buffer_size,w,d)
|
||||
deallocate(buffer)
|
||||
end
|
||||
|
||||
subroutine zmq_ezfio_get_logical2(buffer,buffer_size,w,d)
|
||||
implicit none
|
||||
use f77_zmq
|
||||
BEGIN_DOC
|
||||
! Fetch a logical variable in EZFIO using ZMQ
|
||||
END_DOC
|
||||
|
||||
integer, intent(in) :: d
|
||||
logical, intent(out) :: w(d)
|
||||
integer, intent(in) :: buffer_size
|
||||
character(len=buffer_size), intent(inout) :: buffer
|
||||
integer :: rc
|
||||
|
||||
rc = f77_zmq_recv(zmq_to_dataserver_socket, buffer, buffer_size, 0)
|
||||
read( buffer(1:rc), *) w(1:d)
|
||||
deallocate(buffer)
|
||||
end
|
||||
|
||||
|
||||
@ -82,7 +98,7 @@ subroutine zmq_ezfio_get_double_precision(cmd_in,w,d)
|
||||
character*(*) :: cmd_in
|
||||
character*(128) :: cmd
|
||||
|
||||
character(len=:), allocatable :: buffer
|
||||
character(len=1), allocatable :: buffer(:)
|
||||
integer :: buffer_size
|
||||
character*(20) :: buffer_size_char
|
||||
integer :: rc
|
||||
@ -93,14 +109,28 @@ subroutine zmq_ezfio_get_double_precision(cmd_in,w,d)
|
||||
|
||||
rc = f77_zmq_recv(zmq_to_dataserver_socket, buffer_size_char, len(buffer_size_char), ZMQ_SNDMORE)
|
||||
read(buffer_size_char(1:rc),*) buffer_size
|
||||
allocate (character(len=buffer_size) :: buffer)
|
||||
|
||||
rc = f77_zmq_recv(zmq_to_dataserver_socket, buffer, buffer_size, 0)
|
||||
read( buffer(1:rc), *) w(1:d)
|
||||
|
||||
allocate (buffer(buffer_size+1))
|
||||
buffer = ' '
|
||||
call zmq_ezfio_get_double_precision2(buffer,buffer_size,w,d)
|
||||
deallocate(buffer)
|
||||
end
|
||||
|
||||
subroutine zmq_ezfio_get_double_precision2(buffer,buffer_size,w,d)
|
||||
implicit none
|
||||
use f77_zmq
|
||||
BEGIN_DOC
|
||||
! Fetch a double precision variable in EZFIO using ZMQ
|
||||
END_DOC
|
||||
|
||||
integer, intent(in) :: d
|
||||
double precision, intent(out) :: w(d)
|
||||
integer, intent(in) :: buffer_size
|
||||
character(len=buffer_size), intent(inout) :: buffer
|
||||
integer :: rc
|
||||
|
||||
rc = f77_zmq_recv(zmq_to_dataserver_socket, buffer, buffer_size, 0)
|
||||
read( buffer(1:rc), *) w(1:d)
|
||||
end
|
||||
|
||||
subroutine zmq_ezfio_get_integer(cmd_in,w,d)
|
||||
implicit none
|
||||
@ -114,7 +144,7 @@ subroutine zmq_ezfio_get_integer(cmd_in,w,d)
|
||||
character*(*) :: cmd_in
|
||||
character*(128) :: cmd
|
||||
|
||||
character(len=:), allocatable :: buffer
|
||||
character(len=1), allocatable :: buffer(:)
|
||||
integer :: buffer_size
|
||||
character*(20) :: buffer_size_char
|
||||
integer :: rc
|
||||
@ -125,14 +155,28 @@ subroutine zmq_ezfio_get_integer(cmd_in,w,d)
|
||||
|
||||
rc = f77_zmq_recv(zmq_to_dataserver_socket, buffer_size_char, len(buffer_size_char), ZMQ_SNDMORE)
|
||||
read(buffer_size_char(1:rc),*) buffer_size
|
||||
allocate (character(len=buffer_size) :: buffer)
|
||||
|
||||
rc = f77_zmq_recv(zmq_to_dataserver_socket, buffer, buffer_size, 0)
|
||||
read( buffer(1:rc), *) w(1:d)
|
||||
|
||||
allocate (buffer(buffer_size+1))
|
||||
buffer = ' '
|
||||
call zmq_ezfio_get_integer2(buffer,buffer_size,w,d)
|
||||
deallocate(buffer)
|
||||
end
|
||||
|
||||
subroutine zmq_ezfio_get_integer2(buffer,buffer_size,w,d)
|
||||
implicit none
|
||||
use f77_zmq
|
||||
BEGIN_DOC
|
||||
! Fetch a integer variable in EZFIO using ZMQ
|
||||
END_DOC
|
||||
|
||||
integer, intent(in) :: d
|
||||
integer, intent(out) :: w(d)
|
||||
integer, intent(in) :: buffer_size
|
||||
character(len=buffer_size), intent(inout) :: buffer
|
||||
integer :: rc
|
||||
|
||||
rc = f77_zmq_recv(zmq_to_dataserver_socket, buffer, buffer_size, 0)
|
||||
read( buffer(1:rc), *) w(1:d)
|
||||
end
|
||||
|
||||
subroutine zmq_ezfio_get_integer8(cmd_in,w,d)
|
||||
implicit none
|
||||
@ -146,7 +190,7 @@ subroutine zmq_ezfio_get_integer8(cmd_in,w,d)
|
||||
character*(*) :: cmd_in
|
||||
character*(128) :: cmd
|
||||
|
||||
character(len=:), allocatable :: buffer
|
||||
character(len=1), allocatable :: buffer(:)
|
||||
integer :: buffer_size
|
||||
character*(20) :: buffer_size_char
|
||||
integer :: rc
|
||||
@ -157,12 +201,27 @@ subroutine zmq_ezfio_get_integer8(cmd_in,w,d)
|
||||
|
||||
rc = f77_zmq_recv(zmq_to_dataserver_socket, buffer_size_char, len(buffer_size_char), ZMQ_SNDMORE)
|
||||
read(buffer_size_char(1:rc),*) buffer_size
|
||||
allocate (character(len=buffer_size) :: buffer)
|
||||
allocate (buffer(buffer_size+1))
|
||||
buffer = ' '
|
||||
call zmq_ezfio_get_integer82(buffer,buffer_size,w,d)
|
||||
deallocate(buffer)
|
||||
end
|
||||
|
||||
subroutine zmq_ezfio_get_integer82(buffer,buffer_size,w,d)
|
||||
implicit none
|
||||
use f77_zmq
|
||||
BEGIN_DOC
|
||||
! Fetch a integer variable in EZFIO using ZMQ
|
||||
END_DOC
|
||||
|
||||
integer, intent(in) :: d
|
||||
integer*8, intent(out) :: w(d)
|
||||
integer, intent(in) :: buffer_size
|
||||
character(len=buffer_size), intent(inout) :: buffer
|
||||
integer :: rc
|
||||
|
||||
rc = f77_zmq_recv(zmq_to_dataserver_socket, buffer, buffer_size, 0)
|
||||
read( buffer(1:rc), *) w(1:d)
|
||||
|
||||
deallocate(buffer)
|
||||
end
|
||||
|
||||
|
||||
@ -180,7 +239,7 @@ subroutine zmq_ezfio_get_real(cmd_in,w,d)
|
||||
character*(*) :: cmd_in
|
||||
character*(128) :: cmd
|
||||
|
||||
character(len=:), allocatable :: buffer
|
||||
character(len=1), allocatable :: buffer(:)
|
||||
integer :: buffer_size
|
||||
character*(20) :: buffer_size_char
|
||||
|
||||
@ -190,15 +249,31 @@ subroutine zmq_ezfio_get_real(cmd_in,w,d)
|
||||
|
||||
rc = f77_zmq_recv(zmq_to_dataserver_socket, buffer_size_char, len(buffer_size_char), ZMQ_SNDMORE)
|
||||
read(buffer_size_char(1:rc),*) buffer_size
|
||||
allocate (character(len=buffer_size) :: buffer)
|
||||
allocate (buffer(buffer_size+1))
|
||||
buffer = ' '
|
||||
call zmq_ezfio_get_real2(buffer,buffer_size,w,d)
|
||||
deallocate(buffer)
|
||||
end
|
||||
|
||||
subroutine zmq_ezfio_get_real2(buffer,buffer_size,w,d)
|
||||
implicit none
|
||||
use f77_zmq
|
||||
BEGIN_DOC
|
||||
! Fetch a real variable in EZFIO using ZMQ
|
||||
END_DOC
|
||||
|
||||
integer, intent(in) :: d
|
||||
real, intent(out) :: w(d)
|
||||
integer, intent(in) :: buffer_size
|
||||
character(len=buffer_size), intent(inout) :: buffer
|
||||
integer :: rc
|
||||
|
||||
rc = f77_zmq_recv(zmq_to_dataserver_socket, buffer, buffer_size, 0)
|
||||
read( buffer(1:rc), *) w(1:d)
|
||||
|
||||
deallocate(buffer)
|
||||
end
|
||||
|
||||
|
||||
|
||||
subroutine zmq_ezfio_get_character(cmd_in,w,d)
|
||||
implicit none
|
||||
use f77_zmq
|
||||
@ -213,7 +288,7 @@ subroutine zmq_ezfio_get_character(cmd_in,w,d)
|
||||
character*(*) :: cmd_in
|
||||
character*(128) :: cmd
|
||||
|
||||
character(len=:), allocatable :: buffer
|
||||
character(len=1), allocatable :: buffer(:)
|
||||
integer :: buffer_size
|
||||
character*(20) :: buffer_size_char
|
||||
|
||||
@ -223,12 +298,29 @@ subroutine zmq_ezfio_get_character(cmd_in,w,d)
|
||||
|
||||
rc = f77_zmq_recv(zmq_to_dataserver_socket, buffer_size_char, len(buffer_size_char), ZMQ_SNDMORE)
|
||||
read(buffer_size_char(1:rc),*) buffer_size
|
||||
allocate (character(len=buffer_size) :: buffer)
|
||||
|
||||
rc = f77_zmq_recv(zmq_to_dataserver_socket, buffer, buffer_size, 0)
|
||||
read( buffer(1:rc), '(A)') w
|
||||
|
||||
allocate (buffer(buffer_size+1))
|
||||
buffer = ' '
|
||||
call zmq_ezfio_get_character2(buffer,buffer_size,w,d)
|
||||
deallocate(buffer)
|
||||
end
|
||||
|
||||
|
||||
subroutine zmq_ezfio_get_character2(buffer,buffer_size,w,d)
|
||||
implicit none
|
||||
use f77_zmq
|
||||
BEGIN_DOC
|
||||
! Fetch a character variable in EZFIO using ZMQ
|
||||
END_DOC
|
||||
|
||||
integer, intent(in) :: d
|
||||
character*(*), intent(out) :: w
|
||||
integer, intent(in) :: buffer_size
|
||||
character(len=buffer_size), intent(inout) :: buffer
|
||||
integer :: rc
|
||||
|
||||
rc = f77_zmq_recv(zmq_to_dataserver_socket, buffer, buffer_size, 0)
|
||||
w = buffer(1:buffer_size)
|
||||
end
|
||||
|
||||
|
||||
|
||||
|
@ -217,7 +217,7 @@ BEGIN_PROVIDER [ double precision, ci_threshold ]
|
||||
END_DOC
|
||||
ci_threshold = 0.d0
|
||||
call get_simulation_ci_threshold(ci_threshold)
|
||||
call rinfo(irp_here,'ci_threshold',ci_threshold)
|
||||
call dinfo(irp_here,'ci_threshold',ci_threshold)
|
||||
|
||||
END_PROVIDER
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user