22 Dec 2005

Added several options to the dump and dump_modify commands.

This patch file can be applied to the 10 Nov 2005 version. This is the list of changed files. You must apply the 21Nov05, 30Nov05, 9Dec05, and 12Dec05 patches first. After installing this patch, type "make package-update" before re-making LAMMPS.


20 Dec 2005

Added an option to the fix wall/lj93 command to compute the wall's energy contribution for thermodyanmic output, as discussed in the 30 Nov 2005 patch. The option is enabled via the thermo and energy keywords of the fix_modify command.

This patch file can be applied to the 10 Nov 2005 version. This is the list of changed files. You must apply the 30Nov05 patch first.


17 Dec 2005

Fixed a bug with the dump custom command invoking per-atom energy, stress, or centro-symmetry on certain timesteps. The most likely problem is when restarting LAMMPS (e.g. from a restart file) on a timestep that is not a multiple of the dump frequency. This patch insures those per-atom calculations get done correctly even in that case.

This patch file can be applied to the 10 Nov 2005 version. This is the list of changed files.

Thanks to Craig Maloney (UCSB) for stumbling into this bug.


15 Dec 2005

Jihoon Kang (KAIST, Korea Advanced Institute of Science and Technology) found some other one-line bugs in the energy computation done by the single() routines of the lj/cut/coul/long, lj/cut/coul/debye, and buck/coul/cut pairwise potentials. These do not affect normal pairwise computations or dynamics; they would affect thermodynamic energy output when these potentials are used as part of a hybrid simulation or per-atom energy was printed.

This patch file can be applied to the 10 Nov 2005 version. This is the list of changed files. After installing this patch, type "make package-update" before re-making LAMMPS.


13 Dec 2005

Jihoon Kang (KAIST, Korea Advanced Institute of Science and Technology) found and fixed two one-line bugs in displace_atoms.cpp and respa.cpp. The former affected moving atoms via the ramp style in the z direction. The latter did not affect atom dynamics but was an error in summing forces for possible output via the dump command.

This patch file can be applied to the 10 Nov 2005 version. This is the list of changed files. You must apply the 30Nov05 patch first.


12 Dec 2005

Added and enhanced several commands that enable more input script functionality.

Aside from individual command documentation, see this section of the manual, for examples of how to run multiple simulations from a single input script.

This patch file can be applied to the 10 Nov 2005 version. This is the list of changed files. You must apply the 30Nov05 and 9Dec05 patches first.


10 Dec 2005

Tom Spelce at LLNL sent a patch for the Makefile.bgl that LAMMPS uses for Blue Gene/L. It works around an MPI bug on the system. So if you use LAMMPS on a BG/L machine, you can update your Makefile with this fix.

This patch file can be applied to the 10 Nov 2005 version. This is the list of changed files.


9 Dec 2005

Carsten Svaneborg (Max Planck Institute for Complex Systems, Dresden, Germany) has written a new fix uniaxial command to stretch/contract the 3 dimensions of a simulation box in a volume-preserving way.

Details are discussed in the command's documentation.

This patch file can be applied to the 10 Nov 2005 version. This is the list of changed files. You must apply the 30Nov05 patch first.


7 Dec 2005

Paul Crozier (Sandia) has upgraded two of the dihedral force fields in LAMMPS, charmm and harmonic. The charmm option now allows for arbitrary (integer) phase angles; the harmonic option allows for a greater range of multiplicity values. Some new CHARMM parameterizations use phase settings other than 0 or 180 degrees.

The dihedral_style and dihedral_coeff doc pages give the details.

This patch file can be applied to the 10 Nov 2005 version. This is the list of changed files. After installing this patch, type "make package-update" before re-making LAMMPS.


6 Dec 2005

This patch has 2 makefiles in it.

The Make.csh file was left out of the 10 Nov 2005 distribution. It allows you to do a "make makelist" or "make makelib" to generate new Makefiles for machines that need an explicit list of source files or to build LAMMPS as a library.

A new Makefile.tbird was created for use on Sandia's new linux cluster called Thunderbird.

This patch file can be applied to the 10 Nov 2005 version. This is the list of changed files.


30 Nov 2005

Changed the way thermodynamic information is output by LAMMPS to the screen and log file to add flexibility, new options, and enable fixes to generate thermodynamic output. Some of the details of how pressure is computed and how NPT/NPH/rRESPA time-integration is performed were also changed.

The new options for thermodynamic output are detailed in the doc pages for the thermo_style and thermo_modify commands. A style custom was added which allows a list of thermodynamic values to be specified. These include the 6 components of the pressure tensor. The thermo_modify command allows setting the output to be one- or multi-line and the numeric format of each value. It is now easy to add new styles or quantities to the custom list provided in thermo.cpp as discussed in this section of the manual.

