fix momentum command

Accelerator Variants: momentum/kk

fix momentum/chunk command

Syntax

fix ID group-ID momentum N keyword values ...
  • ID, group-ID are documented in fix command

  • momentum = style name of this fix command

  • N = adjust the momentum every this many timesteps one or more keyword/value pairs may be appended

  • keyword = linear or angular or rescale

    fix ID group-ID momentum/chunk N chunkID keyword values …

  • ID, group-ID are documented in fix command

  • momentum/chunk = style name of this fix command

  • N = adjust the momentum per chunk every this many timesteps

  • chunkID = ID of compute chunk/atom command

    one or more keyword/value pairs may be appended

  • keyword = linear or angular or rescale

    linear values = xflag yflag zflag
      xflag,yflag,zflag = 0/1 to exclude/include each dimension
    angular values = none
    rescale values = none

Examples

fix 1 all momentum 1 linear 1 1 0
fix 1 all momentum 1 linear 1 1 1 rescale
fix 1 all momentum 100 linear 1 1 1 angular
fix 1 all momentum/chunk 100 molchunk linear 1 1 1 angular

Description

Fix momentum zeroes the linear and/or angular momentum of the group of atoms every N timesteps by adjusting the velocities of the atoms. Fix momentum/chunk works equivalently, but operates on a per-chunk basis.

One (or both) of the linear or angular keywords must be specified.

If the linear keyword is used, the linear momentum is zeroed by subtracting the center-of-mass velocity of the group or chunk from each atom. This does not change the relative velocity of any pair of atoms. One or more dimensions can be excluded from this operation by setting the corresponding flag to 0.

If the angular keyword is used, the angular momentum is zeroed by subtracting a rotational component from each atom.

This command can be used to insure the entire collection of atoms (or a subset of them) does not drift or rotate during the simulation due to random perturbations (e.g. fix langevin thermostatting).

The rescale keyword enables conserving the kinetic energy of the group or chunk of atoms by rescaling the velocities after the momentum was removed.

Note that the velocity command can be used to create initial velocities with zero aggregate linear and/or angular momentum.


Styles with a gpu, intel, kk, omp, or opt suffix are functionally the same as the corresponding style without the suffix. They have been optimized to run faster, depending on your available hardware, as discussed on the Speed packages doc page. The accelerated styles take the same arguments and should produce the same results, except for round-off and precision issues.

These accelerated styles are part of the GPU, USER-INTEL, KOKKOS, USER-OMP and OPT packages, respectively. They are only enabled if LAMMPS was built with those packages. See the Build package doc page for more info.

You can specify the accelerated styles explicitly in your input script by including their suffix, or you can use the -suffix command-line switch when you invoke LAMMPS, or you can use the suffix command in your input script.

See the Speed packages doc page for more instructions on how to use the accelerated styles effectively.

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

No information about this fix is written to binary restart files. 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

Fix momentum/chunk is part of the USER-MISC package. It is only enabled if LAMMPS was built with that package. See the Build package doc page for more info.

Default

none