Clarification on HOOMD-blue features

Skip to first unread message


Mar 11, 2023, 4:51:00 PM3/11/23
to hoomd-users

I am not yet a user, but I have seen that this code is very flexible and might be what I want to use for future projects. I have a bunch of questions to figure out whether this is the case, I apologise for the length of my message in advance.

1 - I have seen that is it possible to implement a HalfStepHook to run calculations in the half-step of an integrator. I would like to implement a semi-classical method that, in the half-step of a Velocity-Verlet integrator, needs some quantum chemical calculations on geometries and forces. Before the second part of the VV integration, the forces are changed according to results of QM calculations. It seems to me that it should be possible with your code, or am I wrong? Coordinates, forces, and velocities should be accessible in the HalfStepHook, is that correct?

2 - If 1 is possible, is VV available only as NVE integrator?

3 - I am a GROMACS user, I usually parameterise my own FFs on small organic molecules, and then simulate aggregates of such molecules. I have seen that it should not be difficult for me to deal with coordinates in your code (thanks to MDAnalysis). What about the FF? Should I write my own code to define all potential terms?

4 - If I should write my own code to convert FFs from GROMACS format, should I define all intramolecular terms even if there is a single molecule repeated many times? Should I define all potential terms for intermolecular LJ interactions? For instance, in GROMACS I only define the FF for one molecule, including the intramolecular LJ terms, while the program generates the parameters for all molecules and all the intermolecular LJ without me defining them.

5 - is the md.dihedral.OPLS torsional term limited to a summation up to k4? I find that often I need up to k5 for torsions, but I guess I could use a Table in case up to k4 is not enough.

6 - it seems to me it is possible to integrate the dynamics on ML potentials thanks to HOOMD-TF: do you confirm?

Thanks a lot in advance for your help, sorry for the long list of questions!

Joshua Anderson

Mar 13, 2023, 7:44:44 AM3/13/23

1. The HalfStepHook is intended to be used to apply modifications to the forces already computed. All local snapshot properties are accessible. If your QM calculation provides an *additional* force, then implement it as a Custom force:

2. Velocity-Verlet is NVE by definition.

3. Yes, you should write your own code to define potential terms. Or use an existing package, such as foyer.

4. See 3.

5. You already found the answer in the documentation.

6. I cannot confirm nor deny. Speak with the HOOMD-TF developers.
Joshua A. Anderson, Ph.D.
Research Area Specialist, Chemical Engineering, University of Michigan

You received this message because you are subscribed to the Google Groups "hoomd-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to
To view this discussion on the web visit

Daniele Padula

Mar 14, 2023, 3:31:01 AM3/14/23
Dear Joshua,

thanks a lot for your answers, it helps a lot.

Have a nice one,

You received this message because you are subscribed to a topic in the Google Groups "hoomd-users" group.
To unsubscribe from this topic, visit
To unsubscribe from this group and all its topics, send an email to
To view this discussion on the web visit
Reply all
Reply to author
0 new messages