openmmtools.testsystems.DoubleWellChain_WCAFluid¶
- class openmmtools.testsystems.DoubleWellChain_WCAFluid(nchained=3, 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=41.106703184149616, 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__(nchained=3, 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=41.106703184149616, unit=joule / mole), r0=Quantity(value=3.816370964251868, unit=angstrom), w=Quantity(value=1.02, unit=angstrom), **kwargs)[source]¶
Create a chain of double wells in a fluid of WCA particles.
This creates polymer chain linked by the double-well potential. This was inspired by the trimer version used in [1]. In the case
nchained=2
, this is the same asDoubleWellDimer_WCAFluid
withndimers=1
.- Parameters:
- nchainedint, optional, default = 3
Number of particles in the double-well polymer chain.
- 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]J. Rogal and P.G. Bolhuis. J. Chem. Phys. 129, 224107 (2008); https://doi.org/10.1063/1.3029696
Examples
Create the default: a trimer with double-well bonds in a WCA particle bath.
>>> dw_chain = DoubleWellChain_WCAFluid() >>> system, positions = dw_chain.system, dw_chain.positions
Create a system with a chain of 4 particles in a system with 400 total particles.
>>> dw_chain = DoubleWellChain_WCAFluid(nchained=4, nparticles=400) >>> system, positions = dw_chain.system, dw_chain.positions
You can create a chain with length up to nparticles, although large fractions are likely to lead to nonsensical initial conditions except for the smallest system sizes.
>>> dw_chain = DoubleWellChain_WCAFluid(nchained=8, nparticles=8) >>> system, positions = dw_chain.system, dw_chain.positions
Asking for 0 in the chain or for 1 in the chain is the same as asking for a WCAFluid.
>>> dw_chain = DoubleWellChain_WCAFluid(nchained=0) >>> system, positions = dw_chain.system, dw_chain.positions >>> dw_chain = DoubleWellChain_WCAFluid(nchained=1) >>> system, positions = dw_chain.system, dw_chain.positions
Methods
__init__
([nchained, nparticles, density, ...])Create a chain of double wells 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.