Individual fixes can now generate values used for thermodynamic output. These can be printed and/or added to the potential energy of the system. The fix_modify command invokes these options and this section of the manual describes how to add this capability to a fix. The fix nvt, fix npt, fix nph, and fix temp/rescale commands have been extended in this way to allow their contribution to the system energy to be printed or monitored for energy conservation.

All 6 components of the thermodynamic pressure tensor are now computed by LAMMPS. The kinetic energy contribution to these components is now computed correctly (e.g. P_xx = m Vx Vx + Virial_xx) rather than as 1/3 of the total kinetic energy (m V^2 / 3). This will only make a (small) change in the dynamics of a simulation if pressure control via fix npt or fix nph is performed on individual pressure components (e.g. xy or aniso options). For isotropic pressure control (xyz option) nothing should change.

Constant pressure control in fix npt and fix nph was changed to perform volume dilation around the geometric center of the simulation box rather than the center-of-mass of the system (simpler and requires no parallel communication). The location in the velocity-Verlet timestep where the 2nd dilation is performed was changed to increase accuracy and energy conservation. These changes should make only small differences in simulation dynamics.

This patch file can be applied to the 10 Nov 2005 version. This is the list of changed files. After installing this patch, type "make package-update" before re-making LAMMPS.

Thanks to Aidan Thompson (Sandia) and Dorel Buta (Northwestern U) for helpful discussions and code contributions to these ideas.


21 Nov 2005

Erik Luijten (U Illinois) implemented an option for dump files to be written directly in gzipped (compressed) format. If you compile LAMMPS with the -DGZIP option and specify the name of a dump file with a ".gz" suffix, then the file will be written in compressed form. This can save about a factor of 3x in storage size; the output time may also be 3x longer (your mileage may vary), but dump costs are typically only a small fraction of the total run time.

This patch file can be applied to the 10 Nov 2005 version. This is the list of changed files.


17 Nov 2005

Added a one-line test to the pair style soft potential to detect when 2 atoms are in the same location, to prevent the computed force from going infinite. Since this potential is soft, that is a legitimate (though unlikely) configuration.

This patch file can be applied to the 10 Nov 2005 version. This is the list of changed files.

Thanks to Craig Maloney (UCSB) for suggesting this test.


9 Nov 2005

Added a cylindrical option to the fix indent command to allow for infinitely long cylindrical indenters. The syntax of this command was changed to allow for more general options.

This patch file can be applied to the 3 June 2005 version. This is the list of changed files. You must apply the 10Oct05 patch first.

Thanks to Ravi Argrawal at Northwestern U for developing this enhancement.


2 Nov 2005

Added an error check in neighbor settings to insure that when the "delay" setting is non-zero that it is also a multiple of the "every" setting. Without this, the check for dangerous reneighborings is not valid.

This patch file can be applied to the 3 June 2005 version. This is the list of changed files.

Thanks to David Olmsted at Sandia for suggesting this check.


31 Oct 2005

Fixed a couple bugs with the pair_style hybrid command when used with EAM setfl files. Also the restart2data tool would not process restart files written out with pair_style hybrid settings.

This patch file can be applied to the 3 June 2005 version. This is the list of changed files. You must apply the 23Jun05, 3Aug05, 26Aug05, and 14Sep05 patches first.

Thanks to Steve Seel at Sandia for running into these bugs.


27 Oct 2005

Christina Payne at Vanderbilt U wrote a new fix to apply an external electric field to charged atoms in the simulation. It can be invoked by a fix efield command.

This patch file can be applied to the 3 June 2005 version. This is the list of changed files.


10 Oct 2005

The 24 Jun 2005 patch changed the syntax of a couple of the commands that use and define groups. Several of the example input scripts in the 3 June 2005 distribution use the old syntax and thus generate errors when run with the fully patched version. The should have been updated in the 24 Jun 2005 patch - sorry!

This patch updates the example inputs scripts so they will run under the fully patched 3 June 2005 version of LAMMPS.

This patch file can be applied to the 3 June 2005 version. This is the list of changed files.

Thanks to several users for reporting this problem.


14 Sept 2005

Fixed a bug with the restart2data LAMMPS tool where the Buckingham and CHARMM pair coefficients were swapped when writing out the final data file.

This patch file can be applied to the 3 June 2005 version. This is the list of changed files. You must apply the 3Aug05 patch first.

Thanks to Amalie Frischknecht at Sandia for finding this bug.


7 Sept 2005

Release of the Pizza.py toolkit which provides tools for doing setup, analysis, plotting, and visualization for LAMMPS simulations. Pizza.py is written in Python and is available for download from this page.


3 Sept 2005

Fixed a memory bug in the Ewald solver (conventional Ewald, not PPPM) that causes problems for simulations with changing box volumes (e.g. NPT, NPH) that trigger the Ewald data structures to be reallocated.

