diff --git a/doc/change_box.html b/doc/change_box.html index 520bba37f5..f841a5f4c0 100644 --- a/doc/change_box.html +++ b/doc/change_box.html @@ -9,183 +9,52 @@
-

displace_box command +

change_box command

Syntax:

-
displace_box group-ID parameter args ... keyword value ... 
+
change_box style 
 
-

Examples:

-
displace_box all xy final -2.0 z final 0.0 5.0 units box
-displace_box all x scale 1.1 y volume z volume 
+
change_box ortho
+change_box triclinic 
 

Description:

-

Change the volume and/or shape of the simulation box. Orthogonal -simulation boxes have 3 adjustable parameters (x,y,z). Triclinic -(non-orthogonal) simulation boxes have 6 adjustable parameters -(x,y,z,xy,xz,yz). Any or all of them can be adjusted independently -and simultaneously by this command. This fix can be used to expand or -contract a box, or to apply a shear strain to a non-orthogonal box. +

By default LAMMPS runs a simulation in an orthogonal, axis-aligned +simulation box. LAMMPS can also run simulations in non-orthogonal +(triclinic) simulation boxes. A box is +defined as either orthogonal or non-orthogonal when it is created via +the create_box, read_data, or +read_restart commands.

-

Any parameter varied by this command must refer to a periodic -dimension - see the boundary command. For parameters -"xy", "xz", and "yz" this means both affected dimensions must be -periodic, e.g. x and y for "xy". Dimensions not varied by this -command can be periodic or non-periodic. +

This command allows you to toggle the existing simulation box from +orthogonal to non-orthogonal and vice versa. For example, an initial +equilibration simulation can be run in an orthogonal box, the box can +be toggled to non-orthogonal, and then a non-equilibrium MD (NEMD) +simulation can be run with deformation via +the fix deform command.

-

The size and shape of the initial simulation box are specified by the -create_box or read_data or -read_restart command used to setup the simulation, -or they are the values from the end of the previous run. The -create_box, read data, and -read_restart commands also determine whether the -simulation box is orthogonal or triclinic and their doc pages explain -the meaning of the xy,xz,yz tilt factors. If the displace_box command -changes the xy,xz,yz tilt factors, then the simulation box must be -triclinic, even if its initial tilt factors are 0.0. -

-
- -

For the x, y, and z parameters, this is the meaning of their -styles and values. -

-

For style final, the final lo and hi box boundaries of a dimension -are specified. The values can be in lattice or box distance units. -See the discsussion of the units keyword below. -

-

For style delta, plus or minus changes in the lo/hi box boundaries -of a dimension are specified. The values can be in lattice or box -distance units. See the discussion of the units keyword below. -

-

For style scale, a multiplicative factor to apply to the box length -of a dimension is specified. For example, if the initial box length -is 10, and the factor is 1.1, then the final box length will be 11. A -factor less than 1.0 means compression. -

-

The volume style changes the specified dimension in such a way that -the box volume remains constant while other box dimensions are changed -explicitly via the styles discussed above. For example, "x scale 1.1 -y scale 1.1 z volume" will shrink the z box length as the x,y box -lengths increase, to keep the volume constant (product of x,y,z -lengths). If "x scale 1.1 z volume" is specified and parameter y is -unspecified, then the z box length will shrink as x increases to keep -the product of x,z lengths constant. If "x scale 1.1 y volume z -volume" is specified, then both the y,z box lengths will shrink as x -increases to keep the volume constant (product of x,y,z lengths). In -this case, the y,z box lengths shrink so as to keep their relative -aspect ratio constant. -

-

For solids or liquids, note that when one dimension of the box is -expanded by this command, it may be physically undesirable to hold the -other 2 box lengths constant (unspecified by this command) since that -implies a density change. Using the volume style for those 2 -dimensions to keep the box volume constant may make more physical -sense, but may also not be correct for materials and potentials whose -Poisson ratio is not 0.5. -

-

For the scale and volume styles, the box length is expanded or -compressed around its mid point. -

-
- -

For the xy, xz, and yz parameters, this is the meaning of their -styles and values. Note that changing the tilt factors of a triclinic -box does not change its volume. -

-

For style final, the final tilt factor is specified. The value -can be in lattice or box distance units. See the discussion of the -units keyword below. -

-

For style delta, a plus or minus change in the tilt factor is -specified. The value can be in lattice or box distance units. See -the discsussion of the units keyword below. -

-

All of these styles change the xy, xz, yz tilt factors. In LAMMPS, -tilt factors (xy,xz,yz) for triclinic boxes are always bounded by half -the distance of the parallel box length. For example, if xlo = 2 and -xhi = 12, then the x box length is 10 and the xy tilt factor must be -between -5 and 5. Similarly, both xz and yz must be between --(xhi-xlo)/2 and +(yhi-ylo)/2. Note that this is not a limitation, -since if the maximum tilt factor is 5 (as in this example), then -configurations with tilt = ..., -15, -5, 5, 15, 25, ... are all -equivalent. Any tilt factor specified by this command must be within -these limits. -

