code: def reset_sma(self, step):
          
  
          if self.linear_growth:
              sma = self.sma - step
              step = -step
          else:
              aux = 1. / (1. + step)
              sma = self.sma * aux
              step = aux - 1.
  
          return sma, step
docs: Change the direction of semimajor axis growth, from outwards to
          inwards.
  
          Parameters
          ----------
          step : float
              The current step value.
  
          Returns
          -------
          sma, new_step : float
              The new semimajor axis length and the new step value to
              initiate the shrinking of the semimajor axis length. This is
              the step value that should be used when calling the
              :meth:`~photutils.isophote.EllipseGeometry.update_sma`
              method.