openmmtools.testsystems.SodiumChlorideCrystal¶
-
class
openmmtools.testsystems.SodiumChlorideCrystal(switch_width=Quantity(value=0.2, unit=angstrom), dispersion_correction=True, **kwargs)[source]¶ Create an FCC crystal of sodium chloride.
Each atom is represented by a charged Lennard-Jones sphere in an Ewald lattice.
- switch_width : simtk.unit.Quantity with units compatible with angstroms, optional, default=0.2*unit.angstroms
- switching function is turned on at cutoff - switch_width If None, no switch will be applied (e.g. hard cutoff).
- dispersion_correction : bool, optional, default=True
- if True, will use analytical dispersion correction (if not using switching function)
Notes
TODO
- Lennard-Jones interactions aren’t correctly being included now, due to LJ cutoff. Fix this by hard-coding LJ interactions?
- Add nx, ny, nz arguments to allow user to specify replication of crystal unit in x,y,z.
- Choose more appropriate lattice parameters and lattice spacing.
Examples
Create sodium chloride crystal unit.
>>> crystal = SodiumChlorideCrystal() >>> system, positions = crystal.system, crystal.positions
Attributes: analytical_propertiesA list of available analytical properties, accessible via ‘get_propertyname(thermodynamic_state)’ calls.
mdtraj_topologyThe mdtraj.Topology object corresponding to the test system (read-only).
nameThe name of the test system.
positionsThe simtk.unit.Quantity object containing the particle positions, with units compatible with simtk.unit.nanometers.
systemThe simtk.openmm.System object corresponding to the test system.
topologyThe simtk.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__(switch_width=Quantity(value=0.2, unit=angstrom), dispersion_correction=True, **kwargs)[source]¶ Abstract base class for test system.
Methods
__init__([switch_width, unit, …])Abstract base class for test system. 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_propertiesA list of available analytical properties, accessible via ‘get_propertyname(thermodynamic_state)’ calls. mdtraj_topologyThe mdtraj.Topology object corresponding to the test system (read-only). nameThe name of the test system. positionsThe simtk.unit.Quantity object containing the particle positions, with units compatible with simtk.unit.nanometers. systemThe simtk.openmm.System object corresponding to the test system. topologyThe simtk.openmm.app.Topology object corresponding to the test system. -
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 simtk.unit.Quantity object containing the particle positions, with units compatible with simtk.unit.nanometers.
-
reduced_potential_expectation(state_sampled_from, state_evaluated_in)¶ Calculate the expected potential energy in state_sampled_from, divided by kB * T in state_evaluated_in.
Notes
This is not called get_reduced_potential_expectation because this function requires two, not one, inputs.
-
serialize()¶ Return the System and positions in serialized XML form.
Returns: - system_xml : str
Serialized XML form of System object.
- state_xml : str
Serialized XML form of State object containing particle positions.
-
system¶ The simtk.openmm.System object corresponding to the test system.
-
topology¶ The simtk.openmm.app.Topology object corresponding to the test system.