HOOMD-blue¶
HOOMD-blue is a general purpose particle simulation toolkit. It performs hard particle Monte Carlo simulations of a variety of shape classes, and molecular dynamics simulations of particles with a range of pair, bond, angle, and other potentials. HOOMD-blue runs fast on NVIDIA GPUs, and can scale across thousands of nodes. For more information, see the HOOMD-blue website.
Resources¶
- GitHub Repository: Source code and issue tracker.
- Installation Guide: Instructions for installing and compiling HOOMD-blue.
- hoomd-users Google Group: Ask questions to the HOOMD-blue community.
- HOOMD-blue Tutorial: Beginner’s guide, code examples, and sample scripts.
- HOOMD-blue website: Additional information, benchmarks, and publications.
Job scripts¶
HOOMD-blue job scripts are Python scripts. You can control system initialization, run protocols, analyze simulation data, or develop complex workflows all with Python code in your job.
Here is a simple example:
import hoomd
from hoomd import md
hoomd.context.initialize()
# Create a 10x10x10 simple cubic lattice of particles with type name A
hoomd.init.create_lattice(unitcell=hoomd.lattice.sc(a=2.0, type_name='A'), n=10)
# Specify Lennard-Jones interactions between particle pairs
nl = md.nlist.cell()
lj = md.pair.lj(r_cut=3.0, nlist=nl)
lj.pair_coeff.set('A', 'A', epsilon=1.0, sigma=1.0)
# Integrate at constant temperature
md.integrate.mode_standard(dt=0.005)
hoomd.md.integrate.langevin(group=hoomd.group.all(), kT=1.2, seed=4)
# Run for 10,000 time steps
hoomd.run(10e3)
Save this script as lj.py
and run it with python lj.py
(or
singularity exec software.simg python3 lj.py
if using Singularity
containers).