From 93e86b3574663ea7d2d8fdf62ad58c71d0bcb4aa Mon Sep 17 00:00:00 2001
From: sjplimp
Syntax: -
-fix ID group-ID uniaxial N keyword dim amount --
Examples: -
-fix 1 all uniaxial 100 x 2.0 --
Description: -
-Enable a uniaxial dilation/contraction of the simulation box during a -simulation. For example if the direction is X and the strain is 2, -then the final box size is 2L, L/sqrt(2), L/sqrt(2), where L**3 is a -cube with the same volume as the initial box, which need not be cubic. -
-The chosen direction is ramped linearly during the course of the run -to its final value. The run command documents how to make -the ramping take place across multiple runs. -
-If the two perpendicular box sizes are equal then the deformation -pathway is uniaxial at each timestep. If the two perpendicular box -length sizes differ, then their aspect ratio will be linearily ramped -down to 1. Irregardless of the initial box shape the total volume is -constant during the deformation. Additional details provided by -Carsten Svaneborg (Max Planck Institute for Complex Systems, Dresden, -Germany) who authored this fix, are at the bottom of this page. -
-The initial simulation box boundaries at the beginning of a run are -specified by the create_box or -read_data or read_restart command -used to setup the simulation, or they are the values at the end of the -previous run. Every Nth timestep during the run, the various -dimensions are expanded or contracted. The coordinates of all atoms -in the group are also scaled to the new box size. -
-Restrictions: -
-To use this fix, all dimensions of the system must be periodic. -
-Related commands: none -
-Default: none -
-Extra Notes: -
-The uniaxial deformation is performed as follows: -
-For notational simplicity the deformation is assumed to be in -the X direction with final strain lambda. alpha denotes an -arbitrary Cartesian direction. -
-The initial strain is obtained from box dimensions: -
-lambdai_alpha = Box(alpha)/power(Box(0)*Box(1)*Box(2),1/3) --
The final strain lambda in dir is specified: -
-lambdaf_x = lambda -lambda_y = lambda_z = 1/sqrt(lambda) --
Volume conservation implies lambda_x(t)*lambda_y(t)lambda_z(t) = 1.0 -for all times. Rather than time, let delta is denotes reduced time in -the interval from 0 to 1. -
-We want a linear ramp in the specified strain component, such that MD -time steps and uniaxial strain are linearly related: -
-lambda_x(delta) = lambdai_x (1-delta) + lambdaf_x --
The problem that remains is to choose a deformation pathway for -lambda_y(delta) and lambda_z(delta) that agrees with the initial and -final strains, and at all times conserves volume. Secondly the pathway -should be symmetric if the box has y<->z symmetry. -
-In the case where the initial box is symmetric in yz, this follows -from volume conservation: -
-lambda_y(d) = lambda_z(d) = 1/sqrt(lambda_x(d)) --
However, in general the initial box dimensions in the y and z directions -need not be the same so assume a relation: -
-lambda_y(d) = alpha(d)lambda_z(d) --
From volume conservation it follows that -
-lambda_y(d) = sqrt(alpha(d)/lambda_x(d)) -lambda_z(d) = 1/sqrt(alpha(d)*lambda_x(d)) --
The asymmetry parameter has to fulfill the following boundary -conditions: -
-initial alpha(d=0) = lambdai_y/lambdai_z -final alpha(d=1) = 1 --
Any interpolation that does this will by define a continuous volume -conserving deformation from the initial to the desired final state. -The freedom of choice here is e.g. to relax the asymetry of the box -very fast, and then slowly elongate along x, or to do this more -slowly. -
-The choice used in the code is: -
-alpha(d) = lambdai_y/lambdai_z (1-d) + d --
Note in some cases like strain <1 2 0.5> -> strain <2 0.707107 -0.707107> the perpendicular strains do not follow a monotonic curve. -
- diff --git a/doc/fix_uniaxial.txt b/doc/fix_uniaxial.txt deleted file mode 100644 index 5a718c7466..0000000000 --- a/doc/fix_uniaxial.txt +++ /dev/null @@ -1,123 +0,0 @@ -"LAMMPS WWW Site"_lws - "LAMMPS Documentation"_ld - "LAMMPS Commands"_lc :c - -:link(lws,http://lammps.sandia.gov) -:link(ld,Manual.html) -:link(lc,Section_commands.html#comm) - -:line - -fix uniaxial command :h3 - -[Syntax:] - -fix ID group-ID uniaxial N keyword dim amount :pre - -ID, group-ID are documented in "fix"_fix.html command -uniaxial = style name of this fix command -N = perform uniaxial rescaling every this many timesteps -dim = {x} or {y} or {z} -strain = uniaxial strain in dim (2.0 = 2x larger) :ul - -[Examples:] - -fix 1 all uniaxial 100 x 2.0 :pre - -[Description:] - -Enable a uniaxial dilation/contraction of the simulation box during a -simulation. For example if the direction is X and the strain is 2, -then the final box size is 2L, L/sqrt(2), L/sqrt(2), where L**3 is a -cube with the same volume as the initial box, which need not be cubic. - -The chosen direction is ramped linearly during the course of the run -to its final value. The "run"_run.html command documents how to make -the ramping take place across multiple runs. - -If the two perpendicular box sizes are equal then the deformation -pathway is uniaxial at each timestep. If the two perpendicular box -length sizes differ, then their aspect ratio will be linearily ramped -down to 1. Irregardless of the initial box shape the total volume is -constant during the deformation. Additional details provided by -Carsten Svaneborg (Max Planck Institute for Complex Systems, Dresden, -Germany) who authored this fix, are at the bottom of this page. - -The initial simulation box boundaries at the beginning of a run 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 at the end of the -previous run. Every Nth timestep during the run, the various -dimensions are expanded or contracted. The coordinates of all atoms -in the group are also scaled to the new box size. - -[Restrictions:] - -To use this fix, all dimensions of the system must be periodic. - -[Related commands:] none - -[Default:] none - -[Extra Notes:] - -The uniaxial deformation is performed as follows: - -For notational simplicity the deformation is assumed to be in -the X direction with final strain lambda. alpha denotes an -arbitrary Cartesian direction. - -The initial strain is obtained from box dimensions: - -lambdai_alpha = Box(alpha)/power(Box(0)*Box(1)*Box(2),1/3) :pre - -The final strain lambda in dir is specified: - -lambdaf_x = lambda -lambda_y = lambda_z = 1/sqrt(lambda) :pre - -Volume conservation implies lambda_x(t)*lambda_y(t)lambda_z(t) = 1.0 -for all times. Rather than time, let delta is denotes reduced time in -the interval from 0 to 1. - -We want a linear ramp in the specified strain component, such that MD -time steps and uniaxial strain are linearly related: - -lambda_x(delta) = lambdai_x (1-delta) + lambdaf_x :pre - -The problem that remains is to choose a deformation pathway for -lambda_y(delta) and lambda_z(delta) that agrees with the initial and -final strains, and at all times conserves volume. Secondly the pathway -should be symmetric if the box has y<->z symmetry. - -In the case where the initial box is symmetric in yz, this follows -from volume conservation: - -lambda_y(d) = lambda_z(d) = 1/sqrt(lambda_x(d)) :pre - -However, in general the initial box dimensions in the y and z directions -need not be the same so assume a relation: - -lambda_y(d) = alpha(d)lambda_z(d) :pre - -From volume conservation it follows that - -lambda_y(d) = sqrt(alpha(d)/lambda_x(d)) -lambda_z(d) = 1/sqrt(alpha(d)*lambda_x(d)) :pre - -The asymmetry parameter has to fulfill the following boundary -conditions: - -initial alpha(d=0) = lambdai_y/lambdai_z -final alpha(d=1) = 1 :pre - -Any interpolation that does this will by define a continuous volume -conserving deformation from the initial to the desired final state. -The freedom of choice here is e.g. to relax the asymetry of the box -very fast, and then slowly elongate along x, or to do this more -slowly. - -The choice used in the code is: - -alpha(d) = lambdai_y/lambdai_z (1-d) + d :pre - -Note in some cases like strain <1 2 0.5> -> strain <2 0.707107 -0.707107> the perpendicular strains do not follow a monotonic curve. diff --git a/doc/fix_volume_rescale.html b/doc/fix_volume_rescale.html deleted file mode 100644 index 377f0afe1e..0000000000 --- a/doc/fix_volume_rescale.html +++ /dev/null @@ -1,69 +0,0 @@ - -Syntax: -
-fix ID group-ID volume/rescale N keyword args ... --
x, y, z args = lo,hi = desired simulation box boundaries - at end of run (distance units) -- -
Examples: -
-fix 1 all volume/rescale 100 x -9.0 9.0 z -5.0 5.0 --
Description: -
-Enable a volume (density) change during a simulation. Each of the 3 -box dimensions is controlled separately. Any dimension being varied -by this command must be periodic - see the boundary -command. Dimensions not varied by this command can be periodic or -non-periodic. The volume associated with an unspecified dimension can -also be controlled by a fix npt or fix -nph command. -
-The initial simulation box boundaries at the beginning of a run are -specified by the create_box or -read_data or read_restart command -used to setup the simulation, or they are the values at the end of the -previous run. The desired simulation box boundaries at the end of the -run are given by the lo and hi arguments. See the -units command for a discussion of distance units. -
-Every Nth timestep during the run, the simulation box is expanded or -contracted to a ramped value between the initial and final values. -The run command documents how to make the ramping take -place across multiple runs. The coordinates of all atoms in the group -are also scaled to the new box size. -
-Restrictions: -
-Any dimension being varied by this fix must be periodic. -
-Related commands: none -
-Default: none -
- diff --git a/doc/fix_volume_rescale.txt b/doc/fix_volume_rescale.txt deleted file mode 100644 index bffa08e358..0000000000 --- a/doc/fix_volume_rescale.txt +++ /dev/null @@ -1,58 +0,0 @@ -"LAMMPS WWW Site"_lws - "LAMMPS Documentation"_ld - "LAMMPS Commands"_lc :c - -:link(lws,http://lammps.sandia.gov) -:link(ld,Manual.html) -:link(lc,Section_commands.html#comm) - -:line - -fix volume/rescale command :h3 - -[Syntax:] - -fix ID group-ID volume/rescale N keyword args ... :pre - -ID, group-ID are documented in "fix"_fix.html command :ul -volume/rescale = style name of this fix command :l -N = perform volume rescaling every this many timesteps :l -one or more keyword/value pairs may be appended to the args :l -keyword = {x} or {y} or {z} :l - {x}, {y}, {z} args = lo,hi = desired simulation box boundaries - at end of run (distance units) :pre -:ule - -[Examples:] - -fix 1 all volume/rescale 100 x -9.0 9.0 z -5.0 5.0 :pre - -[Description:] - -Enable a volume (density) change during a simulation. Each of the 3 -box dimensions is controlled separately. Any dimension being varied -by this command must be periodic - see the "boundary"_boundary.html -command. Dimensions not varied by this command can be periodic or -non-periodic. The volume associated with an unspecified dimension can -also be controlled by a "fix npt"_fix_npt.html or "fix -nph"_fix_nph.html command. - -The initial simulation box boundaries at the beginning of a run 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 at the end of the -previous run. The desired simulation box boundaries at the end of the -run are given by the {lo} and {hi} arguments. See the -"units"_units.html command for a discussion of distance units. - -Every Nth timestep during the run, the simulation box is expanded or -contracted to a ramped value between the initial and final values. -The "run"_run.html command documents how to make the ramping take -place across multiple runs. The coordinates of all atoms in the group -are also scaled to the new box size. - -[Restrictions:] - -Any dimension being varied by this fix must be periodic. - -[Related commands:] none - -[Default:] none