lammps/lib/mscg
Axel Kohlmeyer c6d923b6c8 make download function more resilient by also catching failed execution 2017-08-10 21:15:35 -04:00
..
.gitignore more lib compilation updates 2017-08-08 07:20:33 -04:00
Install.py make download function more resilient by also catching failed execution 2017-08-10 21:15:35 -04:00
Makefile.lammps.default add local makefile overrides to be compatible with standard suffixes 2017-08-08 13:19:44 -04:00
Makefile.lammps.g++_simple add local makefile overrides to be compatible with standard suffixes 2017-08-08 13:19:44 -04:00
Makefile.lammps.mpi add local makefile overrides to be compatible with standard suffixes 2017-08-08 13:19:44 -04:00
Makefile.lammps.serial add local makefile overrides to be compatible with standard suffixes 2017-08-08 13:19:44 -04:00
Makefile.mpi add local makefile overrides to be compatible with standard suffixes 2017-08-08 13:19:44 -04:00
Makefile.serial add local makefile overrides to be compatible with standard suffixes 2017-08-08 13:19:44 -04:00
README update README file for lib/mscg 2017-08-08 13:55:12 -04:00

README

This directory contains links to the Multi-scale Coarse-graining
(MS-CG) library which is required to use the MSCG package and its fix
command in a LAMMPS input script.

The MS-CG library is available at
https://github.com/uchicago-voth/MSCG-release and was developed by
Jacob Wagner in Greg Voth's group at the University of Chicago.

This library requires a the GNU scientific library (GSL v 2.1+).

You can type "make lib-mscg" from the src directory to see help on how
to download and build this library via make commands, or you can do
the same thing by typing "python Install.py -m <machine>" from within this
directory, or you can do it manually by following the instructions
below.

-----------------

You must perform the following steps yourself.

1.  Download MS-CG at https://github.com/uchicago-voth/MSCG-release
    either as a tarball or via SVN, and unpack the tarball either in
    this lib/mscg directory or somewhere else on your system.

2.  Ensure that you have GSL installed and a compiler with support for C++11.

3.  Compile MS-CG from within its home directory using your makefile of choice:
    % make -f Makefile.<machine> libmscg.a
    It is recommended that you start with Makefile.g++_simple for
    most machines. There are also two Makefile with settings matching
    the "mpi" and "serial" makefiles in the main LAMMPS folder.

4.  There is no need to install MS-CG system-wide if you only wish
    to use it from LAMMPS.

5.  Create two soft links in this dir (lib/mscg) to the MS-CG src
    directory.  E.g if you built MS-CG in this dir:
      % ln -s src includelink
      % ln -s src liblink
    These links could instead be set to the include and lib
    directories created by a MS-CG install, e.g.
      % ln -s /usr/local/include includelink
      % ln -s /usr/local/lib liblink

6.  Copy a suitable Makefile.lammps.<machine> to Makefile.lammps or
    copy Makefile.lammps.default to Makefile.lammps and edit as needed.

-----------------

When these steps are complete you can build LAMMPS with the MS-CG
package installed:

% cd lammps/src
% make yes-USER-MSCG
% make g++ (or whatever target you wish)

Note that if you download and unpack a new LAMMPS tarball, the
"includelink" and "liblink" files will be lost and you will need to
re-create them (step 4).  If you built MS-CG in this directory (as
opposed to somewhere else on your system) and did not install it
somewhere else, you will also need to repeat steps 1,2,3.

The Makefile.lammps file in this directory is there for compatibility
with the way other libraries under the lib dir are linked with by
LAMMPS.  MS-CG requires the GSL and LAPACK libraries as listed in
Makefile.lammps.  If they are not in default locations where your
LD_LIBRARY_PATH environment settings can find them, then you should
add the approrpriate -L paths to the mscg_SYSPATH variable in
Makefile.lammps.