code: def updateModel(self, X_all, Y_all, X_new, Y_new):
          
  
          if self.model is None:
              self._create_model(X_all, Y_all)
          else:
              self.model.set_XY(X_all, Y_all)
  
          # update the model generating hmc samples
          self.model.optimize(max_iters = 200)
          self.model.param_array[:] = self.model.param_array * (1.+np.random.randn(self.model.param_array.size)*0.01)
          self.hmc = GPy.inference.mcmc.HMC(self.model, stepsize=self.step_size)
          ss = self.hmc.sample(num_samples=self.n_burnin + self.n_samples* self.subsample_interval, hmc_iters=self.leapfrog_steps)
          self.hmc_samples = ss[self.n_burnin::self.subsample_interval]
docs: Updates the model with new observations.