Skip to content

Commit

Permalink
Updating readme to respond to Kyles feedback
Browse files Browse the repository at this point in the history
  • Loading branch information
Samreay committed Mar 18, 2020
1 parent f3921c2 commit 7e4c108
Showing 1 changed file with 34 additions and 4 deletions.
38 changes: 34 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,11 @@ If you're not, installing Pippin is simple.
2. Ensure you have the dependencies install (`pip install -r requirements.txt`) and that your python version is 3.7+.
3. Celebrate

Now, Pippin also interfaces with other tasks: SNANA and machine learning classifiers mostly.
There is no need to attempt to install Pippin like a package (no `python setup.py install`), just run from the clone.

Now, Pippin also interfaces with other tasks: SNANA and machine learning classifiers mostly. I'd highly recommend
running on a high performance computer with SNANA already installed, but if you want to take a crack at installing it,
[you can find the docoumentation here](https://github.com/RickKessler/SNANA).

I won't cover installing SNANA here, hopefully you already have it. But to install the classifiers, we'll take
[SuperNNova](https://github.com/supernnova/SuperNNova) as an example. To install that, find a good place for it and:
Expand All @@ -58,7 +62,7 @@ I won't cover installing SNANA here, hopefully you already have it. But to insta
2. Create a GPU conda env for it: `conda create --name snn_gpu --file env/conda_env_gpu_linux64.txt`
3. Activate environment and install natsort: `conda activate snn_gpu` and `conda install --yes natsort`

Then, in the Pippin config file `cfg.yml` in the top level directory, ensure that the SNN path in Pippin is
Then, in the Pippin global configuration file `cfg.yml` in the top level directory, ensure that the SNN path in Pippin is
pointing to where you just cloned SNN into. You will need to install the other external software packages
if you want to use them, and you do not need to install any package you do not explicitly request in a config file.

Expand All @@ -70,16 +74,42 @@ some general ones in the `configs` directory, but you can put yours wherever you
front of the file to make it obvious in the shared output directory which folders as yours.

If you have `example.yml` as your config file and want pippin to run it, easy:
`pippin.sh config.yml`
`pippin.sh example.yml`

Remember to ensure that your `cfg.yml` file is set up properly and that you know where you want your output to be
The file name that you pass in should contain a run configuration. Note that this is different to the global software
configuration file `cfg.yml`, and remember to ensure that your `cfg.yml` file is set up properly and that you know
where you want your output to be
installed. By default, I assume that the `$PIPPIN_OUTPUT` environment variable is set as the output location,
so please either set said variable or change the associated line in the `cfg.yml`. [For the morbidly curious, here
is a very small demo video of using Pippin in the Midway environment](https://www.youtube.com/watch?v=pCaPvzFCZ-Y).

![ConsoleOutput](doc/console.gif)


### Creating your own configuration file

Each configuration file is represented by a yaml dictionary linking each stage (see stage declaration section below) to
a dictionary of tasks, the key being the unique name for the task and the value being its specific task configuration.

For example, to define a configuration with two simulations and one light curve fitting task (resulting in 2 output simulations and
2 output light curve tasks - one for each simulation), a user would define:

```yaml
SIM:
SIM_NAME_1:
SIM_CONFIG: HERE
SIM_NAME_2:
SIM_CONFIG: HERE

LCFIT:
LCFIT_NAME_1:
LCFIT_CONFIG: HERE
```
How to configure each task is also detail below on a task-by-task basis, or you can see examples in the `examples`
directory for each task.


### What If I change my config file?

Happens all the time, don't even worry about it. Just start Pippin again and run the file again. Pippin will detect
Expand Down

0 comments on commit 7e4c108

Please sign in to comment.