[lammps-users] energy minimization for rotational motion

Dear LAMMPS users,

I am now running a simulation with ‘atom_style hybrid sphere dipole’, so that each particle has both translational and rotational motions. When I want to do energy minimization, it seems like only the force (and energy) can be minimized by adjusting particle positions. But the torque (particle orientation) cannot be minimized. How can I perform energy minimization for the rotational degree of freedom by adjusting the dipole orientations?

Thanks a lot!
YC

Dear LAMMPS users,

I am now running a simulation with ‘atom_style hybrid sphere dipole’, so that each particle has both translational and rotational motions. When I want to do energy minimization, it seems like only the force (and energy) can be minimized by adjusting particle positions. But the torque (particle orientation) cannot be minimized. How can I perform energy minimization for the rotational degree of freedom by adjusting the dipole orientations?

you would have to implement a minimizer style (e.g. cg/sphere) that takes torque into account.

the next best thing to do would be to simulated annealing, i.e. start an MD with sufficient initial kinetic energy and then remove the kinetic energy with a thermostat/integrator style or combination of styles that will remove that kinetic energy gradually. while thermostats by default only do a linear gradient, you could also implement something adaptive as target temperature with an equal style variable for compatible thermostats.

axel.

Hi Axel,

Thank you very much for your nice reply!

On one hand, I would wish this new minimizer style like cg/sphere could be generalized in the lammps package. Anisotropic particle/potential will broadly use that, I think.

On the other hand, thermal annealing by reducing the kinetic energy (cooling down) may not be so efficient to find the energy minimum, and the force and torque may be not as small as energy minimization. This is critical for hessian diagonalization. Is there any advanced strategy to accelerate this process?

Many thanks again!

YC