LAMMPS WWW Site - LAMMPS Documentation - LAMMPS Commands

atom_style command

Syntax:

atom_style style args 
  args = none for any style except hybrid
  hybrid args = list of one or more sub-styles 

Examples:

atom_style atomic
atom_style bond
atom_style full
atom_style hybrid charge bond 

Description:

Define what style of atoms to use in a simulation. This determines what attributes are associated with the atoms. This command must be used before a simulation is setup via a read_data, read_restart, or create_box command.

Once a style is assigned, it cannot be changed, so use a style general enough to encompass all attributes. E.g. with style bond, angular terms cannot be used or added later to the model. It is OK to use a style more general than needed, though it may be slightly inefficient.

The choice of style affects what quantities are stored by each atom, what quantities are communicated between processors to enable forces to be computed, and what quantities are listed in the data file read by the read_data command.

These are the additional attributes of each style and the typical kinds of physical systems they are used to model. All styles store coordinates, velocities, atom IDs and types. See the read_data, create_atoms, and set commands for info on how to set these various quantities.

angle bonds and angles bead-spring polymers with stiffness
atomic only the default values coarse-grain liquids, solids, metals
bond bonds bead-spring polymers
charge charge atomic system with charges
dipole charge and dipole moment system with dipolar particles
electron charge and spin and eradius electronic force field
ellipsoid shape, quaternion for particle orientation, angular momentum extended aspherical particles
full molecular + charge bio-molecules
molecular bonds, angles, dihedrals, impropers uncharged molecules
peri mass, volume mesocopic Peridynamic models
sphere diameter, mass, angular velocity granular models

All of the styles assign mass to particles on a per-type basis, using the mass command, except for the finite-size particle styles discussed below. They assign mass on a per-atom basis.

All of the styles define point particles, except the sphere, ellipsoid, electron, and peri styles, which define finite-size particles.

For the sphere style, the particles are spheres and each stores a per-particle diameter and mass. If the diameter > 0.0, the particle is a finite-size sphere. If the diameter = 0.0, it is a point particle.

For the ellipsoid style, the particles are ellipsoids and each stores a flag which indicates whether it is a finite-size ellipsoid or a point particle. If it is an ellipsoid, it also stores a shape vector with the 3 diamters of the ellipsoid and a quaternion 4-vector with its orientation.

For the electron style, the particles representing electrons are 3d Gaussians with a specified position and bandwidth or uncertainty in position, which is represented by the eradius = electron size.

For the peri style, the particles are spherical and each stores a per-particle mass and volume.


Typically, simulations require only a single (non-hybrid) atom style. If some atoms in the simulation do not have all the properties defined by a particular style, use the simplest style that defines all the needed properties by any atom. For example, if some atoms in a simulation are charged, but others are not, use the charge style. If some atoms have bonds, but others do not, use the bond style.

The only scenario where the hybrid style is needed is if there is no single style which defines all needed properties of all atoms. For example, if you want dipolar particles which will be torqued and rotate, you would need to use "atom_style hybrid sphere dipole". When a hybrid style is used, atoms store and communicate the union of all quantities implied by the individual styles.

LAMMPS can be extended with new atom styles; see this section.

Restrictions:

This command cannot be used after the simulation box is defined by a read_data or create_box command.

The angle, bond, full, and molecular styles are part of the "molecular" package. The dipole style is part of the "dipole" package. The ellipsoid style is part of the "asphere" package. The peri style is part of the "peri" package for Peridynamics. The electron style is part of the "user-eff" package for electronic force fields. They are only enabled if LAMMPS was built with that package. See the Making LAMMPS section for more info.

Related commands:

read_data, pair_style

Default:

atom_style atomic