LAMMPS WWW Site - LAMMPS Documentation - LAMMPS Commands

### shape command

Syntax:

    shape I x y z

- I = atom type (see asterisk form below)
- x = x diameter (distance units)
- y = y diameter (distance units)
- z = z diameter (distance units)

Examples:

    shape 1 1.0 1.0 1.0
    shape * 3.0 1.0 1.0
    shape 2* 3.0 1.0 1.0

Description:

Set the shape for all atoms of one or more atom types. In LAMMPS, particles that have a finite size are said to have a "shape", as opposed to being a point mass. The shape can be spherical or aspherical, depending on whether the 3 shape values are the same or different. Shape values can also be set in the read_data data file using the "Shapes" keyword. See the units command for what distance units to use.

The I index can be specified in one of two ways. An explicit numeric value can be used, as in the 1st example above. Or a wild-card asterisk can be used to set the shape for multiple atom types. This takes the form "*" or "*n" or "n*" or "m*n". If N = the number of atom types, then an asterisk with no numeric values means all types from 1 to N. A leading asterisk means all types from 1 to n (inclusive). A trailing asterisk means all types from n to N (inclusive). A middle asterisk means all types from m to n (inclusive).

A line in a data file that follows the "Shapes" keyword specifies shape using the same format as the arguments of the shape command in an input script, except that no wild-card asterisk can be used. For example, under the "Shapes" section of a data file, the line that corresponds to the 1st example above would be listed as

    1 1.0 1.0 1.0

The shape values can be set to all 0.0, which means that atoms of that type are point particles and not finite-size particles. Some pair styles and fixes and computes that operate on finite-size particles allow for a mixture of finite-size and point particles. See the doc pages of individual commands for details.

Note that the shape command can only be used if the atom style requires per-type atom shape to be set. Currently, only the dipole and ellipsoid styles do. The granular and peri styles require the shape to be set for indivual particles, not types. For these styles, the only option currently allowed is for spherical particles, so a single diameter value suffices to determine the shape. Per-atom diameters are defined in the data file read by the read_data command, or set to default values by the create_atoms command, or set to new values by the set diamter command.

Dipoles use the atom shape to compute a moment of inertia for rotational energy. See the pair_style dipole command. Only the 1st component of the shape is used since the particles are assumed to be spherical.

Ellipsoids use the atom shape to compute a generalized inertia tensor. For example, a shape setting of 3.0 1.0 1.0 defines a particle 3x longer in x than in y or z and with a circular cross-section in yz. Degenerate ellipsoids which are spherical can be defined by setting all 3 shape components the same.

If you define a hybrid atom style which includes one (or more) sub-styles which require per-type shape and one (or more) sub-styles which require per-atom diameter, then you must define both. However, in this case the per-type shape will be ignored; only the per-atom diameter will be used by LAMMPS. This means you cannot currently mix aspherical particles with per-atom diameter particles.

Restrictions:

This command must come after the simulation box is defined by a read_data, read_restart, or create_box command.

All shapes must be defined before a simulation is run (if the atom style requires shapes be set).

Related commands: none

Default: none