class_docstr: Adapts tunable parameters, namely step size and mass matrix, during the
  warmup phase. This class provides lookup properties to read the latest
  values of ``step_size`` and ``inverse_mass_matrix``. These values are
  periodically updated when adaptation is engaged.
class_docstr_tok: ["Adapts","tunable","parameters",",","namely","step","size","and","mass","matrix",",","during","the","warmup","phase",".","This","class","provides","lookup","properties","to","read","the","latest","values","of","``","step_size","``","and","``","inverse_mass_matrix","``",".","These","values","are","periodically","updated","when","adaptation","is","engaged","."]
docstr: Model specific properties that are specified when the HMC kernel is setup.
  
  :param warmup_steps: Number of warmup steps that the sampler is initialized with.
  :param initial_step_size: Step size to use to initialize the Dual Averaging scheme.
  :param mass_matrix_shape: Shape of the mass matrix.
  :param find_reasonable_step_size_fn: A callable to find reasonable step size when
      mass matrix is changed.
  :param dict options: A dict which maps `dtype`, `device` to the corresponding default
      tensor options. This is used to construct initial mass matrix in `mass_matrix_adapter`.
docstr_tok: ["Model","specific","properties","that","are","specified","when","the","HMC","kernel","is","setup",".",":","param","warmup_steps",":","Number","of","warmup","steps","that","the","sampler","is","initialized","with",".",":","param","initial_step_size",":","Step","size","to","use","to","initialize","the","Dual","Averaging","scheme",".",":","param","mass_matrix_shape",":","Shape","of","the","mass","matrix",".",":","param","find_reasonable_step_size_fn",":","A","callable","to","find","reasonable","step","size","when","mass","matrix","is","changed",".",":","param","dict","options",":","A","dict","which","maps","`","dtype","`",",","`","device","`","to","the","corresponding","default","tensor","options",".","This","is","used","to","construct","initial","mass","matrix","in","`","mass_matrix_adapter","`","."]
code: def configure(
      self,
      warmup_steps,
      initial_step_size=None,
      mass_matrix_shape=None,
      find_reasonable_step_size_fn=None,
      options={},
  ):
      r"""
      Model specific properties that are specified when the HMC kernel is setup.
  
      :param warmup_steps: Number of warmup steps that the sampler is initialized with.
      :param initial_step_size: Step size to use to initialize the Dual Averaging scheme.
      :param mass_matrix_shape: Shape of the mass matrix.
      :param find_reasonable_step_size_fn: A callable to find reasonable step size when
          mass matrix is changed.
      :param dict options: A dict which maps `dtype`, `device` to the corresponding default
          tensor options. This is used to construct initial mass matrix in `mass_matrix_adapter`.
      """
      self._warmup_steps = warmup_steps
      self.step_size = (
          initial_step_size
          if initial_step_size is not None
          else self._init_step_size
      )
      if find_reasonable_step_size_fn is not None:
          self._find_reasonable_step_size = find_reasonable_step_size_fn
      if mass_matrix_shape is None or self.step_size is None:
          raise ValueError(
              "Incomplete configuration - step size and inverse mass matrix "
              "need to be initialized."
          )
      self.mass_matrix_adapter.configure(
          mass_matrix_shape, self.adapt_mass_matrix, options=options
      )
      if not self._adaptation_disabled:
          self._adaptation_schedule = self._build_adaptation_schedule()
      self._current_window = 0  # starting window index
      if self.adapt_step_size:
          self._step_size_adapt_scheme.reset()
  
imports: import math
  from collections import namedtuple
  import torch
  import pyro
  from pyro.ops.arrowhead import SymmArrowhead, sqrt, triu_gram, triu_inverse, triu_matvecmul
  from pyro.ops.dual_averaging import DualAveraging
  from pyro.ops.welford import WelfordArrowheadCovariance, WelfordCovariance
label_desc: Use image node_id 6 for calling the WarmupAdapter obj's underlying member method code with example usage: obj.configure(warmup_steps, initial_step_size, mass_matrix_shape, find_reasonable_step_size_fn, options) without return types