class_docstr: Find a new point with a series of small steps
class_docstr_tok: ["Find","a","new","point","with","a","series","of","small","steps"]
code: def eval_at(self, j, xj, v, sign, Llast):
      if Llast is not None:
          # we can go about our merry way.
          self.contourpath.add(j, xj, v, Llast)
      else:
          # We stepped outside, so now we need to reflect
          self.nreflections += 1
          if self.log:
              print("reflecting:", xj, v)
          if self.plot:
              plt.plot(xj[0], xj[1], "xr")
          vk = self.reverse(xj, v * sign, plot=self.plot) * sign
          if self.log:
              print("new direction:", vk)
          xk, vk = extrapolate_ahead(
              sign, xj, vk, contourpath=self.contourpath
          )
          if self.log:
              print("reflection point:", xk)
          self.goals.insert(0, ("reflect-at", j, xk, vk, sign))
          return xk, False
  
imports: import numpy
  from numpy.linalg import norm
  import matplotlib.pyplot
  from .samplingpath import angle, extrapolate_ahead
label_desc: Use image node_id 3 for calling the ClockedStepSampler obj's underlying member method code with example usage: obj.eval_at(j, xj, v, sign, Llast) and returns: xk,  False