Computes forces for the 12-6 Lennard Jones (LJ) potential. More...
#include "ljForce.h"#include <stdlib.h>#include <assert.h>#include <string.h>#include "constants.h"#include "mytype.h"#include "parallel.h"#include "linkCells.h"#include "memUtils.h"#include "CoMDTypes.h"
Go to the source code of this file.
Data Structures | |
| struct | LjPotentialSt |
| Derived struct for a Lennard Jones potential. More... | |
Macros | |
| #define | POT_SHIFT 1.0 |
Typedefs | |
| typedef struct LjPotentialSt | LjPotential |
| Derived struct for a Lennard Jones potential. More... | |
Functions | |
| static int | ljForce (SimFlat *s) |
| static void | ljPrint (FILE *file, BasePotential *pot) |
| void | ljDestroy (BasePotential **inppot) |
| BasePotential * | initLjPot (void) |
| Initialize an Lennard Jones potential for Copper. More... | |
Computes forces for the 12-6 Lennard Jones (LJ) potential.
The Lennard-Jones model is not a good representation for the bonding in copper, its use has been limited to constant volume simulations where the embedding energy contribution to the cohesive energy is not included in the two-body potential
The parameters here are taken from Wolf and Phillpot and fit to the room temperature lattice constant and the bulk melt temperature Ref: D. Wolf and S.Yip eds. Materials Interfaces (Chapman & Hall 1992) Page 230.
Notes on LJ:
http://en.wikipedia.org/wiki/Lennard_Jones_potential
The total inter-atomic potential energy in the LJ model is:
where
and
are the material parameters in the potential.
= well depth
= hard sphere diameterTo limit the interation range, the LJ potential is typically truncated to zero at some cutoff distance. A common choice for the cutoff distance is 2.5 *
. This implementation can optionally shift the potential slightly upward so the value of the potential is zero at the cuotff distance. This shift has no effect on the particle dynamics.
The force on atom i is given by
where the subsrcipt i on the gradient operator indicates that the derivatives are taken with respect to the coordinates of atom i. Liberal use of the chain rule leads to the expression
where
is a unit vector in the direction from atom i to atom j.
Definition in file ljForce.c.
| typedef struct LjPotentialSt LjPotential |
|
read |
| void ljDestroy | ( | BasePotential ** | inppot | ) |
|
static |
|
static |