docs: def restore(self, filename):
          """Restore object from mat-file. TODO: determine format specification
          """
          matfile = loadmat(filename)
          matfile['originals'] = matfile['originals'][0, 0]
  
          if matfile['dim'] == 1:
              matfile['init_solution'] = matfile['init_solution'][0, :]
              matfile['pumping'] = matfile['pumping'][0, :]
  
          self.coeffs = matfile['dimlesses'][0, :]
          self.init_sol = matfile['init_solution']
          self.num_nodes = matfile['num_nodes'][0, 0]
          self.num_iters = matfile['num_iters'][0, 0]
          self.pumping = GridPumping(matfile['pumping'])
          self.dx = matfile['spatial_step'][0, 0]
          self.dt = matfile['time_step'][0, 0]
  
          types = matfile['originals'].dtype
          values = matfile['originals']
  
          self.originals = dict(zip(types.names, (value[0, 0] for value in values)))
  
          if 'desc' in matfile:
              self.desc = str(matfile['desc'][0])
          if 'label' in matfile:
              self.label = str(matfile['label'][0])
  
          return self