-
- -

The remap keyword determines whether atom positions are re-mapped to -the new box. If remap is set to x (the default), atoms in the fix -group are re-mapped; otherwise they are not. If remap is set to -none, then this remapping does not take place. -

-

The units keyword determines the meaning of the distance units used -to define various arguments. A box value selects standard distance -units as defined by the units command, e.g. Angstroms for -units = real or metal. A lattice value means the distance units are -in lattice spacings. The lattice command must have -been previously used to define the lattice spacing. -

-
- -

The simulation box size or shape can be changed by arbitrarily large -amounts by this command. This is not a problem, except that the -mapping of processors to the simulation box is not changed by this -command from its initial 3d configuration; see the -processors command. Thus, if the box size or shape -changes dramatically, the simulation may not be as well load-balanced -(atoms per processor) as the initial mapping tried to achieve. +

Note that if the simulation box is currently non-orthogonal and has +non-zero tilt in xy, yz, or xz, then it cannot be converted to an +orthogonal box.

Restrictions:

-

Any box dimension varied by this fix must be periodic. +

When this command is used, no dumps can be defined, nor +can fix ave/spatial or fix +deform be defined. This is because these commands +test whether the simulation box is orthogonal or not when they are +first issued.

-

This command requires inter-processor communication to migrate atoms -once they have moved. This means that your system must be ready to -perform a simulation before using this command (force fields are -setup, atom masses are set, etc). +

Related commands: none

-

Related commands: -

-

fix deform -

-

Default: -

-

The option defaults are remap = x and units = lattice. +

Default: none

