Merge branch 'master' of kuhl-mann.de:jkuhl/corrlib
This commit is contained in:
commit
005840d212
2 changed files with 15 additions and 7 deletions
|
@ -73,14 +73,15 @@ def filter_results(results, **kwargs):
|
|||
if (quark_thetas[0] != param['quarks'][0]['thetas'] and quark_thetas[1] != param['quarks'][1]['thetas']) or (quark_thetas[0] != param['quarks'][1]['thetas'] and quark_thetas[1] != param['quarks'][0]['thetas']):
|
||||
drops.append(ind)
|
||||
continue
|
||||
# careful, this is not save, when multiple contributions are present!
|
||||
if 'wf1' in kwargs:
|
||||
wf1 = kwargs['wf1']
|
||||
if (wf1[0] != param['wf1'][0]) or (wf1[1][0] != param['wf1'][1][0]) or (wf1[1][1] != param['wf1'][1][1]):
|
||||
if (wf1[0][0] != param['wf1'][0][0]) or (wf1[0][1][0] != param['wf1'][0][1][0]) or (wf1[0][1][1] != param['wf1'][0][1][1]):
|
||||
drops.append(ind)
|
||||
continue
|
||||
if 'wf2' in kwargs:
|
||||
wf2 = kwargs['wf2']
|
||||
if (wf2[0] != param['wf2'][0]) or (wf2[1][0] != param['wf2'][1][0]) or (wf2[1][1] != param['wf2'][1][1]):
|
||||
if (wf2[0][0] != param['wf2'][0][0]) or (wf2[0][1][0] != param['wf2'][0][1][0]) or (wf2[0][1][1] != param['wf2'][0][1][1]):
|
||||
drops.append(ind)
|
||||
continue
|
||||
|
||||
|
@ -91,7 +92,7 @@ def find_record(path, ensemble, correlator_name, project=None, code=None, parame
|
|||
db = path + '/backlogger.db'
|
||||
if os.path.exists(db):
|
||||
dl.get(db, dataset=path)
|
||||
results = _db_lookup(db, ensemble, correlator_name, project, code=None, parameters=None, created_before=created_before, created_after=created_after, updated_before=updated_before, updated_after=updated_after, revision=revision)
|
||||
results = _db_lookup(db, ensemble, correlator_name, project, code=code, parameters=parameters, created_before=created_before, created_after=created_after, updated_before=updated_before, updated_after=updated_after, revision=revision)
|
||||
results = filter_results(results, **kwargs)
|
||||
print("Found " + str(len(results)) + " results")
|
||||
return results.reset_index()
|
||||
|
|
|
@ -100,7 +100,7 @@ def load_record(path: str, meas_path: str):
|
|||
return load_records(path, [meas_path])[0]
|
||||
|
||||
|
||||
def load_records(path: str, meas_paths: list[str]) -> list[Union[Corr, Obs]]:
|
||||
def load_records(path: str, meas_paths: list[str], preloaded = {}) -> list[Union[Corr, Obs]]:
|
||||
"""
|
||||
Load a list of records by their paths.
|
||||
|
||||
|
@ -122,15 +122,22 @@ def load_records(path: str, meas_paths: list[str]) -> list[Union[Corr, Obs]]:
|
|||
needed_data[file] = []
|
||||
key = mpath.split("::")[1]
|
||||
needed_data[file].append(key)
|
||||
dl.get([os.path.join(path, file) for file in needed_data.keys()], dataset=path)
|
||||
for filename in needed_data.keys():
|
||||
if not filename in preloaded:
|
||||
preloaded[filename] = preload(path, filename)
|
||||
returned_data: list = []
|
||||
for filename in needed_data.keys():
|
||||
filedict = pj.load_json_dict(os.path.join(path, filename))
|
||||
for key in list(needed_data[filename]):
|
||||
returned_data.append(filedict[key])
|
||||
returned_data.append(preloaded[filename][key])
|
||||
return returned_data
|
||||
|
||||
|
||||
def preload(path: str, file: str):
|
||||
dl.get(os.path.join(path, file), dataset=path)
|
||||
filedict = pj.load_json_dict(os.path.join(path, file))
|
||||
return filedict
|
||||
|
||||
|
||||
def drop_record(path: str, meas_path: str):
|
||||
file = meas_path.split("::")[0]
|
||||
sub_key = meas_path.split("::")[1]
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue