Package csb :: Package statistics :: Package samplers :: Package mc :: Module multichain :: Class HMCStepRENS
[frames] | no frames]

Class HMCStepRENS

source code

     object --+                        
              |                        
AbstractSampler --+                    
                  |                    
         AbstractMC --+                
                      |                
     AbstractEnsembleMC --+            
                          |            
         AbstractExchangeMC --+        
                              |        
                   AbstractRENS --+    
                                  |    
                   AbstractStepRENS --+
                                      |
                                     HMCStepRENS

Replica Exchange with Nonequilibrium Switches (RENS, Ballard & Jarzynski 2009) with stepwise trajectories as described in Nilmeier et al., "Nonequilibrium candidate Monte Carlo is an efficient tool for equilibrium simulation", PNAS 2011. The switching parameter dependence of the Hamiltonian is a linear interpolation between the PDFs of the sampler objects, H(λ) = H_2 * λ + (1 - λ) * H_1. The perturbation kernel is a thermodynamic perturbation and the propagation is done using HMC.

Note that due to the linear interpolations between the two Hamiltonians, the log-probability and its gradient has to be evaluated four times per perturbation step which can be costly. In this case it is advisable to define the intermediate log probabilities in _run_traj_generator differently.

Nested Classes

Inherited from AbstractSampler: __metaclass__

Instance Methods
 
__init__(self, samplers, param_infos)
x.__init__(...) initializes x; see help(type(x)) for signature
source code

Inherited from AbstractExchangeMC: swap

Inherited from AbstractEnsembleMC: sample

Inherited from object: __delattr__, __format__, __getattribute__, __hash__, __new__, __reduce__, __reduce_ex__, __repr__, __setattr__, __sizeof__, __str__, __subclasshook__

Class Variables
  __abstractmethods__ = frozenset([])
Properties

Inherited from AbstractExchangeMC: acceptance_rates, param_infos, statistics

Inherited from AbstractEnsembleMC: energy

Inherited from AbstractMC: state

Inherited from object: __class__

Method Details

__init__(self, samplers, param_infos)
(Constructor)

source code 

x.__init__(...) initializes x; see help(type(x)) for signature

Parameters:
  • samplers (list of AbstractSingleChainMC) - Samplers which sample their respective equilibrium distributions
  • param_infos (list of HMCStepRENSSwapParameterInfo) - ParameterInfo instances holding information required to perform a HMCStepRENS swaps
Overrides: object.__init__
(inherited documentation)