forked from lijiext/lammps
146 lines
6.4 KiB
HTML
146 lines
6.4 KiB
HTML
|
<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 deposit command
|
||
|
</H3>
|
||
|
<P><B>Syntax:</B>
|
||
|
</P>
|
||
|
<PRE>fix ID group-ID deposit N type M seed keyword values ...
|
||
|
</PRE>
|
||
|
<UL><LI>ID, group-ID are documented in <A HREF = "fix.html">fix</A> command
|
||
|
|
||
|
<LI>deposit = style name of this fix command
|
||
|
|
||
|
<LI>N = # of atoms to insert
|
||
|
|
||
|
<LI>type = atom type to assign to inserted atoms
|
||
|
|
||
|
<LI>M = insert a single particle every M steps
|
||
|
|
||
|
<LI>seed = random # seed
|
||
|
|
||
|
<LI>one or more keyword/value pairs may be appended to args
|
||
|
|
||
|
<LI>keyword = <I>region</I> or <I>global</I> or <I>local</I> or <I>near</I> or <I>attempt</I> or <I>rate</I> or <I>vx</I> or <I>vy</I> or <I>vz</I> or <I>units</I>
|
||
|
|
||
|
<PRE> <I>region</I> value = region-ID
|
||
|
region-ID = ID of region to use as insertion volume
|
||
|
<I>global</I> values = lo hi
|
||
|
lo,hi = put new particle a distance lo-hi above all other particles (distance units)
|
||
|
<I>local</I> values = lo hi delta
|
||
|
lo,hi = put new particle a distance lo-hi above any nearby particle beneath it (distance units)
|
||
|
delta = lateral distance within which a neighbor is considered "nearby" (distance units)
|
||
|
<I>near</I> value = R
|
||
|
R = only insert particle if further than R from existing particles (distance units)
|
||
|
<I>attempt</I> value = Q
|
||
|
Q = attempt a single insertion up to Q times
|
||
|
<I>rate</I> value = V
|
||
|
V = z velocity (y in 2d) at which insertion volume moves (velocity units)
|
||
|
<I>vx</I> values = vxlo vxhi
|
||
|
vxlo,vxhi = range of x velocities for inserted particle (velocity units)
|
||
|
<I>vy</I> values = vylo vyhi
|
||
|
vylo,vyhi = range of y velocities for inserted particle (velocity units)
|
||
|
<I>vz</I> values = vzlo vzhi
|
||
|
vzlo,vzhi = range of z velocities for inserted particle (velocity units)
|
||
|
<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 3 all deposit 1000 2 100 29494 region myblock local 1.0 1.0 1.0 units box
|
||
|
fix 2 newatoms deposit 10000 1 500 12345 region disk near 2.0 vz -1.0 -0.8
|
||
|
</PRE>
|
||
|
<P><B>Description:</B>
|
||
|
</P>
|
||
|
<P>Insert a single particle into the simulation domain every M timesteps
|
||
|
until N particles have been inserted. This is useful for simulating
|
||
|
the deposition of particles onto a surface.
|
||
|
</P>
|
||
|
<P>Inserted particles have the specified atom type and are assigned to
|
||
|
two groups: the default group "all" and the group specified in the fix
|
||
|
deposit command (which can also be "all").
|
||
|
</P>
|
||
|
<P>If you are computing temperature values which include inserted
|
||
|
particles, you will want to use the <A HREF = "temp_modify.html">temp_modify</A>
|
||
|
dynamic option, which insures the current number of atoms is used as a
|
||
|
normalizing factor each time temperature is computed.
|
||
|
</P>
|
||
|
<P>Care must be taken that inserted particles are not too near existing
|
||
|
particles, using the options described below. When inserting
|
||
|
particles above a surface in a non-perioidic box (see the
|
||
|
<A HREF = "boundary.html">boundary</A> command), the possibility of a particle
|
||
|
escaping the surface and flying upward should be considered, since the
|
||
|
particle may be lost or the box size may grow infinitely large. A
|
||
|
<A HREF = "fix_wall_reflect.html">fix wall/reflect</A> command can be used to
|
||
|
prevent this behavior. Note that if a shrink-wrap boundary is used,
|
||
|
it is OK to insert the new particle outside the box, however the box
|
||
|
will immediately be expanded to include the new particle.
|
||
|
</P>
|
||
|
<P>This command must use the <I>region</I> keyword to define an insertion
|
||
|
volume. The specified region must have been previously defined with a
|
||
|
<A HREF = "region.html">region</A> command. It must be defined with side = <I>in</I>.
|
||
|
</P>
|
||
|
<P>Each timestep a particle is to be inserted, its coordinates are chosen
|
||
|
as follows. A random position within the insertion volume is
|
||
|
generated. If neither the <I>global</I> or <I>local</I> keyword is used, that
|
||
|
is the trial position. If the <I>global</I> keyword is used, the random
|
||
|
x,y values are used, but the z position of the new particle is set
|
||
|
above the highest current atom in the simulation by a distance
|
||
|
randomly chosen between lo/hi. (For a 2d simulation, this is done for
|
||
|
the y position.) If the <I>local</I> keyword is used, the z position is
|
||
|
set a distance between lo/hi above the highest current atom in the
|
||
|
simulation that is "nearby" the chosen x,y position. In this context,
|
||
|
"nearby" means the lateral distance (in x,y) between the new and old
|
||
|
particles is less than the delta parameter.
|
||
|
</P>
|
||
|
<P>Once a trial x,y,z location has been computed, the insertion is only
|
||
|
performed if no current particle in the simulation is within a
|
||
|
distance R of the new particle. If this test fails, a new random
|
||
|
position within the insertion volume is chosen and another trial is
|
||
|
made. Up to Q attempts are made, after which LAMMPS prints a warning
|
||
|
message.
|
||
|
</P>
|
||
|
<P>The <I>rate</I> option moves the insertion volume in the z direction (3d)
|
||
|
or y direction (2d). This enables particles to be inserted from a
|
||
|
successively higher height over time. Note that this parameter is
|
||
|
ignored if the <I>global</I> or <I>local</I> keywords are used, since those
|
||
|
options choose a z-coordinate for insertion independently.
|
||
|
</P>
|
||
|
<P>The vx, vy, and vz components of velocity for the inserted particle
|
||
|
are set using the values specified for the <I>vx</I>, <I>vy</I>, and <I>vz</I>
|
||
|
keywords. Note that normally, new particles should be a assigned a
|
||
|
negative vertical velocity so that they move towards the surface.
|
||
|
</P>
|
||
|
<P>The <I>units</I> keyword determines the meaning of the distance units used
|
||
|
for the other deposition parameters. 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 all the keyword values that have
|
||
|
units of distance or velocity.
|
||
|
</P>
|
||
|
<P><B>Restrictions:</B> none
|
||
|
</P>
|
||
|
<P><B>Related commands:</B>
|
||
|
</P>
|
||
|
<P><A HREF = "fix_pour.html">fix_pour</A>, <A HREF = "region.html">region</A>
|
||
|
</P>
|
||
|
<P><B>Default:</B>
|
||
|
</P>
|
||
|
<P>The option defaults are delta = 0.0, near = 0.0, attempt = 10, rate =
|
||
|
0.0, vx = 0.0 0.0, vy = 0.0 0.0, vz = 0.0 0.0, and units = lattice.
|
||
|
</P>
|
||
|
</HTML>
|