Ellipsoid

class hoomd.hpmc.integrate.Ellipsoid(default_d=0.1, default_a=0.1, translation_move_probability=0.5, nselect=4, kT=1.0)

Bases: HPMCIntegrator

Ellipsoid hard particle Monte Carlo integrator.

Parameters:
  • default_d (float) – Default maximum size of displacement trial moves [length][\mathrm{length}].

  • default_a (float) – Default maximum size of rotation trial moves [dimensionless][\mathrm{dimensionless}].

  • translation_move_probability (float) – Fraction of moves that are translation moves.

  • nselect (int) – Number of trial moves to perform per particle per timestep.

  • translate_move_dimensions (int or None) – Dimensionality of translation trial moves. Set to None (default) to use the system dimensionality, or set explicitly to 2 or 3.

  • kT (hoomd.variant.variant_like) – Temperature set point [energy][\mathrm{energy}].

Perform hard particle Monte Carlo of ellipsoids. The shape SS includes all points inside and on the surface of an ellipsoid:

S={r:rx2a2+ry2b2+rz2c21}S = \left \{ \vec{r} : \frac{r_x^2}{a^2} + \frac{r_y^2}{b^2} + \frac{r_z^2}{c^2} \le 1 \right\}

where rxr_x, ryr_y, rzr_z are the components of r\vec{r}, and the parameters aa, bb, and cc are the half axes of the ellipsoid set in shape.

Wall support.

Ellipsoid supports no hoomd.wall geometries.

Example:

mc = hpmc.integrate.Ellipsoid(default_d=0.3, default_a=0.4)
mc.shape["A"] = dict(a=0.5, b=0.25, c=0.125)
print(
    "ellipsoids parameters (a,b,c) = ",
    mc.shape["A"]["a"],
    mc.shape["A"]["b"],
    mc.shape["A"]["c"],
)

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 HPMCIntegrator:

a

Maximum size of the rotation trial moves. Read more...

d

Maximum size of displacement trial moves Read more...

interaction_matrix

Set which types interact with other types. Read more...

translation_move_probability

Fraction of moves to be selected as translation moves. Read more...

nselect

Number of trial moves to perform per particle per timestep. Read more...

translate_move_dimensions

Dimensionality for translation moves. Read more...

kT

Temperature set point. Read more...

property counters

Trial move counters. Read more...

property external_energy

Total external energy contributed by all external potentials. Read more...

property external_potentials

External potentials to apply. Read more...

property map_overlaps

List of overlapping particles. Read more...

property mps

Number of trial moves performed per second. Read more...

property overlaps

Number of overlapping particle pairs. Read more...

property pair_energy

Total potential energy contributed by all pair potentials. Read more...

property pair_potentials

Pair potentials to apply. Read more...

property rotate_moves

Count of the accepted and rejected rotate moves. Read more...

property translate_moves

Count of the accepted and rejected translate moves. Read more...

Members defined in Ellipsoid:

shape

The shape parameters for each particle type. The dictionary has the following keys:

  • a (float, required) - half axis of ellipsoid in the x direction [length][\mathrm{length}]

  • b (float, required) - half axis of ellipsoid in the y direction [length][\mathrm{length}]

  • c (float, required) - half axis of ellipsoid in the z direction [length][\mathrm{length}]

  • ignore_statistics (bool, default: False) - set to True to ignore tracked statistics.

Type:

TypeParameter [particle type, dict]

property type_shapes

Description of shapes in type_shapes format.

Example

>>> mc.type_shapes()
[{'type': 'Ellipsoid', 'a': 1.0, 'b': 1.5, 'c': 1}]

(Loggable: category=”object”)

Type:

list[dict]