How to compute the free energy of solids¶
Follow these steps to perform Frenkel-Ladd (Einstein crystal) or Vega-Noya (Einstein molecule) approach to compute the free energy of solid phases.
MD simulations¶
Initialize your system in the ideal crystal structure.
Add stationary reference particles at the equilibrium sites.
Set the pair force
r_cut
to 0 between the reference particle type and all particle types.Add bonds (
hoomd.md.bond.Harmonic
) between the stationary reference particles and the mobile particles.Integrate the equations of motion of the mobile particles.
See also
Adjust the strength of bonds as needed during the simulation.
When using the Einstein crystal approach, apply
hoomd.update.RemoveDrift
to adjust the center of mass of the system.
HPMC simulations¶
Initialize your system in the ideal crystal structure.
Apply the harmonic external potential (
hoomd.hpmc.external.Harmonic
), using variants to adjust the spring constants as needed during the simulation.Apply trial moves to the mobile particles.
See also
When using the Einstein crystal approach, apply
hoomd.update.RemoveDrift
to adjust the center of mass of the system.
Log and analyze energies¶
In both MD and HPMC simulations:
Log relevant energies (e.g. with
hoomd.write.HDF5Log
).Post process the logged data to compute the free energy following the procedures in Frenkel-Ladd or Vega-Noya as appropriate.