implement t0 and t1 import from openQCD, allow no param file for these
This commit is contained in:
parent
4d1ea92b19
commit
7fc8e91a3e
4 changed files with 148 additions and 28 deletions
|
@ -9,7 +9,7 @@ from pyerrors import Obs, Corr
|
|||
from hashlib import sha256
|
||||
|
||||
|
||||
def write_measurement(path, ensemble, measurement, uuid, code, parameter_file):
|
||||
def write_measurement(path, ensemble, measurement, uuid, code, parameter_file=None):
|
||||
"""
|
||||
Write a measurement to the backlog.
|
||||
If the file for the measurement already exists, update the measurement.
|
||||
|
@ -49,17 +49,33 @@ def write_measurement(path, ensemble, measurement, uuid, code, parameter_file):
|
|||
pars[subkey] = sfcf.get_specs(corr + "/" + subkey, parameters)
|
||||
|
||||
elif code == "openQCD":
|
||||
parameters = openQCD.read_param(path, uuid, parameter_file)
|
||||
pars = {}
|
||||
subkeys = []
|
||||
for i in range(len(parameters["rw_fcts"])):
|
||||
par_list = []
|
||||
for k in parameters["rw_fcts"][i].keys():
|
||||
par_list.append(str(parameters["rw_fcts"][i][k]))
|
||||
ms_type = list(measurement.keys())[0]
|
||||
if ms_type == 'ms1':
|
||||
parameters = openQCD.read_ms1_param(path, uuid, parameter_file)
|
||||
pars = {}
|
||||
subkeys = []
|
||||
for i in range(len(parameters["rw_fcts"])):
|
||||
par_list = []
|
||||
for k in parameters["rw_fcts"][i].keys():
|
||||
par_list.append(str(parameters["rw_fcts"][i][k]))
|
||||
subkey = "/".join(par_list)
|
||||
subkeys.append(subkey)
|
||||
pars[subkey] = json.dumps(parameters["rw_fcts"][i])
|
||||
elif ms_type in ['t0', 't1']:
|
||||
if parameter_file is not None:
|
||||
parameters = openQCD.read_ms3_param(path, uuid, parameter_file)
|
||||
else:
|
||||
parameters = {}
|
||||
for rwp in ["integrator", "eps", "ntot", "dnms"]:
|
||||
parameters[rwp] = "Unknown"
|
||||
pars = {}
|
||||
subkeys = []
|
||||
par_list= []
|
||||
for k in ["integrator", "eps", "ntot", "dnms"]:
|
||||
par_list.append(str(parameters[k]))
|
||||
subkey = "/".join(par_list)
|
||||
subkeys.append(subkey)
|
||||
pars[subkey] = json.dumps(parameters["rw_fcts"][i])
|
||||
|
||||
subkeys = [subkey]
|
||||
pars[subkey] = json.dumps(parameters)
|
||||
for subkey in subkeys:
|
||||
parHash = sha256(str(pars[subkey]).encode('UTF-8')).hexdigest()
|
||||
meas_path = file_in_archive + "::" + parHash
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue