Skip to content
Snippets Groups Projects

Devel/fe2ti postprocessing

Merged Christoph Alt requested to merge devel/fe2ti_postprocessing into main
Compare and
3 files
+ 136
1
Preferences
Compare changes
Files
3
@@ -8,3 +8,22 @@ def mesa_pd_text(line: str):
return m.group(1), float(m.group(2))
raise ValueError()
def fe2ti_parse_complete_timing(line: str) -> dict:
if not line.startswith("Abs"):
raise ValueError()
pattern = r'([A-Za-z][A-Za-z _]+):\s*(\d+\.\d+)s\s*'
return {name: float(value) for name, value in re.findall(pattern, line)}
def fe2ti_intermediate(line: str) -> dict:
pattern_step_info = r'([A-Za-z_]+)\s+(\d+)\s*'
step_info = {name: cnt for name, cnt in re.findall(pattern_step_info, line)}
if not step_info:
raise ValueError("Empty Step Info")
pattern_fields = r'\s*([A-za-z_|0-9]+):\s*((\d+\.\d+e-\d+)|(\d+\.\d+)|(\d+))s?\s*'
fields = {name: float(value) for name, value, *_ in re.findall(pattern_fields, line)}
if not fields:
raise ValueError("Empty fields")
return {'step_info': step_info, 'fields': fields}