class_docstr: Proxy for ClockedSamplers.
docstr: Choose a new random direction.
docstr_tok: ["Choose","a","new","random","direction","."]
code: def start_direction(self, region):
      """Choose a new random direction."""
      if self.log:
          print("choosing random direction")
      ui, Li = self.last
      v = generate_random_direction(ui, region, scale=self.scale)
      # v = generate_region_random_direction(ui, region, scale=self.scale)
  
      self.nrestarts += 1
  
      if self.sampler is None or True:
          samplingpath = SamplingPath(ui, v, Li)
          contourpath = ContourSamplingPath(samplingpath, region)
          if self.samplername == "steps":
              self.sampler = ClockedStepSampler(
                  contourpath, log=self.log
              )
              self.stepper = DirectJumper(
                  self.sampler, self.nsteps, log=self.log
              )
          elif self.samplername == "bisect":
              self.sampler = ClockedBisectSampler(
                  contourpath, log=self.log
              )
              self.stepper = DirectJumper(
                  self.sampler, self.nsteps, log=self.log
              )
          elif self.samplername == "nuts":
              self.sampler = ClockedNUTSSampler(
                  contourpath, log=self.log
              )
              self.stepper = IntervalJumper(
                  self.sampler, self.nsteps, log=self.log
              )
          else:
              assert False
  
imports: import numpy
  import matplotlib.pyplot
  from ultranest.samplingpath import SamplingPath, ContourSamplingPath, extrapolate_ahead
  from ultranest.stepsampler import StepSampler
  from ultranest.stepsampler import generate_region_oriented_direction, generate_region_random_direction, generate_random_direction
  from ultranest.flatnuts import ClockedStepSampler, ClockedBisectSampler, ClockedNUTSSampler
  from ultranest.flatnuts import SingleJumper, DirectJumper, IntervalJumper
label_desc: Use image node_id 6 for calling the OtherSamplerProxy obj's underlying member method code with example usage: obj.start_direction(region) without return types