code: def containing_simplex_and_bcc(self, lons, lats):
          
  
          pts = np.array(lonlat2xyz(lons,lats)).T
  
          tri = np.empty((pts.shape[0], 3), dtype=np.int) # simplices
          bcc = np.empty_like(tri, dtype=np.float) # barycentric coords
  
          for i, pt in enumerate(pts):
              t = _stripack.trfind(3, pt, self._x, self._y, self._z, self.lst, self.lptr, self.lend )
              tri[i] = t[3:6]
              bcc[i] = t[0:3]
  
          tri -= 1 # return to C ordering
  
          bcc /= bcc.sum(axis=1).reshape(-1,1)
  
          return bcc, self._deshuffle_simplices(tri)
docs: Returns the simplices containing (lons,lats)
          and the local barycentric, normalised coordinates.
  
          Parameters
          ----------
           lons : 1D array of longitudinal coordinates in radians
           lats : 1D array of latitudinal coordinates in radians
  
          Returns
          -------
           bcc  : normalised barycentric coordinates
           tri  : simplicies containing (lons,lats)
  
          Notes
          -----
           That the ordering of the vertices may differ from
           that stored in the self.simplices array but will
           still be a loop around the simplex.