mirror of https://github.com/lammps/lammps.git
git-svn-id: svn://svn.icms.temple.edu/lammps-ro/trunk@619 f3b2605a-c512-4ea7-a41b-209d697bcdaa
This commit is contained in:
parent
e922a38bb8
commit
93e86b3574
|
@ -317,13 +317,13 @@ descriptions of each style or click on the style itself for a full
|
|||
description:
|
||||
</P>
|
||||
<DIV ALIGN=center><TABLE WIDTH="0%" BORDER=1 >
|
||||
<TR ALIGN="center"><TD ><A HREF = "fix_addforce.html">addforce</A></TD><TD ><A HREF = "fix_aveforce.html">aveforce</A></TD><TD ><A HREF = "fix_ave_spatial.html">ave/spatial</A></TD><TD ><A HREF = "fix_ave_time.html">ave/time</A></TD><TD ><A HREF = "fix_box_relax.html">box/relax</A></TD><TD ><A HREF = "fix_com.html">com</A></TD><TD ><A HREF = "fix_deform.html">deform</A></TD><TD ><A HREF = "fix_deposit.html">deposit</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "fix_drag.html">drag</A></TD><TD ><A HREF = "fix_efield.html">efield</A></TD><TD ><A HREF = "fix_enforce2d.html">enforce2d</A></TD><TD ><A HREF = "fix_freeze.html">freeze</A></TD><TD ><A HREF = "fix_gran_diag.html">gran/diag</A></TD><TD ><A HREF = "fix_gravity.html">gravity</A></TD><TD ><A HREF = "fix_gyration.html">gyration</A></TD><TD ><A HREF = "fix_heat.html">heat</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "fix_indent.html">indent</A></TD><TD ><A HREF = "fix_langevin.html">langevin</A></TD><TD ><A HREF = "fix_lineforce.html">lineforce</A></TD><TD ><A HREF = "fix_msd.html">msd</A></TD><TD ><A HREF = "fix_momentum.html">momentum</A></TD><TD ><A HREF = "fix_nph.html">nph</A></TD><TD ><A HREF = "fix_npt.html">npt</A></TD><TD ><A HREF = "fix_npt_asphere.html">npt/asphere</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "fix_nve.html">nve</A></TD><TD ><A HREF = "fix_nve_asphere.html">nve/asphere</A></TD><TD ><A HREF = "fix_nve_dipole.html">nve/dipole</A></TD><TD ><A HREF = "fix_nve_gran.html">nve/gran</A></TD><TD ><A HREF = "fix_nve_noforce.html">nve/noforce</A></TD><TD ><A HREF = "fix_nvt.html">nvt</A></TD><TD ><A HREF = "fix_nvt_sllod.html">nvt/sllod</A></TD><TD ><A HREF = "fix_nvt_asphere.html">nvt/asphere</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "fix_orient_fcc.html">orient/fcc</A></TD><TD ><A HREF = "fix_planeforce.html">planeforce</A></TD><TD ><A HREF = "fix_poems.html">poems</A></TD><TD ><A HREF = "fix_pour.html">pour</A></TD><TD ><A HREF = "fix_print.html">print</A></TD><TD ><A HREF = "fix_rdf.html">rdf</A></TD><TD ><A HREF = "fix_recenter.html">recenter</A></TD><TD ><A HREF = "fix_rigid.html">rigid</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "fix_setforce.html">setforce</A></TD><TD ><A HREF = "fix_shake.html">shake</A></TD><TD ><A HREF = "fix_spring.html">spring</A></TD><TD ><A HREF = "fix_spring_rg.html">spring/rg</A></TD><TD ><A HREF = "fix_spring_self.html">spring/self</A></TD><TD ><A HREF = "fix_temp_rescale.html">temp/rescale</A></TD><TD ><A HREF = "fix_tmd.html">tmd</A></TD><TD ><A HREF = "fix_viscous.html">viscous</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "fix_wall_gran.html">wall/gran</A></TD><TD ><A HREF = "fix_wall_lj93.html">wall/lj93</A></TD><TD ><A HREF = "fix_wall_lj126.html">wall/lj126</A></TD><TD ><A HREF = "fix_wall_reflect.html">wall/reflect</A></TD><TD ><A HREF = "fix_wiggle.html">wiggle</A>
|
||||
<TR ALIGN="center"><TD ><A HREF = "fix_addforce.html">addforce</A></TD><TD ><A HREF = "fix_aveforce.html">aveforce</A></TD><TD ><A HREF = "fix_ave_spatial.html">ave/spatial</A></TD><TD ><A HREF = "fix_ave_time.html">ave/time</A></TD><TD ><A HREF = "fix_com.html">com</A></TD><TD ><A HREF = "fix_deform.html">deform</A></TD><TD ><A HREF = "fix_deposit.html">deposit</A></TD><TD ><A HREF = "fix_drag.html">drag</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "fix_efield.html">efield</A></TD><TD ><A HREF = "fix_enforce2d.html">enforce2d</A></TD><TD ><A HREF = "fix_freeze.html">freeze</A></TD><TD ><A HREF = "fix_gran_diag.html">gran/diag</A></TD><TD ><A HREF = "fix_gravity.html">gravity</A></TD><TD ><A HREF = "fix_gyration.html">gyration</A></TD><TD ><A HREF = "fix_heat.html">heat</A></TD><TD ><A HREF = "fix_indent.html">indent</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "fix_langevin.html">langevin</A></TD><TD ><A HREF = "fix_lineforce.html">lineforce</A></TD><TD ><A HREF = "fix_msd.html">msd</A></TD><TD ><A HREF = "fix_momentum.html">momentum</A></TD><TD ><A HREF = "fix_nph.html">nph</A></TD><TD ><A HREF = "fix_npt.html">npt</A></TD><TD ><A HREF = "fix_npt_asphere.html">npt/asphere</A></TD><TD ><A HREF = "fix_nve.html">nve</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "fix_nve_asphere.html">nve/asphere</A></TD><TD ><A HREF = "fix_nve_dipole.html">nve/dipole</A></TD><TD ><A HREF = "fix_nve_gran.html">nve/gran</A></TD><TD ><A HREF = "fix_nve_noforce.html">nve/noforce</A></TD><TD ><A HREF = "fix_nvt.html">nvt</A></TD><TD ><A HREF = "fix_nvt_asphere.html">nvt/asphere</A></TD><TD ><A HREF = "fix_nvt_sllod.html">nvt/sllod</A></TD><TD ><A HREF = "fix_orient_fcc.html">orient/fcc</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "fix_planeforce.html">planeforce</A></TD><TD ><A HREF = "fix_poems.html">poems</A></TD><TD ><A HREF = "fix_pour.html">pour</A></TD><TD ><A HREF = "fix_print.html">print</A></TD><TD ><A HREF = "fix_rdf.html">rdf</A></TD><TD ><A HREF = "fix_recenter.html">recenter</A></TD><TD ><A HREF = "fix_rigid.html">rigid</A></TD><TD ><A HREF = "fix_setforce.html">setforce</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "fix_shake.html">shake</A></TD><TD ><A HREF = "fix_spring.html">spring</A></TD><TD ><A HREF = "fix_spring_rg.html">spring/rg</A></TD><TD ><A HREF = "fix_spring_self.html">spring/self</A></TD><TD ><A HREF = "fix_temp_rescale.html">temp/rescale</A></TD><TD ><A HREF = "fix_tmd.html">tmd</A></TD><TD ><A HREF = "fix_viscous.html">viscous</A></TD><TD ><A HREF = "fix_wall_gran.html">wall/gran</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "fix_wall_lj126.html">wall/lj126</A></TD><TD ><A HREF = "fix_wall_lj93.html">wall/lj93</A></TD><TD ><A HREF = "fix_wall_reflect.html">wall/reflect</A></TD><TD ><A HREF = "fix_wiggle.html">wiggle</A>
|
||||
</TD></TR></TABLE></DIV>
|
||||
|
||||
<HR>
|
||||
|
|
|
@ -377,7 +377,6 @@ description:
|
|||
"aveforce"_fix_aveforce.html,
|
||||
"ave/spatial"_fix_ave_spatial.html,
|
||||
"ave/time"_fix_ave_time.html,
|
||||
"box/relax"_fix_box_relax.html,
|
||||
"com"_fix_com.html,
|
||||
"deform"_fix_deform.html,
|
||||
"deposit"_fix_deposit.html,
|
||||
|
@ -403,8 +402,8 @@ description:
|
|||
"nve/gran"_fix_nve_gran.html,
|
||||
"nve/noforce"_fix_nve_noforce.html,
|
||||
"nvt"_fix_nvt.html,
|
||||
"nvt/sllod"_fix_nvt_sllod.html,
|
||||
"nvt/asphere"_fix_nvt_asphere.html,
|
||||
"nvt/sllod"_fix_nvt_sllod.html,
|
||||
"orient/fcc"_fix_orient_fcc.html,
|
||||
"planeforce"_fix_planeforce.html,
|
||||
"poems"_fix_poems.html,
|
||||
|
@ -422,8 +421,8 @@ description:
|
|||
"tmd"_fix_tmd.html,
|
||||
"viscous"_fix_viscous.html,
|
||||
"wall/gran"_fix_wall_gran.html,
|
||||
"wall/lj93"_fix_wall_lj93.html,
|
||||
"wall/lj126"_fix_wall_lj126.html,
|
||||
"wall/lj93"_fix_wall_lj93.html,
|
||||
"wall/reflect"_fix_wall_reflect.html,
|
||||
"wiggle"_fix_wiggle.html :tb(c=8,ea=c)
|
||||
|
||||
|
|
|
@ -75,6 +75,7 @@ and what it does. Here is an alphabetic list of compute styles
|
|||
defined in LAMMPS:
|
||||
</P>
|
||||
<UL><LI><A HREF = "compute_centro_atom.html">centro/atom</A> - centro-symmetry parameter for each atom
|
||||
<LI><A HREF = "compute_coord_atom.html">coord/atom</A> - coordination number for each atom
|
||||
<LI><A HREF = "compute_epair_atom.html">epair/atom</A> - pairwise energy for each atom
|
||||
<LI><A HREF = "compute_etotal_atom.html">etotal/atom</A> - total energy (ke + epair) for each atom
|
||||
<LI><A HREF = "compute_ke_atom.html">ke/atom</A> - kinetic energy for each atom
|
||||
|
@ -83,8 +84,11 @@ defined in LAMMPS:
|
|||
<LI><A HREF = "compute_rotate_gran.html">rotate/gran</A> - rotational energy of granular atoms
|
||||
<LI><A HREF = "compute_stress_atom.html">stress/atom</A> - stress tensor for each atom
|
||||
<LI><A HREF = "compute_temp.html">temp</A> - temperature of group of atoms
|
||||
<LI><A HREF = "compute_temp_asphere.html">temp/asphere</A> - temperature of aspherical particles
|
||||
<LI><A HREF = "compute_temp_deform.html">temp/deform</A> - temperature excluding box deformation velocity
|
||||
<LI><A HREF = "compute_temp_dipole.html">temp/dipole</A> - temperature of point dipolar particles
|
||||
<LI><A HREF = "compute_temp_partial.html">temp/partial</A> - temperature excluding one or more dimensions of velocity
|
||||
<LI><A HREF = "compute_temp_ramp.html">temp/ramp</A> - temperature after subtracting a ramped velocity component
|
||||
<LI><A HREF = "compute_temp_ramp.html">temp/ramp</A> - temperature excluding ramped velocity component
|
||||
<LI><A HREF = "compute_temp_region.html">temp/region</A> - temperature of a region of atoms
|
||||
<LI><A HREF = "compute_variable.html">variable</A> - calculate a scalar value from a variable
|
||||
<LI><A HREF = "compute_variable_atom.html">variable/atom</A> - calculate a formula for each atom
|
||||
|
|
|
@ -72,6 +72,7 @@ and what it does. Here is an alphabetic list of compute styles
|
|||
defined in LAMMPS:
|
||||
|
||||
"centro/atom"_compute_centro_atom.html - centro-symmetry parameter for each atom
|
||||
"coord/atom"_compute_coord_atom.html - coordination number for each atom
|
||||
"epair/atom"_compute_epair_atom.html - pairwise energy for each atom
|
||||
"etotal/atom"_compute_etotal_atom.html - total energy (ke + epair) for each atom
|
||||
"ke/atom"_compute_ke_atom.html - kinetic energy for each atom
|
||||
|
@ -80,8 +81,11 @@ defined in LAMMPS:
|
|||
"rotate/gran"_compute_rotate_gran.html - rotational energy of granular atoms
|
||||
"stress/atom"_compute_stress_atom.html - stress tensor for each atom
|
||||
"temp"_compute_temp.html - temperature of group of atoms
|
||||
"temp/asphere"_compute_temp_asphere.html - temperature of aspherical particles
|
||||
"temp/deform"_compute_temp_deform.html - temperature excluding box deformation velocity
|
||||
"temp/dipole"_compute_temp_dipole.html - temperature of point dipolar particles
|
||||
"temp/partial"_compute_temp_partial.html - temperature excluding one or more dimensions of velocity
|
||||
"temp/ramp"_compute_temp_ramp.html - temperature after subtracting a ramped velocity component
|
||||
"temp/ramp"_compute_temp_ramp.html - temperature excluding ramped velocity component
|
||||
"temp/region"_compute_temp_region.html - temperature of a region of atoms
|
||||
"variable"_compute_variable.html - calculate a scalar value from a variable
|
||||
"variable/atom"_compute_variable_atom.html - calculate a formula for each atom :ul
|
||||
|
|
|
@ -67,7 +67,6 @@ made to the old fix via the <A HREF = "fix_modify.html">fix_modify</A> command.
|
|||
<LI><A HREF = "fix_aveforce.html">fix aveforce</A> - add an averaged force to each atom
|
||||
<LI><A HREF = "fix_ave_spatial.html">fix ave/spatial</A> - output per-atom quantities by layer
|
||||
<LI><A HREF = "fix_ave_time.html">fix ave/time</A> - output time-averaged compute quantities
|
||||
<LI><A HREF = "fix_box_relax.html">fix box/relax</A> - relax box size during a minimization
|
||||
<LI><A HREF = "fix_com.html">fix com</A> - compute a center-of-mass
|
||||
<LI><A HREF = "fix_desosit.html">fix deposit</A> - add new atoms above a surface
|
||||
<LI><A HREF = "fix_drag.html">fix drag</A> - drag atoms towards a defined coordinate
|
||||
|
|
|
@ -64,7 +64,6 @@ Here is an alphabetic list of fix styles defined in LAMMPS:
|
|||
"fix aveforce"_fix_aveforce.html - add an averaged force to each atom
|
||||
"fix ave/spatial"_fix_ave_spatial.html - output per-atom quantities by layer
|
||||
"fix ave/time"_fix_ave_time.html - output time-averaged compute quantities
|
||||
"fix box/relax"_fix_box_relax.html - relax box size during a minimization
|
||||
"fix com"_fix_com.html - compute a center-of-mass
|
||||
"fix deposit"_fix_desosit.html - add new atoms above a surface
|
||||
"fix drag"_fix_drag.html - drag atoms towards a defined coordinate
|
||||
|
|
|
@ -1,128 +0,0 @@
|
|||
<HTML>
|
||||
<CENTER><A HREF = "http://lammps.sandia.gov">LAMMPS WWW Site</A> - <A HREF = "Manual.html">LAMMPS Documentation</A> - <A HREF = "Section_commands.html#comm">LAMMPS Commands</A>
|
||||
</CENTER>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<HR>
|
||||
|
||||
<H3>fix uniaxial command
|
||||
</H3>
|
||||
<P><B>Syntax:</B>
|
||||
</P>
|
||||
<PRE>fix ID group-ID uniaxial N keyword dim amount
|
||||
</PRE>
|
||||
<UL><LI>ID, group-ID are documented in <A HREF = "fix.html">fix</A> command
|
||||
<LI>uniaxial = style name of this fix command
|
||||
<LI>N = perform uniaxial rescaling every this many timesteps
|
||||
<LI>dim = <I>x</I> or <I>y</I> or <I>z</I>
|
||||
<LI>strain = uniaxial strain in dim (2.0 = 2x larger)
|
||||
</UL>
|
||||
<P><B>Examples:</B>
|
||||
</P>
|
||||
<PRE>fix 1 all uniaxial 100 x 2.0
|
||||
</PRE>
|
||||
<P><B>Description:</B>
|
||||
</P>
|
||||
<P>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.
|
||||
</P>
|
||||
<P>The chosen direction is ramped linearly during the course of the run
|
||||
to its final value. The <A HREF = "run.html">run</A> command documents how to make
|
||||
the ramping take place across multiple runs.
|
||||
</P>
|
||||
<P>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.
|
||||
</P>
|
||||
<P>The initial simulation box boundaries at the beginning of a run are
|
||||
specified by the <A HREF = "create_box.html">create_box</A> or
|
||||
<A HREF = "read_data.html">read_data</A> or <A HREF = "read_restart.html">read_restart</A> 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.
|
||||
</P>
|
||||
<P><B>Restrictions:</B>
|
||||
</P>
|
||||
<P>To use this fix, all dimensions of the system must be periodic.
|
||||
</P>
|
||||
<P><B>Related commands:</B> none
|
||||
</P>
|
||||
<P><B>Default:</B> none
|
||||
</P>
|
||||
<P><B>Extra Notes:</B>
|
||||
</P>
|
||||
<P>The uniaxial deformation is performed as follows:
|
||||
</P>
|
||||
<P>For notational simplicity the deformation is assumed to be in
|
||||
the X direction with final strain lambda. alpha denotes an
|
||||
arbitrary Cartesian direction.
|
||||
</P>
|
||||
<P>The initial strain is obtained from box dimensions:
|
||||
</P>
|
||||
<PRE>lambdai_alpha = Box(alpha)/power(Box(0)*Box(1)*Box(2),1/3)
|
||||
</PRE>
|
||||
<P>The final strain lambda in dir is specified:
|
||||
</P>
|
||||
<PRE>lambdaf_x = lambda
|
||||
lambda_y = lambda_z = 1/sqrt(lambda)
|
||||
</PRE>
|
||||
<P>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.
|
||||
</P>
|
||||
<P>We want a linear ramp in the specified strain component, such that MD
|
||||
time steps and uniaxial strain are linearly related:
|
||||
</P>
|
||||
<PRE>lambda_x(delta) = lambdai_x (1-delta) + lambdaf_x
|
||||
</PRE>
|
||||
<P>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.
|
||||
</P>
|
||||
<P>In the case where the initial box is symmetric in yz, this follows
|
||||
from volume conservation:
|
||||
</P>
|
||||
<PRE>lambda_y(d) = lambda_z(d) = 1/sqrt(lambda_x(d))
|
||||
</PRE>
|
||||
<P>However, in general the initial box dimensions in the y and z directions
|
||||
need not be the same so assume a relation:
|
||||
</P>
|
||||
<PRE>lambda_y(d) = alpha(d)lambda_z(d)
|
||||
</PRE>
|
||||
<P>From volume conservation it follows that
|
||||
</P>
|
||||
<PRE>lambda_y(d) = sqrt(alpha(d)/lambda_x(d))
|
||||
lambda_z(d) = 1/sqrt(alpha(d)*lambda_x(d))
|
||||
</PRE>
|
||||
<P>The asymmetry parameter has to fulfill the following boundary
|
||||
conditions:
|
||||
</P>
|
||||
<PRE>initial alpha(d=0) = lambdai_y/lambdai_z
|
||||
final alpha(d=1) = 1
|
||||
</PRE>
|
||||
<P>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.
|
||||
</P>
|
||||
<P>The choice used in the code is:
|
||||
</P>
|
||||
<PRE>alpha(d) = lambdai_y/lambdai_z (1-d) + d
|
||||
</PRE>
|
||||
<P>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.
|
||||
</P>
|
||||
</HTML>
|
|
@ -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.
|
|
@ -1,69 +0,0 @@
|
|||
<HTML>
|
||||
<CENTER><A HREF = "http://lammps.sandia.gov">LAMMPS WWW Site</A> - <A HREF = "Manual.html">LAMMPS Documentation</A> - <A HREF = "Section_commands.html#comm">LAMMPS Commands</A>
|
||||
</CENTER>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<HR>
|
||||
|
||||
<H3>fix volume/rescale command
|
||||
</H3>
|
||||
<P><B>Syntax:</B>
|
||||
</P>
|
||||
<PRE>fix ID group-ID volume/rescale N keyword args ...
|
||||
</PRE>
|
||||
<UL><LI>ID, group-ID are documented in <A HREF = "fix.html">fix</A> command
|
||||
</UL>
|
||||
<LI>volume/rescale = style name of this fix command
|
||||
|
||||
<LI>N = perform volume rescaling every this many timesteps
|
||||
|
||||
<LI>one or more keyword/value pairs may be appended to the args
|
||||
|
||||
<LI>keyword = <I>x</I> or <I>y</I> or <I>z</I>
|
||||
|
||||
<PRE> <I>x</I>, <I>y</I>, <I>z</I> args = lo,hi = desired simulation box boundaries
|
||||
at end of run (distance units)
|
||||
</PRE>
|
||||
|
||||
</UL>
|
||||
<P><B>Examples:</B>
|
||||
</P>
|
||||
<PRE>fix 1 all volume/rescale 100 x -9.0 9.0 z -5.0 5.0
|
||||
</PRE>
|
||||
<P><B>Description:</B>
|
||||
</P>
|
||||
<P>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 <A HREF = "boundary.html">boundary</A>
|
||||
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 <A HREF = "fix_npt.html">fix npt</A> or <A HREF = "fix_nph.html">fix
|
||||
nph</A> command.
|
||||
</P>
|
||||
<P>The initial simulation box boundaries at the beginning of a run are
|
||||
specified by the <A HREF = "create_box.html">create_box</A> or
|
||||
<A HREF = "read_data.html">read_data</A> or <A HREF = "read_restart.html">read_restart</A> 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 <I>lo</I> and <I>hi</I> arguments. See the
|
||||
<A HREF = "units.html">units</A> command for a discussion of distance units.
|
||||
</P>
|
||||
<P>Every Nth timestep during the run, the simulation box is expanded or
|
||||
contracted to a ramped value between the initial and final values.
|
||||
The <A HREF = "run.html">run</A> 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.
|
||||
</P>
|
||||
<P><B>Restrictions:</B>
|
||||
</P>
|
||||
<P>Any dimension being varied by this fix must be periodic.
|
||||
</P>
|
||||
<P><B>Related commands:</B> none
|
||||
</P>
|
||||
<P><B>Default:</B> none
|
||||
</P>
|
||||
</HTML>
|
|
@ -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
|
Loading…
Reference in New Issue