class_docstr: Metropolis acceptance criterion
  
  Parameters
  ----------
  T : float
      The "temperature" parameter for the accept or reject criterion.
  random_state : None or `np.random.RandomState` object
      Random number generator used for acceptance test
code: def __init__(self, T, random_state=None):
      # Avoid ZeroDivisionError since "MBH can be regarded as a special case
      # of the BH framework with the Metropolis criterion, where temperature
      # T = 0."  (Reject all steps that increase energy.)
      self.beta = 1.0 / T if T != 0 else float("inf")
      self.random_state = check_random_state(random_state)
  
imports: from __future__ import division, print_function, absolute_import
  import numpy
  import math
  from numpy import cos, sin
  import scipy.optimize
  from scipy._lib._util import check_random_state
label_desc: Use image node_id 1 to create a new Metropolis object from inherited base classes: object with example: obj = Metropolis(T, random_state)