code: def copy(self):
          
  
          copied_model = GPModel( kernel = self.model.kern.copy(),
                                  noise_var= self.noise_var ,
                                  exact_feval= self.exact_feval,
                                  n_samples = self.n_samples,
                                  n_burnin = self.n_burnin,
                                  subsample_interval = self.subsample_interval,
                                  step_size = self.step_size,
                                  leapfrog_steps= self.leapfrog_steps,
                                  verbose= self.verbose)
  
          copied_model._create_model(self.model.X,self.model.Y)
          copied_model.updateModel(self.model.X,self.model.Y, None, None)
          return copied_model
docs: Makes a safe copy of the model.