72 lines
4.0 KiB
ReStructuredText
72 lines
4.0 KiB
ReStructuredText
Walls
|
|
=====
|
|
|
|
Walls in an MD simulation are typically used to bound particle motion,
|
|
i.e. to serve as a boundary condition.
|
|
|
|
Walls in LAMMPS can be of rough (made of particles) or idealized
|
|
surfaces. Ideal walls can be smooth, generating forces only in the
|
|
normal direction, or frictional, generating forces also in the
|
|
tangential direction.
|
|
|
|
Rough walls, built of particles, can be created in various ways. The
|
|
particles themselves can be generated like any other particle, via the
|
|
:doc:`lattice <lattice>` and :doc:`create_atoms <create_atoms>` commands,
|
|
or read in via the :doc:`read_data <read_data>` command.
|
|
|
|
Their motion can be constrained by many different commands, so that
|
|
they do not move at all, move together as a group at constant velocity
|
|
or in response to a net force acting on them, move in a prescribed
|
|
fashion (e.g. rotate around a point), etc. Note that if a time
|
|
integration fix like :doc:`fix nve <fix_nve>` or :doc:`fix nvt <fix_nh>`
|
|
is not used with the group that contains wall particles, their
|
|
positions and velocities will not be updated.
|
|
|
|
* :doc:`fix aveforce <fix_aveforce>` - set force on particles to average value, so they move together
|
|
* :doc:`fix setforce <fix_setforce>` - set force on particles to a value, e.g. 0.0
|
|
* :doc:`fix freeze <fix_freeze>` - freeze particles for use as granular walls
|
|
* :doc:`fix nve/noforce <fix_nve_noforce>` - advect particles by their velocity, but without force
|
|
* :doc:`fix move <fix_move>` - prescribe motion of particles by a linear velocity, oscillation, rotation, variable
|
|
|
|
The :doc:`fix move <fix_move>` command offers the most generality, since
|
|
the motion of individual particles can be specified with
|
|
:doc:`variable <variable>` formula which depends on time and/or the
|
|
particle position.
|
|
|
|
For rough walls, it may be useful to turn off pairwise interactions
|
|
between wall particles via the :doc:`neigh_modify exclude <neigh_modify>` command.
|
|
|
|
Rough walls can also be created by specifying frozen particles that do
|
|
not move and do not interact with mobile particles, and then tethering
|
|
other particles to the fixed particles, via a :doc:`bond <bond_style>`.
|
|
The bonded particles do interact with other mobile particles.
|
|
|
|
Idealized walls can be specified via several fix commands. :doc:`Fix wall/gran <fix_wall_gran>` creates frictional walls for use with
|
|
granular particles; all the other commands create smooth walls.
|
|
|
|
* :doc:`fix wall/reflect <fix_wall_reflect>` - reflective flat walls
|
|
* :doc:`fix wall/lj93 <fix_wall>` - flat walls, with Lennard-Jones 9/3 potential
|
|
* :doc:`fix wall/lj126 <fix_wall>` - flat walls, with Lennard-Jones 12/6 potential
|
|
* :doc:`fix wall/colloid <fix_wall>` - flat walls, with :doc:`pair_style colloid <pair_colloid>` potential
|
|
* :doc:`fix wall/harmonic <fix_wall>` - flat walls, with repulsive harmonic spring potential
|
|
* :doc:`fix wall/morse <fix_wall>` - flat walls, with Morse potential
|
|
* :doc:`fix wall/region <fix_wall_region>` - use region surface as wall
|
|
* :doc:`fix wall/gran <fix_wall_gran>` - flat or curved walls with :doc:`pair_style granular <pair_gran>` potential
|
|
|
|
The *lj93*\ , *lj126*\ , *colloid*\ , *harmonic*\ , and *morse* styles all
|
|
allow the flat walls to move with a constant velocity, or oscillate in
|
|
time. The :doc:`fix wall/region <fix_wall_region>` command offers the
|
|
most generality, since the region surface is treated as a wall, and
|
|
the geometry of the region can be a simple primitive volume (e.g. a
|
|
sphere, or cube, or plane), or a complex volume made from the union
|
|
and intersection of primitive volumes. :doc:`Regions <region>` can also
|
|
specify a volume "interior" or "exterior" to the specified primitive
|
|
shape or *union* or *intersection*\ . :doc:`Regions <region>` can also be
|
|
"dynamic" meaning they move with constant velocity, oscillate, or
|
|
rotate.
|
|
|
|
The only frictional idealized walls currently in LAMMPS are flat or
|
|
curved surfaces specified by the :doc:`fix wall/gran <fix_wall_gran>`
|
|
command. At some point we plan to allow regoin surfaces to be used as
|
|
frictional walls, as well as triangulated surfaces.
|