Bug fixes and new features added to the 21 May 2008 version of LAMMPS. These are all part of the 9 Jan 2009 release, as discussed here.
8 Jan 2009
Made some changes to the pair_style granular Hertzian force field to have it handle polydisperse systems more accurately. Also generalized the various elastic constants and damping coefficients that can be specified. This has changed the style names of the granluar pairwise potentials and the syntax of those commands as well as the fix wall/gran command.
This change will be part of the next LAMMPS release, the first part of January.
Thanks to Yang Zhiping for identifying there was a problem and to Leo Silbert (SIU), Jeremy Lechman (Sandia), and Gary Grest (Sandia) for helping me formulate this correctly.
7 Jan 2009
Fixed a bug in how pair_style airebo builds neighbor lists for ghost atoms. This could effect the lists of generated interactions for periodic systems since periodicity creates ghost atoms.
This change will be part of the next LAMMPS release, the first part of January.
Thanks to Wei Zhang and Ase Henry (MIT) and for helping me find this bug with some good test systems.
6 Jan 2009
The addition of a fix bond/create command required some additional functionality from the special_bonds command. Thus, the syntax of this command has now changed to allow it to be used more generally.
This change will be part of the next LAMMPS release, the first part of January.
5 Jan 2009
Added fix bond/create and fix bond/break commands, which allow bonds to be created or broken during a simulation by checking distance and other criteria.
These commands will be added as part of the next LAMMPS release, the first part of January.
4 Jan 2009
Changed the default setting for the fix ave/spatial command to be lattice units instead of box units. This is to be consistent with all other LAMMPS commands that allow for lattice or box distances to be specified for their parameters. Note that both options are still available using the units keyword with the fix ave/spatial command; this change only affects what the default is if the units keyword is not used.
This change will be part of the next LAMMPS release, the first part of January.
3 Jan 2009
Changed the keyword "tag", used as part of the "dump custom"/doc/dump.html command, to "id", which is consistent with the use of atom IDs in other LAMMPS commands. Tag is the name of the internal LAMMPS variable that stores the atom ID.
This change will be part of the next LAMMPS release, the first part of January.
2 Jan 2009
Made a change to require the use of the pair_coeff command with granular pair styles. Even though no additional info is specified for atom type pairs in this case, this is required to allow the granular pair styles to work with pair_style hybrid models, where other pair styles are also used.
This change will be part of the next LAMMPS release, the first part of January.
1 Jan 2009
Made some changes to the way variable formulas are evaluated to do it more robustly between runs, so that current thermodynamics values are always used or warnings or errors are issued. Also updated the doc page for the variable command to explain the various options and how to force variables to be evaluated immediately (between runs) if desired.
These changes will be part of the next LAMMPS release, the first part of January.
6 Dec 2008
Added a dihedral option to the special_bonds command to allow 1-4 pairwise weightings to be turned off for individual atom pairs that are not part of any defined dihedral in the simulation. Some force fields use this rule.
This patch file can be applied to the 5 Dec 2008 version. This is the list of changed files.
5 Dec 2008
Jon Zimmerman (Sandia) added a porosity option to the delete_atoms command to allow a specified porosity to be induced by deleting atoms randomly withing a region.
This patch file can be applied to the 4 Dec 2008 version. This is the list of changed files.
4 Dec 2008
Hansohl Cho (MIT) has added a EAM potential file for the NiAl potential of Mishin (PRB, 2002), in the Finnis/Sinclair EAM format.
This patch file can be applied to the 3 Dec 2008 version. This is the list of changed files.
3 Dec 2008
Changed the tolerance test on computing moments of inertia for rigid bodies in the fix rigid to scale better to bodies composed of large numbers of atoms.
This patch file can be applied to the 2 Dec 2008 version. This is the list of changed files.
Thanks to Bin Shen for sending an example that had problems.
2 Dec 2008
Simplified the force accumulation in the fix spring command.
This patch file can be applied to the 1 Dec 2008 version. This is the list of changed files.
Thanks to Xibing He for this suggestion.
1 Dec 2008
Fixed an error in the velocity assigned to oscillating atoms via the fix wiggle command.
This patch file can be applied to the 30 Nov 2008 version. This is the list of changed files.
Thanks to David Olmsted (Sandia) for flagging this mistake.
30 Nov 2008
Mike Parks (Sandia) fixed a couple small bookkeeping glitches with the peridynamics model in LAMMPS.
This patch file can be applied to the 29 Nov 2008 version. This is the list of changed files.
29 Nov 2008
The matlab tool for readEAM had a one-line bug in computing the number of atoms types. This patch fixes it.
This patch file can be applied to the 24 Nov 2008 version. This is the list of changed files.
Thanks to Jouko Orava for finding this issue.
24 Nov 2008
A glitch crept into the minimize routines. Might have been from the 6Nov08 patch. This patch should fix it.
This patch file can be applied to the 21 Nov 2008 version. This is the list of changed files.
21 Nov 2008
Fixed a bug that prevented pair_style lj/coul from being used as part of pair_style hybrid.
This patch file can be applied to the 20 Nov 2008 version. This is the list of changed files.
Thanks to Dina Mirijanian (Sandia) for running into this.
20 Nov 2008
Aidan Thompson (Sandia) fixed a small error in the lattice hcp command where a couple of the basis atoms in the unit cell were put at slightly wrong positions. Wouldn't probably matter for subsequent dynamics, but it does for statics.
This patch file can be applied to the 7 Nov 2008 version. This is the list of changed files.
7 Nov 2008
Fixed an initialization problem in the create_atoms command that could cause a problem if atoms were added to a molecular system that already existed.
This patch file can be applied to the 6 Nov 2008 version. This is the list of changed files.
6 Nov 2008
Fixed a problem in the minimize command that could cause problems when a processor has no atoms.
This patch file can be applied to the 28 Oct 2008 version. This is the list of changed files.
Thanks to Jon Zimmerman (Sandia) for flagging this.
28 Oct 2008
Fixed a small glitch with using the create_atoms command with SI or CGS units. There is a small round-off factor added in to avoid issues with atoms created at periodic boundaries. Adding an epsilon of 1.0e-6 was fine for simulation boxes in LJ or REAL units when the length scale is Angstroms. It wasn't a good idea when the length scale is meters and the box size is 1.0e-7.
This patch file can be applied to the 24 Oct 2008 version. This is the list of changed files.
24 Oct 2008
Fixed a one-line bug with atom_style hybrid that would cause problems when running in parallel if any fixes were defined that store per-atom quantities.
This patch file can be applied to the 21 Oct 2008 version. This is the list of changed files.
21 Oct 2008
Fixed a bug with the moment of inertia calculation for point dipole particles. Also enabled the atom_modify first and neigh_modify include command to affect the clearing of force vectors and pairwise virial computation for increased efficiency when they are enabled.
This patch file can be applied to the 17 Oct 2008 version. This is the list of changed files.
17 Oct 2008
Fixed a bug in fix lineforce and fix planeforce where the input direction specified by the user was not normalized to a unit vector before using it to adjust forces. This gave different resulting forces depending on the length of the direction vector.
This patch file can be applied to the 11 Oct 2008 version. This is the list of changed files.
Thanks to Xibing He (U Penn) for catching this.
11 Oct 2008
Fixed a small memory leak associated with having hybrid potentials defined in restart files.
This patch file can be applied to the 10 Oct 2008 version. This is the list of changed files.
10 Oct 2008
This patch fixes an inconsistensy with how LAMMPS treats 2d granular particles which as the manual states can be thought of as extended spheres with a finite radius. Their moment of inertia was treated as if there are spheres, but their mass was set (based on diameter and density) as if they were 2d circular disks. This patch changes the mass calculation to also be for spheres. Thus if you do 2d granular simulations, your answers may change, unless you scale particle densities accordingly.
This patch file can be applied to the 9 Oct 2008 version. This is the list of changed files.
Thanks to Zhiping Yang for pointing out this inconsistency.
9 Oct 2008
Added a delete option to the variable command. This is useful when breaking out of a loop via the if and jump commands, so that a variable can be re-defined later in the (iterated) input script.
This patch file can be applied to the 8 Oct 2008 version. This is the list of changed files.
8 Oct 2008
Aidan Thompson (Sandia) added a velocity option to the fix wall/lj93 and fix wall/lj126 commands, so the wall can be moved with time, e.g. to compress or induce a shock in the system.
This patch file can be applied to the 7 Oct 2008 version. This is the list of changed files.
7 Oct 2008
Added a check when writing restart files to force atoms to be remapped to the periodic box if any fix could have moved atoms outside the box. Currently no fixes do this (time integration fixes don't count), but we're working on some for stochastic rotation dynamics (SRD) models which do.
This patch file can be applied to the 6 Oct 2008 version. This is the list of changed files.
6 Oct 2008
Fixed an issue with the fix ave/spatial command where some quantities near periodic boundaries (like vx in the x direction) would be binned in a confusing way into the lowest and highest bins rather than being remapped thru the periodic boundary. Now the resulting plots from the spatial averaging should be more intuitive.
This patch file can be applied to the 5 Oct 2008 version. This is the list of changed files.
Thanks to Richard Jendrejack (MMM) for sending some good example scripts that showed up this issue.
5 Oct 2008
Fixed a glitch in the fix rigid command that could cause the initial orientation of a highly symmetric rigid body (like a bucky ball) to be re-oriented on the first timestep of a simulation. Should have only happened rarely.
This patch file can be applied to the 4 Oct 2008 version. This is the list of changed files.
Thanks to Mark Stevens (Sandia) for running into the problem.
4 Oct 2008
Sang-Pil Kim (Korea Institute of Science and Technology) sent a new version of the AlCu EAM alloy potential file, previously provided by their group, which corrects a small error they made in the generation of the tabulated potential.
For users of the potential, here are his comments:
Fortunately, the miswritten value was not a large difference from the original value. Moreover, because embedding energy part in this potential plays a critical role in computing energy and force, this problem has not been causing significant errors.
This patch file can be applied to the 3 Oct 2008 version. This is the list of changed files.
3 Oct 2008
Greg Wagner sent an upgrade to the MEAM potential library, invoked by the pair_style meam command, to make it work correctly in tandem with other potentials via the pair_style hybrid command.
This patch file can be applied to the 2 Oct 2008 version. This is the list of changed files.
Thanks to Jorg Meyer (Max Planck Institute) for pointing out there was a problem.
2 Oct 2008
Added a plane option to the fix indent command to allow a planar wall to be pushed into the simulation domain, e.g. to compress it over time.
This patch file can be applied to the 1 Oct 2008 version. This is the list of changed files.
1 Oct 2008
Added flush() statements to several diagnostic fixes so that their one-line periodic output into files will appear instantaneously, rather than be buffered by the system during long runs.
This patch file can be applied to the 30 Sept 2008 version. This is the list of changed files.
30 Sept 2008
Dave Farrell (Northwestern U) has implemented an option for the Tersoff potential which adds a close-separation pairwise term based on a Coulomb potential and the Ziegler-Biersack-Littmark universal screening function. This is invokable as pair_style tersoff/zbl.
This patch file can be applied to the 29 Sept 2008 version. This is the list of changed files.
29 Sept 2008
Corrected the degrees-of-freedom calculation for rigid bodies in the fix rigid command for 2d simulations.
This patch file can be applied to the 9 Sept 2008 version. This is the list of changed files.
Thanks to Tony Sheh (U Michigan) for pointing out this error.
9 Sept 2008
Added the mass keyword as an option to the dump custom command so that the mass of particle's can be dumped if desired.
This patch file can be applied to the 8 Sept 2008 version. This is the list of changed files.
8 Sept 2008
Added an error check to the fix rigid command to insure per-type masses are defined for the system. Fix rigid cannot be run if only per-atom masses are defined (e.g. for a granular system).
This patch file can be applied to the 24 Aug 2008 version. This is the list of changed files.
24 Aug 2008
Added a cutoff option to the communicate command to allow a separate ghost atom cutoff to be specified. Previously tne neighbor skin was used in this role, i.e. ghost cutoff = neighbor cutoff = force cutoff + neighbor skin. But there are some problems where it is convenient to specify the ghost and neighbor cutoffs separately, as different values. E.g. when bond, angle, etc interactions have a longer range than pairwise interactions.
Now the neighbor skin is only used for two things: a) as part of the neighbor cutoff to include atoms in the pairwise neighbor list and b) to trigger the rebuild of neighbor lists and the migration of atoms to new processors. The ghost cutoff is only used to determine how far away to acquire ghost atoms from during inter-processor communication.
By default, the ghost atom cutoff is equal to the neighbor cutoff.
This patch file can be applied to the 23 Aug 2008 version. This is the list of changed files.
23 Aug 2008
Enabled the PPPM solver in LAMMPS to adjust the grid stencil order parameter when it cannot run a particular problem due to the grid stencil extending beyond the grid cells owned by neighboring processors. This can happen when a small problem is run on a large number of processors. With the new feature, LAMMPS will automatically reduce the order parameter, until the stencil only overlaps the adjacent processor's domain. This will also typically increase the FFT grid size required.
The advantage of this approach is that LAMMPS won't quit and give an error message. Now it will run the problem with an altered set of parameters and give a warning message.
This patch file can be applied to the 22 Aug 2008 version. This is the list of changed files.
Thanks to Kelly Anderson (P&G) for convincing me this was a useful thing to do.
22 Aug 2008
Added an option to the fix msd command used to compute mean-squared displacement (MSD) for calcalating a diffusion coefficient. The new option is com which allows a center-of-mass drift in the group of atoms to be subtracted off before the MSD is calculated.
This patch file can be applied to the 21 Aug 2008 version. This is the list of changed files.
21 Aug 2008
Added an image option to the set command to allow resetting the image flags of atoms. This is useful if you are continuing after an equilibration run and want to treat the current system as if all atoms are inside the simulation box at time 0, e.g. for measuring a diffusion coefficient.
This patch file can be applied to the 20 Aug 2008 version. This is the list of changed files.
20 Aug 2008
Fixed a bug with reading restart files that contain hybrid versions of bond, angle, dihedral, or improper potentials.
This patch file can be applied to the 19 Aug 2008 version. This is the list of changed files.
Thanks to Xu Zhijun for sending test scripts that illustrated the problem.
19 Aug 2008
Fixed a bug with pair_style airebo when it is used as one potential underneath pair_style hybrid. The problem had to do with how partial neighbor lists were looped over when some atoms are not participating due to being part of other potentials.
This patch file can be applied to the 18 Aug 2008 version. This is the list of changed files.
Thanks to Zhun-Yong Ong (UIUC) for identifying this was a problem.
18 Aug 2008
Fixed a bug with the fix deform that could cause it to croak when running in parallel and flipping a tilted box from one extreme orientation to the opposite extreme, i.e. due to continuous shearing in a NEMD simulation.
This patch file can be applied to the 13 Aug 2008 version. This is the list of changed files.
Thanks to Gary Grest (Sandia) for running into this bug.
13 Aug 2008
Fixed a bug with the TIP4P pair_style lj/cut/coul/long/tip4p when it was used as part of pair_style hybrid (i.e. in combination with other pair styles) that caused the pressure contribution computed by the TIP4P potential to be incorrect.
This patch file can be applied to the 11 Aug 2008 version. This is the list of changed files.
Thanks to Huck Beng for flagging this issue a while back.
11 Aug 2008
Made an optimization to the pair_style tersoff potential that affects Intel compilers (and possibly others). It has to do with the pow() function and limiting the exponent in a portion of the Tersoff formula to a value of 1 or 3, which is general enough for any Tersoff variants we're aware of.
In our tests, the Intel math library was considerably faster when the pow function is called with a fixed argument of 3 rather than with a variable arguement.
This patch file can be applied to the 8 Aug 2008 version. This is the list of changed files.
Thanks to Romain Perriot (USF) for calling our attention to the slow-down that resulted from using a fully general exponent in the latest Tersoff version.
8 Aug 2008
Fixed a couple more glitches with ellipsoidal particles in the restart2data tool.
Also, Jeremy Lechman (Sandia) showed me how to format the output so the values (e.g. x,y,z coords) are in full precision, so changed all the atom-based floating point output of the tool to that mode. Thus the created data files will be as accurate as possible for a restart from a text file. Makes the data file a little less readable though.
This patch file can be applied to the 5 Aug 2008 version. This is the list of changed files.
5 Aug 2008
Fixed a bug in the restart2data tool with how it outputs shape data to the data file it produces. It needs to convert it back to a diameter since it stores in internally as a radius.
This patch file can be applied to the 4 Aug 2008 version. This is the list of changed files.
4 Aug 2008
Discovered an extra factor of "r" in the force for colloid-solvent interactions in the pair_style colloid command.
Also changed the peridynamics package to use float.h instead of values.h, which is deprecated in some C/C++ installations.
This patch file can be applied to the 3 Aug 2008 version. This is the list of changed files.
2 Aug 2008
Mike Parks (Sandia) fixed a couple bugs with the new Peridynamics release. One was a factor of 2 in spring constant for the the energy computation. The second was in reading data files.
This patch file can be applied to the 1 Aug 2008 version. This is the list of changed files.
1 Aug 2008
Fixed a dumb bug with the fix spring tether command where it mis-computed the applied force on all but the first atom in the group. Not sure how long this bug has been there. Might have been introduced after the code was originally correct. Ditto for the fix smd command in the USER-SMD package.
This patch file can be applied to the 31 Jul 2008 version. This is the list of changed files.
Thanks to Xibing He (U Penn) for pointing out the bug.
31 Jul 2008
Fixed a couple bugs with the way the fix spring/self command interacts with energy minimization thru the minimize command.
Also added an energy "potential" to the fix addforce command, so that it can be used to impose a load force on a group of atoms during a minimization. Unless there is a contribution to the energy function by the fix, its added force cannot be minimized consistently.
This patch file can be applied to the 25 Jul 2008 version. This is the list of changed files.
26 Jul 2008
Mike Parks did the heavy lifting to add a package to LAMMPS for performing particle-based Peridynamics continuum modeling. It is a good model for fracture of materials at the meso- or macro-scale. The implementation includes a new atom_style peri, pair_style peri/pmb, compute damage/atom, and new units options for SI or CGS units.
This paper gives details:
Implementing peridynamics within a molecular dynamics code, M. L. Parks, R. B. Lehoucq, S. J. Plimpton, S. A. Silling, to appear in Comp Phys Comm, (2008). (abstract)
This patch file can be applied to the 16 Jul 2008 version. This is the list of changed files.
16 Jul 2008
Added some missing pair potentials to the restart2data tool. Namely pair_style hybrid/overlay, pair_style coul/cut, pair_style coul/debye, and pair_style coul/long.
This patch file can be applied to the 8 Jul 2008 version. This is the list of changed files.
Thanks to Dongsheng Zhang for pointing out the hybrid/overlay deficiency.
8 Jul 2008
Fixed a bug in the compute temp/sphere command where it was using a mass for rotational energy instead of a moment of inertia when calculating the kinetic energy tensor.
This patch file can be applied to the 26 Jun 2008 version. This is the list of changed files.
26 Jun 2008
Changed the bin choice for swapping momenta or velocities in the fix viscosity and fix thermal/conductivity commands by one bin so that it will be just above the simulation box midpoint instead of just below. Also restricted the user input for the number of bins to even numbers.
These changes should insure the induced velocity and temperature profiles will always be symmetric in the binning dimension.
This patch file can be applied to the 25 Jun 2008 version. This is the list of changed files.
Thanks to LT Kong for this suggestion.
25 Jun 2008
Fixed a sign error in the energy associated with the dissipative particle dynamics interactions of the pair_style dpd command. This was a bookkeeping error since the potential is really defined by its force interaction. The energy is associated only with the conservative term in the force equation.
This patch file can be applied to the 24 Jun 2008 version. This is the list of changed files.
Thanks to Takenobu Nakamura (AIST, Japan) for flagging this issue.
24 Jun 2008
Added output of angular momentum components as an option to the dump custom command.
Also fixed a bug in the bookkeeping of energy in the fix spring/self command where a 1/2 factor was left out.
This patch file can be applied to the 7 Jun 2008 version. This is the list of changed files.
7 Jun 2008
Enhanced the fix spring/self command to work with the energy minimizer. This means per-atom spring constraints can be used to keep desired atoms from moving too far during a minimization.
This patch file can be applied to the 6 Jun 2008 version. This is the list of changed files.
6 Jun 2008
Fixed a one-line bug in dihedral_style charmm that didn't check the special case of using a dihedral without a pair style defined. The CHARMM dihedral style gets parameters for weighted 1-4 interactions from the pair style.
This patch file can be applied to the 22 May 2008 version. This is the list of changed files.
Thanks to Nanako Takahashi for identifying there was a problem.
22 May 2008
The 21 May release left out a couple doc and example files that are included in this patch.
This patch file can be applied to the 21 May 2008 version. This is the list of changed files.