code: def update(self, outcome, expparams,check_for_resample=True):
          
          # Before we update, we need to commit the new Bayesian information
          # matrix corresponding to the measurement we just made.
          self._current_bim += self.prior_bayes_information(expparams)[:, :, 0]
  
          # If we're tracking the information content accessible to adaptive
          # algorithms, then we must use the current posterior as the prior
          # for the next step, then add that accordingly.
          if self._track_adaptive:
              self._adaptive_bim += self.posterior_bayes_information(expparams)[:, :, 0]
  
          # We now can update as normal.
          SMCUpdater.update(self, outcome, expparams,check_for_resample=check_for_resample)
docs: Given an experiment and an outcome of that experiment, updates the
          posterior distribution to reflect knowledge of that experiment.
  
          After updating, resamples the posterior distribution if necessary.
  
          :param int outcome: Label for the outcome that was observed, as defined
              by the :class:`~qinfer.abstract_model.Model` instance under study.
          :param expparams: Parameters describing the experiment that was
              performed.
          :type expparams: :class:`~numpy.ndarray` of dtype given by the
              :attr:`~qinfer.abstract_model.Model.expparams_dtype` property
              of the underlying model
          :param bool check_for_resample: If :obj:`True`, after performing the
              update, the effective sample size condition will be checked and
              a resampling step may be performed.