This patch file can be applied to the 3 June 2005 version. This is the list of changed files. You must apply the 23Jun05 and 29Jul05 patches first. After installing this patch, type "make package-update" before re-making LAMMPS.

Thanks to Erik Luijten (U Illinois) for finding and fixing this bug.


2 Sept 2005

Fixed a couple of memory bugs in the fix wiggle command.

This patch file can be applied to the 3 June 2005 version. This is the list of changed files.

Thanks to Carl Wolf (U Vermont) for stumbling into this bug.


1 Sept 2005

Fixed a one-line bug in the AMBER to LAMMPS conversion script that is in the tools directory. Also added a sample LAMMPS input script to the README to show how to run an AMBER-style problem in LAMMPS.

This patch file can be applied to the 3 June 2005 version. This is the list of changed files. You must apply the 27Jul05 patch first.

Thanks to Paul Crozier (Sandia) and Pratul Agarwal (ORNL) for improving this tool.


26 Aug 2005

Fixed a one line bug that affects atom types for alloy EAM potentials when used as a sub-style with the pair_style hybrid command.

This patch file can be applied to the 3 June 2005 version. This is the list of changed files. You must apply the 23Jun05 patch first.

Thanks to Brian Henz (US Army Research Lab) for finding and fixing this bug.


25 Aug 2005

Updated the low-level Makefiles for the liberty and spirit machines at Sandia. These now point to system libraries for the FFTW library instead of to my versions, so they are more convenient for users of these machines to use.

This patch file can be applied to the 3 June 2005 version. This is the list of changed files.


22 Aug 2005

Changed the way the read_data command scans the input data file, to enable the use of atom IDs that are not numbered from 1 to Natoms. This can be useful when a previous LAMMPS run deleted atoms, yielding a new data file where some atom IDs are larger than the current # of atoms.

This patch file can be applied to the 3 June 2005 version. This is the list of changed files. You must apply the 6Jun05 and 16Jun05 patches first.


16 Aug 2005

Fixed a one line bug with the next command used for incrementing variables in input scripts. Changes in the way the input.cpp file processes the input script had broken this command.

This patch file can be applied to the 3 June 2005 version. This is the list of changed files.

Thanks to Paul Crozier at Sandia for stumbling into this bug.


15 Aug 2005

Paul Crozier modified his 4 Aug 2005 patch to generalize how the coupling spring is specified and applied. A wide variety of spring constraints between two groups of atoms or between a spring and a fixed point can now be implemented with this fix.

This patch file can be applied to the 3 June 2005 version. This is the list of changed files. You must apply the 10Jun05 and 4Aug05 patches first.


4 Aug 2005

Paul Crozier added an option to the fix spring command to allow two groups of atoms to be coupled by a spring with only a distance constraint (a distance constraint with orientation dependence was added previously).

This patch file can be applied to the 3 June 2005 version. This is the list of changed files. You must apply the 10Jun05 patch first.


3 Aug 2005

Fixed a bug with the restart2data LAMMPS tool that converts binary restart files to ASCII-text data files. Had to do with reading Coulombic cutoffs for certain pair styles and would cause the code to attempt to read values that weren't included in the restart file.

This patch file can be applied to the 3 June 2005 version. This is the list of changed files.

Thanks to Paul Crozier at Sandia for finding this bug.


29 July 2005

Fixed a bug that didn't enable class 2 pairwise potentials to be run with long-range Coulombic solvers (Ewald, PPPM). Simply needed to add the new class 2 styles to the list of valid pairwise styles that are checked for by the Ewald and PPPM routines.

This patch file can be applied to the 3 June 2005 version. This is the list of changed files. You must apply the 23Jun05 patch first. After installing this patch, type "make package-update" before re-making LAMMPS.

This patch induces a problem I didn't anticipate. With the patch installed, you won't be able to build LAMMPS with the KSPACE package unless the CLASS2 package is also included. If you have this problem, either include the CLASS2 package, or simply copy the file pair_lj_class2_coul_long.h from the src/KSPACE dir into the src dir. My patch system can't move files around, so I'll fix this problem in the next release.

Thanks to Ted Golfinopoulos at RPI for stumbling into this bug.


28 July 2005

Fixed a dumb bug with how per-atom energy was accumulated for EAM potentials (metals). This does not affect dynamics, but is a quantity that can be written out via the dump custom command. The correct energy has 2 components (pairwise and embedding), but the latter was overwriting the former instead of being summed to it.

This patch file can be applied to the 3 June 2005 version. This is the list of changed files.

Thanks to Cettina Halsey at Exxon for identifying this bug.


27 July 2005

