code: def fit(self, X, R):
          
          self._check_input(X, R)
          if self.verbose:
              logger.info("Start to fit HTFA")
          self.n_dim = R[0].shape[1]
          self.cov_vec_size = np.sum(np.arange(self.n_dim) + 1)
          # centers,widths
          self.prior_size = self.K * (self.n_dim + 1)
          # centers,widths,centerCov,widthVar
          self.prior_bcast_size =\
              self.K * (self.n_dim + 2 + self.cov_vec_size)
          self.get_map_offset()
          self._fit_htfa(X, R)
          return self
docs: Compute Hierarchical Topographical Factor Analysis Model
             [Manning2014-1][Manning2014-2]
  
          Parameters
          ----------
          X :  list of 2D arrays, element i has shape=[voxels_i, samples]
              Each element in the list contains the fMRI data of one subject.
  
          R : list of 2D arrays, element i has shape=[n_voxel, n_dim]
              Each element in the list contains the scanner coordinate matrix
              of fMRI data of one subject.
  
          Returns
          -------
          HTFA
              Returns the instance itself.