mirror of
https://github.com/LCPQ/quantum_package
synced 2024-12-23 12:56:14 +01:00
ei_handler now handle ezfio_default
This commit is contained in:
parent
b281ab1248
commit
ba190353e8
@ -1,6 +0,0 @@
|
|||||||
full_ci
|
|
||||||
n_det_max_fci 10000
|
|
||||||
n_det_max_fci_property 50000
|
|
||||||
pt2_max 1.e-4
|
|
||||||
do_pt2_end True
|
|
||||||
var_pt2_ratio 0.75
|
|
@ -58,9 +58,9 @@ def is_bool(str_):
|
|||||||
fortran and ocaml one.
|
fortran and ocaml one.
|
||||||
"""
|
"""
|
||||||
if str_.lower() in ['true', '.true.']:
|
if str_.lower() in ['true', '.true.']:
|
||||||
return Type(None, "true", ".True.")
|
return Type(None, "True", ".True.")
|
||||||
elif str_.lower() in ['false', '.False.']:
|
elif str_.lower() in ['false', '.False.']:
|
||||||
return Type(None, "false", ".False")
|
return Type(None, "False", ".False")
|
||||||
else:
|
else:
|
||||||
raise TypeError
|
raise TypeError
|
||||||
|
|
||||||
@ -236,7 +236,7 @@ def get_dict_config_file(config_file_path, module_lower):
|
|||||||
if option in d_default:
|
if option in d_default:
|
||||||
d[pvd][option] = d_default[option]
|
d[pvd][option] = d_default[option]
|
||||||
|
|
||||||
# If interface is output we need a default value information
|
# If interface is input we need a default value information
|
||||||
if d[pvd]["interface"] == "input":
|
if d[pvd]["interface"] == "input":
|
||||||
try:
|
try:
|
||||||
default_raw = config_file.get(section, "default")
|
default_raw = config_file.get(section, "default")
|
||||||
@ -312,7 +312,7 @@ def save_ezfio_provider(path_head, dict_code_provider):
|
|||||||
f.write(output)
|
f.write(output)
|
||||||
|
|
||||||
|
|
||||||
def create_ezfio_config(dict_ezfio_cfg):
|
def create_ezfio_stuff(dict_ezfio_cfg, config_or_default="config"):
|
||||||
"""
|
"""
|
||||||
From dict_ezfio_cfg[provider_name] = {type, default, ezfio_name,ezfio_dir,doc}
|
From dict_ezfio_cfg[provider_name] = {type, default, ezfio_name,ezfio_dir,doc}
|
||||||
Return the string ezfio_interface_config
|
Return the string ezfio_interface_config
|
||||||
@ -383,18 +383,32 @@ def create_ezfio_config(dict_ezfio_cfg):
|
|||||||
str_fortran_type = str_type_format(fortran_type_raw)
|
str_fortran_type = str_type_format(fortran_type_raw)
|
||||||
|
|
||||||
# Return the string
|
# Return the string
|
||||||
|
if config_or_default == "config":
|
||||||
s = " {0} {1} {2}".format(str_name, str_fortran_type, str_size)
|
s = " {0} {1} {2}".format(str_name, str_fortran_type, str_size)
|
||||||
|
elif config_or_default == "default":
|
||||||
|
try:
|
||||||
|
str_value = provider_info["default"].ocaml
|
||||||
|
except KeyError:
|
||||||
|
continue
|
||||||
|
else:
|
||||||
|
s = " {0} {1}".format(str_name, str_value)
|
||||||
|
else:
|
||||||
|
raise KeyError
|
||||||
# Append
|
# Append
|
||||||
result.append(s)
|
result.append(s)
|
||||||
|
|
||||||
return "\n".join(result)
|
return "\n".join(result)
|
||||||
|
|
||||||
|
|
||||||
|
def create_ezfio_config(dict_ezfio_cfg):
|
||||||
|
return create_ezfio_stuff(dict_ezfio_cfg,
|
||||||
|
config_or_default="config")
|
||||||
|
|
||||||
|
|
||||||
def save_ezfio_config(module_lower, str_ezfio_config):
|
def save_ezfio_config(module_lower, str_ezfio_config):
|
||||||
"""
|
"""
|
||||||
Write the str_ezfio_config in
|
Write the str_ezfio_config in
|
||||||
$QPACKAGE_ROOT/EZFIO/{0}.ezfio_interface_config".format(module_lower)
|
"$QPACKAGE_ROOT/EZFIO/{0}.ezfio_interface_config".format(module_lower)
|
||||||
"""
|
"""
|
||||||
|
|
||||||
root_ezfio = "{0}/EZFIO".format(os.environ['QPACKAGE_ROOT'])
|
root_ezfio = "{0}/EZFIO".format(os.environ['QPACKAGE_ROOT'])
|
||||||
@ -414,6 +428,34 @@ def save_ezfio_config(module_lower, str_ezfio_config):
|
|||||||
f.write(str_ezfio_config)
|
f.write(str_ezfio_config)
|
||||||
|
|
||||||
|
|
||||||
|
def create_ezfio_default(dict_ezfio_cfg):
|
||||||
|
return create_ezfio_stuff(dict_ezfio_cfg,
|
||||||
|
config_or_default="default")
|
||||||
|
|
||||||
|
|
||||||
|
def save_ezfio_default(module_lower, str_ezfio_default):
|
||||||
|
"""
|
||||||
|
Write the str_ezfio_config in
|
||||||
|
"$QPACKAGE_ROOT/data/ezfio_defaults/{0}.ezfio_interface_default".format(module_lower)
|
||||||
|
"""
|
||||||
|
|
||||||
|
root_ezfio_default = "{0}/data/ezfio_defaults/".format(os.environ['QPACKAGE_ROOT'])
|
||||||
|
path = "{0}/{1}.ezfio_interface_default".format(root_ezfio_default,
|
||||||
|
module_lower)
|
||||||
|
|
||||||
|
try:
|
||||||
|
f = open(path, "r")
|
||||||
|
except IOError:
|
||||||
|
old_output = ""
|
||||||
|
else:
|
||||||
|
old_output = f.read()
|
||||||
|
f.close()
|
||||||
|
|
||||||
|
if str_ezfio_default != old_output:
|
||||||
|
with open(path, "w") as f:
|
||||||
|
f.write(str_ezfio_default)
|
||||||
|
|
||||||
|
|
||||||
def create_ocaml_input(dict_ezfio_cfg):
|
def create_ocaml_input(dict_ezfio_cfg):
|
||||||
|
|
||||||
l_provider = []
|
l_provider = []
|
||||||
@ -580,6 +622,13 @@ def main():
|
|||||||
str_ezfio_config = create_ezfio_config(dict_ezfio_cfg)
|
str_ezfio_config = create_ezfio_config(dict_ezfio_cfg)
|
||||||
save_ezfio_config(module_lower, str_ezfio_config)
|
save_ezfio_config(module_lower, str_ezfio_config)
|
||||||
|
|
||||||
|
# ~#~#~#~#~#~#~#~#~#~#~#~#~#~ #
|
||||||
|
# e z f i o _ d e f a u l t #
|
||||||
|
# ~#~#~#~#~#~#~#~#~#~#~#~#~#~ #
|
||||||
|
|
||||||
|
str_ezfio_default = create_ezfio_default(dict_ezfio_cfg)
|
||||||
|
save_ezfio_default(module_lower, str_ezfio_default)
|
||||||
|
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
main()
|
main()
|
||||||
|
Loading…
Reference in New Issue
Block a user