Newer
Older
# SAMPLE
**S**urface **A**dsorbate Poly**m**orph **P**rediction with **L**ittle **E**ffort
A tool for efficient structure search on surfaces. For details see https://www.sciencedirect.com/science/article/pii/S0010465519301973
## Setup
### 1. Cloning
You can clone this repository by using
```
git clone git@gitlab.tugraz.at:othgroup/sample.git
git clone git@gitlab.tugraz.at:othgroup/tools.git
in the command line. This clones the SAMPLE code base and the tools library (AIMSTools, VASPTools, QETools).
You need to setup SSH keys in your gitlab settings to succesfully clone the repositories.
### 2. Build C libraries
Next step is to build the CWrapper library of SAMPLE and AIMSTools. For that you need to execute the
script in ``build.sh`` in ``sample/C`` and in ``tools/AIMSTools/C``.
If successful you should find a ``libCUtil.so`` file in the ``Release`` folder.
### 3. Set PYTHONPATH
Now one need to add ``sample`` and the ``tools`` library to the PYTHONPATH so that all import statements in the
``sample`` package are working. You can add these lines to your .bashrc file
export PYTHONPATH=${PYTHONPATH}:<sample-repo-directory>
export PYTHONPATH=${PYTHONPATH}:<tools-repo-directory>
export PYTHONPATH=${PYTHONPATH}:<tools-repo-directory>/AIMSTools
export PYTHONPATH=${PYTHONPATH}:<tools-repo-directory>/VASPTools
export PYTHONPATH=${PYTHONPATH}:<tools-repo-directory>/QETools
You need to exchange ``<sample-repo-directory>`` and ``<tool-repo-directory>`` with the path to your sample repository
### 4. install required python packages
sample needs several external python packages which can be easily installed via ``pip``. Just run the following install
command at the root folder of the sample repository.
```
pip install -r requirements.txt
```
For anaconda one can use
```
conda install --file requirements.txt
```
### 5. Run unittests
To test if everything is set up correctly run the unittests inside the tests folder in the sample repo and in the
tools library.
```
python3 TestAll.py
```