def update(self, value_dict): """update matrix without propagating to model""" if len(value_dict) < 100: # TODO benchmark for heuristic for index, value in iteritems(value_dict): lil_matrix.__setitem__(self, index, value) else: matrix = lil_matrix.todok(self) matrix.update(value_dict) self = SMatrix_lil(matrix.tolil(), model=self._model) self._model._S = self
def resize(self, shape): matrix = lil_matrix.todok(self) matrix.resize(shape) self = SMatrix_lil(matrix.tolil(), model=self._model) self._model._S = self
def todok(self): new = SMatrix_dok(lil_matrix.todok(self), model=self._model) return new