def initialize_sampler(**kwargs): """Initialize a multistate sampler. Parameters ---------- test : TestSystem object sampler_class : MultiStateSampler-derived class timestep : Quantity Simulation timestep state_update_steps : int Len of an iteration (in time steps). States are updated at each iteration. platform : string Valid values are: 'Reference', 'CPU', 'CUDA', 'OpenGL' reference_thermodynamic_state thermodynamic_states metadata pressure : Quantity or None checkpoint_iterations : int Stride for checkpoint print (in iterations) ms_container : pathlib.Path Path to multistate trajectory container Returns ------- sampler """ prms = SimpleNamespace(**kwargs) # initialize sampler smp = prms.sampler_class(number_of_iterations=0, mcmc_moves=propagator( timestep=prms.timestep, n_steps=prms.state_update_steps, platform=prms.platform), online_analysis_interval=None) # set sampler states and positions smp.from_testsystem(prms.test, reference_state=prms.reference_thermodynamic_state, thermodynamic_states=prms.thermodynamic_states, pressure=prms.pressure, stride=prms.checkpoint_iterations, storage=prms.ms_container, metadata=prms.metadata) smp.minimize() return smp
def initialize_sampler(): """Initialize a multistate sampler.""" # initialize sampler smp = SAMSSampler(number_of_iterations=burnin_iterations, mcmc_moves=propagator(timestep=timestep, n_steps=state_update_steps), online_analysis_interval=None) # set sampler states and positions smp.from_testsystem(test, temperatures=temperatures, pressure=pressure, stride=checkpoint_iterations, storage=ms_container) return smp