Skip to content

scarrazza/smpdf

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 
 
 
src
 
 
 
 
 
 
 
 
 
 
 
 
 
 

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.