pypospack
is written in python3. From personal experience, it is often difficult to get system administrators to support packages required for python. For this reason, pyflamestk was written so you could do all the work from a shell account, by installing a local image of the Anaconda distribution of python in your shell account. Download the free installer from Anaconda. Use a Python 3.X version.
$ bash ./Anaconda-<version>.sh
When prompted, agree for the installer to add a line to your user profile to make this python installation your default python.
$ which python
~/anaconda3/bin/python
If you are developing for pyflamestk:
$ conda install numpy scipy matplotlib nose sphinx sklearn pandas
$ conda install -c conda-forge ase
You need to exactly match the MPI implementation and compiler stack on your own system, or things will fail. From the GNU compile stack using gcc/openmpi and the intel/impi MPI stacks have been able to run on a variety of platforms
$ env MPICC=/usr/lib64/openmpi/bin/mpicc pip install mpi4py
This is an example submission script for demeter.mse.ufl.edu.
#!/bin/bash
#$ -N pyp_Ni
#$ -cwd
#$ -pe mpi 8
#$ -S /bin/bash
#$ -q all.q
#$ -e job.err
#$ -o job.out
echo start_time:$(date)
# OpenMPI setup
export PATH="/usr/lib64/openmpi/bin:$PATH"
export LD_LIBRARY_PATH="/usr/lib64/openmpi/lib:$LD_LIBRARY_PATH"
MPIRUN=/usr/lib64/openmpi/bin/mpirun
echo The location of mpi is $MPIRUN
echo The python is $(which python)
echo The pythonpath is $PYTHONPATH
/usr/lib64/openmpi/bin/mpirun -np $NSLOTS python mc_sampler_iterate.py > log.out
echo stop_time:$(date)
This section describes how to get the source code data. The source code data is hosted on github. Installation and maintenance of the source code is done through the application git.
Create a repository folder and then clone the source code into this directory. I have a repos
folder in my home directory. To create and close this repository
$ mkdir ~/repos
$ cd ~/repos
$ git clone https://github.com/eragasa/pypospack.git
Now you need to add the repository to the PYTHONPATH
$ export PYTHONPATH=/home/eragasa/repos/pypospack
Due to the concurrency model chosen, all simulations are run in a serial version of lammps to prevent an MPI enabled version of LAMMPS conflicting with an MPI enabled pypospack. pypospack finds the binary by setting the environment variable LAMMPS_SERIAL_BIN.