Commit fcdcdb32 authored by Oliver Henrich's avatar Oliver Henrich
Browse files

Merge branch 'master' into user-cgdna

parents 72254996 ca96a7ab
Loading
Loading
Loading
Loading
+30 −6
Original line number Diff line number Diff line
@@ -9,13 +9,37 @@ lib/kokkos/* @stanmoore1
lib/molfile/*         @akohlmey
lib/qmmm/*            @akohlmey
lib/vtk/*             @rbberger
lib/kim/*             @ellio167

# packages
src/KOKKOS            @stanmoore1
src/USER-CGSDK        @akohlmey
src/USER-COLVARS      @giacomofiorin
src/USER-OMP          @akohlmey
src/USER-QMMM         @akohlmey
# whole packages
src/COMPRESS/*        @akohlmey
src/GPU/*             @ndtrung81
src/KOKKOS/*          @stanmoore1
src/KIM/*             @ellio167
src/USER-CGDNA/*      @ohenrich
src/USER-CGSDK/*      @akohlmey
src/USER-COLVARS/*    @giacomofiorin
src/USER-DPD/*        @timattox
src/USER-INTEL/*      @wmbrownintel
src/USER-MANIFOLD/*   @Pakketeretet2
src/USER-MEAMC/*      @martok
src/USER-MOFFF/*      @hheenen
src/USER-MOLFILE/*    @akohlmey
src/USER-NETCDF/*     @pastewka
src/USER-PHONON/*     @lingtikong
src/USER-OMP/*        @akohlmey
src/USER-QMMM/*       @akohlmey
src/USER-REAXC/*      @hasanmetin
src/USER-TALLY/*      @akohlmey
src/USER-UEF/*        @danicholson
src/USER-VTK/*        @rbberger

# individual files in packages
src/GPU/pair_vashishta_gpu.*        @andeplane
src/KOKKOS/pair_vashishta_kokkos.*  @andeplane
src/MANYBODY/pair_vashishta_table.* @andeplane
src/USER-MISC/fix_bond_react.*      @jrgissing
src/USER-MISC/*_grem.*              @dstelter92

# tools
tools/msi2lmp/*       @akohlmey
+1 −1
Original line number Diff line number Diff line
@@ -101,7 +101,7 @@ set(DEFAULT_PACKAGES ASPHERE BODY CLASS2 COLLOID COMPRESS CORESHELL DIPOLE GRANU
  KSPACE MANYBODY MC MEAM MISC MOLECULE PERI QEQ
  REAX REPLICA RIGID SHOCK SNAP SRD)
set(OTHER_PACKAGES KIM PYTHON MSCG MPIIO VORONOI POEMS LATTE
  USER-ATC USER-AWPMD USER-CGDNA USER-MESO
  USER-ATC USER-AWPMD USER-BOCS USER-CGDNA USER-MESO
  USER-CGSDK USER-COLVARS USER-DIFFRACTION USER-DPD USER-DRUDE USER-EFF
  USER-FEP USER-H5MD USER-LB USER-MANIFOLD USER-MEAMC USER-MGPT USER-MISC
  USER-MOFFF USER-MOLFILE USER-NETCDF USER-PHONON USER-QTB USER-REAXC USER-SMD
+38 −0
Original line number Diff line number Diff line
@@ -122,6 +122,7 @@ Package, Description, Doc page, Example, Library
Package, Description, Doc page, Example, Library
"USER-ATC"_#USER-ATC, atom-to-continuum coupling, "fix atc"_fix_atc.html, USER/atc, int
"USER-AWPMD"_#USER-AWPMD, wave-packet MD, "pair_style awpmd/cut"_pair_awpmd.html, USER/awpmd, int
"USER-BOCS"_#USER-BOCS, BOCS bottom up coarse graining, "fix bocs"_fix_bocs.html, USER/bocs, -
"USER-CGDNA"_#USER-CGDNA, coarse-grained DNA force fields, src/USER-CGDNA/README, USER/cgdna, -
"USER-CGSDK"_#USER-CGSDK, SDK coarse-graining model, "pair_style lj/sdk"_pair_sdk.html, USER/cgsdk, -
"USER-COLVARS"_#USER-COLVARS, collective variables library, "fix colvars"_fix_colvars.html, USER/colvars, int
@@ -1625,6 +1626,43 @@ examples/USER/awpmd :ul

:line

USER-BOCS package :link(USER-BOCS),h4

[Contents:]

This package provides "fix bocs"_fix_bocs.html, a modified version
of "fix npt"_fix_nh.html which includes the pressure correction to
the barostat as outlined in:

N. J. H. Dunn and W. G. Noid, "Bottom-up coarse-grained models that 
accurately describe the structure, pressure, and compressibility of
molecular liquids," J. Chem. Phys. 143, 243148 (2015).

[Authors:] Nicholas J. H. Dunn and Michael R. DeLyser (The Pennsylvania State University)

[Install or un-install:]

make yes-user-bocs
make machine :pre

make no-user-bocs
make machine :pre

[Supporting info:]

The USER-BOCS user package for LAMMPS is part of the BOCS software package:
"https://github.com/noid-group/BOCS"_https://github.com/noid-group/BOCS

See the following reference for information about the entire package:

Dunn, NJH; Lebold, KM; DeLyser, MR; Rudzinski, JF; Noid, WG.
"BOCS: Bottom-Up Open-Source Coarse-Graining Software."
J. Phys. Chem. B. 122, 13, 3363-3377 (2018).

Example inputs are in the examples/USER/bocs folder.

:line

USER-CGDNA package :link(USER-CGDNA),h4

[Contents:]
+16 −5
Original line number Diff line number Diff line
@@ -10,19 +10,29 @@ compute ackland/atom command :h3

[Syntax:]

compute ID group-ID ackland/atom :pre
compute ID group-ID ackland/atom keyword/value :pre

ID, group-ID are documented in "compute"_compute.html command
ackland/atom = style name of this compute command :ul
ID, group-ID are documented in "compute"_compute.html command :ulb,l
ackland/atom = style name of this compute command :l

zero or more keyword/value pairs may be appended :l
keyword = {legacy} :l
  {legacy} yes/no = use ({yes}) or do not use ({no}) legacy ackland algorithm implementation :pre
:ule

[Examples:]

compute 1 all ackland/atom :pre
compute 1 all ackland/atom
compute 1 all ackland/atom legacy yes :pre

[Description:]

Defines a computation that calculates the local lattice structure
according to the formulation given in "(Ackland)"_#Ackland.
Historically, LAMMPS had two, slightly different implementations of
the algorithm from the paper. With the {legacy} keyword, it is
possible to switch between the pre-2015 ({legacy yes}) and post-2015
implemention ({legacy no}). The post-2015 variant is the default.

In contrast to the "centro-symmetry
parameter"_compute_centro_atom.html this method is stable against
@@ -66,7 +76,8 @@ integers defined above.

"compute centro/atom"_compute_centro_atom.html

[Default:] none
[Default:]
The keyword {legacy} defaults to {no}.

:line

doc/src/fix_bocs.txt

0 → 100644
+112 −0
Original line number Diff line number Diff line
<"LAMMPS WWW Site"_lws - "LAMMPS Documentation"_ld - "LAMMPS Commands"_lc :c

:link(lws,http://lammps.sandia.gov)
:link(ld,Manual.html)
:link(lc,Section_commands.html#comm)

:line

fix bocs command :h3

[Syntax:]

fix  ID group-ID bocs keyword values ... :pre

keyword = {temp} or {cgiso} or {analytic} or {linear_spline} or {cubic_spline}
  {temp} values = Tstart Tstop Tdamp
  {cgiso} values = Pstart Pstop Pdamp
  {basis set}
    {analytic} values = V_avg N_particles N_coeff Coeff_1 Coeff_2 ... Coeff_N
    {linear_spline} values = input_filename
    {cubic_spline} values = input_filename :pre
:ule

[Examples:]

fix 1 all bocs temp 300.0 300.0 100.0 cgiso 0.986 0.986 1000.0 analytic 66476.015 968 2 245030.10 8962.20 :pre
 
fix 1 all bocs temp 300.0 300.0 100.0 cgiso 0.986 0.986 1000.0 cubic_spline input_Fv.dat :pre

thermo_modify press 1_press :pre


[Description:]

These commands incorporate a pressure correction as described by 
Dunn and Noid in "(Dunn1)"_#bocs-Dunn1 to the standard MTTK
barostat by Martyna et. al. in "(Martyna)"_#bocs-Martyna .
The first half of the command mimics a standard fix npt command:

fix 1 all bocs temp Tstart Tstop Tcoupl cgiso Pstart Pstop Pdamp :pre

The two differences are replacing {npt} with {bocs}, and replacing 
{iso}/{aniso}/{etc} with {cgiso}.
The rest of the command details what form you would like to use for 
the pressure correction equation. The choices are: {analytic}, {linear_spline}, 
or {cubic_spline}. 

With either spline method, the only argument that needs to follow it 
is the name of a file that contains the desired pressure correction 
as a function of volume. The file should be formatted so each line has:

Volume_i, PressureCorrection_i :pre

Note both the COMMA and the SPACE separating the volume's 
value and its corresponding pressure correction. The volumes in the file 
should be uniformly spaced. Both the volumes and the pressure corrections 
should be provided in the proper units, e.g. if you are using {units real}, 
the volumes should all be in cubic angstroms, and the pressure corrections 
should all be in atomspheres. Furthermore, the table should start/end at a 
volume considerably smaller/larger than you expect your system to sample 
during the simulation. If the system ever reaches a volume outside of the 
range provided, the simulation will stop.

With the {analytic} option, the arguments are as follows:

... analytic V_avg N_particles N_coeff Coeff_1 Coeff_2 ... Coeff_N :pre

Note that {V_avg} and {Coeff_i} should all be in the proper units, e.g. if you 
are using {units real}, {V_avg} should be in cubic angstroms, and the 
coefficients should all be in atmospheres * cubic angstroms.

[Restrictions:]

As this is computing a (modified) pressure, group-ID should be {all}.

The pressure correction has only been tested for use with an isotropic 
pressure coupling in 3 dimensions.   

By default, LAMMPS will still report the normal value for the pressure
if the pressure is printed via a {thermo} command, or if the pressures
are written to a file every so often. In order to have LAMMPS report the
modified pressure, you must include the {thermo_modify} command given in 
the examples. For the last argument in the command, you should put 
XXXX_press, where XXXX is the ID given to the fix bocs command (in the
example, the ID of the fix bocs command is 1 ).

This fix is part of the USER-BOCS package.  It is only enabled if
LAMMPS was built with that package.  See the "Making
LAMMPS"_Section_start.html#start_3 section for more info.

[Related:]

For more details about the pressure correction and the entire BOCS software 
package, visit the "BOCS package on github"_bocsgithub and read the release 
paper by Dunn et. al. "(Dunn2)"_#bocs-Dunn2 .


:link(bocsgithub,https://github.com/noid-group/BOCS)

:line

:link(bocs-Dunn1)
[(Dunn1)] Dunn and Noid, J Chem Phys, 143, 243148 (2015).

:link(bocs-Martyna)
[(Martyna)] Martyna, Tobias, and Klein, J Chem Phys, 101, 4177 (1994).

:link(bocs-Dunn2)
[(Dunn2)] Dunn, Lebold, DeLyser, Rudzinski, and Noid, J. Phys. Chem. B, 122, 3363 (2018).


Loading