diff --git a/doc/change_box.txt b/doc/change_box.txt index 9ce44994eb..54c49dc45e 100644 --- a/doc/change_box.txt +++ b/doc/change_box.txt @@ -6,176 +6,49 @@ :line -displace_box command :h3 +change_box command :h3 [Syntax:] -displace_box group-ID parameter args ... keyword value ... :pre +change_box style :pre -group-ID = ID of group of atoms to displace :ulb,l -one or more parameter/arg pairs may be appended :l -parameter = {x} or {y} or {z} or {xy} or {xz} or {yz} - {x}, {y}, {z} args = style value(s) - style = {final} or {delta} or {scale} or {volume} - {final} values = lo hi - lo hi = box boundaries at end of run (distance units) - {delta} values = dlo dhi - dlo dhi = change in box boundaries at end of run (distance units) - {scale} values = factor - factor = multiplicative factor for change in box length at end of run - {volume} value = none = adjust this dim to preserve volume of system - {xy}, {xz}, {yz} args = style value - style = {final} or {delta} - {final} value = tilt - tilt = tilt factor at end of run (distance units) - {delta} value = dtilt - dtilt = change in tilt factor at end of run (distance units) :pre - -zero or more keyword/value pairs may be appended to the args :l -keyword = {remap} or {units} :l - {remap} value = {x} or {none} - x = remap coords of atoms in group into deforming box - none = no remapping of coords - {units} value = {lattice} or {box} - lattice = distances are defined in lattice units - box = distances are defined in simulation box units :pre -:ule +style = {ortho} or {triclinic} :l + {ortho} = convert simulation box from non-orthogonal (triclinic) to orthogonal + {triclinic} = convert simulation box from orthogonal to non-orthogonal (triclinic) :pre [Examples:] -displace_box all xy final -2.0 z final 0.0 5.0 units box -displace_box all x scale 1.1 y volume z volume :pre +change_box ortho +change_box triclinic :pre [Description:] -Change the volume and/or shape of the simulation box. Orthogonal -simulation boxes have 3 adjustable parameters (x,y,z). Triclinic -(non-orthogonal) simulation boxes have 6 adjustable parameters -(x,y,z,xy,xz,yz). Any or all of them can be adjusted independently -and simultaneously by this command. This fix can be used to expand or -contract a box, or to apply a shear strain to a non-orthogonal box. +By default LAMMPS runs a simulation in an orthogonal, axis-aligned +simulation box. LAMMPS can also run simulations in "non-orthogonal +(triclinic) simulation boxes"_Section_howto.html#4_12. A box is +defined as either orthogonal or non-orthogonal when it is created via +the "create_box"_create_box.html, "read_data"_read_data.html, or +"read_restart"_read_restart.html commands. -Any parameter varied by this command must refer to a periodic -dimension - see the "boundary"_boundary.html command. For parameters -"xy", "xz", and "yz" this means both affected dimensions must be -periodic, e.g. x and y for "xy". Dimensions not varied by this -command can be periodic or non-periodic. +This command allows you to toggle the existing simulation box from +orthogonal to non-orthogonal and vice versa. For example, an initial +equilibration simulation can be run in an orthogonal box, the box can +be toggled to non-orthogonal, and then a "non-equilibrium MD (NEMD) +simulation"_Section_howto.html#4_13 can be run with deformation via +the "fix deform"_fix_deform.html command. -The size and shape of the initial simulation box are specified by the -"create_box"_create_box.html or "read_data"_read_data.html or -"read_restart"_read_restart.html command used to setup the simulation, -or they are the values from the end of the previous run. The -"create_box"_create_box.html, "read data"_read_data.html, and -"read_restart"_read_restart.html commands also determine whether the -simulation box is orthogonal or triclinic and their doc pages explain -the meaning of the xy,xz,yz tilt factors. If the displace_box command -changes the xy,xz,yz tilt factors, then the simulation box must be -triclinic, even if its initial tilt factors are 0.0. - -:line - -For the {x}, {y}, and {z} parameters, this is the meaning of their -styles and values. - -For style {final}, the final lo and hi box boundaries of a dimension -are specified. The values can be in lattice or box distance units. -See the discsussion of the units keyword below. - -For style {delta}, plus or minus changes in the lo/hi box boundaries -of a dimension are specified. The values can be in lattice or box -distance units. See the discussion of the units keyword below. - -For style {scale}, a multiplicative factor to apply to the box length -of a dimension is specified. For example, if the initial box length -is 10, and the factor is 1.1, then the final box length will be 11. A -factor less than 1.0 means compression. - -The {volume} style changes the specified dimension in such a way that -the box volume remains constant while other box dimensions are changed -explicitly via the styles discussed above. For example, "x scale 1.1 -y scale 1.1 z volume" will shrink the z box length as the x,y box -lengths increase, to keep the volume constant (product of x,y,z -lengths). If "x scale 1.1 z volume" is specified and parameter {y} is -unspecified, then the z box length will shrink as x increases to keep -the product of x,z lengths constant. If "x scale 1.1 y volume z -volume" is specified, then both the y,z box lengths will shrink as x -increases to keep the volume constant (product of x,y,z lengths). In -this case, the y,z box lengths shrink so as to keep their relative -aspect ratio constant. - -For solids or liquids, note that when one dimension of the box is -expanded by this command, it may be physically undesirable to hold the -other 2 box lengths constant (unspecified by this command) since that -implies a density change. Using the {volume} style for those 2 -dimensions to keep the box volume constant may make more physical -sense, but may also not be correct for materials and potentials whose -Poisson ratio is not 0.5. - -For the {scale} and {volume} styles, the box length is expanded or -compressed around its mid point. - -:line - -For the {xy}, {xz}, and {yz} parameters, this is the meaning of their -styles and values. Note that changing the tilt factors of a triclinic -box does not change its volume. - -For style {final}, the final tilt factor is specified. The value -can be in lattice or box distance units. See the discussion of the -units keyword below. - -For style {delta}, a plus or minus change in the tilt factor is -specified. The value can be in lattice or box distance units. See -the discsussion of the units keyword below. - -All of these styles change the xy, xz, yz tilt factors. In LAMMPS, -tilt factors (xy,xz,yz) for triclinic boxes are always bounded by half -the distance of the parallel box length. For example, if xlo = 2 and -xhi = 12, then the x box length is 10 and the xy tilt factor must be -between -5 and 5. Similarly, both xz and yz must be between --(xhi-xlo)/2 and +(yhi-ylo)/2. Note that this is not a limitation, -since if the maximum tilt factor is 5 (as in this example), then -configurations with tilt = ..., -15, -5, 5, 15, 25, ... are all -equivalent. Any tilt factor specified by this command must be within -these limits. - -:line - -The {remap} keyword determines whether atom positions are re-mapped to -the new box. If {remap} is set to {x} (the default), atoms in the fix -group are re-mapped; otherwise they are not. If {remap} is set to -{none}, then this remapping does not take place. - -The {units} keyword determines the meaning of the distance units used -to define various arguments. A {box} value selects standard distance -units as defined by the "units"_units.html command, e.g. Angstroms for -units = real or metal. A {lattice} value means the distance units are -in lattice spacings. The "lattice"_lattice.html command must have -been previously used to define the lattice spacing. - -:line - -The simulation box size or shape can be changed by arbitrarily large -amounts by this command. This is not a problem, except that the -mapping of processors to the simulation box is not changed by this -command from its initial 3d configuration; see the -"processors"_processors.html command. Thus, if the box size or shape -changes dramatically, the simulation may not be as well load-balanced -(atoms per processor) as the initial mapping tried to achieve. +Note that if the simulation box is currently non-orthogonal and has +non-zero tilt in xy, yz, or xz, then it cannot be converted to an +orthogonal box. [Restrictions:] -Any box dimension varied by this fix must be periodic. +When this command is used, no "dumps"_dump.html can be defined, nor +can "fix ave/spatial"_fix_ave_spatial.html or "fix +deform"_fix_deform.html be defined. This is because these commands +test whether the simulation box is orthogonal or not when they are +first issued. -This command requires inter-processor communication to migrate atoms -once they have moved. This means that your system must be ready to -perform a simulation before using this command (force fields are -setup, atom masses are set, etc). +[Related commands:] none -[Related commands:] - -"fix deform"_fix_deform.html - -[Default:] - -The option defaults are remap = x and units = lattice. +[Default:] none