reformat recently changed paragraphs in the manual

This commit is contained in:
Axel Kohlmeyer
2018-12-07 10:38:01 -05:00
parent 4f00984bbc
commit 57204a0f66
2 changed files with 62 additions and 59 deletions

View File

@ -735,66 +735,69 @@ from LAMMPS using the generic "plumed installation instructions"_plumedinstall.
:link(plumedinstall,http://plumed.github.io/doc-master/user-doc/html/_installation.html) :link(plumedinstall,http://plumed.github.io/doc-master/user-doc/html/_installation.html)
PLUMED can be linked into MD codes in three different modes: static, PLUMED can be linked into MD codes in three different modes: static,
shared, and runtime. With the "static" mode, all the code that PLUMED requires shared, and runtime. With the "static" mode, all the code that PLUMED
is linked statically into LAMMPS. LAMMPS is then fully requires is linked statically into LAMMPS. LAMMPS is then fully
independent from the PLUMED installation, but you have to independent from the PLUMED installation, but you have to rebuild/relink
rebuild/relink it in order to update the PLUMED code inside it. With it in order to update the PLUMED code inside it. With the "shared"
the "shared" linkage mode, LAMMPS is linked to a shared library linkage mode, LAMMPS is linked to a shared library that contains the
that contains the PLUMED code. This library should preferably be installed in a PLUMED code. This library should preferably be installed in a globally
globally accessible location. When PLUMED is linked in this way the same library accessible location. When PLUMED is linked in this way the same library
can be used by multiple MD packages. Furthermore, the PLUMED library LAMMPS uses can be updated can be used by multiple MD packages. Furthermore, the PLUMED library
without the need for a recompile of LAMMPS for as LAMMPS uses can be updated without the need for a recompile of LAMMPS
long as the shared PLUMED library is ABI-compatible. for as long as the shared PLUMED library is ABI-compatible.
The third linkage The third linkage mode is "runtime" which allows the user to specify
mode is "runtime" which allows the user to specify which PLUMED kernel should be used at runtime which PLUMED kernel should be used at runtime by using the PLUMED_KERNEL
by using the PLUMED_KERNEL environment environment variable. This variable should point to the location of the
variable. This variable should point to the location of the libplumedKernel.so libplumedKernel.so dynamical shared object, which is then loaded at
dynamical shared object, which is then loaded at runtime. This mode of linking is runtime. This mode of linking is particularly convenient for doing
particularly convenient for doing PLUMED development and comparing PLUMED development and comparing multiple PLUMED versions as these sorts
multiple PLUMED versions as these sorts of comparisons can be done without recompiling the hosting MD of comparisons can be done without recompiling the hosting MD code. All
code. All three linkage modes are supported by LAMMPS on selected three linkage modes are supported by LAMMPS on selected operating
operating systems (e.g. Linux) and using either CMake or traditional systems (e.g. Linux) and using either CMake or traditional make
make build. The "static" mode should be the most portable, while the "runtime" build. The "static" mode should be the most portable, while the
mode support in LAMMPS makes the most assumptions about operating "runtime" mode support in LAMMPS makes the most assumptions about
system and compiler environment. If one mode does not work, try a operating system and compiler environment. If one mode does not work,
different one, switch to a different build system, consider try a different one, switch to a different build system, consider a
a global PLUMED installation or consider downloading PLUMED during the LAMMPS build. global PLUMED installation or consider downloading PLUMED during the
LAMMPS build.
[CMake build]: [CMake build]:
When the "-D PKG_USER-PLUMED" flag is included in the cmake command you must ensure that When the "-D PKG_USER-PLUMED" flag is included in the cmake command you
GSL is installed in locations that are specified in your environment. There must ensure that GSL is installed in locations that are specified in
are then two additional commands that control the manner in which PLUMED is obtained and linked your environment. There are then two additional commands that control
into LAMMPS. the manner in which PLUMED is obtained and linked into LAMMPS.
-D DOWNLOAD_PLUMED=value # download PLUMED for build, value = no (default) or yes -D DOWNLOAD_PLUMED=value # download PLUMED for build, value = no (default) or yes
-D PLUMED_MODE=value # Linkage mode for PLUMED, value = static (default), shared, or runtime :pre -D PLUMED_MODE=value # Linkage mode for PLUMED, value = static (default), shared, or runtime :pre
If DOWNLOAD_PLUMED is set to "yes", the PLUMED library will be If DOWNLOAD_PLUMED is set to "yes", the PLUMED library will be
downloaded (the version of PLUMED that will be downloaded is hard-coded to a vetted version of downloaded (the version of PLUMED that will be downloaded is hard-coded
PLUMED, usually a recent stable release version) and built inside the to a vetted version of PLUMED, usually a recent stable release version)
CMake build directory. If DOWNLOAD_PLUMED is set to "no" (the default), and built inside the CMake build directory. If DOWNLOAD_PLUMED is set
CMake will try to detect and link to an installed version of PLUMED. to "no" (the default), CMake will try to detect and link to an installed
For this to work, the PLUMED library has to be installed into a version of PLUMED. For this to work, the PLUMED library has to be
location where the pkg-config tool can find it or the PKG_CONFIG_PATH installed into a location where the pkg-config tool can find it or the
environment variable has to be set up accordingly. PLUMED should be installed PKG_CONFIG_PATH environment variable has to be set up accordingly.
in such a location if you compile it using the default make; make install commands. PLUMED should be installed in such a location if you compile it using
the default make; make install commands.
The PLUMED_MODE setting determines the linkage mode for the PLUMED The PLUMED_MODE setting determines the linkage mode for the PLUMED
library. The allowed values for this flag are "static" (default), "shared", or "runtime". library. The allowed values for this flag are "static" (default),
For a discussion of PLUMED linkage modes, please see above. When "shared", or "runtime". For a discussion of PLUMED linkage modes,
DOWNLOAD_PLUMED is enabled the static linkage mode is recommended. please see above. When DOWNLOAD_PLUMED is enabled the static linkage
mode is recommended.
[Traditional make]: [Traditional make]:
PLUMED needs to be installed before the USER-PLUMED package is installed PLUMED needs to be installed before the USER-PLUMED package is installed
so that LAMMPS can find the right settings when compiling and linking the LAMMPS executable. so that LAMMPS can find the right settings when compiling and linking
You can either download and build PLUMED inside the LAMMPS plumed library folder or use the LAMMPS executable. You can either download and build PLUMED inside
a previously installed PLUMED library and point LAMMPS to its the LAMMPS plumed library folder or use a previously installed PLUMED
location. You also have to choose the linkage mode: "static" (default), library and point LAMMPS to its location. You also have to choose the
"shared" or "runtime". For a discussion of PLUMED linkage modes, please linkage mode: "static" (default), "shared" or "runtime". For a
see above. discussion of PLUMED linkage modes, please see above.
Download/compilation/configuration of the plumed library can be done Download/compilation/configuration of the plumed library can be done
from the src folder through the following make args: from the src folder through the following make args:
@ -808,10 +811,10 @@ make lib-plumed args="-p /usr/local -m shared" # use existing PLUMED installati
Note that 2 symbolic (soft) links, "includelink" and "liblink" are Note that 2 symbolic (soft) links, "includelink" and "liblink" are
created in lib/plumed that point to the location of the PLUMED build to created in lib/plumed that point to the location of the PLUMED build to
use. A new file lib/plumed/Makefile.lammps is also created with use. A new file lib/plumed/Makefile.lammps is also created with settings
settings suitable for LAMMPS to compile and link PLUMED using the desired suitable for LAMMPS to compile and link PLUMED using the desired linkage
linkage mode. After this step is completed, you can install the mode. After this step is completed, you can install the USER-PLUMED
USER-PLUMED package and compile LAMMPS in the usual manner: package and compile LAMMPS in the usual manner:
make yes-user-plumed make yes-user-plumed
make machine :pre make machine :pre

View File

@ -32,11 +32,10 @@ enhance the sampling of phase space.
The documentation included here only describes the fix plumed command The documentation included here only describes the fix plumed command
itself. This command is LAMMPS specific, whereas most of the itself. This command is LAMMPS specific, whereas most of the
functionality implemented in PLUMED will work with a range of functionality implemented in PLUMED will work with a range of MD codes,
MD codes, and when PLUMED is used as a stand alone code for analysis. and when PLUMED is used as a stand alone code for analysis. The full
The full "documentation for PLUMED"_plumeddocs is available online and "documentation for PLUMED"_plumeddocs is available online and included
included in the PLUMED source code. The PLUMED library development is in the PLUMED source code. The PLUMED library development is hosted at
hosted at
"https://github.com/plumed/plumed2"_https://github.com/plumed/plumed2 "https://github.com/plumed/plumed2"_https://github.com/plumed/plumed2
A detailed discussion of the code can be found in "(PLUMED)"_#PLUMED. A detailed discussion of the code can be found in "(PLUMED)"_#PLUMED.
@ -54,11 +53,12 @@ have been set.
The {group-ID} entry is ignored. LAMMPS will always pass all the atoms The {group-ID} entry is ignored. LAMMPS will always pass all the atoms
to PLUMED and there can only be one instance of the plumed fix at a to PLUMED and there can only be one instance of the plumed fix at a
time. The way the plumed fix is implemented ensures that the minimum amount of information time. The way the plumed fix is implemented ensures that the minimum
required is communicated. Furthermore, PLUMED supports multiple, completely independent amount of information required is communicated. Furthermore, PLUMED
collective variables, multiple independent biases and multiple supports multiple, completely independent collective variables, multiple
independent forms of analysis. There is thus really no restriction in independent biases and multiple independent forms of analysis. There is
functionality by only allowing only one plumed fix in the LAMMPS input. thus really no restriction in functionality by only allowing only one
plumed fix in the LAMMPS input.
The {plumedfile} keyword allows the user to specify the name of the The {plumedfile} keyword allows the user to specify the name of the
PLUMED input file. Instructions as to what should be included in a PLUMED input file. Instructions as to what should be included in a