The question below describes my plan to make a basic molecular dynamics calculation using a Python script rather than a canned, self-contained program.
There seems to be three parts:
- a model of the honeycomb net and substrate atoms
- an expression for energy based on atomic positions
- an energy minimization procedure (the topic of this question)
The two procedures I can imagine implementing are
- Monte-carlo method jiggle the positions randomly using some pseudo-temperature parameter, keep the new positions if energy goes down and flip a coin about keeping the new positions if higher based on *how much higher) it is.
- Kinematically using a damped differential equation and a standard ODE solver for all atomic positions.
These are general tools that I'm aware of and know how to implement in general and I can start with these no problem. But are these the numerical techniques that proper classical molecular dynamical simulations use, or are there different and/or better ways?
References:
My nascent DIY model, from here (click for larger)