From f4b4f62618ccdc60a07da1284d3b2821a9255a6f Mon Sep 17 00:00:00 2001 From: Anthony Scemama Date: Sat, 31 Jul 2021 11:33:20 +0200 Subject: [PATCH] Integrated Jastrow Mu --- ezfio_config/qmc.config | 1 + ocaml/Input.ml | 10 ++++++---- src/JASTROW/jastrow_full.irp.f | 3 +++ src/JASTROW/jastrow_param.irp.f | 4 +++- src/types.F | 3 ++- 5 files changed, 15 insertions(+), 6 deletions(-) diff --git a/ezfio_config/qmc.config b/ezfio_config/qmc.config index 35ee84d..fc36452 100644 --- a/ezfio_config/qmc.config +++ b/ezfio_config/qmc.config @@ -83,6 +83,7 @@ jastrow jast_a_up_dn real jast_b_up_up real jast_b_up_dn real + mu_erf real jast_pen real (nuclei_nucl_num) jast_eeN_e_a real (nuclei_nucl_num) jast_eeN_e_b real (nuclei_nucl_num) diff --git a/ocaml/Input.ml b/ocaml/Input.ml index efd9292..3eee3c0 100644 --- a/ocaml/Input.ml +++ b/ocaml/Input.ml @@ -775,7 +775,7 @@ end module Jastrow_type : sig - type t = None | Core | Simple + type t = None | Core | Simple | Mu val doc : string val read : unit -> t val write : t -> unit @@ -784,20 +784,22 @@ module Jastrow_type : sig end = struct - type t = None | Core | Simple - let doc = "Type of Jastrow factor [ None | Core | Simple ]" + type t = None | Core | Simple | Mu + let doc = "Type of Jastrow factor [ None | Core | Simple | Mu ]" let of_string s = match String.capitalize_ascii (String.trim s) with | "Core" -> Core | "Simple" -> Simple | "None" -> None - | _ -> failwith "Jastrow type should be [ None | Core | Simple ]" + | "Mu" -> Mu + | _ -> failwith "Jastrow type should be [ None | Core | Simple | Mu ]" let to_string = function | Core -> "Core" | Simple -> "Simple" + | Mu -> "Mu" | None -> "None" diff --git a/src/JASTROW/jastrow_full.irp.f b/src/JASTROW/jastrow_full.irp.f index c34aa8a..d4174ff 100644 --- a/src/JASTROW/jastrow_full.irp.f +++ b/src/JASTROW/jastrow_full.irp.f @@ -26,6 +26,7 @@ BEGIN_TEMPLATE SUBST [X] Simple ;; Core ;; +Mu ;; END_TEMPLATE if (ifirst == 0) then dshift = argexpo @@ -83,6 +84,7 @@ BEGIN_TEMPLATE SUBST [ X ] Simple ;; Core ;; +Mu ;; END_TEMPLATE !DIR$ VECTOR ALIGNED !DIR$ LOOP COUNT (200) @@ -129,6 +131,7 @@ BEGIN_TEMPLATE SUBST [X] Simple ;; Core ;; +Mu ;; END_TEMPLATE !DIR$ VECTOR ALIGNED diff --git a/src/JASTROW/jastrow_param.irp.f b/src/JASTROW/jastrow_param.irp.f index 3d1042b..95bb8bb 100644 --- a/src/JASTROW/jastrow_param.irp.f +++ b/src/JASTROW/jastrow_param.irp.f @@ -27,8 +27,10 @@ BEGIN_PROVIDER [ integer, jast_type ] jast_type = t_None else if (buffer == types(t_Core)) then jast_type = t_Core + else if (buffer == types(t_Mu)) then + jast_type = t_Mu else - call abrt(irp_here,'Jastrow type should be (None|Simple|Core)') + call abrt(irp_here,'Jastrow type should be (None|Simple|Core|Mu)') endif call cinfo(irp_here,'jast_type',buffer) diff --git a/src/types.F b/src/types.F index b3e1cac..6e28c15 100644 --- a/src/types.F +++ b/src/types.F @@ -11,6 +11,7 @@ integer, parameter :: t_Simple = 21 integer, parameter :: t_None = 22 + integer, parameter :: t_Mu = 23 integer, parameter :: t_Core = 24 integer, parameter :: t_Stopped = 0 @@ -41,7 +42,7 @@ ' ', & 'Simple ', & 'None ', & - ' ', & + 'Mu ', & 'Core ', & ' '/)