Commit 4e625325 authored by Oliver Henrich's avatar Oliver Henrich
Browse files

Merge branch 'master' into user-cgdna

parents 562296bd 91c4ef6f
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -137,8 +137,8 @@ doc page for more info.
[Related commands:]

"fix bond/create"_fix_bond_create.html, "fix
bond/swap"_fix_bond_swap.html, "dump local"_dump.html,
"special_bonds"_special_bonds.html
bond/react"_fix_bond_react.html, "fix bond/swap"_fix_bond_swap.html,
"dump local"_dump.html, "special_bonds"_special_bonds.html

[Default:]

+2 −2
Original line number Diff line number Diff line
@@ -232,8 +232,8 @@ doc page for more info.
[Related commands:]

"fix bond/break"_fix_bond_break.html, "fix
bond/swap"_fix_bond_swap.html, "dump local"_dump.html,
"special_bonds"_special_bonds.html
bond/react"_fix_bond_react.html, "fix bond/swap"_fix_bond_swap.html,
"dump local"_dump.html, "special_bonds"_special_bonds.html

[Default:]

+27 −17
Original line number Diff line number Diff line
@@ -24,11 +24,11 @@ common_keyword = {stabilization} :l
  {stabilization} values = {no} or {yes} {group-ID} {xmax}
    {no} = no reaction site stabilization
    {yes} = perform reaction site stabilization
      {group-ID} = user-assigned ID for all non-reacting atoms (group created internally)
      {group-ID} = user-assigned prefix for the dynamic group of non-reacting atoms
      {xmax} = xmax value that is used by an internally created "nve/limit"_fix_nve_limit.html integrator :pre
react = mandatory argument indicating new reaction specification :l
  react-ID = user-assigned name for the reaction :l
  react-group-ID = only atoms in this group are available for the reaction :l
  react-group-ID = only atoms in this group are considered for the reaction :l
  Nevery = attempt reaction every this many steps :l
  Rmin = bonding pair atoms must be separated by more than Rmin to initiate reaction (distance units) :l
  Rmax = bonding pair atoms must be separated by less than Rmax to initiate reaction (distance units) :l
@@ -51,7 +51,7 @@ react = mandatory argument indicating new reaction specification :l

molecule mol1 pre_reacted_topology.txt
molecule mol2 post_reacted_topology.txt
fix 5 all bond/react stabilization no react myrxn1 all 1 0 3.25 mol1 mol2 map_file.txt :pre
fix 5 all bond/react react myrxn1 all 1 0 3.25 mol1 mol2 map_file.txt :pre

molecule mol1 pre_reacted_rxn1.txt
molecule mol2 post_reacted_rxn1.txt
@@ -60,7 +60,7 @@ molecule mol4 post_reacted_rxn2.txt
fix 5 all bond/react stabilization yes nvt_grp .03 &
  react myrxn1 all 1 0 3.25 mol1 mol2 map_file_rxn1.txt prob 0.50 12345 &
  react myrxn2 all 1 0 2.75 mol3 mol4 map_file_rxn2.txt prob 0.25 12345
fix 6 nvt_grp nvt temp 300 300 100 # set thermostat after bond/react :pre
fix 6 nvt_grp_REACT nvt temp 300 300 100 # set thermostat after bond/react :pre

[Description:]

@@ -102,19 +102,29 @@ involved in any new reactions. The {xmax} value keyword should
typically be set to the maximum distance that non-reacting atoms move
during the simulation.

The group-ID set using the {stabilization} keyword should be a
previously unused group-ID. It cannot be specified as 'all'. The fix
bond/react command creates a "dynamic group"_group.html of this name
that includes all non-reacting atoms. This dynamic group-ID should
then be used by a subsequent system-wide time integrator such as nvt,
npt, or nve, as shown in the second example above. It is currently
necessary to place the time integration command after the fix
bond/react command due to the internal dynamic grouping performed by
fix bond/react.

NOTE: The internally created group currently applies to all atoms in
the system, i.e. you should generally not have a separate thermostat
which acts on the 'all' group.
The group-ID set using the {stabilization} keyword can be an existing
static group or a previously-unused group-ID. It cannot be specified
as 'all'. If the group-ID is previously unused, the fix bond/react
command creates a "dynamic group"_group.html that is initialized to
include all atoms. If the group-ID is that of an existing static
group, the group is used as the parent group of new,
internally-created dynamic group. In both cases, this new dynamic
group is named by appending '_REACT' to the group-ID, e.g.
nvt_grp_REACT. By specifying an existing group, you may thermostat
constant-topology parts of your system separately. The dynamic group
contains only non-reacting atoms at a given timestep, and therefore
should be used by a subsequent system-wide time integrator such as
nvt, npt, or nve, as shown in the second example above. The time
integration command should be placed after the fix bond/react command
due to the internal dynamic grouping performed by fix bond/react.

NOTE: If the group-ID is an existing static group, react-group-IDs
should also be specified as this static group, or a subset.

NOTE: If the group-ID is previously unused, the internally created
group applies to all atoms in the system, i.e. you should generally
not have a separate thermostat which acts on the 'all' group, or any
other group.

The following comments pertain to each {react} argument:

+1 −2
Original line number Diff line number Diff line
@@ -225,8 +225,7 @@ atomfile-style variable. The variable is evaluated and atoms whose
per-atom values are 0.0, are removed from the dynamic group. If the {property}
keyword is used, the per-atom property name must be a previously defined
per-atom property.  The per-atom property is evaluated and atoms whose
values are 0.0 are removed from the dynamic group, otherwise they
are added to the group.
values are 0.0 are removed from the dynamic group.

The assignment of atoms to a dynamic group is done at the beginning of
each run and on every timestep that is a multiple of {N}, which is the
+1 −1
Original line number Diff line number Diff line
@@ -36,7 +36,7 @@ fix myrxns all bond/react stabilization yes statted_grp .03 &
  react rxn2 all 1 0.0 5.0 mol3 mol4 rxn1_stp2_map

# stable at 800K
fix 1 statted_grp nvt temp 800 800 100
fix 1 statted_grp_REACT nvt temp 800 800 100

# in order to customize behavior of reacting atoms,
# you can use the internally created 'bond_react_MASTER_group', like so:
Loading