Skip to content
README.md 2.18 KiB
Newer Older
Matt Wala's avatar
Matt Wala committed
# Instructions for Reproducing Results

## Installation Hints

### Docker Image

A [Docker image](http://dx.doi.org/10.5281/zenodo.3483367) preinstalled with
necessary software and the code in this repository is available.

### Manual Installation

The script `install.sh` downloads and installs all necessary software in an
isolated environment using Conda and pip.

For producing figures and outputs, you will also need LaTeX and the
[latexrun](https://github.com/aclements/latexrun) script.

### Post-Installation

Before running, activate the Conda environment and instruct PyOpenCL to use
POCL, as follows:
```
source .miniconda3/bin/activate inteq
Matt Wala's avatar
Matt Wala committed
export PYOPENCL_TEST=portable
```

To ensure that everything works, you can run a short test:
```
py.test --disable-warnings utils.py
```

A more extensive set of tests can be found in the Pytential test suite (included
in `src/pytential/test`), which should also pass.

## Running Experiments

To re-run all experiments and regenerate all experimental outputs, use the
command `./run.sh`. This may take a long time. It is also possible to
selectively run experiments, as detailed below.

The code in this directory generates the following outputs:

* experimental data stored in the `raw-data` directory;
* tables and figures stored in the `out` directory;
* a PDF file `summary/summary.pdf` which summarizes results.

The script `generate-data.py` generates the files in the `raw-data`
directory.

The script `generate-figures-and-tables.py` postprocesses the output in the
`raw-data` directory to generate figures and tables in the `out` directory.

The Makefile `makefile.summary` controls the build of the summary PDF, whose
source is `summary.tex`.

To regenerate all outputs from the data that is already in the `raw-data`
directory, run

```
./generate-figures-and-tables.py --all
make -f makefile.summary
```

To run an individual experiment or to regenerate the data for a single
experiments, supply the command line option `-x experiment-name`. For instance, to
regenerate the results for the `bvp` experiment, run

```
./generate-data.py -x bvp
./generate-figures-and-tables.py -x bvp
```

To see the list of available experiments, run `./generate-data.py --help`.