Vikas Varshney (U Akron) made some upgrades to the Python scripts that can be used to convert files between AMBER and LAMMPS format. His changes are described in the README file with the amber2lmp tool, found in the tools directory of the LAMMPS distribution.

This patch file can be applied to the 3 June 2005 version. This is the list of changed files.


26 July 2005

Paul Crozier and Pieter in't Veld (Sandia) made some upgrades to their tool that assigns CHARMM force field coefficients to PDB files and creates LAMMPS input files. The ch2lmp tool is found in the tools directory of the LAMMPS distribution.

This patch file can be applied to the 3 June 2005 version. This is the list of changed files.


25 July 2005

Added a "drag" option to the fix_nvt, fix_npt, and fix_nph commands to damp oscillations in the temperature and pressure when the Nose/Hoover thermostat or barostat is applied. This can be especially useful for solids where the choice of an optimal Nose/Hoover damping coefficient (Tdamp or Pdamp) can be tricky.

Also added a "dilate" option to the fix_npt and fix_nph commands, so that you have an option whether to rescale the coordinates of all atoms or only the fix group atoms when the simulation box volume is dilated. The latter is useful, for example, if you wish to equilibrate the pressure of a liquid surrounding a static surface.

This patch file can be applied to the 3 June 2005 version. This is the list of changed files. You must apply the 9Jun05 and 17Jun05 patches first.


2 July 2005

Fixed a dumb mistake with pair_style table that would prevent it from working in parallel. Memory for the read-in tables was not allocated correctly for processors other than 0.

This patch file can be applied to the 3 June 2005 version. This is the list of changed files. You must apply the 23Jun05 patch first.

Thanks to Steve Seel at Sandia for stumbling into this bug.


1 July 2005

Fixed a one-line bug with reading the last (optional) input script parameter for the pair_style buck/coul/long command.

This patch file can be applied to the 3 June 2005 version. This is the list of changed files. After installing this patch, type "make package-update" before re-making LAMMPS.

Thanks to Toon Verstraelen at Ghent University for finding this bug.


24 June 2005

Added 2 new region styles as specified by the region command - namely, the "union" and "intersect" styles. These allow a region to be defined as the union or intersection of a list of other regions. Using these styles in conjunction with the side keyword to specify a region as being "inside" or "outside" the geometric volume, means that complex geometric entities can be easily defined.

The commands that allowed lists of regions to be specified as arguments (create_atoms, delete_atoms, group) have been simplified to only take a single region as an argument. Since the region itself can now be arbitrarily complex, there is no need to specify more than one.

In the near future, new features will be added that allow regions (simple or complex) to be used in new ways: temperature style and temperature-control fixes that act on a region, and a dump_modify option that allows atoms within a geometric region to be dumped.

This patch file can be applied to the 3 June 2005 version. This is the list of changed files. You must apply the 9Jun05 patch first.


23 June 2005

Fixed several small bugs. Velocity creation with a gaussian distribution had an uninitialized variable. The pair_modify command did not work with pair_style hybrid. Pair potentials used with rRESPA had an uninitialized rRESPA variable. The way pair_style table (pre-tabulated) potentials were used with KSpace solvers (Ewald, PPPM) had a setup glitch.

Also added an option to kspace_modify to allow the PPPM G-ewald parameter to be set explicitly. This can be useful for small systems where the automatic grid generation in PPPM can fail, or to enable a pair_style table potential to be pre-tabulated to work with a specific value of G-ewald.

This patch file can be applied to the 3 June 2005 version. This is the list of changed files. After installing this patch, type "make package-update" before re-making LAMMPS.


17 June 2005

Made an internal change in the way the fix_modify command is processed. The idea is to have a modifiable fix parse the arguments to fix_modify directly. This allows arbitrary commands and/or arguments to be passed into any fix via the fix_modify command. We plan to exploit this idea for new kinds of rigid body motion by allowing joints and hinges between bodies to be defined via the fix_modify command.

This patch file can be applied to the 3 June 2005 version. This is the list of changed files. You must apply the 9Jun05 patch first.


16 June 2005

Made a small change to allow data files to have comments in their header section. The 1st line of the data file is always ignored; text following a '#' character in any line of the header section is also now ignored. Thus individual lines can be annotated, or additional all-comment lines can be added to document the file.

This patch file can be applied to the 3 June 2005 version. This is the list of changed files. You must apply the 6Jun05 patch first.


10 June 2005

Paul Crozier (SNL) added an option to the fix spring command to allow two groups of atoms to be linked to each other by a spring. The original usage of the command to tether a single group of atoms to a fixed point via a spring is still an option, though the syntax of the command has changed to make the 2 options consistent.

This patch file can be applied to the 3 June 2005 version. This is the list of changed files.


9 June 2005

