Coulomb

class hoomd.md.special_pair.Coulomb

Bases: SpecialPair

Coulomb special pair force.

Coulomb computes forces, virials, and energies on all special pairs in the simulation state with:

\[\begin{split}U(r) = \begin{cases} \alpha \cdot \left[ \frac{q_{a}q_{b}}{r} \right] & r < r_{\mathrm{cut}} \\ 0 & r \ge r_{\mathrm{cut}} \\ \end{cases}\end{split}\]

Note

Use Coulomb to implement special 1-4 interactions in atomistic force fields, such as the scaled 1-4 interactions in OPLS where both the 1-4 LJ and Coulomb interactions are scaled by 0.5.

Examples:

coulomb = special_pair.Coulomb()
coulomb.params['cluster'] = dict(alpha=1.0)
coulomb.r_cut['cluster'] = 2

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 \(W_\mathrm{additional}\). Read more...

cpu_local_force_arrays

Local force arrays on the CPU. Read more...

energies

Energy contribution \(U_i\) from each particle. Read more...

energy

The potential energy \(U\) of the system from this force. Read more...

forces

The force \(\vec{F}_i\) applied to each particle. Read more...

gpu_local_force_arrays

Local force arrays on the GPU. Read more...

torques

The torque \(\vec{\tau}_i\) applied to each particle. Read more...

virials

Virial tensor contribution \(W_i\) from each particle. Read more...


Members defined in Coulomb:

params

The parameter of the Coulomb forces for each particle type. The dictionary has the following keys:

  • alpha (float, required) - Coulomb scaling factor \([\mathrm{energy}]\)

Type:

TypeParameter[special pair type, dict]

r_cut

The cut-off distance for special pair potential \([\mathrm{length}]\)

Type:

TypeParameter[special pair type, float]