def METHOD_NAME(self, epoch):
    self.virtual_epoch_size = (
        self.virtual_epoch_size
        if self.virtual_epoch_size is not None
        else self.virtual_size
    )
    if self.virtual_epoch_size > self.virtual_size:
        logger.warning(
            f"virtual epoch size {self.virtual_epoch_size} "
            f"is greater than virtual dataset size {self.virtual_size}"
        )
        self.virtual_epoch_size = self.virtual_size
    self.num_virtual_epochs = math.ceil(self.virtual_size / self.virtual_epoch_size)
    self._current_epoch_start_index = self._get_epoch_start_index(epoch)
    logger.info(
        f"virtual epoch size {self.virtual_epoch_size}; virtual dataset size {self.virtual_size}"
    )