Added a fix nph command for running constant NPH (isobaric) simulations with a Nose/Hoover barostat as an alternative to fix npt. If no other ensemble fix is used, temperature is not controlled. Alternatively, temperature can be controlled independently by also using a fix langevin or fix temp/rescale command.

This patch file can be applied to the 3 June 2005 version. This is the list of changed files.


8 June 2005

Small bug fix in reading data files when atoms are outside the periodic simulation box and LAMMPS remaps them back into the box. Without the fix, the image flags for an atom can be messed up. If atoms are far outside the box, they can be lost when running in parallel.

This patch file can be applied to the 3 June 2005 version. This is the list of changed files. You must apply the 6Jun05 patch first.

Thanks to Jim Shepherd at GA Tech and Vikas Varshney at U Akron for stumbling into this bug.


7 June 2005

Added a vector option to the fix_gravity command to allow a force scaled by mass (acceleration) to be added to each atom in the group. This allows, for example, a pressure gradient to be imposed across the system.

This patch file can be applied to the 3 June 2005 version. This is the list of changed files. After installing this patch, type "make package-update" before re-making LAMMPS.


6 June 2005

Made small change to allow data files to have trailing comments following a '#' character on data lines for atoms, bonds, potential coefficients, etc.

This is useful for allowing tools like those in the ch2lmp package to annotate the data files they produce with additional information, e.g. what CHARMM force field values or protein residues correspond to the LAMMPS info.

This patch file can be applied to the 3 June 2005 version. This is the list of changed files.


2 June 2005

These are all minor changes that will be part of the next LAMMPS release (next week, finally!).

Changed the "set_type" command to a "set" command to make it more general for setting charge, dipole moments, etc.

Fixed a bug in stress units as output by the dump custom command, which was a problem for real or metal units.

Fixed a bug with how restart files were written for granular systems that used fix insert to create particles.


21 Apr 2005

For molecular problems, LAMMPS must be able to find the local index of a global atom ID, in order to compute bond force fields (angle, etc). Each processor stores a lookup table of length N for this purpose, where N = total # of atoms in the system. For very large molecular problems, this does not scale, and LAMMPS can run out of memory.

An option was added to implement this lookup capability via a hash table, which only requires memory proportional to N/P on each processor where P is the number of processors. The option is invoked by a new atom_modify command with arguments "map hash" for the new option, or "map array" for the old table-lookup. "Map array" remains the default since it is a bit faster to get the index directly from a lookup table and memory is not an issue for most problems.

The lookup table was the only memory usage within LAMMPS that did not scale as N/P, so that bottleneck has now been remedied. It was done to enable some very large molecular benchmarks on the new Cray Red Storm and IBM Blue Gene Light machines at Sandia and LLNL; see this page for more details as they become available.

This upgrade will be part of the next LAMMPS release (April 2005).


20 Apr 2005

A library interface to LAMMPS was created, so that LAMMPS can be built and called as a library from another code or script. The build process is done via

make -f Makefile.lib linux 

where "linux" is a machine name. The file liblmp_linux.a is produced which can be linked by another application.

The interface to the library is simply 3 calls:

lammps_open();
lammps_command("units lj");
lammps_close(); 

The first and last serve to open and close a LAMMPS simulation. The call to lammps_command() can be used multiple times to pass a single text command to LAMMPS which is executed just as if it were read from an input script.

This upgrade will be part of the next LAMMPS release (April 2005).


19 Apr 2005

A new version of the CHARMM to LAMMPS convertor tool was created. The new Perl script makes it easier to process PDB and PSF files, assign CHARMM force field parameters, and create LAMMPS input files. It is discussed briefly in charmm2lmp section of the LAMMPS documentation and usage instructions are provided in the README file provided in the tools directory of the LAMMPS distribution.

Thanks to Pieter in 't Veld and Paul Crozier (Sandia) for creating this new tool.

This upgrade will be part of the next LAMMPS release (April 2005).


8 Apr 2005

Added an option to the group command to create a new atom group via the intersection of existing groups. This complements the other options that allow for unions and differences between groups. Thus you can type

group boundary intersect upper flow 

to form a boundary group with atoms common to the upper and flow groups.

This patch file can be applied to the 17 Jan 2005 version. This is the list of changed files.

Thanks to Paul Crozier (Sandia) for suggesting this option.


7 Apr 2005

Added an option for dump and thermodynamic output to flush the I/O pipe after each write. This insures the dump file or log file is always current (not buffered by the OS) and the output will be complete even if LAMMPS halts before a simulation completes, e.g. due to time expiring in a batch queue run.

You can access this feature via the dump_modify and thermo_modify commands, with the "flush yes" option.

This patch file can be applied to the 17 Jan 2005 version. This is the list of changed files. After installing this patch, type "make update" before re-making LAMMPS.

Thanks to Pieter in 't Veld (Sandia) for suggesting this option.


