diff --git a/pyreason/scripts/facts/fact_edge.py b/pyreason/scripts/facts/fact_edge.py index bbeb3e64..313cee97 100755 --- a/pyreason/scripts/facts/fact_edge.py +++ b/pyreason/scripts/facts/fact_edge.py @@ -8,6 +8,7 @@ def __init__(self, name, component, label, interval, t_lower, t_upper, static=Fa self._label = label self._interval = interval self._static = static + self.static = static def get_name(self): return self._name diff --git a/pyreason/scripts/facts/fact_node.py b/pyreason/scripts/facts/fact_node.py index 69e379eb..d86e7db5 100755 --- a/pyreason/scripts/facts/fact_node.py +++ b/pyreason/scripts/facts/fact_node.py @@ -8,6 +8,7 @@ def __init__(self, name, component, label, interval, t_lower, t_upper, static=Fa self._label = label self._interval = interval self._static = static + self.static = static def get_name(self): return self._name diff --git a/pyreason/scripts/interval/interval.py b/pyreason/scripts/interval/interval.py index 18d25ede..4769a16a 100755 --- a/pyreason/scripts/interval/interval.py +++ b/pyreason/scripts/interval/interval.py @@ -4,7 +4,17 @@ class Interval(structref.StructRefProxy): - def __new__(cls, lower, upper, s=False): + def __new__(cls, lower, upper, s=False, *args): + if len(args) == 2: + prev_lower, prev_upper = args + obj = object.__new__(cls) + obj.l = lower + obj.u = upper + obj.s = s + obj.prev_l = prev_lower + obj.prev_u = prev_upper + return obj + return structref.StructRefProxy.__new__(cls, lower, upper, s, lower, upper) @property @@ -66,7 +76,7 @@ def intersection(self, interval): if lower > upper: lower = np.float64(0) upper = np.float64(1) - return Interval(lower, upper, False, self.lower, self.upper) + return Interval(lower, upper, False) def to_str(self): return self.__repr__() diff --git a/pyreason/scripts/numba_wrapper/numba_types/interval_type.py b/pyreason/scripts/numba_wrapper/numba_types/interval_type.py index 3d34b77d..28d6448e 100755 --- a/pyreason/scripts/numba_wrapper/numba_types/interval_type.py +++ b/pyreason/scripts/numba_wrapper/numba_types/interval_type.py @@ -142,4 +142,4 @@ def impl(interval_1, interval_2): @njit def closed(lower, upper, static=False): - return Interval(np.float64(lower), np.float64(upper), static, np.float64(lower), np.float64(upper)) + return Interval(np.float64(lower), np.float64(upper), static)