class_docstr: Class for performing sampling using simple
  Hamiltonian Monte Carlo
  
  Parameters:
  -----------
  model: Model from which sampling has to be done
  
  simulate_dynamics: A class to propose future values of
    momentum and position in time by simulating
    Hamiltonian Dynamics
  
  References
  ----------
  R.Neal. Handbook of Markov Chain Monte Carlo,
  chapter 5: MCMC Using Hamiltonian Dynamics.
  CRC Press, 2011.
class_docstr_tok: ["Class","for","performing","sampling","using","simple","Hamiltonian","Monte","Carlo","Parameters",":","--","--","--","--","--","-","model",":","Model","from","which","sampling","has","to","be","done","simulate_dynamics",":","A","class","to","propose","future","values","of","momentum","and","position","in","time","by","simulating","Hamiltonian","Dynamics","References","--","--","--","--","--","R.Neal",".","Handbook","of","Markov","Chain","Monte","Carlo",",","chapter","5",":","MCMC","Using","Hamiltonian","Dynamics",".","CRC","Press",",","2011","."]
code: def __init__(self, model, simulate_dynamics=LeapFrog):
      if not issubclass(
          simulate_dynamics, BaseSimulateHamiltonianDynamics
      ):
          raise TypeError(
              "split_time must be an instance of "
              + "BaseSimulateHamiltonianDynamics"
          )
  
      self.model = model
      self.simulate_dynamics = simulate_dynamics
      self.accepted_proposals = 0.0
      self.acceptance_rate = 0
  
file_path: dragonfly/dragonfly/sampling/hmc.py
imports: from __future__ import division
  from math import sqrt
  import numpy
  from .check_functions import _check_1d_array_object
  from .base import LeapFrog, BaseSimulateHamiltonianDynamics
label_desc: Use image node_id 1 to create a new HamiltonianMC object from inherited base classes: object with example: obj = HamiltonianMC(model, simulate_dynamics)