31 Mar 2005

Changed the MPI syntax to MPI_Sendrecv() in a few places instead of individual calls to MPI_Send() and MPI_Recv(). The latter was hanging on large numbers of processors on the IBM p690 machine due to its synchronous sends of even tiny messages. Also made this change in LAMMPS 2001.

Thanks to Fiona Reed (Edinburgh Parallel Computing Centre) for finding this problem.

This upgrade will be part of the next LAMMPS release (April 2005).


30 Mar 2005

Added class 2 force fields for molecular simulations. These are formulas for bond, angle, dihedral, and improper interactions that include higher-order cross terms, e.g. bond-bond interactions within an angle, bond-angle interactions within a dihedral, etc. They are termed "class 2" in the sense that standard harmonic potentials are considered "class 1". The class 2 force field also includes a 6/9 pairwise potential and a different flavor of pairwise mixing, instead of the standard Lennard-Jones 6/12 potential.

These equations are called the COMPASS force field by Accelrys and its Insight MD code. Previously they were called CVFF by MSI/BioSym and its Discover MD code. The msi2lmp tool provided in the LAMMPS package can create LAMMPS data files with listings of class 2 force field coefficients if you have Accelrys parameter files. The Towhee Monte Carlo code can also produce LAMMPS data files with COMPASS force field assignments.

These potentials were part of the older LAMMPS 2001 (Fortran) and were originally implemented by Eric Simon and John Carpenter of Cray Research.

This upgrade will be part of the next LAMMPS release (April 2005).


29 Mar 2005

Fixed a bug with z-binning of particles for computing statistics with the fix gran/diag command in granular simulations. If the lower z-boundary of the simulation box was not 0.0, the assignment to bins was incorrect.

This patch file can be applied to the 17 Jan 2005 version. This is the list of changed files. After installing this patch, type "make update" before re-making LAMMPS.

Thanks to Kurt Smith (U Pittsburgh) for finding this bug.


11 Mar 2005

Added an option to the velocity command to allow linear or angular momentum of a group of atoms to be explicitly zeroed, without otherwise changing the current velocities.

This feature was suggested by Lutz Maibaum (UC Berkeley).

This upgrade will be part of the next LAMMPS release (Mar 2005).


10 Mar 2005

Made a few small changes to enable LAMMPS to run systems with more than 2 billion (2^31) atoms. This was motivated by a Blue Gene Light benchmark run of a 10 billion atom Lennard-Jones system, described here.

Needed to replace a 32-bit integer variable for the total # of atoms with a double-precision variable with 53 bits of precision (10^15). When machines have enough speed and memory to do MD simulations with 10^15 atoms, I should be retired.

Still not possible to run molecular systems bigger than 2 billion atoms, since atom IDs are needed to find bond partners and are stored as integers. Changing that would require more serious code surgery.

This upgrade will be part of the next LAMMPS release (Mar 2005).


9 Mar 2005

Fixed two bugs with rigid body motion as invoked by the fix rigid command. One bug affected the motion of the 1st rigid body in a simulation; it was due to carelessly leaving in a couple lines of debugging code.

The other bug was a numerical problem with rigid bodies that have no moment of inertia in one dimension (e.g. a 2-particle rigid body or 3 atoms in a line). The code for time integrating this special case was not robust.

This patch file can be applied to the 17 Jan 2005 version. This is the list of changed files.

Thanks to Lutz Maibaum (UC Berkeley) and Kurt Smith (U Pittsburgh) for stumbling into these bugs.


8 Mar 2005

Added a pair style of hybrid and an atom style of hybrid. Similar to the bond_style of hybrid, this allows a single simulation to invoke multiple pair potentials. For example, water or a biological molecule on a metal surface can be simulated, where the molecules interact via a CHARMM potential (with an optional long-range Coulombic solver), the metal is modeled with an embedded atom method (EAM) potential, and the molecule/metal interaction is parameterized with a simple Lennard-Jones potential.

Such a simulation may require that atoms store a combination of values (charge, EAM density, etc) that are not all included in a single atom style (full, eam, atomic, etc). The new hybrid atom style allows multiple atom styles to be specified so that all needed atom quantities are stored and communicated.

This upgrade will be part of the next LAMMPS release (Mar 2005).


28 Feb 2005

Added a pair potential style of table to the pair_style command. This allows one or more files of pre-tabulated energy and force values to be read into LAMMPS and used to compute pair interactions. Different tables can be assigned to different pairs of atom types. Interpolation of energy and force values from the tables can be done via direct lookup, linear interpolation, spline interpolation, or linear interpolation with a fast bitmap lookup.

Files of tabulated values are in a simple text format so they can be created by the user or written out from LAMMPS (e.g. from an analytic potential) via the pair_write command. If the accuracy is acceptable, using tabulated potentials is often cheaper than the analytic form.

