N = invoke this fix every N steps
@@ -47,66 +47,72 @@
Examples:
fix 2 all atom/swap 1 1 29494 300.0 ke no types 1 2
-fix atom_swap_fix all atom/swap 100 1 12345 298.0 region my_swap_region types 5 6
+fix myFix all atom/swap 100 1 12345 298.0 region my_swap_region types 5 6
fix SGMC all atom/swap 1 100 345 1.0 semi-grand yes types 1 2 3 delta_mu 4.3 -5.0
Description:
-This fix performs Monte Carlo swaps of atoms of one given atom type with atoms
-of the other given atom types. The specified T is used in the Metropolis criterion
-dictating swap probabilities.
+
This fix performs Monte Carlo swaps of atoms of one given atom type
+with atoms of the other given atom types. The specified T is used in
+the Metropolis criterion dictating swap probabilities.
-Perform X swaps of atoms of one type with atoms of another type according to a
-Monte Carlo probability. Swap candidates must be in the fix group, must be in
-the region (if specified), and must be of one of the listed types. Swaps are
-attempted between candidates that are chosen randomly with equal probability
-among the candidate atoms. Swaps are not attempted between atoms of the same
-type since nothing would happen.
+
Perform X swaps of atoms of one type with atoms of another type
+according to a Monte Carlo probability. Swap candidates must be in the
+fix group, must be in the region (if specified), and must be of one of
+the listed types. Swaps are attempted between candidates that are
+chosen randomly with equal probability among the candidate
+atoms. Swaps are not attempted between atoms of the same type since
+nothing would happen.
-All atoms in the simulation domain can be moved using regular time
+
All atoms in the simulation domain can be moved using regular time
integration displacements, e.g. via fix_nvt, resulting
-in a hybrid MC+MD simulation. A smaller-than-usual timestep size
-may be needed when running such a hybrid simulation, especially if
-the swapped atoms are not well equilibrated.
+in a hybrid MC+MD simulation. A smaller-than-usual timestep size may
+be needed when running such a hybrid simulation, especially if the
+swapped atoms are not well equilibrated.
-The types keyword is required. At least two atom types must be specified.
+
The types keyword is required. At least two atom types must be
+specified.
-The ke keyword can be set to no to turn off kinetic energy conservation
-for swaps. The default is yes, which means that swapped atoms have their
-velocities scaled by the ratio of the masses of the swapped atom types. This
-ensures that the kinetic energy of each atom is the same after the swap as it
-was before the swap, even though the atom masses have changed.
+
The ke keyword can be set to no to turn off kinetic energy
+conservation for swaps. The default is yes, which means that swapped
+atoms have their velocities scaled by the ratio of the masses of the
+swapped atom types. This ensures that the kinetic energy of each atom
+is the same after the swap as it was before the swap, even though the
+atom masses have changed.
-The semi-grand keyword can be set to yes to switch to the semi-grand
-canonical ensemble as discussed in (Sadigh). This means that the
-total number of each particle type does not need to be conserved. The default
-is no, which means that the only kind of swap allowed exchanges an atom of
-one type with an atom of a different given type. In other words, the relative
-mole fractions of the swapped atoms remains constant. Whereas in the
-semi-grand canonical ensemble, the composition of the system can change. Note
-that when using semi-grand, all atoms in the fix group are eligible for
-attempted conversion to one of the given types, even if its current type is
-not one of the given types. An attempt is made to switch the selected atom to
-one of the listed types with equal probability. Acceptance of each attempt
-depends upon the Metropolis criterion.
+
The semi-grand keyword can be set to yes to switch to the
+semi-grand canonical ensemble as discussed in (Sadigh). This
+means that the total number of each particle type does not need to be
+conserved. The default is no, which means that the only kind of swap
+allowed exchanges an atom of one type with an atom of a different
+given type. In other words, the relative mole fractions of the swapped
+atoms remains constant. Whereas in the semi-grand canonical ensemble,
+the composition of the system can change. Note that when using
+semi-grand, all atoms in the fix group are eligible for attempted
+conversion to one of the given types, even if its current type is not
+one of the given types. An attempt is made to switch the selected atom
+to one of the listed types with equal probability. Acceptance of
+each attempt depends upon the Metropolis criterion.
-The delta_mu keyword allows users to specify non-zero chemical potentials
-for each of the atom types. All chemical potentials are relative to the first
-atom type, so no value is given for the first atom type. These parameters are
-useful for semi-grand canonical ensemble simulations where it may be
-desirable to actively control the composition of the system. When given,
-there must be ntypes-1 values given, where ntypes is the number of atom
-types in the simulated system. Note that a value for delta_mu is required for
-all atom types when using semi-grand, even for atom types not listed
-following the types keyword. This is because when using semi-grand, it is
-possible that any of the atom types in the system could be part of the fix
-group and therefore are eligible for swapping to one of the listed atom types.
+
The delta_mu keyword allows users to specify non-zero chemical
+potentials for each of the atom types. All chemical potentials are
+relative to the first atom type, so no value is given for the first
+atom type. These parameters are useful for semi-grand canonical
+ensemble simulations where it may be desirable to actively control the
+composition of the system. When given, there must be ntypes-1 values
+given, where ntypes is the number of atom types in the simulated
+system. Note that a value for delta_mu is required for all atom types
+when using semi-grand, even for atom types not listed following the
+types keyword. This is because when using semi-grand, it is
+possible that any of the atom types in the system could be part of the
+fix group and therefore are eligible for swapping to one of the listed
+atom types.
-This command may optionally use the region keyword to define
-swap volume. The specified region must have been
-previously defined with a region command. It must be
-defined with side = in. Swap attempts occur only between atoms that
-are both within the specified region. Swaps are not otherwise attempted.
+
This command may optionally use the region keyword to define swap
+volume. The specified region must have been previously defined with a
+region command. It must be defined with side = in.
+Swap attempts occur only between atoms that are both within the
+specified region. Swaps are not otherwise attempted.
You should ensure you do not swap atoms belonging to a molecule, or
LAMMPS will soon generate an error when it tries to find those atoms.
@@ -115,12 +121,12 @@ non-zero molecule ID, but does not check for this at the time of
swapping.
This fix checks to ensure all atoms of the given types have the same
-atomic charge. LAMMPS doesn't enforce this in general, but it is
-needed for this fix to simplify the swapping procedure. Successful swaps
-will swap the atom type and charge of the swapped atoms.
+atomic charge. LAMMPS doesn't enforce this in general, but it is
+needed for this fix to simplify the swapping procedure. Successful
+swaps will swap the atom type and charge of the swapped atoms.
Since this fix computes total potential energies before and after
-proposed swaps, so even complicated potential energy calculations are
+proposed swaps, so even complicated potential energy calculations are
OK, including the following:
- long-range electrostatics (kspace)
diff --git a/doc/fix_atom_swap.txt b/doc/fix_atom_swap.txt
index 1b2aec58f7..d93c34a5a1 100644
--- a/doc/fix_atom_swap.txt
+++ b/doc/fix_atom_swap.txt
@@ -6,14 +6,14 @@
:line
-fix atom_swap command :h3
+fix atom/swap command :h3
[Syntax:]
-fix ID group-ID atom_swap N X seed T keyword values ... :pre
+fix ID group-ID atom/swap N X seed T keyword values ... :pre
ID, group-ID are documented in "fix"_fix.html command :ulb,l
-atom_swap = style name of this fix command :l
+atom/swap = style name of this fix command :l
N = invoke this fix every N steps :l
X = number of swaps to attempt every N steps :l
seed = random # seed (positive integer) :l
@@ -35,66 +35,72 @@ keyword = {types} or {delta_mu} or {ke} or {semi-grand} or {region} :l
[Examples:]
fix 2 all atom/swap 1 1 29494 300.0 ke no types 1 2
-fix atom_swap_fix all atom/swap 100 1 12345 298.0 region my_swap_region types 5 6
+fix myFix all atom/swap 100 1 12345 298.0 region my_swap_region types 5 6
fix SGMC all atom/swap 1 100 345 1.0 semi-grand yes types 1 2 3 delta_mu 4.3 -5.0 :pre
[Description:]
-This fix performs Monte Carlo swaps of atoms of one given atom type with atoms
-of the other given atom types. The specified T is used in the Metropolis criterion
-dictating swap probabilities.
+This fix performs Monte Carlo swaps of atoms of one given atom type
+with atoms of the other given atom types. The specified T is used in
+the Metropolis criterion dictating swap probabilities.
-Perform X swaps of atoms of one type with atoms of another type according to a
-Monte Carlo probability. Swap candidates must be in the fix group, must be in
-the region (if specified), and must be of one of the listed types. Swaps are
-attempted between candidates that are chosen randomly with equal probability
-among the candidate atoms. Swaps are not attempted between atoms of the same
-type since nothing would happen.
+Perform X swaps of atoms of one type with atoms of another type
+according to a Monte Carlo probability. Swap candidates must be in the
+fix group, must be in the region (if specified), and must be of one of
+the listed types. Swaps are attempted between candidates that are
+chosen randomly with equal probability among the candidate
+atoms. Swaps are not attempted between atoms of the same type since
+nothing would happen.
-All atoms in the simulation domain can be moved using regular time
+All atoms in the simulation domain can be moved using regular time
integration displacements, e.g. via "fix_nvt"_fix_nvt.html, resulting
-in a hybrid MC+MD simulation. A smaller-than-usual timestep size
-may be needed when running such a hybrid simulation, especially if
-the swapped atoms are not well equilibrated.
+in a hybrid MC+MD simulation. A smaller-than-usual timestep size may
+be needed when running such a hybrid simulation, especially if the
+swapped atoms are not well equilibrated.
-The {types} keyword is required. At least two atom types must be specified.
+The {types} keyword is required. At least two atom types must be
+specified.
-The {ke} keyword can be set to {no} to turn off kinetic energy conservation
-for swaps. The default is {yes}, which means that swapped atoms have their
-velocities scaled by the ratio of the masses of the swapped atom types. This
-ensures that the kinetic energy of each atom is the same after the swap as it
-was before the swap, even though the atom masses have changed.
+The {ke} keyword can be set to {no} to turn off kinetic energy
+conservation for swaps. The default is {yes}, which means that swapped
+atoms have their velocities scaled by the ratio of the masses of the
+swapped atom types. This ensures that the kinetic energy of each atom
+is the same after the swap as it was before the swap, even though the
+atom masses have changed.
-The {semi-grand} keyword can be set to {yes} to switch to the semi-grand
-canonical ensemble as discussed in "(Sadigh)"_#Sadigh. This means that the
-total number of each particle type does not need to be conserved. The default
-is {no}, which means that the only kind of swap allowed exchanges an atom of
-one type with an atom of a different given type. In other words, the relative
-mole fractions of the swapped atoms remains constant. Whereas in the
-semi-grand canonical ensemble, the composition of the system can change. Note
-that when using {semi-grand}, all atoms in the fix group are eligible for
-attempted conversion to one of the given types, even if its current type is
-not one of the given types. An attempt is made to switch the selected atom to
-one of the listed {types} with equal probability. Acceptance of each attempt
-depends upon the Metropolis criterion.
+The {semi-grand} keyword can be set to {yes} to switch to the
+semi-grand canonical ensemble as discussed in "(Sadigh)"_#Sadigh. This
+means that the total number of each particle type does not need to be
+conserved. The default is {no}, which means that the only kind of swap
+allowed exchanges an atom of one type with an atom of a different
+given type. In other words, the relative mole fractions of the swapped
+atoms remains constant. Whereas in the semi-grand canonical ensemble,
+the composition of the system can change. Note that when using
+{semi-grand}, all atoms in the fix group are eligible for attempted
+conversion to one of the given types, even if its current type is not
+one of the given types. An attempt is made to switch the selected atom
+to one of the listed {types} with equal probability. Acceptance of
+each attempt depends upon the Metropolis criterion.
-The {delta_mu} keyword allows users to specify non-zero chemical potentials
-for each of the atom types. All chemical potentials are relative to the first
-atom type, so no value is given for the first atom type. These parameters are
-useful for semi-grand canonical ensemble simulations where it may be
-desirable to actively control the composition of the system. When given,
-there must be ntypes-1 values given, where ntypes is the number of atom
-types in the simulated system. Note that a value for delta_mu is required for
-all atom types when using {semi-grand}, even for atom types not listed
-following the {types} keyword. This is because when using {semi-grand}, it is
-possible that any of the atom types in the system could be part of the fix
-group and therefore are eligible for swapping to one of the listed atom types.
+The {delta_mu} keyword allows users to specify non-zero chemical
+potentials for each of the atom types. All chemical potentials are
+relative to the first atom type, so no value is given for the first
+atom type. These parameters are useful for semi-grand canonical
+ensemble simulations where it may be desirable to actively control the
+composition of the system. When given, there must be ntypes-1 values
+given, where ntypes is the number of atom types in the simulated
+system. Note that a value for delta_mu is required for all atom types
+when using {semi-grand}, even for atom types not listed following the
+{types} keyword. This is because when using {semi-grand}, it is
+possible that any of the atom types in the system could be part of the
+fix group and therefore are eligible for swapping to one of the listed
+atom types.
-This command may optionally use the {region} keyword to define
-swap volume. The specified region must have been
-previously defined with a "region"_region.html command. It must be
-defined with side = {in}. Swap attempts occur only between atoms that
-are both within the specified region. Swaps are not otherwise attempted.
+This command may optionally use the {region} keyword to define swap
+volume. The specified region must have been previously defined with a
+"region"_region.html command. It must be defined with side = {in}.
+Swap attempts occur only between atoms that are both within the
+specified region. Swaps are not otherwise attempted.
You should ensure you do not swap atoms belonging to a molecule, or
LAMMPS will soon generate an error when it tries to find those atoms.
@@ -103,12 +109,12 @@ non-zero molecule ID, but does not check for this at the time of
swapping.
This fix checks to ensure all atoms of the given types have the same
-atomic charge. LAMMPS doesn't enforce this in general, but it is
-needed for this fix to simplify the swapping procedure. Successful swaps
-will swap the atom type and charge of the swapped atoms.
+atomic charge. LAMMPS doesn't enforce this in general, but it is
+needed for this fix to simplify the swapping procedure. Successful
+swaps will swap the atom type and charge of the swapped atoms.
Since this fix computes total potential energies before and after
-proposed swaps, so even complicated potential energy calculations are
+proposed swaps, so even complicated potential energy calculations are
OK, including the following:
long-range electrostatics (kspace)