lammps/doc/fix_indent.html

142 lines
5.7 KiB
HTML
Raw Normal View History

<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 indent command
</H3>
<P><B>Syntax:</B>
</P>
<PRE>fix ID group-ID indent k keyword values ...
</PRE>
<UL><LI>ID, group-ID are documented in <A HREF = "fix.html">fix</A> command
<LI>indent = style name of this fix command
<LI>k = force constant for indenter surface (force/distance^2 units)
<LI>one or more keyword/value pairs may be appended
<LI>keyword = <I>sphere</I> or <I>cylinder</I> or <I>vel</I> or <I>rstart</I> or <I>units</I>
<PRE> <I>sphere</I> args = x y z R
x,y,z = initial position of center of indenter
R = sphere radius of indenter (distance units)
<I>cylinder</I> args = dim c1 c2 R
dim = x or y or z = axis of cylinder
c1,c2 = coords of cylinder axis in other 2 dimensions (distance units)
R = cylinder radius of indenter (distance units)
<I>vel</I> args = vx vy vz
vx,vy,vz = velocity of center of indenter (velocity units)
<I>rstart</I> value = R0
R0 = sphere or cylinder radius at start of run (distance units)
R is value at end of run, so indenter expands/contracts over time
<I>units</I> value = <I>lattice</I> or <I>box</I>
lattice = the geometry is defined in lattice units
box = the geometry is defined in simulation box units
</PRE>
</UL>
<P><B>Examples:</B>
</P>
<PRE>fix 1 all indent 10.0 sphere 0.0 0.0 15.0 3.0 vel 0.0 0.0 -1.0
fix 2 flow indent 10.0 cylinder z 0.0 0.0 10.0 units box
</PRE>
<P><B>Description:</B>
</P>
<P>Insert an indenter within a simulation box. The indenter repels all
atoms that touch it, so it can be used to push into a material or as
an obstacle in a flow.
</P>
<P>The indenter can either be spherical or cylindrical. You must set
one of those 2 keywords.
</P>
<P>A spherical indenter exerts a force of magnitude
</P>
<PRE>F(r) = - k (r - R)^2
</PRE>
<P>on each atom where <I>k</I> is the specified force constant, <I>r</I> is the
distance from the atom to the center of the indenter, and <I>R</I> is the
radius of the indenter. The force is repulsive and F(r) = 0 for <I>r</I> >
<I>R</I>.
</P>
<P>A cylindrical indenter exerts the same force, except that <I>r</I> is the
distance from the atom to the center axis of the cylinder. The
cylinder extends infinitely along its axis.
</P>
<P>If the <I>vel</I> keyword is specified, the center (or axis) of the
spherical (or cylindrical) indenter will move during the simulation,
based on its initial position (x,y,z) and the specified (vx,vy,vz).
Note that if you do multiple runs, the initial position of the
indenter (x,y,z) does not change, so it will continue to move at the
specified velocity.
</P>
<P>If the <I>rstart</I> keyword is specified, then the radius of the indenter
is a time-dependent quantity. R0 is the value assigned at the start
of the run; R is the value at the end. At intermediate times, the
radius is linearly interpolated between these two values. This option
can be used, for example, to grow/shrink a void within the simulation
box.
</P>
<P>The <I>units</I> keyword determines the meaning of the distance units used
to define the indenter. A <I>box</I> value selects standard distance units
as defined by the <A HREF = "units.html">units</A> command, e.g. Angstroms for units
= real or metal. A <I>lattice</I> value means the distance units are in
lattice spacings. The <A HREF = "lattice.html">lattice</A> command must have been
previously used to define the lattice spacing. Note that the units
choice affects not only the indenter's physical geometry, but also its
velocity and force constant since they are defined in terms of
distance as well.
</P>
<P>IMPORTANT NOTE: You should insure the indenter's extent does not
overlap a periodic boundary, either for a fixed indenter, or one that
moves. No check for such overlaps is performed by the code.
</P>
<P><B>Restart, fix_modify, output, run start/stop, minimize info:</B>
</P>
<P>No information about this fix is written to <A HREF = "restart.html">binary restart
files</A>.
</P>
<P>The <A HREF = "fix_modify.html">fix_modify</A> <I>energy</I> option is supported by this
fix to add the energy of interaction between atoms and the indenter to
the system's potential energy as part of <A HREF = "thermo_style.html">thermodynamic
output</A>. The energy of each particle interacting
with the indenter is K/3 (r - R)^3.
</P>
<P>This fix computes a scalar energy and a 3-vector of forces (on the
indenter), which can be accessed by various <A HREF = "Section_howto.html#4_15">output
commands</A>. The scalar and vector values
calculated by this fix are "extensive", meaning they scale with the
number of atoms in the simulation.
</P>
<P>This fix can adjust the indenter position and radius over multiple
runs, using the <I>start</I> and <I>stop</I> keywords of the <A HREF = "run.html">run</A>
command. See the <A HREF = "run.html">run</A> command for details of how to do
this.
</P>
<P>The forces due to this fix are imposed during an energy minimization,
invoked by the <A HREF = "minimize.html">minimize</A> command. The <I>rstart</I> keyword
does not change the indenter radius during an energy minimization; the
indenter always has a radius of its final value R in that case.
</P>
<P>IMPORTANT NOTE: If you want the atom/indenter interaction energy to be
included in the total potential energy of the system (the quantity
being minimized), you must enable the <A HREF = "fix_modify.html">fix_modify</A>
<I>energy</I> option for this fix.
</P>
<P><B>Restrictions:</B> none
</P>
<P><B>Related commands:</B> none
</P>
<P><B>Default:</B>
</P>
<P>The option defaults are vel = 0,0,0 and units = lattice.
</P>
</HTML>