This feature was implemented with help from Paul Crozier (Sandia).

This upgrade will be part of the next LAMMPS release (Mar 2005).


26 Feb 2005

Added several pair and bond potential options to the pair_style and bond_style commands. Specifically, a Buckingham pair potential (exponential + 1/r^6) with versions that include cutoff Coulomb or long-range Ewald terms, a Yukawa (screened-Coulomb) pair potential, a Morse pair potential, and a Morse bond potential.

The Buckingham potentials were implemented with the help of Eduardo Bringa (LLNL) and Dean Nevins (UCSB), the Yukawa potential with the help of Robert Hoy (JHU), and the Morse bond potential with the help of Jeffrey Greathouse (Sandia).

This upgrade will be part of the next LAMMPS release (Mar 2005).


25 Feb 2005

Fixed a one-line bug in delete_atoms that could cause problems when doing deletes of atoms from a molecular system.

This patch file can be applied to the 17 Jan 2005 version. This is the list of changed files.

Thanks to Paul Crozier (Sandia) for pointing out this bug.


24 Feb 2005

Fixed some small bugs with deleting bonds, displacing atoms, setting types that were due to a previous change in parallel communication. Also generate an error when velocities are created with an option inappropriate for a system where atoms have been deleted.

This patch file can be applied to the 17 Jan 2005 version. This is the list of changed files. You must apply the 22Feb05 patch first.

Thanks to Paul Crozier (Sandia) for pointing out these bugs.


23 Feb 2005

Fixed a bug (one line, but a bad one) where the atom type of atoms interacting via EAM potentials was not set correctly. This could affect alloy systems modeled with EAM potentials, since they are multi-type.

This patch file can be applied to the 17 Jan 2005 version. This is the list of changed files. You must apply the 24Jan05 patch first. After installing this patch, type "make update" before re-making LAMMPS.

Thanks to Yunfeng Shi (U Michigan) for pointing out this bug.


22 Feb 2005

Fixed a bug for zeroing of angular momentum when velocities are created via the velocity command with the rot keyword. The routine for doing this was simply wrong! The new version uses the correct formulation. Note that linear momentum is zeroed by default, but angular momentum is not, so this will not affect your initialized velocities unless you were using the rot yes keyword/value.

This patch file can be applied to the 17 Jan 2005 version. This is the list of changed files.

Thanks to Steven Seel (Sandia) for calling attention to this bug.


19 Feb 2005

Fixed a formatting bug with the output produced by the lmp2cfg tool, so that it is readable by the AtomEye vizualization package.

This patch file can be applied to the 17 Jan 2005 version. This is the list of changed files.

Thanks to Jin Sun (Iowa State Univ) for finding and fixing this bug.


18 Feb 2005

Fixed a one-line bug with the bitmapped tables implemented as an optimization for the short-range part of long-range Coulombics. The inner cutoff for the tables was set to 2.0 instead of sqrt(2.0) which could cause some simulations to compute some pairwise interactions incorrectly.

This patch file can be applied to the 17 Jan 2005 version. This is the list of changed files. You must apply the 24Jan05 patch first. After installing this patch, type "make update" before re-making LAMMPS.

Thanks to Mary-Ann Thyveetil (University College London) for finding this bug.


10 Feb 2005

Added a new include command. This allows a 2nd file of input commands to be inserted into an input script. Include commands can be nested.

This patch file can be applied to the 17 Jan 2005 version. This is the list of changed files. You must apply the 24Jan05 and 25Jan05 patches first.


26 Jan 2005

Added a fix to compute radial distribution functions or g(r). The fix rdf command allows users to specify pairs of atom types for each RDF. The RDFs are computed from a distance of 0 out to the global force cutoff distance. If you want g(r) for longer distances you'll need to post-process a dump file.

This patch file can be applied to the 17 Jan 2005 version. This is the list of changed files. You must apply the 24Jan05 patch first.

This feature was implemented by Paul Crozier (Sandia).


25 Jan 2005

Added a pair_write command to LAMMPS. This enables you to print out a file with the pairwise energy and force tabulated at a series of distances between a pair of atoms. It's useful for debugging or plotting and will be part of soon-to-be-implemented capability for reading in pre-tabulated pair potentials from files.

This patch file can be applied to the 17 Jan 2005 version. This is the list of changed files. You must apply the 24Jan05 patch first.


24 Jan 2005

Added options for printing per-atom energy and stress to the dump custom command. These quantities are computed by new fixes and cause neighbor lists to be looped over and inter-processor communication if necessary to accumulate information from an atom's neighbors. The formula used for the 6 components of the stress tensor is given in the dump custom documentation. This new feature required adding a routine to each of the pair potentials for computation of the interaction between 2 atoms, so this patch updates a lot of files.

