Particle Simulation Software
I lead development of the open source software HOOMD-blue. HOOMD-blue is a general purpose particle simulation tool developed from the ground up for GPUs. It executes Molecular Dynamics simulations with a variety of force fields. Performance scales from a single GPU up to thousands of GPUs.
Jobs are defined and controlled with simple python scripts, which enables enormous flexibility.
import hoomd, hoomd.md hoomd.context.initialize() unitcell=hoomd.lattice.sc(a=2.0, type_name='A') hoomd.init.create_lattice(unitcell=unitcell, n=10) nl = hoomd.md.nlist.cell() lj = hoomd.md.pair.lj(r_cut=3.0, nlist=nl) lj.pair_coeff.set('A', 'A', epsilon=1.0, sigma=1.0) all = hoomd.group.all(); hoomd.md.integrate.mode_standard(dt=0.005) hoomd.md.integrate.langevin(group=all, kT=1.2, seed=4) hoomd.run(10e3)
See the HOOMD-blue homepage for more information.
I lead the development of a High Performance hard particle Monte Carlo (HPMC) component of HOOMD-blue. HPMC implements massively parallel updates for off-lattice Monte Carlo, generalized to 3D anisotropic particles in triclinic boxes. HPMC executes in parallel on many CPU cores, on a single GPU, and in parallel on many GPUs. It supports many particle shapes.
HPMC is available open source in HOOMD-blue v2.0.
- Convex (sphero)polygon
- Simple polygon
- Convex (sphero)polyhedron
- General polyhedron
Freud is a group effort in Glotzer group that I have contributed to. It is a collection of common data analysis tools written in C++ for performance and wrapped in python to enable flexible workflows through scripting. Here is a list of a few of the quantities Freud can compute:
- Radial distribution function
- Hexatic order parameter
- Spherical harmonic order parameters
- Particle clustering