openmmtools.testsystems.DoubleWellDimer_WCAFluid¶
- class openmmtools.testsystems.DoubleWellDimer_WCAFluid(ndimers=1, nparticles=216, density=0.96, mass=Quantity(value=39.9, unit=dalton), epsilon=Quantity(value=997.7355141783887, unit=joule / mole), sigma=Quantity(value=3.4, unit=angstrom), h=Quantity(value=4932.804382097954, unit=joule / mole), r0=Quantity(value=3.816370964251868, unit=angstrom), w=Quantity(value=1.02, unit=angstrom), **kwargs)[source]¶
- Attributes:
analytical_properties
A list of available analytical properties, accessible via ‘get_propertyname(thermodynamic_state)’ calls.
mdtraj_topology
The mdtraj.Topology object corresponding to the test system (read-only).
name
The name of the test system.
positions
The openmm.unit.Quantity object containing the particle positions, with units compatible with openmm.unit.nanometers.
system
The openmm.System object corresponding to the test system.
topology
The openmm.app.Topology object corresponding to the test system.
Methods
reduced_potential_expectation
(...)Calculate the expected potential energy in state_sampled_from, divided by kB * T in state_evaluated_in.
serialize
()Return the System and positions in serialized XML form.
- __init__(ndimers=1, nparticles=216, density=0.96, mass=Quantity(value=39.9, unit=dalton), epsilon=Quantity(value=997.7355141783887, unit=joule / mole), sigma=Quantity(value=3.4, unit=angstrom), h=Quantity(value=4932.804382097954, unit=joule / mole), r0=Quantity(value=3.816370964251868, unit=angstrom), w=Quantity(value=1.02, unit=angstrom), **kwargs)[source]¶
Cereate a double well dimer in a fluid of WCA particles.
This is commonly used as a test system for rare events. The transition from condensed to extended within the double well dimer is the rare event, and the WCA particles present a bath. This makes for a somewhat more realistic system than trivial 2D models.
In this particular setup, we convert the WCA particles to a user-selected number of dimers. This allows for simple examples of multiple state systems as in [1].
- Parameters:
- ndimersint, optional, default = 1
Number of double-well dimers.
- nparticlesint, optional, default = 216
Number of particles.
- densityfloat, optional, default = 0.96
Reduced density, N sigma^3 / V.
- massopenmm.unit.Quantity with units compatible with angstrom, optional, default=39.9 amu
Particle mass.
- epsilonopenmm.unit.Quantity with units compatible with kilocalories_per_mole, optional, default=120K*kB
WCA well depth.
- sigmaopenmm.unit.Quantity, optional, default = 3.4 angstrom
WCA sigma.
- hopenmm.unit.Quantity, optional, default = 593.28K * kB
Double well barrier height.
- r0openmm.unit.Quantity, optional, default = 2^(1/6) * 3.4 angstrom
Double well “short” state distance for minimum energy.
- wopenmm.unit.Quanity, optional, default = 1.02 angstrom
Double well width; “extended” state minimum energy distance is r0 + 2w.
References
[1]D.W.H. Swenson and P.G. Bolhuis. J. Chem. Phys. 141, 044101 (2014); https://doi.org/10.1063/1.4890037
Examples
Create the default: a single double-well dimer in a WCA particle bath.
>>> dw_dimer = DoubleWellDimer_WCAFluid() >>> system, positions = dw_dimer.system, dw_dimer.positions
Create a system with 2 dimers in a system with 400 total particles.
>>> dw_dimer = DoubleWellDimer_WCAFluid(ndimers=2, nparticles=400) >>> system, positions = dw_dimer.system, dw_dimer.positions
You can create up to nparticles/2 dimers, although large numbers are not recommended.
>>> dw_dimer = DoubleWellChain_WCAFluid(ndimers=4, nparticles=8) >>> system, positions = dw_dimer.system, dw_dimer.positions
Asking for 0 dimers is the same as asking for the WCAFluid.
>>> dw_dimer = DoubleWellChain_WCAFluid(ndimers=0) >>> system, positions = dw_dimer.system, dw_dimer.positions
Methods
__init__
([ndimers, nparticles, density, ...])Cereate a double well dimer in a fluid of WCA particles.
reduced_potential_expectation
(...)Calculate the expected potential energy in state_sampled_from, divided by kB * T in state_evaluated_in.
serialize
()Return the System and positions in serialized XML form.
Attributes
analytical_properties
A list of available analytical properties, accessible via 'get_propertyname(thermodynamic_state)' calls.
mdtraj_topology
The mdtraj.Topology object corresponding to the test system (read-only).
name
The name of the test system.
positions
The openmm.unit.Quantity object containing the particle positions, with units compatible with openmm.unit.nanometers.
system
The openmm.System object corresponding to the test system.
topology
The openmm.app.Topology object corresponding to the test system.