save the current state of the Kalman filter
(self)
| 118 | self.save() |
| 119 | |
| 120 | def save(self): |
| 121 | """ save the current state of the Kalman filter""" |
| 122 | |
| 123 | kf = self._kf |
| 124 | |
| 125 | # force all attributes to be computed. this is only necessary |
| 126 | # if the class uses properties that compute data only when |
| 127 | # accessed |
| 128 | for prop in self.properties: |
| 129 | self._DL[prop[0]].append(getattr(kf, prop[0])) |
| 130 | |
| 131 | v = copy.deepcopy(kf.__dict__) |
| 132 | |
| 133 | if self._skip_private: |
| 134 | for key in list(v.keys()): |
| 135 | if key.startswith('_'): |
| 136 | print('deleting', key) |
| 137 | del v[key] |
| 138 | |
| 139 | if self._skip_callable: |
| 140 | for key in list(v.keys()): |
| 141 | if callable(v[key]): |
| 142 | del v[key] |
| 143 | |
| 144 | for ig in self._ignore: |
| 145 | if ig in v: |
| 146 | del v[ig] |
| 147 | |
| 148 | for key in list(v.keys()): |
| 149 | self._DL[key].append(v[key]) |
| 150 | |
| 151 | self.__dict__.update(self._DL) |
| 152 | self._len += 1 |
| 153 | |
| 154 | def __getitem__(self, key): |
| 155 | return self._DL[key] |