summaryrefslogtreecommitdiff
path: root/lib/parameters.py
diff options
context:
space:
mode:
Diffstat (limited to 'lib/parameters.py')
-rw-r--r--lib/parameters.py15
1 files changed, 11 insertions, 4 deletions
diff --git a/lib/parameters.py b/lib/parameters.py
index 0653100..acb044c 100644
--- a/lib/parameters.py
+++ b/lib/parameters.py
@@ -621,13 +621,20 @@ class ModelAttribute:
mean = np.mean(self.data)
return f"ModelAttribute<{self.name}, {self.attr}, mean={mean}>"
- def to_json(self, **kwargs):
- return {
+ def to_json(self, with_lut=False, **kwargs):
+ ret = {
"paramNames": self.param_names,
"argCount": self.arg_count,
"modelFunction": self.model_function.to_json(**kwargs),
}
+ if with_lut:
+ ret["LUT"] = list()
+ for key, value in self.by_param.items():
+ ret["LUT"].append((key, value))
+
+ return ret
+
def to_dref(self, unit=None):
ret = {"mean": (self.mean, unit), "median": (self.median, unit)}
@@ -724,11 +731,11 @@ class ModelAttribute:
return self.mutual_information_cache
@classmethod
- def from_json(cls, name, attr, data):
+ def from_json(cls, name, attr, data, data_values=None, param_values=None):
param_names = data["paramNames"]
arg_count = data["argCount"]
- self = cls(name, attr, None, None, param_names, arg_count)
+ self = cls(name, attr, data_values, param_values, param_names, arg_count)
self.model_function = df.ModelFunction.from_json(data["modelFunction"])
self.mean = self.model_function.value