Patchy¶
- class hoomd.md.pair.aniso.Patchy(nlist, default_r_cut=None, mode='none')¶
Bases:
AnisotropicPair
Patchy pair potentials.
Patchy
combines an isotropicPair
potential with an orientation dependent modulation function . UsePatchy
with an attractive potential to create localized sticky patches on the surface of a particle. Use it with a repulsive potential to create localized bumps.Patchy
computes both forces and torques on particles.Note
Patchy
provides no interaction when there are no patches or particles are oriented such that . UsePatchy
along with a repulsive isotropicPair
potential to prevent particles from passing through each other.The specific form of the patchy pair potential between particles and is:
where is the isotropic pair potential and is an orientation-dependent factor of the patchy spherical cap half-angle and patch steepness :
directors
sets the locations of the patches in the local reference frame of the particle.Patchy
rotates the local director by the particle’s orientation and computes the in as the cosine of the angle between the director and : and .and control the shape of the patch:
See also
hoomd.hpmc.pair.AngularStep
provides a similar functional form for HPMC, except that is a step function.Warning
This class should not be instantiated by users. The class can be used for
isinstance
orissubclass
checks.
Members inherited from
AutotunedObject
:- property kernel_parameters¶
Kernel parameters.
Read more...
- property is_tuning_complete¶
Check if kernel parameter tuning is complete.
Read more...
- tune_kernel_parameters()¶
Start tuning kernel parameters.
Read more...
Members inherited from
Force
:- additional_energy¶
Additional energy term.
Read more...
- additional_virial¶
Additional virial tensor term .
Read more...
- cpu_local_force_arrays¶
Local force arrays on the CPU.
Read more...
- energies¶
Energy contribution from each particle.
Read more...
- energy¶
The potential energy of the system from this force.
Read more...
- forces¶
The force applied to each particle.
Read more...
- gpu_local_force_arrays¶
Local force arrays on the GPU.
Read more...
- torques¶
The torque applied to each particle.
Read more...
- virials¶
Virial tensor contribution from each particle.
Read more...
Members inherited from
Pair
:- nlist¶
Neighbor list used to compute the pair force.
Read more...
- mode¶
Energy smoothing/cutoff mode.
Read more...
- r_cut¶
Cuttoff radius beyond which the energy and force are 0.
Read more...
- r_on¶
Radius at which the XPLOR smoothing function starts.
Read more...
- compute_energy()¶
Compute the energy between two sets of particles.
Read more...
Members defined in
Patchy
:- params¶
The Patchy potential parameters unique to each pair of particle types. The dictionary has the following keys:
envelope_params
(dict
, required)pair_params
(dict
, required) - passed to isotropic potential (see subclasses).
Example:
envelope_params = {'alpha': math.pi/4, 'omega': 30} patchy.params[('A', 'A')] = dict(pair_params=pair_params, envelope_params=envelope_params)
Type:
TypeParameter
[tuple
[particle_type
,particle_type
],dict
]
- directors¶
List of vectors pointing to patch centers, by particle type (normalized when set). When a particle type does not have patches, set an empty list.
Type:
TypeParameter
[particle_type
,list
[tuple
[float
,float
,float
]]Examples:
patchy.directors['A'] = [(1,0,0), (1,1,1)]
patchy.directors['A'] = []