This patch file can be applied to the 17 Jan 2005 version. This is the list of changed files. After installing this patch, type "make update" before re-making LAMMPS.


22 Jan 2005

Ara Kooser (Sandia) fixed a bug in the example files for his lmp2traj tool that analyzes LAMMPS output to create contour maps, density profiles, etc.

This patch file can be applied to the 17 Jan 2005 version. This is the list of changed files.


21 Jan 2005

Fixed a small bug in the new centro-symmetry option of the dump custom command. This would only affect the computation of the centro-symmetry parameter for molecular systems, which is an admittedly odd thing to be doing anyway.

This patch file can be applied to the 17 Jan 2005 version. This is the list of changed files.


20 Jan 2005

Fixed a small bug in the fix tmd command in the way file cleanup was handled when no TMD statistics file was used. Also added more command syntax checking.

This patch file can be applied to the 17 Jan 2005 version. This is the list of changed files.


19 Jan 2005

Fixed a bug in fft3d.h with the new SCSL library additions for SGI machines. The old ALTIX keyword was not changed to SCSL in 3 places like it was in fft3d.cpp.

This patch file can be applied to the 17 Jan 2005 version. This is the list of changed files. After installing this patch, type "make update" before re-making LAMMPS.

Thanks to Kelly Anderson (Wright Patterson AFB) and Prentice Bisbal (Lexicon Pharmaceuticals) for pointing this out.


15 Jan 2005

Made several changes to the way rigid bodies are treated by the fix rigid command. A more accurate integrator was implemented using Richardson extrapolation. This is needed because the usual velocity-Verlet methodology is only 1st-order accurate when updating the quaternion, leading to poor energy conservation. The contribution of rigid bodies to the pressure virial is now included, using ideas from this paper: N. S. Martys and R. D. Mountain, PRE 59,3733-3736 (1999). Rigid bodies should now work in conjunction with NPT and volume-rescaling fixes that re-scale the simulation box dimensions.

This upgrade will be part of the next LAMMPS release (Jan 2005).

These enhancements were implemented with help from Paul Crozier and Louis Romero (Sandia).


14 Jan 2005

Added the ability to dump the centro-symmetry parameter for each atom as part of the dump custom command. For solid state systems this is a useful measure of the local lattice disorder around an atom and can be used to characterize whether the atom is part of a perfect lattice, a local defect (e.g. a dislocation or stacking fault), or at a surface. More info about how to invoke this dump option is given in the dump custom documentation.

This upgrade will be part of the next LAMMPS release (Jan 2005).


14 Jan 2005

Fixed a one-line bug with the pair_coeff command for the pair_style eam. When reading multi-element potential files, the error checking for extra command-line arguments that map atom types to elements in the potential file was not correct.

This upgrade will be part of the next LAMMPS release (Jan 2005).


11 Jan 2005

The targeted molecular dynamics (TMD) capability provided by the fix tmd command was enhanced and a couple of small bugs were fixed. In particular, atoms whose coordinates have wrapped around the periodic box are now treated appropriately and the TMD input file of atom coordinates allows for image flags, in the same style as LAMMPS data files.

This upgrade will be part of the next LAMMPS release (Jan 2005).

These enhancements were implemented by Paul Crozier (Sandia).


11 Jan 2005

Fixed a bug in the granular force fields with how rotational velocities were computed. The formula needs an extra 1/r term. Since r = separation of two touching LJ particles interacting via a very stiff spring constant, it is typically very close to 1. Hence this bug should not affect the results of most simulations. However, for polydisperse systems (non unit sigmas), the effect could be more significant.

This fix will be part of the next LAMMPS release (Jan 2005).

Thanks to Jin Sun (Iowa State Univ) for finding this bug.


10 Jan 2005

Fixed a one-line bug in tools/micelle2d.f where a common block was inconsistently defined in the main program and a subroutine. Common blocks are, of course, evil inventions of convenience (similar to cell phones) and prone to this sort of error, which is why I use them.

This fix will be part of the next LAMMPS release (Jan 2005).

Thanks to Mike Coltrin (Sandia) for finding this bug.


10 Jan 2005

Partitioned the LAMMPS source code into a large set of core files plus several optional packages. When LAMMPS is built you can now choose to include or exclude any or all of the packages. If you don't use the LAMMPS options in a particular package, this will give you a smaller executable which may run slightly faster. See the Making LAMMPS section of the manual for instructions on how to build LAMMPS with or without packages.

The current list of packages is as follows:

granular force fields and boundary conditions for granular systems
kspace long-range Ewald and particle-mesh (PPPM) solvers
metal force fields for metallic systems
molecule force fields for molecular systems

This feature will be part of the next LAMMPS release (Jan 2005).