summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Friesel <daniel.friesel@uos.de>2021-03-10 14:23:37 +0100
committerDaniel Friesel <daniel.friesel@uos.de>2021-03-10 14:23:37 +0100
commit3b26f3a76b56d3052dd342f129a88ef7d55efbdc (patch)
treea0c2f87682372bcb96a6865a39a67b347f6515e1
parent6d5048f5ac8fb4a4e893d0f299a89becfaf59bf1 (diff)
analyze-archive --show-model=paramdetection: also show function arguments
-rwxr-xr-xbin/analyze-archive.py33
1 files changed, 22 insertions, 11 deletions
diff --git a/bin/analyze-archive.py b/bin/analyze-archive.py
index 582302d..0da824d 100755
--- a/bin/analyze-archive.py
+++ b/bin/analyze-archive.py
@@ -874,36 +874,47 @@ if __name__ == "__main__":
)
if "paramdetection" in show_models or "all" in show_models:
- for state in model.states_and_transitions:
- for attribute in model.attributes(state):
- info = param_info(state, attribute)
+ for name in model.names:
+ for attribute in model.attributes(name):
+ info = param_info(name, attribute)
print(
"{:10s} {:10s} non-param stddev {:f}".format(
- state,
+ name,
attribute,
- model.attr_by_name[state][attribute].stats.std_static,
+ model.attr_by_name[name][attribute].stats.std_static,
)
)
print(
"{:10s} {:10s} param-lut stddev {:f}".format(
- state,
+ name,
attribute,
- model.attr_by_name[state][attribute].stats.std_param_lut,
+ model.attr_by_name[name][attribute].stats.std_param_lut,
)
)
for param in sorted(
- model.attr_by_name[state][attribute].stats.std_by_param.keys()
+ model.attr_by_name[name][attribute].stats.std_by_param.keys()
):
print(
"{:10s} {:10s} {:10s} stddev {:f}".format(
- state,
+ name,
attribute,
param,
- model.attr_by_name[state][attribute].stats.std_by_param[
+ model.attr_by_name[name][attribute].stats.std_by_param[
param
],
)
)
+ for arg_index in range(model.attr_by_name[name][attribute].arg_count):
+ print(
+ "{:10s} {:10s} {:10s} stddev {:f}".format(
+ name,
+ attribute,
+ f"arg{arg_index}",
+ model.attr_by_name[name][attribute].stats.std_by_arg[
+ arg_index
+ ],
+ )
+ )
if type(info) is AnalyticFunction:
for param_name in sorted(info.fit_by_param.keys(), key=str):
param_fit = info.fit_by_param[param_name]["results"]
@@ -911,7 +922,7 @@ if __name__ == "__main__":
function_rmsd = param_fit[function_type]["rmsd"]
print(
"{:10s} {:10s} {:10s} mean {:10s} RMSD {:.0f}".format(
- state,
+ name,
attribute,
str(param_name),
function_type,