code: def get_lr(self):
          
          cycle = np.floor(1 + self.last_batch_idx / self.total_size)
          x = 1 + self.last_batch_idx / self.total_size - cycle
          if x <= self.step_ratio:
              scale_factor = x / self.step_ratio
          else:
              scale_factor = (x-1)/(self.step_ratio-1)
  
          lrs = []
          for base_lr, max_lr in zip(self.base_lrs, self.max_lrs):
              base_height = (max_lr - base_lr) * scale_factor
              if self.scale_mode == 'cycle':
                  lr = base_lr + base_height * self.scale_fn(cycle)
              else:
                  lr = base_lr + base_height * self.scale_fn(self.last_batch_idx)
              lrs.append(lr)
          return lrs
docs: Calculates the learning rate at batch index:
          ``self.last_batch_idx``.