Skip to content

scarrazza/smpdf

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

alt text

Specialized Minimal PDFs tools.

##Citation

If you use this code in your publication, please cite:

Specialized minimal PDFs for optimized LHC calculations http://arxiv.org/abs/1602.00005

##Existing results

The compressed sets quoted in the paper above can be found here:

http://pcteserver.mi.infn.it/~nnpdf/smpdf_output/

The APPLGrids used to generate these sets can be found here:

http://pcteserver.mi.infn.it/~nnpdf/smpdf-applgrids/

Download

Clone the master development repository by running the following command:

$ git clone https://github.com/scarrazza/smpdf.git

Or download the compressed archive without using git here.

Installation

SMPDF requires APPlgrid and LHAPDF. Make sure the following commands can be executed and give valid results:

$ lhapdf-config
$ applgrid-config
```
The default Applgrid installation **will not work**: **All** header files must 
be copied to the appromiate include path, and not only those copied by
`make install`, which is insufficient. For example, for a default
Ubuntu installation:

````Shell
applgrid-1.4.70/src $ sudo cp *.h /usr/local/include/appl_grid/

Python 3.4+ is also required.

In order to manage the Python dependencies, Anaconda (with a Python
3.4+ environment) is the recommended way. After setting it up, cd into the directory of SMPDF and:

$ conda install --file environment.yml
```

Once all dependencies are satisfied, run:


````Shell
$ python setup.py install
```

Note that the installer script does _not_ check for dependencies. This will
install the `smpdf` program and the `smpdflib` Python library in the appropiate
paths.

## Usage

The configuration is specified in YAML files (see `examples/`). A file consists
of a list of observables (file paths to applgrids and specification of the
perturbative order, where 0 is LO and 1 NLO), a list of PDF sets (valid LHAPDF
grids in the correct path) and a list of actions (see `--help` for a
description).  

See

````Shell
$ smpdf --help
```

for the full list of options. Note that you will probably want to
run with the `--use-db` flag.

Generating documentation
------------------------

[Sphinx](http://sphinx-doc.org/) version 1.3.1 or greater is required. 

In order to build the documentation, go into the `docs` directory, and
type:

````bash
make api
make html

You can use the other build targets allowed by Sphinx. Note that the --help flag provides an overview of the most useful options.