docs: def execute(self, eopatch):
          """ Compute composite array merging temporal frames according to the compositing method
  
              :param eopatch: eopatch holding time-series
              :return: eopatch with composite image of time-series
          """
          feature_type, feature_name = next(self.feature(eopatch))
          data = eopatch[feature_type][feature_name].copy()
  
          # compute band according to compositing method (e.g. blue, maxNDVI, maxNDWI)
          reference_bands = self._get_reference_band(data)
  
          # find temporal indices corresponding to pre-defined percentile
          indices = self._get_indices(reference_bands)
  
          # compute composite image selecting values along temporal dimension corresponding to percentile indices
          composite_image = np.empty((data.shape[1:]), np.float32)
          composite_image[:] = self.no_data_value
          for scene_id, scene in enumerate(data):
              composite_image = np.where(np.dstack([indices]) == scene_id, scene, composite_image)
  
          eopatch[self.composite_type][self.composite_name] = composite_image
  
          return eopatch