Merge remote-tracking branch 'github/master' into adaptglok
# Conflicts: # doc/src/min_modify.rst
This commit is contained in:
@ -87,7 +87,7 @@ commands)
|
||||
* water potentials: TIP3P, TIP4P, SPC
|
||||
* implicit solvent potentials: hydrodynamic lubrication, Debye
|
||||
* force-field compatibility with common CHARMM, AMBER, DREIDING, OPLS, GROMACS, COMPASS options
|
||||
* access to the `OpenKIM Repository <http://openkim.org>`_ of potentials via :doc:`kim\_init, kim\_interactions, and kim\_query <kim_commands>` commands
|
||||
* access to the `OpenKIM Repository <http://openkim.org>`_ of potentials via :doc:`kim_init, kim_interactions, and kim_query <kim_commands>` commands
|
||||
* hybrid potentials: multiple pair, bond, angle, dihedral, improper potentials can be used in one simulation
|
||||
* overlaid potentials: superposition of multiple pair potentials
|
||||
|
||||
|
||||
@ -927,7 +927,7 @@ Also several computes which calculate properties of rigid bodies.
|
||||
|
||||
* src/RIGID: filenames -> commands
|
||||
* :doc:`compute erotate/rigid <compute_erotate_rigid>`
|
||||
* fix shake"_fix\_shake.html
|
||||
* :doc:`fix shake <fix_shake>`
|
||||
* :doc:`fix rattle <fix_shake>`
|
||||
* :doc:`fix rigid/\* <fix_rigid>`
|
||||
* examples/ASPHERE
|
||||
|
||||
@ -46,9 +46,9 @@ internally.
|
||||
|
||||
Additional to the cosine term the *cosine/buck6d* angle style computes
|
||||
the short range (vdW) interaction belonging to the
|
||||
:doc:`pair\_buck6d <pair_buck6d_coul_gauss>` between the end atoms of the
|
||||
:doc:`pair_style buck6d <pair_buck6d_coul_gauss>` between the end atoms of the
|
||||
angle. For this reason this angle style only works in combination
|
||||
with the :doc:`pair\_buck6d <pair_buck6d_coul_gauss>` styles and needs
|
||||
with the :doc:`pair_style buck6d <pair_buck6d_coul_gauss>` styles and needs
|
||||
the :doc:`special_bonds <special_bonds>` 1-3 interactions to be weighted
|
||||
0.0 to prevent double counting.
|
||||
|
||||
@ -61,7 +61,7 @@ Restrictions
|
||||
|
||||
|
||||
*cosine/buck6d* can only be used in combination with the
|
||||
:doc:`pair\_buck6d <pair_buck6d_coul_gauss>` style and with a
|
||||
:doc:`pair_style buck6d <pair_buck6d_coul_gauss>` style and with a
|
||||
:doc:`special_bonds <special_bonds>` 0.0 weighting of 1-3 interactions.
|
||||
|
||||
This angle style can only be used if LAMMPS was built with the
|
||||
|
||||
@ -83,6 +83,6 @@ Related commands
|
||||
""""""""""""""""
|
||||
|
||||
:doc:`angle_coeff <angle_coeff>`,
|
||||
:doc:`angle\_cosine\_shift\_exp <angle_cosine_shift_exp>`
|
||||
:doc:`angle_style cosine/shift/exp <angle_cosine_shift_exp>`
|
||||
|
||||
**Default:** none
|
||||
|
||||
@ -94,7 +94,7 @@ Related commands
|
||||
""""""""""""""""
|
||||
|
||||
:doc:`angle_coeff <angle_coeff>`,
|
||||
:doc:`angle\_cosine\_shift <angle_cosine_shift>`,
|
||||
:doc:`dihedral\_cosine\_shift\_exp <dihedral_cosine_shift_exp>`
|
||||
:doc:`angle_style cosine/shift <angle_cosine_shift>`,
|
||||
:doc:`dihedral_style cosine/shift/exp <dihedral_cosine_shift_exp>`
|
||||
|
||||
**Default:** none
|
||||
|
||||
@ -86,6 +86,6 @@ Related commands
|
||||
|
||||
:doc:`bond_coeff <bond_coeff>`, :doc:`delete_bonds <delete_bonds>`,
|
||||
:doc:`bond_harmonic <bond_harmonic>`,
|
||||
:doc:`bond\_harmonic\_shift <bond_harmonic_shift>`
|
||||
:doc:`bond_style harmonic/shift <bond_harmonic_shift>`
|
||||
|
||||
**Default:** none
|
||||
|
||||
@ -301,7 +301,7 @@ Related commands
|
||||
""""""""""""""""
|
||||
|
||||
:doc:`fix adapt/fep <fix_adapt_fep>`, :doc:`fix ave/time <fix_ave_time>`,
|
||||
:doc:`pair\_fep\_soft <pair_fep_soft>`
|
||||
:doc:`pair_style .../soft <pair_fep_soft>`
|
||||
|
||||
Default
|
||||
"""""""
|
||||
|
||||
@ -54,19 +54,22 @@ effects, smaller timestep inaccuracy, faster equilibration and shorter
|
||||
decorrelation time.
|
||||
|
||||
HMA should not be used if atoms are expected to diffuse. It is also
|
||||
restricted to simulations in the NVT ensemble. While this compute may be
|
||||
used with any potential in LAMMPS, it will provide inaccurate results
|
||||
restricted to simulations in the NVT ensemble. While this compute may
|
||||
be used with any potential in LAMMPS, it will provide inaccurate results
|
||||
for potentials that do not go to 0 at the truncation distance;
|
||||
:doc:`pair\_lj\_smooth\_linear <pair_lj_smooth_linear>` and Ewald summation should
|
||||
work fine, while :doc:`pair_lj <pair_lj>` will perform poorly unless
|
||||
the potential is shifted (via :doc:`pair_modify <pair_modify>` shift) or the cutoff is large. Furthermore, computation of the heat capacity with
|
||||
this compute is restricted to those that implement the single\_hessian method
|
||||
in Pair. Implementing single\_hessian in additional pair styles is simple.
|
||||
Please contact Andrew Schultz (ajs42 at buffalo.edu) and David Kofke (kofke at
|
||||
buffalo.edu) if your desired pair style does not have this method. This is
|
||||
the list of pair styles that currently implement pair\_hessian:
|
||||
:doc:`pair_style lj/smooth/linear <pair_lj_smooth_linear>` and Ewald
|
||||
summation should work fine, while :doc:`pair_style lj/cut <pair_lj>`
|
||||
will perform poorly unless the potential is shifted (via
|
||||
:doc:`pair_modify <pair_modify>` shift) or the cutoff is large.
|
||||
Furthermore, computation of the heat capacity with this compute is
|
||||
restricted to those that implement the *single\_hessian* method in Pair.
|
||||
Implementing *single\_hessian* in additional pair styles is simple.
|
||||
Please contact Andrew Schultz (ajs42 at buffalo.edu) and David Kofke
|
||||
(kofke at buffalo.edu) if your desired pair style does not have this
|
||||
method. This is the list of pair styles that currently implement
|
||||
*single\_hessian*:
|
||||
|
||||
* :doc:`lj\_smooth\_linear <pair_lj_smooth_linear>`
|
||||
* :doc:`pair_style lj/smooth/linear <pair_lj_smooth_linear>`
|
||||
|
||||
|
||||
In this method, the analytically known harmonic behavior of a crystal is removed from the traditional ensemble
|
||||
|
||||
@ -92,7 +92,7 @@ Related commands
|
||||
""""""""""""""""
|
||||
|
||||
:doc:`dihedral_coeff <dihedral_coeff>`,
|
||||
:doc:`angle\_cosine\_shift\_exp <angle_cosine_shift_exp>`
|
||||
:doc:`angle_style cosine/shift/exp <angle_cosine_shift_exp>`
|
||||
|
||||
**Default:** none
|
||||
|
||||
|
||||
@ -319,7 +319,7 @@ Restrictions
|
||||
Related commands
|
||||
""""""""""""""""
|
||||
|
||||
:doc:`compute fep <compute_fep>`, :doc:`fix adapt <fix_adapt>`, :doc:`compute ti <compute_ti>`, :doc:`pair\_fep\_soft <pair_fep_soft>`
|
||||
:doc:`compute fep <compute_fep>`, :doc:`fix adapt <fix_adapt>`, :doc:`compute ti <compute_ti>`, :doc:`pair_style \*/soft <pair_fep_soft>`
|
||||
|
||||
Default
|
||||
"""""""
|
||||
|
||||
@ -143,97 +143,97 @@ Related commands
|
||||
|
||||
After specifying this fix in your input script, several other :doc:`fix_modify <fix_modify>` commands are used to setup the problem, e.g. define the finite element mesh and prescribe initial and boundary conditions.
|
||||
|
||||
fix\_modify commands for setup:
|
||||
*fix\_modify* commands for setup:
|
||||
|
||||
* `fix\_modify AtC mesh create <USER/atc/man_mesh_create.html>`_
|
||||
* `fix\_modify AtC mesh quadrature <USER/atc/man_mesh_quadrature.html>`_
|
||||
* `fix\_modify AtC mesh read <USER/atc/man_mesh_read.html>`_
|
||||
* `fix\_modify AtC mesh write <USER/atc/man_mesh_write.html>`_
|
||||
* `fix\_modify AtC mesh create\_nodeset <USER/atc/man_mesh_create_nodeset.html>`_
|
||||
* `fix\_modify AtC mesh add\_to\_nodeset <USER/atc/man_mesh_add_to_nodeset.html>`_
|
||||
* `fix\_modify AtC mesh create\_faceset box <USER/atc/man_mesh_create_faceset_box.html>`_
|
||||
* `fix\_modify AtC mesh create\_faceset plane <USER/atc/man_mesh_create_faceset_plane.html>`_
|
||||
* `fix\_modify AtC mesh create\_elementset <USER/atc/man_mesh_create_elementset.html>`_
|
||||
* `fix\_modify AtC mesh delete\_elements <USER/atc/man_mesh_delete_elements.html>`_
|
||||
* `fix\_modify AtC mesh nodeset\_to\_elementset <USER/atc/man_mesh_nodeset_to_elementset.html>`_
|
||||
* `fix\_modify AtC boundary <USER/atc/man_boundary.html>`_
|
||||
* `fix\_modify AtC internal\_quadrature <USER/atc/man_internal_quadrature.html>`_
|
||||
* `fix\_modify AtC time\_integration (thermal) <USER/atc/man_thermal_time_integration.html>`_
|
||||
* `fix\_modify AtC time\_integration (momentum) <USER/atc/man_momentum_time_integration.html>`_
|
||||
* `fix\_modify AtC extrinsic electron\_integration <USER/atc/man_electron_integration.html>`_
|
||||
* `fix\_modify AtC internal\_element\_set <USER/atc/man_internal_element_set.html>`_
|
||||
* `fix\_modify AtC decomposition <USER/atc/man_decomposition.html>`_
|
||||
* `fix_modify AtC mesh create <USER/atc/man_mesh_create.html>`_
|
||||
* `fix_modify AtC mesh quadrature <USER/atc/man_mesh_quadrature.html>`_
|
||||
* `fix_modify AtC mesh read <USER/atc/man_mesh_read.html>`_
|
||||
* `fix_modify AtC mesh write <USER/atc/man_mesh_write.html>`_
|
||||
* `fix_modify AtC mesh create_nodeset <USER/atc/man_mesh_create_nodeset.html>`_
|
||||
* `fix_modify AtC mesh add_to_nodeset <USER/atc/man_mesh_add_to_nodeset.html>`_
|
||||
* `fix_modify AtC mesh create_faceset box <USER/atc/man_mesh_create_faceset_box.html>`_
|
||||
* `fix_modify AtC mesh create_faceset plane <USER/atc/man_mesh_create_faceset_plane.html>`_
|
||||
* `fix_modify AtC mesh create_elementset <USER/atc/man_mesh_create_elementset.html>`_
|
||||
* `fix_modify AtC mesh delete_elements <USER/atc/man_mesh_delete_elements.html>`_
|
||||
* `fix_modify AtC mesh nodeset_to_elementset <USER/atc/man_mesh_nodeset_to_elementset.html>`_
|
||||
* `fix_modify AtC boundary <USER/atc/man_boundary.html>`_
|
||||
* `fix_modify AtC internal_quadrature <USER/atc/man_internal_quadrature.html>`_
|
||||
* `fix_modify AtC time_integration (thermal) <USER/atc/man_thermal_time_integration.html>`_
|
||||
* `fix_modify AtC time_integration (momentum) <USER/atc/man_momentum_time_integration.html>`_
|
||||
* `fix_modify AtC extrinsic electron_integration <USER/atc/man_electron_integration.html>`_
|
||||
* `fix_modify AtC internal_element_set <USER/atc/man_internal_element_set.html>`_
|
||||
* `fix_modify AtC decomposition <USER/atc/man_decomposition.html>`_
|
||||
|
||||
fix\_modify commands for boundary and initial conditions:
|
||||
*fix\_modify* commands for boundary and initial conditions:
|
||||
|
||||
* `fix\_modify AtC initial <USER/atc/man_initial.html>`_
|
||||
* `fix\_modify AtC fix <USER/atc/man_fix_nodes.html>`_
|
||||
* `fix\_modify AtC unfix <USER/atc/man_unfix_nodes.html>`_
|
||||
* `fix\_modify AtC fix\_flux <USER/atc/man_fix_flux.html>`_
|
||||
* `fix\_modify AtC unfix\_flux <USER/atc/man_unfix_flux.html>`_
|
||||
* `fix\_modify AtC source <USER/atc/man_source.html>`_
|
||||
* `fix\_modify AtC remove\_source <USER/atc/man_remove_source.html>`_
|
||||
* `fix_modify AtC initial <USER/atc/man_initial.html>`_
|
||||
* `fix_modify AtC fix <USER/atc/man_fix_nodes.html>`_
|
||||
* `fix_modify AtC unfix <USER/atc/man_unfix_nodes.html>`_
|
||||
* `fix_modify AtC fix_flux <USER/atc/man_fix_flux.html>`_
|
||||
* `fix_modify AtC unfix_flux <USER/atc/man_unfix_flux.html>`_
|
||||
* `fix_modify AtC source <USER/atc/man_source.html>`_
|
||||
* `fix_modify AtC remove_source <USER/atc/man_remove_source.html>`_
|
||||
|
||||
fix\_modify commands for control and filtering:
|
||||
*fix\_modify* commands for control and filtering:
|
||||
|
||||
* `fix\_modify AtC control <USER/atc/man_control.html>`_
|
||||
* `fix\_modify AtC control thermal <USER/atc/man_control_thermal.html>`_
|
||||
* `fix\_modify AtC control thermal correction\_max\_iterations <USER/atc/man_control_thermal_correction_max_iterations.html>`_
|
||||
* `fix\_modify AtC control momentum <USER/atc/man_control_momentum.html>`_
|
||||
* `fix\_modify AtC control localized\_lambda <USER/atc/man_localized_lambda.html>`_
|
||||
* `fix\_modify AtC control lumped\_lambda\_solve <USER/atc/man_lumped_lambda_solve.html>`_
|
||||
* `fix\_modify AtC control mask\_direction <USER/atc/man_mask_direction.html>`_ control
|
||||
* `fix\_modify AtC filter <USER/atc/man_time_filter.html>`_
|
||||
* `fix\_modify AtC filter scale <USER/atc/man_filter_scale.html>`_
|
||||
* `fix\_modify AtC filter type <USER/atc/man_filter_type.html>`_
|
||||
* `fix\_modify AtC equilibrium\_start <USER/atc/man_equilibrium_start.html>`_
|
||||
* `fix\_modify AtC extrinsic exchange <USER/atc/man_extrinsic_exchange.html>`_
|
||||
* `fix\_modify AtC poisson\_solver <USER/atc/man_poisson_solver.html>`_
|
||||
* `fix_modify AtC control <USER/atc/man_control.html>`_
|
||||
* `fix_modify AtC control thermal <USER/atc/man_control_thermal.html>`_
|
||||
* `fix_modify AtC control thermal correction_max_iterations <USER/atc/man_control_thermal_correction_max_iterations.html>`_
|
||||
* `fix_modify AtC control momentum <USER/atc/man_control_momentum.html>`_
|
||||
* `fix_modify AtC control localized_lambda <USER/atc/man_localized_lambda.html>`_
|
||||
* `fix_modify AtC control lumped_lambda_solve <USER/atc/man_lumped_lambda_solve.html>`_
|
||||
* `fix_modify AtC control mask_direction <USER/atc/man_mask_direction.html>`_ control
|
||||
* `fix_modify AtC filter <USER/atc/man_time_filter.html>`_
|
||||
* `fix_modify AtC filter scale <USER/atc/man_filter_scale.html>`_
|
||||
* `fix_modify AtC filter type <USER/atc/man_filter_type.html>`_
|
||||
* `fix_modify AtC equilibrium_start <USER/atc/man_equilibrium_start.html>`_
|
||||
* `fix_modify AtC extrinsic exchange <USER/atc/man_extrinsic_exchange.html>`_
|
||||
* `fix_modify AtC poisson_solver <USER/atc/man_poisson_solver.html>`_
|
||||
|
||||
fix\_modify commands for output:
|
||||
*fix\_modify* commands for output:
|
||||
|
||||
* `fix\_modify AtC output <USER/atc/man_output.html>`_
|
||||
* `fix\_modify AtC output nodeset <USER/atc/man_output_nodeset.html>`_
|
||||
* `fix\_modify AtC output elementset <USER/atc/man_output_elementset.html>`_
|
||||
* `fix\_modify AtC output boundary\_integral <USER/atc/man_boundary_integral.html>`_
|
||||
* `fix\_modify AtC output contour\_integral <USER/atc/man_contour_integral.html>`_
|
||||
* `fix\_modify AtC mesh output <USER/atc/man_mesh_output.html>`_
|
||||
* `fix\_modify AtC write\_restart <USER/atc/man_write_restart.html>`_
|
||||
* `fix\_modify AtC read\_restart <USER/atc/man_read_restart.html>`_
|
||||
* `fix_modify AtC output <USER/atc/man_output.html>`_
|
||||
* `fix_modify AtC output nodeset <USER/atc/man_output_nodeset.html>`_
|
||||
* `fix_modify AtC output elementset <USER/atc/man_output_elementset.html>`_
|
||||
* `fix_modify AtC output boundary_integral <USER/atc/man_boundary_integral.html>`_
|
||||
* `fix_modify AtC output contour_integral <USER/atc/man_contour_integral.html>`_
|
||||
* `fix_modify AtC mesh output <USER/atc/man_mesh_output.html>`_
|
||||
* `fix_modify AtC write_restart <USER/atc/man_write_restart.html>`_
|
||||
* `fix_modify AtC read_restart <USER/atc/man_read_restart.html>`_
|
||||
|
||||
fix\_modify commands for post-processing:
|
||||
*fix\_modify* commands for post-processing:
|
||||
|
||||
* `fix\_modify AtC kernel <USER/atc/man_hardy_kernel.html>`_
|
||||
* `fix\_modify AtC fields <USER/atc/man_hardy_fields.html>`_
|
||||
* `fix\_modify AtC grdients <USER/atc/man_hardy_gradients.html>`_
|
||||
* `fix\_modify AtC rates <USER/atc/man_hardy_rates.html>`_
|
||||
* `fix\_modify AtC computes <USER/atc/man_hardy_computes.html>`_
|
||||
* `fix\_modify AtC on\_the\_fly <USER/atc/man_hardy_on_the_fly.html>`_
|
||||
* `fix\_modify AtC pair\_interactions/bond\_interactions <USER/atc/man_pair_interactions.html>`_
|
||||
* `fix\_modify AtC sample\_frequency <USER/atc/man_sample_frequency.html>`_
|
||||
* `fix\_modify AtC set <USER/atc/man_set.html>`_
|
||||
* `fix_modify AtC kernel <USER/atc/man_hardy_kernel.html>`_
|
||||
* `fix_modify AtC fields <USER/atc/man_hardy_fields.html>`_
|
||||
* `fix_modify AtC grdients <USER/atc/man_hardy_gradients.html>`_
|
||||
* `fix_modify AtC rates <USER/atc/man_hardy_rates.html>`_
|
||||
* `fix_modify AtC computes <USER/atc/man_hardy_computes.html>`_
|
||||
* `fix_modify AtC on_the_fly <USER/atc/man_hardy_on_the_fly.html>`_
|
||||
* `fix_modify AtC pair_interactions/bond_interactions <USER/atc/man_pair_interactions.html>`_
|
||||
* `fix_modify AtC sample_frequency <USER/atc/man_sample_frequency.html>`_
|
||||
* `fix_modify AtC set <USER/atc/man_set.html>`_
|
||||
|
||||
miscellaneous fix\_modify commands:
|
||||
miscellaneous *fix\_modify* commands:
|
||||
|
||||
* `fix\_modify AtC atom\_element\_map <USER/atc/man_atom_element_map.html>`_
|
||||
* `fix\_modify AtC atom\_weight <USER/atc/man_atom_weight.html>`_
|
||||
* `fix\_modify AtC write\_atom\_weights <USER/atc/man_write_atom_weights.html>`_
|
||||
* `fix\_modify AtC reset\_time <USER/atc/man_reset_time.html>`_
|
||||
* `fix\_modify AtC reset\_atomic\_reference\_positions <USER/atc/man_reset_atomic_reference_positions.html>`_
|
||||
* `fix\_modify AtC fe\_md\_boundary <USER/atc/man_fe_md_boundary.html>`_
|
||||
* `fix\_modify AtC boundary\_faceset <USER/atc/man_boundary_faceset.html>`_
|
||||
* `fix\_modify AtC consistent\_fe\_initialization <USER/atc/man_consistent_fe_initialization.html>`_
|
||||
* `fix\_modify AtC mass\_matrix <USER/atc/man_mass_matrix.html>`_
|
||||
* `fix\_modify AtC material <USER/atc/man_material.html>`_
|
||||
* `fix\_modify AtC atomic\_charge <USER/atc/man_atomic_charge.html>`_
|
||||
* `fix\_modify AtC source\_integration <USER/atc/man_source_integration.html>`_
|
||||
* `fix\_modify AtC temperature\_definition <USER/atc/man_temperature_definition.html>`_
|
||||
* `fix\_modify AtC track\_displacement <USER/atc/man_track_displacement.html>`_
|
||||
* `fix\_modify AtC boundary\_dynamics <USER/atc/man_boundary_dynamics.html>`_
|
||||
* `fix\_modify AtC add\_species <USER/atc/man_add_species.html>`_
|
||||
* `fix\_modify AtC add\_molecule <USER/atc/man_add_molecule.html>`_
|
||||
* `fix\_modify AtC remove\_species <USER/atc/man_remove_species.html>`_
|
||||
* `fix\_modify AtC remove\_molecule <USER/atc/man_remove_molecule.html>`_
|
||||
* `fix_modify AtC atom_element_map <USER/atc/man_atom_element_map.html>`_
|
||||
* `fix_modify AtC atom_weight <USER/atc/man_atom_weight.html>`_
|
||||
* `fix_modify AtC write_atom_weights <USER/atc/man_write_atom_weights.html>`_
|
||||
* `fix_modify AtC reset_time <USER/atc/man_reset_time.html>`_
|
||||
* `fix_modify AtC reset_atomic_reference_positions <USER/atc/man_reset_atomic_reference_positions.html>`_
|
||||
* `fix_modify AtC fe_md_boundary <USER/atc/man_fe_md_boundary.html>`_
|
||||
* `fix_modify AtC boundary_faceset <USER/atc/man_boundary_faceset.html>`_
|
||||
* `fix_modify AtC consistent_fe_initialization <USER/atc/man_consistent_fe_initialization.html>`_
|
||||
* `fix_modify AtC mass_matrix <USER/atc/man_mass_matrix.html>`_
|
||||
* `fix_modify AtC material <USER/atc/man_material.html>`_
|
||||
* `fix_modify AtC atomic_charge <USER/atc/man_atomic_charge.html>`_
|
||||
* `fix_modify AtC source_integration <USER/atc/man_source_integration.html>`_
|
||||
* `fix_modify AtC temperature_definition <USER/atc/man_temperature_definition.html>`_
|
||||
* `fix_modify AtC track_displacement <USER/atc/man_track_displacement.html>`_
|
||||
* `fix_modify AtC boundary_dynamics <USER/atc/man_boundary_dynamics.html>`_
|
||||
* `fix_modify AtC add_species <USER/atc/man_add_species.html>`_
|
||||
* `fix_modify AtC add_molecule <USER/atc/man_add_molecule.html>`_
|
||||
* `fix_modify AtC remove_species <USER/atc/man_remove_species.html>`_
|
||||
* `fix_modify AtC remove_molecule <USER/atc/man_remove_molecule.html>`_
|
||||
|
||||
Note: a set of example input files with the attendant material files are included with this package
|
||||
|
||||
|
||||
@ -390,7 +390,7 @@ the activation energy (:doc:`units <units>` of energy), and *seed* is a
|
||||
random number seed. The temperature is defined as the instantaneous
|
||||
temperature averaged over all atoms in the reaction site, and is
|
||||
calculated in the same manner as for example
|
||||
:doc:`compute\_temp\_chunk <compute_temp_chunk>`. Currently, there are no
|
||||
:doc:`compute temp/chunk <compute_temp_chunk>`. Currently, there are no
|
||||
options for additional temperature averaging or velocity-biased
|
||||
temperature calculations. A uniform random number between 0 and 1 is
|
||||
generated using *seed*\ ; if this number is less than the result of the
|
||||
|
||||
@ -89,14 +89,14 @@ in the LAMMPS frame. Only when the positions and velocities are
|
||||
updated is the system rotated to the flow frame, and it is rotated
|
||||
back to the LAMMPS frame immediately afterwards. For this reason, all
|
||||
vector-valued quantities (except for the tensors from
|
||||
:doc:`compute\_pressure/uef <compute_pressure_uef>` and
|
||||
:doc:`compute\_temp/uef <compute_temp_uef>`) will be computed in the
|
||||
:doc:`compute pressure/uef <compute_pressure_uef>` and
|
||||
:doc:`compute temp/uef <compute_temp_uef>`) will be computed in the
|
||||
LAMMPS frame. Rotationally invariant scalar quantities like the
|
||||
temperature and hydrostatic pressure are frame-invariant and will be
|
||||
computed correctly. Additionally, the system is in the LAMMPS frame
|
||||
during all of the output steps, and therefore trajectory files made
|
||||
using the dump command will be in the LAMMPS frame unless the
|
||||
:doc:`dump\_cfg/uef <dump_cfg_uef>` command is used.
|
||||
:doc:`dump cfg/uef <dump_cfg_uef>` command is used.
|
||||
|
||||
|
||||
----------
|
||||
|
||||
@ -85,7 +85,7 @@ function for the same parameters.
|
||||
|
||||
The temperature effects are accounted for by connecting the spin
|
||||
:math:`i` to a thermal bath using a Langevin thermostat (see
|
||||
:doc:`fix\_langevin\_spin <fix_langevin_spin>` for the definition of
|
||||
:doc:`fix langevin/spin <fix_langevin_spin>` for the definition of
|
||||
this thermostat).
|
||||
|
||||
Style *anisotropy* is used to simulate an easy axis or an easy plane
|
||||
|
||||
@ -83,17 +83,18 @@ close enough to touch it.
|
||||
|
||||
The nature of the wall/particle interactions are determined by the
|
||||
*fstyle* setting. It can be any of the styles defined by the
|
||||
:doc:`pair_style gran/\* <pair_gran>` or the more general `pair\_style granular <pair_granular.html">`_ commands. Currently the options are
|
||||
*hooke*\ , *hooke/history*\ , or *hertz/history* for the former, and
|
||||
*granular* with all the possible options of the associated
|
||||
:doc:`pair_style gran/\* <pair_gran>` or the more general
|
||||
:doc:`pair_style granular <pair_granular>` commands. Currently the
|
||||
options are *hooke*\ , *hooke/history*\ , or *hertz/history* for the
|
||||
former, and *granular* with all the possible options of the associated
|
||||
*pair\_coeff* command for the latter. The equation for the force
|
||||
between the wall and particles touching it is the same as the
|
||||
corresponding equation on the :doc:`pair_style gran/\* <pair_gran>` and
|
||||
:doc:`pair\_style\_granular <pair_granular>` doc pages, in the limit of
|
||||
one of the two particles going to infinite radius and mass (flat
|
||||
wall). Specifically, delta = radius - r = overlap of particle with
|
||||
wall, m\_eff = mass of particle, and the effective radius of contact =
|
||||
RiRj/Ri+Rj is set to the radius of the particle.
|
||||
:doc:`pair_style granular <pair_granular>` doc pages, in the limit of
|
||||
one of the two particles going to infinite radius and mass (flat wall).
|
||||
Specifically, delta = radius - r = overlap of particle with wall, m\_eff
|
||||
= mass of particle, and the effective radius of contact = RiRj/Ri+Rj is
|
||||
set to the radius of the particle.
|
||||
|
||||
The parameters *Kn*\ , *Kt*\ , *gamma\_n*, *gamma\_t*, *xmu* and *dampflag*
|
||||
have the same meaning and units as those specified with the
|
||||
|
||||
@ -154,15 +154,16 @@ corresponding manner.
|
||||
|
||||
The nature of the wall/particle interactions are determined by the
|
||||
*fstyle* setting. It can be any of the styles defined by the
|
||||
:doc:`pair_style gran/\* <pair_gran>` or the more general `pair\_style granular <pair_granular.html">`_ commands. Currently the options are
|
||||
*hooke*\ , *hooke/history*\ , or *hertz/history* for the former, and
|
||||
*granular* with all the possible options of the associated
|
||||
:doc:`pair_style gran/\* <pair_gran>` or the more general
|
||||
:doc:`pair_style granular <pair_granular>` commands. Currently the
|
||||
options are *hooke*\ , *hooke/history*\ , or *hertz/history* for the
|
||||
former, and *granular* with all the possible options of the associated
|
||||
*pair\_coeff* command for the latter. The equation for the force
|
||||
between the wall and particles touching it is the same as the
|
||||
corresponding equation on the :doc:`pair_style gran/\* <pair_gran>` and
|
||||
:doc:`pair\_style\_granular <pair_granular>` doc pages, but the effective
|
||||
radius is calculated using the radius of the particle and the radius
|
||||
of curvature of the wall at the contact point.
|
||||
:doc:`pair_style granular <pair_granular>` doc pages, but the effective
|
||||
radius is calculated using the radius of the particle and the radius of
|
||||
curvature of the wall at the contact point.
|
||||
|
||||
Specifically, delta = radius - r = overlap of particle with wall,
|
||||
m\_eff = mass of particle, and RiRj/Ri+Rj is the effective radius, with
|
||||
|
||||
@ -121,7 +121,7 @@ quantities.
|
||||
|
||||
The choice of a line search algorithm for the *spin/cg* and
|
||||
*spin/lbfgs* styles can be specified via the *line* keyword. The
|
||||
*spin\_cubic* and *spin\_none* only make sense when one of those two
|
||||
*spin\_cubic* and *spin\_none* keywords only make sense when one of those two
|
||||
minimization styles is declared. The *spin\_cubic* performs the line
|
||||
search based on a cubic interpolation of the energy along the search
|
||||
direction. The *spin\_none* keyword deactivates the line search
|
||||
@ -131,7 +131,7 @@ more robust if *spin\_cubic* line search is used.
|
||||
|
||||
The Newton *integrator* used for *fire* minimization can be selected
|
||||
to be either the symplectic Euler (\ *eulerimplicit*\ ) or velocity
|
||||
Verlet (\ *verlet*\ ). *tmax* define the maximum value for the
|
||||
Verlet (\ *verlet*\ ). *tmax* defines the maximum value for the
|
||||
adaptive timestep during a *fire* minimization. It is a multiplication
|
||||
factor applied to the current :doc:`timestep <timestep>` (not in time
|
||||
unit). For example, *tmax* = 4.0 with a :doc:`timestep <timestep>` of
|
||||
@ -165,7 +165,7 @@ Restrictions
|
||||
|
||||
|
||||
For magnetic GNEB calculations, only *spin\_none* value for *line*
|
||||
keyword can be used when styles *spin/cg* and *spin/lbfgs* are
|
||||
keyword can be used when minimization styles *spin/cg* and *spin/lbfgs* are
|
||||
employed. See :doc:`neb/spin <neb_spin>` for more explanation.
|
||||
|
||||
Related commands
|
||||
|
||||
@ -70,14 +70,13 @@ discretization factor *discrete\_factor*.
|
||||
By default, style *spin/cg* does not employ the line search procedure
|
||||
and uses the adaptive time-step technique in the same way as style *spin*\ .
|
||||
|
||||
Style *spin/lbfgs* defines an orthogonal spin optimization
|
||||
(OSO) combined to a limited-memory Broyden-Fletcher-Goldfarb-Shanno
|
||||
(L-BFGS) algorithm.
|
||||
By default, style *spin/lbfgs* does not employ line search procedure.
|
||||
If the line search procedure is not used then the discrete factor defines
|
||||
the maximum root mean squared rotation angle of spins by equation *pi/(5\*Kappa)*.
|
||||
The default value for Kappa is 10.
|
||||
The *spin\_cubic* line search can improve the convergence of the
|
||||
Style *spin/lbfgs* defines an orthogonal spin optimization (OSO)
|
||||
combined to a limited-memory Broyden-Fletcher-Goldfarb-Shanno (L-BFGS)
|
||||
algorithm. By default, style *spin/lbfgs* does not employ line search
|
||||
procedure. If the line search procedure is not used then the discrete
|
||||
factor defines the maximum root mean squared rotation angle of spins by
|
||||
equation *pi/(5\*Kappa)*. The default value for Kappa is 10. The
|
||||
*spin\_cubic* line search option can improve the convergence of the
|
||||
*spin/lbfgs* algorithm.
|
||||
|
||||
The :doc:`min_modify <min_modify>` command can be used to
|
||||
|
||||
@ -389,8 +389,9 @@ This command can only be used if LAMMPS was built with the SPIN
|
||||
package. See the :doc:`Build package <Build_package>` doc
|
||||
page for more info.
|
||||
|
||||
For magnetic GNEB calculations, only *spin\_none* value for *line* keyword can be used
|
||||
when styles *spin/cg* and *spin/lbfgs* are employed.
|
||||
For magnetic GNEB calculations, only the *spin\_none* value for the
|
||||
*line* keyword can be used when minimization styles *spin/cg* and
|
||||
*spin/lbfgs* are employed.
|
||||
|
||||
|
||||
----------
|
||||
|
||||
@ -133,7 +133,7 @@ cutoff distance.
|
||||
|
||||
A version of these styles with a soft core, *lj/cut/soft*\ , suitable for use in
|
||||
free energy calculations, is part of the USER-FEP package and is documented with
|
||||
the :doc:`pair\_fep\_soft <pair_fep_soft>` styles. The version with soft core is
|
||||
the :doc:`pair_style */soft <pair_fep_soft>` styles. The version with soft core is
|
||||
only available if LAMMPS was built with that package. See the :doc:`Build package <Build_package>` doc page for more info.
|
||||
|
||||
|
||||
@ -203,7 +203,7 @@ LAMMPS was built with that package. See the :doc:`Build package <Build_package>
|
||||
Related commands
|
||||
""""""""""""""""
|
||||
|
||||
:doc:`pair_coeff <pair_coeff>`, :doc:`pair\_fep\_soft <pair_fep_soft>`
|
||||
:doc:`pair_coeff <pair_coeff>`, :doc:`pair_style */soft <pair_fep_soft>`
|
||||
|
||||
**Default:** none
|
||||
|
||||
|
||||
@ -392,7 +392,7 @@ info.
|
||||
Related commands
|
||||
""""""""""""""""
|
||||
|
||||
:doc:`pair_coeff <pair_coeff>`, :doc:`pair\_style, hybrid/overlay <pair_hybrid>`, :doc:`kspace_style <kspace_style>`
|
||||
:doc:`pair_coeff <pair_coeff>`, :doc:`pair_style, hybrid/overlay <pair_hybrid>`, :doc:`kspace_style <kspace_style>`
|
||||
|
||||
**Default:** none
|
||||
|
||||
|
||||
@ -193,7 +193,7 @@ and Coulomb potentials modified by a soft core, with the functional form
|
||||
The *lj/class2/soft* style is a 9-6 potential with the exponent of the
|
||||
denominator of the first term in brackets taking the value 1.5 instead of 2
|
||||
(other details differ, see the form of the potential in
|
||||
:doc:`pair\_class2 <pair_class2>`).
|
||||
:doc:`pair_style lj/class2 <pair_class2>`).
|
||||
|
||||
Coulomb interactions can also be damped with a soft core at short distance,
|
||||
|
||||
@ -255,14 +255,14 @@ optional cutoffs.
|
||||
|
||||
Style *lj/charmm/coul/long/soft* implements a soft-core version of the modified
|
||||
12-6 LJ potential used in CHARMM and documented in the
|
||||
:doc:`pair\_lj\_charmm <pair_charmm>` style. In the soft version the parameters n,
|
||||
:doc:`pair_style lj/charmm/coul/long <pair_charmm>` style. In the soft version the parameters n,
|
||||
alpha\_LJ and alpha\_C are set in the :doc:`pair_style <pair_style>` command, before
|
||||
the global cutoffs. The activation parameter lambda is introduced as an argument
|
||||
of the :doc:`pair_coeff <pair_coeff>` command, after epsilon and sigma and
|
||||
before the optional eps14 and sigma14.
|
||||
|
||||
Style *lj/class2/soft* implements a soft-core version of the 9-6 potential in
|
||||
:doc:`pair\_class2 <pair_class2>`. In the soft version the parameters n, alpha\_LJ
|
||||
:doc:`pair_style lj/class2 <pair_class2>`. In the soft version the parameters n, alpha\_LJ
|
||||
and alpha\_C are set in the :doc:`pair_style <pair_style>` command, before the
|
||||
global cutoffs. The activation parameter lambda is introduced as an argument of
|
||||
the the :doc:`pair_coeff <pair_coeff>` command, after epsilon and sigma and before
|
||||
|
||||
@ -348,7 +348,7 @@ pair\_style command.
|
||||
|
||||
A version of these styles with a soft core, *lj/cut/soft*\ , suitable for use in
|
||||
free energy calculations, is part of the USER-FEP package and is documented with
|
||||
the :doc:`pair\_fep\_soft <pair_fep_soft>` styles. The version with soft core is
|
||||
the :doc:`pair_style */soft <pair_fep_soft>` styles. The version with soft core is
|
||||
only available if LAMMPS was built with that package. See the :doc:`Build package <Build_package>` doc page for more info.
|
||||
|
||||
|
||||
|
||||
@ -180,7 +180,7 @@ specified in the pair\_style command.
|
||||
|
||||
A version of these styles with a soft core, *lj/cut/soft*\ , suitable for use in
|
||||
free energy calculations, is part of the USER-FEP package and is documented with
|
||||
the :doc:`pair\_fep\_soft <pair_fep_soft>` styles. The version with soft core is
|
||||
the :doc:`pair_style */soft <pair_fep_soft>` styles. The version with soft core is
|
||||
only available if LAMMPS was built with that package. See the :doc:`Build package <Build_package>` doc page for more info.
|
||||
|
||||
|
||||
|
||||
@ -13,18 +13,14 @@ Syntax
|
||||
|
||||
* one or more keyword/value pairs may be listed
|
||||
* keyword = *pair* or *shift* or *mix* or *table* or *table/disp* or *tabinner*
|
||||
or *tabinner/disp* or *tail* or *compute* or *nofdotr*
|
||||
or *tabinner/disp* or *tail* or *compute* or *nofdotr* or *special* or
|
||||
*compute/tally*
|
||||
|
||||
.. parsed-literal::
|
||||
|
||||
*pair* values = sub-style N *special* which wt1 wt2 wt3
|
||||
or sub-style N *compute/tally* flag
|
||||
*pair* value = sub-style N
|
||||
sub-style = sub-style of :doc:`pair hybrid <pair_hybrid>`
|
||||
N = which instance of sub-style (only if sub-style is used multiple times)
|
||||
*special* which wt1 wt2 wt3 = override *special_bonds* settings (optional)
|
||||
which = *lj/coul* or *lj* or *coul*
|
||||
w1,w2,w3 = 1-2, 1-3, and 1-4 weights from 0.0 to 1.0 inclusive
|
||||
*compute/tally* flag = *yes* or *no*
|
||||
N = which instance of sub-style (1 to M), only specify if sub-style is used multiple times
|
||||
*mix* value = *geometric* or *arithmetic* or *sixthpower*
|
||||
*shift* value = *yes* or *no*
|
||||
*table* value = N
|
||||
@ -37,8 +33,11 @@ Syntax
|
||||
cutoff = inner cutoff at which to begin table (distance units)
|
||||
*tail* value = *yes* or *no*
|
||||
*compute* value = *yes* or *no*
|
||||
*nofdotr*
|
||||
|
||||
*nofdotr* value = none
|
||||
*special* values = which wt1 wt2 wt3
|
||||
which = *lj/coul* or *lj* or *coul*
|
||||
w1,w2,w3 = 1-2, 1-3, 1-4 weights from 0.0 to 1.0 inclusive
|
||||
*compute/tally* value = *yes* or *no*
|
||||
|
||||
|
||||
Examples
|
||||
@ -53,47 +52,41 @@ Examples
|
||||
pair_modify pair lj/cut compute no
|
||||
pair_modify pair tersoff compute/tally no
|
||||
pair_modify pair lj/cut/coul/long 1 special lj/coul 0.0 0.0 0.0
|
||||
pair_modify pair lj/cut/coul/long special lj 0.0 0.0 0.5 special coul 0.0 0.0 0.8333333
|
||||
|
||||
Description
|
||||
"""""""""""
|
||||
|
||||
Modify the parameters of the currently defined pair style. Not all
|
||||
parameters are relevant to all pair styles.
|
||||
Modify the parameters of the currently defined pair style. If the
|
||||
pair style is :doc:`hybrid or hybrid/overlay <pair_hybrid>`, then the
|
||||
specified parameters are by default modified for all the hybrid sub-styles.
|
||||
|
||||
If used, the *pair* keyword must appear first in the list of keywords.
|
||||
It can only be used with the :doc:`hybrid and hybrid/overlay <pair_hybrid>` pair styles. It means that all the
|
||||
following parameters will only be modified for the specified
|
||||
sub-style. If the sub-style is defined multiple times, then an
|
||||
additional numeric argument *N* must also be specified, which is a
|
||||
number from 1 to M where M is the number of times the sub-style was
|
||||
listed in the :doc:`pair_style hybrid <pair_hybrid>` command. The extra
|
||||
number indicates which instance of the sub-style the remaining
|
||||
keywords will be applied to. Note that if the *pair* keyword is not
|
||||
used, and the pair style is *hybrid* or *hybrid/overlay*\ , then all the
|
||||
specified keywords will be applied to all sub-styles.
|
||||
.. note::
|
||||
|
||||
The *special* and *compute/tally* keywords can **only** be used in
|
||||
conjunction with the *pair* keyword and must directly follow it.
|
||||
*special* allows to override the
|
||||
:doc:`special_bonds <special_bonds>` settings for the specified sub-style.
|
||||
*compute/tally* allows to disable or enable registering
|
||||
:doc:`compute \*/tally <compute_tally>` computes for a given sub-style.
|
||||
More details are given below.
|
||||
The behavior for hybrid pair styles can be changed by using the *pair*
|
||||
keyword, which allows selection of a specific sub-style to apply all
|
||||
remaining keywords to.
|
||||
The *special* and *compute/tally* keywords can **only** be
|
||||
used in conjunction with the *pair* keyword. See further details about
|
||||
these 3 keywords below.
|
||||
|
||||
The *mix* keyword affects pair coefficients for interactions between
|
||||
atoms of type I and J, when I != J and the coefficients are not
|
||||
explicitly set in the input script. Note that coefficients for I = J
|
||||
must be set explicitly, either in the input script via the
|
||||
"pair\_coeff" command or in the "Pair Coeffs" section of the :doc:`data file <read_data>`. For some pair styles it is not necessary to
|
||||
specify coefficients when I != J, since a "mixing" rule will create
|
||||
them from the I,I and J,J settings. The pair\_modify *mix* value
|
||||
determines what formulas are used to compute the mixed coefficients.
|
||||
In each case, the cutoff distance is mixed the same way as sigma.
|
||||
:doc:`pair_coeff <pair_coeff>` command or in the "Pair Coeffs" section of the
|
||||
:doc:`data file <read_data>`. For some pair styles it is not
|
||||
necessary to specify coefficients when I != J, since a "mixing" rule
|
||||
will create them from the I,I and J,J settings. The pair\_modify
|
||||
*mix* value determines what formulas are used to compute the mixed
|
||||
coefficients. In each case, the cutoff distance is mixed the same way
|
||||
as sigma.
|
||||
|
||||
Note that not all pair styles support mixing. Also, some mix options
|
||||
are not available for certain pair styles. See the doc page for
|
||||
individual pair styles for those restrictions. Note also that the
|
||||
:doc:`pair_coeff <pair_coeff>` command also can be to directly set
|
||||
Note that not all pair styles support mixing and some mix options
|
||||
are not available for certain pair styles. Also, there are additional
|
||||
restrictions when using :doc:`pair style hybrid or hybrid/overlay <pair_hybrid>`.
|
||||
See the doc page for individual pair styles for those restrictions. Note also that the
|
||||
:doc:`pair_coeff <pair_coeff>` command also can be used to directly set
|
||||
coefficients for a specific I != J pairing, in which case no mixing is
|
||||
performed.
|
||||
|
||||
@ -135,10 +128,11 @@ see the doc page for individual styles to see which potentials support
|
||||
these options. If N is non-zero, a table of length 2\^N is
|
||||
pre-computed for forces and energies, which can shrink their
|
||||
computational cost by up to a factor of 2. The table is indexed via a
|
||||
bit-mapping technique :ref:`(Wolff) <Wolff1>` and a linear interpolation is
|
||||
performed between adjacent table values. In our experiments with
|
||||
different table styles (lookup, linear, spline), this method typically
|
||||
gave the best performance in terms of speed and accuracy.
|
||||
bit-mapping technique :ref:`(Wolff) <Wolff1>` and a linear
|
||||
interpolation is performed between adjacent table values. In our
|
||||
experiments with different table styles (lookup, linear, spline), this
|
||||
method typically gave the best performance in terms of speed and
|
||||
accuracy.
|
||||
|
||||
The choice of table length is a tradeoff in accuracy versus speed. A
|
||||
larger N yields more accurate force computations, but requires more
|
||||
@ -162,27 +156,28 @@ pairwise interactions are computed via table lookup for simulations
|
||||
with "real" units, but some close pairs may be computed directly
|
||||
(non-table) for simulations with "lj" units.
|
||||
|
||||
When the *tail* keyword is set to *yes*\ , certain pair styles will add
|
||||
a long-range VanderWaals tail "correction" to the energy and pressure.
|
||||
These corrections are bookkeeping terms which do not affect dynamics,
|
||||
unless a constant-pressure simulation is being performed. See the doc
|
||||
page for individual styles to see which support this option. These
|
||||
corrections are included in the calculation and printing of
|
||||
thermodynamic quantities (see the :doc:`thermo_style <thermo_style>`
|
||||
command). Their effect will also be included in constant NPT or NPH
|
||||
simulations where the pressure influences the simulation box
|
||||
dimensions (e.g. the :doc:`fix npt <fix_nh>` and :doc:`fix nph <fix_nh>`
|
||||
commands). The formulas used for the long-range corrections come from
|
||||
equation 5 of :ref:`(Sun) <Sun>`.
|
||||
When the *tail* keyword is set to *yes*\ , certain pair styles will
|
||||
add a long-range VanderWaals tail "correction" to the energy and
|
||||
pressure. These corrections are bookkeeping terms which do not affect
|
||||
dynamics, unless a constant-pressure simulation is being performed.
|
||||
See the doc page for individual styles to see which support this
|
||||
option. These corrections are included in the calculation and
|
||||
printing of thermodynamic quantities (see the :doc:`thermo_style
|
||||
<thermo_style>` command). Their effect will also be included in
|
||||
constant NPT or NPH simulations where the pressure influences the
|
||||
simulation box dimensions (e.g. the :doc:`fix npt <fix_nh>` and
|
||||
:doc:`fix nph <fix_nh>` commands). The formulas used for the
|
||||
long-range corrections come from equation 5 of :ref:`(Sun) <Sun>`.
|
||||
|
||||
.. note::
|
||||
|
||||
The tail correction terms are computed at the beginning of each
|
||||
run, using the current atom counts of each atom type. If atoms are
|
||||
deleted (or lost) or created during a simulation, e.g. via the :doc:`fix gcmc <fix_gcmc>` command, the correction factors are not
|
||||
re-computed. If you expect the counts to change dramatically, you can
|
||||
break a run into a series of shorter runs so that the correction
|
||||
factors are re-computed more frequently.
|
||||
deleted (or lost) or created during a simulation, e.g. via the
|
||||
:doc:`fix gcmc <fix_gcmc>` command, the correction factors are not
|
||||
re-computed. If you expect the counts to change dramatically, you
|
||||
can break a run into a series of shorter runs so that the
|
||||
correction factors are re-computed more frequently.
|
||||
|
||||
Several additional assumptions are inherent in using tail corrections,
|
||||
including the following:
|
||||
@ -191,26 +186,27 @@ including the following:
|
||||
should not be used for systems that are non-liquid, 2d, have a slab
|
||||
geometry (only 2d periodic), or inhomogeneous.
|
||||
* G(r), the radial distribution function (rdf), is unity beyond the
|
||||
cutoff, so a fairly large cutoff should be used (i.e. 2.5 sigma for an
|
||||
LJ fluid), and it is probably a good idea to verify this assumption by
|
||||
checking the rdf. The rdf is not exactly unity beyond the cutoff for
|
||||
each pair of interaction types, so the tail correction is necessarily
|
||||
an approximation.
|
||||
cutoff, so a fairly large cutoff should be used (i.e. 2.5 sigma for
|
||||
an LJ fluid), and it is probably a good idea to verify this
|
||||
assumption by checking the rdf. The rdf is not exactly unity beyond
|
||||
the cutoff for each pair of interaction types, so the tail
|
||||
correction is necessarily an approximation.
|
||||
|
||||
The tail corrections are computed at the beginning of each simulation
|
||||
run. If the number of atoms changes during the run, e.g. due to atoms
|
||||
leaving the simulation domain, or use of the :doc:`fix gcmc <fix_gcmc>`
|
||||
command, then the corrections are not updated to reflect the changed
|
||||
atom count. If this is a large effect in your simulation, you should
|
||||
break the long run into several short runs, so that the correction
|
||||
factors are re-computed multiple times.
|
||||
The tail corrections are computed at the beginning of each
|
||||
simulation run. If the number of atoms changes during the run,
|
||||
e.g. due to atoms leaving the simulation domain, or use of the
|
||||
:doc:`fix gcmc <fix_gcmc>` command, then the corrections are not
|
||||
updated to reflect the changed atom count. If this is a large
|
||||
effect in your simulation, you should break the long run into
|
||||
several short runs, so that the correction factors are re-computed
|
||||
multiple times.
|
||||
|
||||
* Thermophysical properties obtained from calculations with this option
|
||||
enabled will not be thermodynamically consistent with the truncated
|
||||
force-field that was used. In other words, atoms do not feel any LJ
|
||||
pair interactions beyond the cutoff, but the energy and pressure
|
||||
reported by the simulation include an estimated contribution from
|
||||
those interactions.
|
||||
* Thermophysical properties obtained from calculations with this
|
||||
option enabled will not be thermodynamically consistent with the
|
||||
truncated force-field that was used. In other words, atoms do not
|
||||
feel any LJ pair interactions beyond the cutoff, but the energy and
|
||||
pressure reported by the simulation include an estimated
|
||||
contribution from those interactions.
|
||||
|
||||
|
||||
The *compute* keyword allows pairwise computations to be turned off,
|
||||
@ -225,53 +221,73 @@ a simulation with :doc:`pair_style hybrid <pair_hybrid>` with only a
|
||||
subset of the hybrid sub-styles enabled. Second, this option allows
|
||||
you to perform a simulation with only long-range interactions but no
|
||||
short-range pairwise interactions. Doing this by simply not defining
|
||||
a pair style will not work, because the
|
||||
:doc:`kspace_style <kspace_style>` command requires a Kspace-compatible
|
||||
pair style be defined.
|
||||
a pair style will not work, because the :doc:`kspace_style
|
||||
<kspace_style>` command requires a Kspace-compatible pair style be
|
||||
defined.
|
||||
|
||||
The *nofdotr* keyword allows to disable an optimization that computes
|
||||
the global stress tensor from the total forces and atom positions rather
|
||||
than from summing forces between individual pairs of atoms.
|
||||
the global stress tensor from the total forces and atom positions
|
||||
rather than from summing forces between individual pairs of atoms.
|
||||
|
||||
|
||||
----------
|
||||
|
||||
The *pair* keyword can only be used with the :doc:`hybrid and
|
||||
hybrid/overlay <pair_hybrid>` pair styles. If used, it must appear
|
||||
first in the list of keywords.
|
||||
|
||||
The *special* keyword allows to override the 1-2, 1-3, and 1-4
|
||||
exclusion settings for individual sub-styles of a
|
||||
:doc:`hybrid pair style <pair_hybrid>`. It requires 4 arguments similar
|
||||
to the :doc:`special_bonds <special_bonds>` command, *which* and
|
||||
wt1,wt2,wt3. The *which* argument can be *lj* to change the
|
||||
Lennard-Jones settings, *coul* to change the Coulombic settings,
|
||||
or *lj/coul* to change both to the same set of 3 values. The wt1,wt2,wt3
|
||||
values are numeric weights from 0.0 to 1.0 inclusive, for the 1-2,
|
||||
1-3, and 1-4 bond topology neighbors, respectively. The *special*
|
||||
keyword can only be used in conjunction with the *pair* keyword
|
||||
and has to directly follow it. This option is not compatible with
|
||||
pair styles from the GPU or the USER-INTEL package and attempting
|
||||
it will cause an error.
|
||||
Its meaning is that all the following parameters will only be modified
|
||||
for the specified sub-style. If the sub-style is defined multiple
|
||||
times, then an additional numeric argument *N* must also be specified,
|
||||
which is a number from 1 to M where M is the number of times the
|
||||
sub-style was listed in the :doc:`pair_style hybrid <pair_hybrid>`
|
||||
command. The extra number indicates which instance of the sub-style
|
||||
the remaining keywords will be applied to.
|
||||
|
||||
The *special* and *compute/tally* keywords can **only** be used in
|
||||
conjunction with the *pair* keyword and they must directly follow it.
|
||||
I.e. any other keyword, must appear after *pair*, *special*, and
|
||||
*compute/tally*.
|
||||
|
||||
The *special* keyword overrides the global :doc:`special_bonds <special_bonds>`
|
||||
1-2, 1-3, 1-4 exclusion settings (weights) for the sub-style selected
|
||||
by the *pair* keyword.
|
||||
|
||||
Similar to the :doc:`special_bonds <special_bonds>` command, it takes
|
||||
4 arguments. The *which* argument can be *lj* to change only the
|
||||
non-Coulomb weights (e.g. Lennard-Jones or Buckingham), *coul* to change
|
||||
only the Coulombic settings, or *lj/coul* to change both to the same
|
||||
values. The *wt1,wt2,wt3* values are numeric weights from 0.0 to 1.0
|
||||
inclusive, for the 1-2, 1-3, and 1-4 bond topology neighbors, respectively.
|
||||
The *special* keyword can be used multiple times, e.g. to set the *lj*
|
||||
and *coul* settings to different values.
|
||||
|
||||
.. note::
|
||||
|
||||
The global settings specified by the
|
||||
:doc:`special_bonds <special_bonds>` command affect the construction of
|
||||
neighbor lists. Weights of 0.0 (for 1-2, 1-3, or 1-4 neighbors)
|
||||
exclude those pairs from the neighbor list entirely. Weights of 1.0
|
||||
store the neighbor with no weighting applied. Thus only global values
|
||||
different from exactly 0.0 or 1.0 can be overridden and an error is
|
||||
generated if the requested setting is not compatible with the global
|
||||
setting. Substituting 1.0e-10 for 0.0 and 0.9999999999 for 1.0 is
|
||||
usually a sufficient workaround in this case without causing a
|
||||
significant error.
|
||||
|
||||
The *compute/tally* keyword takes exactly 1 argument (\ *no* or *yes*\ ),
|
||||
and allows to selectively disable or enable processing of the various
|
||||
:doc:`compute \*/tally <compute_tally>` styles for a given
|
||||
:doc:`pair hybrid or hybrid/overlay <pair_hybrid>` sub-style.
|
||||
The *special* keyword is not compatible with pair styles from the
|
||||
GPU or the USER-INTEL package and attempting to use it will cause
|
||||
an error.
|
||||
|
||||
.. note::
|
||||
|
||||
Any "pair\_modify pair compute/tally" command must be issued
|
||||
Weights of exactly 0.0 or 1.0 in the :doc:`special_bonds <special_bonds>`
|
||||
command have implications on the neighbor list construction, which
|
||||
means that they cannot be overridden by using the *special* keyword.
|
||||
One workaround for this restriction is to use the :doc:`special_bonds <special_bonds>`
|
||||
command with weights like 1.0e-10 or 0.999999999 instead of 0.0 or 1.0,
|
||||
respectively, which enables to reset each them to any value between 0.0
|
||||
and 1.0 inclusively. Otherwise you can set **all** global weights to
|
||||
an arbitrary number between 0.0 or 1.0, like 0.5, and then you have
|
||||
to override **all** *special* settings for **all** sub-styles which use
|
||||
the 1-2, 1-3, and 1-4 exclusion weights in their force/energy computation.
|
||||
|
||||
The *compute/tally* keyword disables or enables registering :doc:`compute
|
||||
\*/tally <compute_tally>` computes for the sub-style specified by
|
||||
the *pair* keyword. Use *no* to disable, or *yes* to enable.
|
||||
|
||||
.. note::
|
||||
|
||||
The "pair_modify pair compute/tally" command must be issued
|
||||
**before** the corresponding compute style is defined.
|
||||
|
||||
|
||||
@ -290,7 +306,7 @@ Related commands
|
||||
""""""""""""""""
|
||||
|
||||
:doc:`pair_style <pair_style>`, :doc:`pair_style hybrid <pair_hybrid>`,
|
||||
pair\_coeff"_pair\_coeff.html, :doc:`thermo_style <thermo_style>`,
|
||||
:doc:`pair_coeff <pair_coeff>`, :doc:`thermo_style <thermo_style>`,
|
||||
:doc:`compute \*/tally <compute_tally>`
|
||||
|
||||
Default
|
||||
|
||||
@ -95,7 +95,7 @@ the *morse* and *morse/smooth/linear* styles.
|
||||
|
||||
A version of the *morse* style with a soft core, *morse/soft*\ , suitable for use in
|
||||
free energy calculations, is part of the USER-FEP package and is documented with
|
||||
the :doc:`pair\_fep\_soft <pair_fep_soft>` styles. The version with soft core is only
|
||||
the :doc:`pair_style */soft <pair_fep_soft>` styles. The version with soft core is only
|
||||
available if LAMMPS was built with that package. See the :doc:`Build package <Build_package>` doc page for more info.
|
||||
|
||||
|
||||
@ -160,7 +160,7 @@ built with the USER-MISC package. See the :doc:`Build package <Build_package>`
|
||||
Related commands
|
||||
""""""""""""""""
|
||||
|
||||
:doc:`pair_coeff <pair_coeff>`, :doc:`pair\_fep\_soft <pair_fep_soft>`
|
||||
:doc:`pair_coeff <pair_coeff>`, :doc:`pair_style */soft <pair_fep_soft>`
|
||||
|
||||
**Default:** none
|
||||
|
||||
|
||||
@ -55,7 +55,7 @@ in :ref:`(Tranchida) <Tranchida3>`.
|
||||
|
||||
From this exchange interaction, each spin :math:`i` will be submitted
|
||||
to a magnetic torque :math:`\vec{\omega}`, and its associated atom can be submitted to a
|
||||
force :math:`\vec{F}` for spin-lattice calculations (see :doc:`fix\_nve\_spin <fix_nve_spin>`),
|
||||
force :math:`\vec{F}` for spin-lattice calculations (see :doc:`fix nve/spin <fix_nve_spin>`),
|
||||
such as:
|
||||
|
||||
.. math::
|
||||
|
||||
@ -41,7 +41,7 @@ direction of a screened dielectric atomic polarization (in eV).
|
||||
|
||||
From this magneto-electric interaction, each spin i will be submitted
|
||||
to a magnetic torque omega, and its associated atom can be submitted to a
|
||||
force F for spin-lattice calculations (see :doc:`fix\_nve\_spin <fix_nve_spin>`),
|
||||
force F for spin-lattice calculations (see :doc:`fix nve/spin <fix_nve_spin>`),
|
||||
such as:
|
||||
|
||||
.. image:: Eqs/pair_spin_me_forces.jpg
|
||||
@ -68,7 +68,7 @@ Related commands
|
||||
""""""""""""""""
|
||||
|
||||
:doc:`atom_style spin <atom_style>`, :doc:`pair_coeff <pair_coeff>`,
|
||||
:doc:`pair\_spin\_exchange <pair_spin_exchange>`, :doc:`pair_eam <pair_eam>`,
|
||||
:doc:`pair_style spin/exchange <pair_spin_exchange>`, :doc:`pair_eam <pair_eam>`,
|
||||
|
||||
**Default:** none
|
||||
|
||||
|
||||
@ -53,7 +53,7 @@ describes how to use the :doc:`thermalized Drude oscillator model <Howto_drude>`
|
||||
discussed on the :doc:`Howto polarizable <Howto_polarizable>` doc page.
|
||||
|
||||
The *thole* pair style should be used as a sub-style within in the
|
||||
:doc:`pair\_hybrid/overlay <pair_hybrid>` command, in conjunction with a
|
||||
:doc:`pair_style hybrid/overlay <pair_hybrid>` command, in conjunction with a
|
||||
main pair style including Coulomb interactions, i.e. any pair style
|
||||
containing *coul/cut* or *coul/long* in its style name.
|
||||
|
||||
|
||||
@ -115,13 +115,13 @@ However if you specify a series of dump files in an incorrect order
|
||||
(with respect to the timesteps they contain), you may skip large
|
||||
numbers of snapshots
|
||||
|
||||
Note that the dump files specified as part of the *dump* keyword can
|
||||
be parallel files, i.e. written as multiple files either per processor
|
||||
Note that the dump files specified as part of the *dump* keyword can be
|
||||
parallel files, i.e. written as multiple files either per processor
|
||||
and/or per snapshot. If that is the case they will also be read in
|
||||
parallel which can make the rerun command operate dramatically faster
|
||||
for large systems. See the doc page for the `read\_dump <read_dump>`_ and
|
||||
:doc:`dump <dump>` commands which describe how to read and write
|
||||
parallel dump files.
|
||||
for large systems. See the doc page for the :doc:`read_dump
|
||||
<read_dump>` and :doc:`dump <dump>` commands which describe how to read
|
||||
and write parallel dump files.
|
||||
|
||||
The *first*\ , *last*\ , *every*\ , *skip* keywords determine which
|
||||
snapshots are read from the dump file(s). Snapshots are skipped until
|
||||
|
||||
@ -359,9 +359,9 @@ particles must be ellipsoids as defined by the :doc:`atom_style ellipsoid <atom_
|
||||
of the particles is set to the 3 specified components.
|
||||
|
||||
Keyword *omega* sets the angular velocity of selected atoms. The
|
||||
particles must be spheres as defined by the "atom\_style sphere"_
|
||||
atom\_style.html command. The angular velocity vector of the particles
|
||||
is set to the 3 specified components.
|
||||
particles must be spheres as defined by the
|
||||
:doc:`atom_style sphere <atom_style>` command. The angular velocity
|
||||
vector of the particles is set to the 3 specified components.
|
||||
|
||||
Keyword *mass* sets the mass of all selected particles. The particles
|
||||
must have a per-atom mass attribute, as defined by the
|
||||
|
||||
@ -14,7 +14,7 @@ Syntax
|
||||
* N = total # of timesteps to run
|
||||
* M = attempt a tempering swap every this many steps
|
||||
* lambda = initial lambda for this ensemble
|
||||
* fix-ID = ID of fix\_grem
|
||||
* fix-ID = ID of *fix grem*
|
||||
* thermostat-ID = ID of the thermostat that controls kinetic temperature
|
||||
* seed1 = random # seed used to decide on adjacent temperature to partner with
|
||||
* seed2 = random # seed for Boltzmann factor in Metropolis swap
|
||||
|
||||
@ -221,7 +221,7 @@ void BondOxdnaFene::compute(int eflag, int vflag)
|
||||
TAGINT_FORMAT " " TAGINT_FORMAT " %g",
|
||||
update->ntimestep,atom->tag[a],atom->tag[b],r);
|
||||
error->warning(FLERR,str,0);
|
||||
if (rlogarg <= -3.0) error->one(FLERR,"Bad FENE bond");
|
||||
if (rlogarg <= -8.0) error->one(FLERR,"Bad FENE bond");
|
||||
}
|
||||
|
||||
fbond = -k[type]*rr0/rlogarg/Deltasq/r;
|
||||
@ -421,7 +421,7 @@ double BondOxdnaFene::single(int type, double rsq, int /*i*/, int /*j*/,
|
||||
sprintf(str,"FENE bond too long: " BIGINT_FORMAT " %g",
|
||||
update->ntimestep,sqrt(rsq));
|
||||
error->warning(FLERR,str,0);
|
||||
if (rlogarg <= -3.0) error->one(FLERR,"Bad FENE bond");
|
||||
if (rlogarg <= -8.0) error->one(FLERR,"Bad FENE bond");
|
||||
}
|
||||
|
||||
double eng = -0.5 * k[type]*log(rlogarg);
|
||||
|
||||
@ -286,7 +286,7 @@ void KSpace::qsum_qsq(int warning_flag)
|
||||
double qsum_local(0.0), qsqsum_local(0.0);
|
||||
|
||||
#if defined(_OPENMP)
|
||||
#pragma omp parallel for default(none) reduction(+:qsum_local,qsqsum_local)
|
||||
#pragma omp parallel for default(shared) reduction(+:qsum_local,qsqsum_local)
|
||||
#endif
|
||||
for (int i = 0; i < nlocal; i++) {
|
||||
qsum_local += q[i];
|
||||
|
||||
@ -402,13 +402,6 @@ void Neighbor::init()
|
||||
}
|
||||
}
|
||||
|
||||
// maxwt = max multiplicative factor on atom indices stored in neigh list
|
||||
|
||||
maxwt = 0;
|
||||
if (special_flag[1] == 2) maxwt = 2;
|
||||
if (special_flag[2] == 2) maxwt = 3;
|
||||
if (special_flag[3] == 2) maxwt = 4;
|
||||
|
||||
// ------------------------------------------------------------------
|
||||
// xhold array
|
||||
|
||||
|
||||
@ -166,7 +166,6 @@ class Neighbor : protected Pointers {
|
||||
|
||||
int maxatom; // max size of atom-based NeighList arrays
|
||||
int maxrequest; // max size of NeighRequest list
|
||||
int maxwt; // max weighting factor applied + 1
|
||||
|
||||
// info for other Neigh classes: NBin,NStencil,NPair,NTopo
|
||||
|
||||
|
||||
@ -859,14 +859,17 @@ void PairHybrid::modify_params(int narg, char **arg)
|
||||
iarg = 3;
|
||||
}
|
||||
|
||||
// if 2nd keyword (after pair) is special:
|
||||
// invoke modify_special() for the sub-style
|
||||
// keywords "special" and "compute/tally" have to be listed directly
|
||||
// after "pair" but can be given multiple times
|
||||
|
||||
again:
|
||||
|
||||
if (iarg < narg && strcmp(arg[iarg],"special") == 0) {
|
||||
if (narg < iarg+5)
|
||||
error->all(FLERR,"Illegal pair_modify special command");
|
||||
modify_special(m,narg-iarg,&arg[iarg+1]);
|
||||
iarg += 5;
|
||||
goto again;
|
||||
}
|
||||
|
||||
// if 2nd keyword (after pair) is compute/tally:
|
||||
@ -881,11 +884,13 @@ void PairHybrid::modify_params(int narg, char **arg)
|
||||
compute_tally[m] = 0;
|
||||
} else error->all(FLERR,"Illegal pair_modify compute/tally command");
|
||||
iarg += 2;
|
||||
goto again;
|
||||
}
|
||||
|
||||
// apply the remaining keywords to the base pair style itself and the
|
||||
// sub-style except for "pair" and "special".
|
||||
// the former is important for some keywords like "tail" or "compute"
|
||||
// apply the remaining keywords to the base pair style itself and
|
||||
// the sub-style except for "pair" and "special" or "compute/tally"
|
||||
// and their arguments. the former is important for some keywords
|
||||
// like "tail" or "compute"
|
||||
|
||||
if (narg-iarg > 0) {
|
||||
Pair::modify_params(narg-iarg,&arg[iarg]);
|
||||
|
||||
@ -183,7 +183,7 @@ void RanMars::select_subset(bigint ntarget, int nmine, int *mark, int *next)
|
||||
int mode,index,oldindex,newvalue,nflip,which,niter;
|
||||
int active[2],first[2],last[2];
|
||||
int newactive[2],newfirst[2],newlast[2];
|
||||
bigint nmark,nactive,nactiveall,nflipall,bnflip;
|
||||
bigint nmark,nflipall;
|
||||
bigint activeall[2],bsum[3],bsumall[3];
|
||||
double thresh;
|
||||
|
||||
@ -210,15 +210,12 @@ void RanMars::select_subset(bigint ntarget, int nmine, int *mark, int *next)
|
||||
|
||||
// choose to ADD or SUBTRACT from current nmark
|
||||
// thresh = desired flips / size of active set
|
||||
// nactive = size of current active set, only for debug output below
|
||||
|
||||
if (ntarget-nmark > 0) {
|
||||
mode = ADD;
|
||||
// nactive = active[mode];
|
||||
thresh = 1.0 * (ntarget-nmark) / activeall[mode];
|
||||
} else {
|
||||
mode = SUBTRACT;
|
||||
// nactive = active[mode];
|
||||
thresh = 1.0 * (nmark-ntarget) / activeall[mode];
|
||||
}
|
||||
|
||||
@ -278,12 +275,10 @@ void RanMars::select_subset(bigint ntarget, int nmine, int *mark, int *next)
|
||||
bsum[0] = nflip;
|
||||
bsum[1] = active[0];
|
||||
bsum[2] = active[1];
|
||||
bsum[3] = nactive;
|
||||
MPI_Allreduce(&bsum,&bsumall,4,MPI_LMP_BIGINT,MPI_SUM,world);
|
||||
MPI_Allreduce(&bsum,&bsumall,3,MPI_LMP_BIGINT,MPI_SUM,world);
|
||||
nflipall = bsumall[0];
|
||||
activeall[0] = bsumall[1];
|
||||
activeall[1] = bsumall[2];
|
||||
nactiveall = bsumall[3];
|
||||
|
||||
if (mode == ADD) nmark += nflipall;
|
||||
else if (mode == SUBTRACT) nmark -= nflipall;
|
||||
|
||||
Reference in New Issue
Block a user