\(\renewcommand{\AA}{\text{Å}}\)

# fix wall/body/polygon command

## Syntax

    fix ID group-ID wall/body/polygon k_n c_n c_t wallstyle args keyword values ...

- ID, group-ID are documented in fix command

- wall/body/polygon = style name of this fix command

- k_n = normal repulsion strength (force/distance or pressure units)

- c_n = normal damping coefficient (force/distance or pressure units)

- c_t = tangential damping coefficient (force/distance or pressure units)

- wallstyle = xplane or yplane

- args = list of arguments for a particular style

      xplane or yplane args = lo hi
        lo,hi = position of lower and upper plane (distance units), either can be NULL)

- zero or more keyword/value pairs may be appended to args

- keyword = wiggle

      wiggle values = dim amplitude period
        dim = x or y or z
        amplitude = size of oscillation (distance units)
        period = time of oscillation (time units)

## Examples

    fix 1 all wall/body/polygon 1000.0 20.0 5.0 xplane -10.0 10.0

## Description

This fix is for use with 2d models of body particles of style rounded/polygon. It bounds the simulation domain with wall(s). All particles in the group interact with the wall when they are close enough to touch it. The nature of the interaction between the wall and the polygon particles is the same as that between the polygon particles themselves, which is similar to a Hookean potential. See the Howto body page for more details on using body particles.

The parameters k_n, c_n, c_t have the same meaning and units as those specified with the pair_style body/rounded/polygon command.

The wallstyle is planar and allows to specify a pair of walls in x- and y direction each. Wall positions are given by lo and hi. Either of the values can be specified as NULL if a single wall per dimension is desired. Optionally, the wall can be moving, if the wiggle keyword is appended.

For the wiggle keyword, the wall oscillates sinusoidally, similar to the oscillations of particles which can be specified by the fix move command. This is useful in packing simulations of particles. The arguments to the wiggle keyword specify a dimension for the motion, as well as its amplitude and period. Note that if the dimension is in the plane of the wall, this is effectively a shearing motion. If the dimension is perpendicular to the wall, it is more of a shaking motion.

Each timestep, the position of a wiggled wall in the appropriate dim is set according to this equation:

    position = coord + A - A cos (omega * delta)

where coord is the specified initial position of the wall, A is the amplitude, omega is 2 PI / period, and delta is the time elapsed since the fix was specified. The velocity of the wall is set to the derivative of this expression.

## Dump image info

Added in version 11Feb2026.

This fix supports the fix keyword of dump image. The fix will pass geometry information about the walls to dump image so that the walls will be included in the rendered image. Please note, that for 2d systems, a wall rendered as a plane would be invisible and it is thus rendered as a cylinder.

The color of the wall is by default that of the first atom type when using color styles “type” or “element”. With color style “const” the default value of “white” can be changed using dump_modify fcolor. The transparency is by default fully opaque and can be changed with dump_modify ftrans.

The fflag1 setting determines whether the cylinder representing the wall is capped with a sphere at the ends: 0 means no caps, 1 means the lower end is capped, 2 means the upper end is capped, and 3 means both ends are capped. The fflag2 setting allows to set the radius of the rendered cylinders.

## Restart, fix_modify, output, run start/stop, minimize info

None of the fix_modify options are relevant to this fix. No global or per-atom quantities are stored by this fix for access by various output commands. No parameter of this fix can be used with the start/stop keywords of the run command. This fix is not invoked during energy minimization.

## Restrictions

This fix is part of the BODY package. It is only enabled if LAMMPS was built with that package. See the Build package page for more info.

Any dimension (xy) that has a wall must be non-periodic.

## Related commands

atom_style body, pair_style body/rounded/polygon

## Default

none