LAMMPS WWW Site - LAMMPS Documentation - LAMMPS Commands

fix adapt command

Syntax:

fix ID group-ID adapt N keyword values ... 

Examples:

fix 1 all adapt 1 pair soft a 1 1 v_prefactor
fix 1 all adapt 1 pair soft a 2* 3 v_prefactor
fix 1 all adapt 1 pair soft a * * v_prefactor soft a 3 3 v_prefactor2
fix 1 all adapt 10 atom diameter v_size 

Description:

Change or adapt one or more specific simulation settings over time as a simulation runs. Pair potential and atom attribute parameters which can be varied by this fix are discussed below. Many other fixes can also be used to time-vary simulation parameters, e.g. the "fix deform" command will change the simulation box size/shape and the "fix move" command will change atom positions and velocities in prescribed manners.

IMPORTANT NOTE: Any settings changed by fix adapt are not reset to their original values at the end of a simulation. They remain changed to the final values they were set to at the end of the run.

The pair keyword enables various parameters of potentials defined by the pair_style command to be changed, if the pair style supports it. The pstyle argument is the name of the pair style. If pair_style hybrid or hybrid/overlay is used, pstyle should be a sub-style name. For example, pstyle could be specified as "soft" or "lubricate". The pparam argument is the name of the parameter to change. This is the current list of pair styles and parameters that can be varied by this fix. See the doc pages for individual pair styles for the meaning of these parameters.

soft a global
lubricate mu type pairs

Some parameters are global settings for the pair style, e.g. the viscosity setting "mu" for pair_style lubricate. Other parameters apply to pairs of atom types within the pair style, e.g. the prefactor "a" for pair_style soft. If a type pair parameter is specified, the I and J settings should be specified to indicate which pair(s) to apply it to. Note that in all cases, the pair_style and pair_coeff commands must be used in the usual manner to specify these parameters initially; the fix adapt command simply overrides the parameters.

Similar to the pair_coeff command, I and J can be specified in one of two ways. Explicit numeric values can be used for each, as in the 1st example above. I <= J is required. LAMMPS sets the coefficients for the symmetric J,I interaction to the same values.

A wild-card asterisk can be used in place of or in conjunction with the I,J arguments to set the coefficients for multiple pairs of 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). Note that only type pairs with I <= J are considered; if asterisks imply type pairs where J < I, they are ignored.

If a global parameter is specified, the I and J settings still need to be specified, but are ignored.

The v_name argument for keyword pair is the name of an equal-style variable which will be evaluated each time this fix is invoked to set the parameter to a new value. It should be specified as v_name, where name is the variable name. Equal-style variables can specify formulas with various mathematical functions, and include thermo_style command keywords for the simulation box parameters and timestep and elapsed time. Thus it is easy to specify parameters that change as a function of time or span consecutive runs in a continuous fashion. For the latter, see the start and stop keywords of the run command and the elaplong keyword of thermo_style custom for details.

For example, these commands would change the prefactor coefficient of the pair_style soft potential from 10.0 to 30.0 in a linear fashion over the course of a simulation:

variable prefactor equal ramp(10,30)
fix 1 all adapt 1 pair soft a * * v_prefactor 

The atom keyword enables various atom properties to be changed. The aparam argument is the name of the parameter to change. This is the current list of atom parameters that can be varied by this fix:

The v_name argument of the atom keyword is the name of an equal-style variable which will be evaluated each time this fix is invoked to set the parameter to a new value. It should be specified as v_name, where name is the variable name. See the discussion above describing the formulas associated with equal-style variables. The new value is assigned to the corresponding attribute for all atoms in the fix group.

For example, these commands would shrink the diameter of all granular particles in the "center" group from 1.0 to 0.1 in a linear fashion over the course of a 1000-step simulation:

variable size equal ramp(1.0,0.1)
fix 1 center adapt 10 atom diameter v_size 

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: none

Related commands: none

Default: none