Ceci est une ancienne révision du document !
Lammps est disponible en version 20120615 dans la distribution Wheezy.
Lammps est également disponible dans sa version 20130503 dans la Sid au 22 mai 2013 : un rétroportage simple suffit à sa compilation.
Il peut cependant être nécessaire de le recompiler soi-même pour dans le cadre d'applications très spécifiques.
apt-get install
root
cd /root wget -m -nd http://lammps.sandia.gov/tars/lammps.tar.gz
cd /opt tar xvf /root/lammps.tar.gz
chown -R root.root lammps-*
ln -s $(tar tzf /root/lammps.tar.gz | tail -1 | awk -F'/' '{ print $1 }') lammps
cd $(tar tzf /root/lammps.tar.gz | tail -1 | awk -F'/' '{ print $1 }')
export LAMMPSROOT=$(pwd)
cd $LAMMPSROOT/src/STUBS make clean make
# Compilation de la librairie MEAM cd $LAMMPSROOT/lib/meam make -f Makefile.gfortran clean make -f Makefile.gfortran mv Makefile.lammps Makefile.lammps.intel ln -s Makefile.lammps.gfortran Makefile.lammps # Compilation de la librairie COLVARS cd $LAMMPSROOT/lib/colvars make -f Makefile.g++ clean make -f Makefile.g++ # Compilation de la librairie POEMS cd $LAMMPSROOT/lib/poems make -f Makefile.g++ clean make -f Makefile.g++ # Compilation de la librairie REAX cd $LAMMPSROOT/lib/reax make -f Makefile.gfortran clean make -f Makefile.gfortran mv Makefile.lammps Makefile.lammps.intel ln -s Makefile.lammps.gfortran Makefile.lammps # Compilation de la librairie AWPMD cd $LAMMPSROOT/lib/awpmd make -f Makefile.openmpi clean make -f Makefile.openmpi
cd $LAMMPSROOT/src # activation de tous les modules make yes-all # suspension d'un module très specifique make no-gpu make no-user-cuda # suspension d'un module qui necessite une librairie supplementaire make no-voronoi make no-user-reaxc make no-kim
# Preparation de la librairie ATC complée avec MPI cd $LAMMPSROOT/lib/atc sed -e 's/\-O\ \-g/\-O\ \-g \-fpermissive/' -i~ Makefile.serial make -f Makefile.serial clean make -f Makefile.serial
cd $LAMMPSROOT/src # lancer la compilation make serial
Si la compilation est réussie, un exécutable statique lmp_serial
, se trouve à la racine du dossier.
Installation préliminaire
sudo apt-get install -y fftw2 fftw-dev
Importation du Makefile Makefile.fftw dans le répertoire $LAMMPSROOT/src/MAKE :
cd $LAMMPSROOT/src/MAKE cp Makefile.serial Makefile.fftw sed -i "s/FFT_INC\ =/FFT_INC\ =\ -DFFT_FFTW/g" Makefile.fftw sed -i "s/FFT_LIB\ =/FFT_LIB\ =\ -lfftw/g" Makefile.fftw
Compilation
cd $LAMMPSROOT/src make fftw
Si la compilation est réussie, un exécutable statique lmp_fftw
, se trouve à la racine du dossier.
Installation préliminaire
sudo apt-get install -y libopenmpi-dev openmpi-bin libopenmpi1.3 openmpi-common sudo apt-get install -y fftw2 fftw-dev
Importation du Makefile pour ATC et compilation Makefile.mpic++ dans le répertoire $LAMMPSROOT/lib/atc
:
cd $LAMMPSROOT/lib/atc wget http://www.cbp.ens-lyon.fr/emmanuel.quemener/software/LAMMPS/Makefile.mpic++ # Preparation de la librairie ATC complée avec MPI cd $LAMMPSROOT/lib/atc make -f Makefile.mpic++ clean make -f Makefile.mpic++
Importation du Makefile Makefile.openmpi dans le répertoire $LAMMPSROOT/src/MAKE
:
cd $LAMMPSROOT/src/MAKE mv Makefile.openmpi Makefile.openmpi.orig wget http://www.cbp.ens-lyon.fr/emmanuel.quemener/software/LAMMPS/Makefile.openmpi
Compilation
cd $LAMMPSROOT/src make openmpi
Si la compilation est réussie, un exécutable statique lmp_openmpi
, se trouve à la racine du dossier.
La page Tools4Test et plus précisemment celle liée à Lammps détaille comment installer Lammps dans son environnement personnel (au CBP) et lancer quelques exemples.