.. Alpos documentation master file, created by
sphinx-quickstart on Thu Jan 14 13:20:11 2016.
You can adapt this file completely to your liking, but it should at least
contain the root `toctree` directive.
.. meta::
:description lang=en: Alpos - an object-oriented data to theory comparison
and fitting framework
:robots: index, follow
===================
Alpos Documentation
===================
**Alpos** is an object-oriented data to theory comparison and fitting tool
The project homepage is found at http://desy.de/~britzger/alpos/
.. contents:: Local table of contents
.. Contents:
..
.. .. toctree::
.. :maxdepth: 2
Introduction
============
Alpos is an object-oriented data to theory comparison tool.
The program is ideally suited for fits of theory parameters, for statistical analysis of theory
predictions and for data combinations.
The modular object-oriented architecture of the code allows for an easy implementation of new data sets and theory predictions,
as well as for new analysis tools or their extension.
The concpet of Alpos involves a modular and transparent implementation of theory predictions, which also enables a high level of consistency within different components of predictions, but still provides a very userfriendly interface.
The interface for new contributions is clearly defined in an object-oriented manner through inheritance.
New contributions to Alpos may be so-called **functions**, **tasks** and **datasets**.
New theory **functions** are theoretical predictions, which take as input single parameters and/or other functions.
Typically, these are predictions for particular measurements, but may also be for instance PDF or alpha-s evolution codes.
Functions calculate their output values on the basis of all current input values by the virtual function ``Update()``.
**Tasks** are classes which provide an ``Execute()`` routine and may perform any kind of operation taking the theory predictions or datasets into account.
Tasks are allowed to access all present theory values and also the data sets.
Typical tasks are fitting routines or for instance a statistical analysis.
Other tasks may be for instance print-out routines, plotting tools or the write-out of results to disk in a particular format.
Within Alpos, **datasets** are input data files which represent a measurement with all its uncertainties.
The data card specifies how the uncertainties are treated in the tasks and also different phase space regions may be specified easily for detailed analysis.
More details are found on the main homepage http://desy.de/~britzger/alpos/ . All developers may mirror the project homepage to their webspace, which may partially provide a more up-to-date documentation.
Contributors
============
Contributors in random ordering:
* Georg Sieber
* Daniel Savoiu
* Daniel Reichelt
* Klaus Rabbertz
* Kristian Bjoerke
* Daniel Britzger
* Valerio Bertone
* Anterpret Kaur
* ...
* Add yourself if you made some contributions...
Contact
=======
Mail to daniel.britzger@desy.de
======================================
Download, installation and first steps
======================================
Requirements
============
Required packages:
* cmake
* fastNLO (rev-2163): `fastNLO home `_, `fastNLO download `_
* QCDNUM (v17-00/06): `QCDNUM `_
* APFEL (fork from github): `APFEL `_
* LHAPDF (v6): `LHAPDF `_
* ROOT: `ROOT `_
* Eigen (only header files needed): `Eigen `_
* APPLGrid: `APPLGrid `_
Optional:
* sphinx
* pdflatex
* minted (for code highlighting in the .pdf-manual)
Download and installation
=========================
===================
Alpos - 'Functions'
===================
Alpos default built-in functions
================================
AExampleFunction
----------------
test
""""
test
""""
test
""""
test
""""
ASingleConstant
---------------
ASuperData
----------
ASubsetFunction
---------------
ASubsetData
-----------
QCDNUM functions
================
QcdnumInit
----------
QcdnumDISCS
-----------
QcdnumAlphas
------------
QcdnumPDF
---------
Apfel functions
===============
AApfelAs
--------
AApfelDISCS
-----------
AApfelInit
----------
AApfelPDF
---------
AApfelQEDEvol
-------------
fastNLO functions
=================
AfastNLO
--------
AfastNLOalt
-----------
AfastNLOInterpolPDFas
---------------------
AfastNLOnormDIS
---------------
AfastNLOnormDISalt
------------------
APPLGrid functions
==================
AApplgrid
---------
PDF parameterisations
=====================
APDFQ0_BiLog
------------
PDFQ0_HERA_10pts
----------------
PDFQ0_HERA
----------
PDFQ0_LHAPDF
-------------
PDFQ0_QcdnumExample
-------------------
===============
Alpos - 'Tasks'
===============
==================
Alpos - 'Datasets'
==================
A brief summary and a collection of comments of the available data files.
ATLAS
=====
CDF
===
CMS
===
D0
===
H1
===
ZEUS
====
=====================
Tutorial and examples
=====================
====
Misc
====
This Documentation
====================
This HTML documentation is built on *sphinx* using *rst* (reStructuredText) input.
The source files of it are stored in the Alpos root-directory at ``docs/sphinx`` and ``docs/sphinx/source``.
To (re-)build this documentation you need *sphinx* to be installed and then type::
cd docs/sphinx
make html
You find the index page in ``html/index.html``.
Details about *sphinx* can be found at http://www.sphinx-doc.org .
Details about the *rst* markup syntax can be found at http://docutils.sourceforge.net/rst.html .
Details about the *alabaster* theme are found at https://pypi.python.org/pypi/alabaster .
The most useful summary page of commands is at `rstdemo.html `_ .
Known issues and todos
======================
Revision history
================
* ongoing developements
Contributors: D. Britzger, D. Reichelt, D. Savoiu, K. Rabbertz, A. Kaur, G. Sieber
* New sphinx Docu
* Function for APPLGrid (not committed)
* fastNLO interface more flexible
* Full APFEL functionality
* Switches for 'threshold-corrections' for fastNLO
* Lots of minor bugfixes
* Analytic calculation of nuisance parameters
* ...
* ...
* ...
* ...
* v0.4, 25. Sep 2015, contact: daniel.britzger@desy.de
Contributors: D. Britzger, D. Reichelt, K. Bjoerke, K. Rabbertz
* Enable PDF fits: Tested HERAPDF1.0 and HERAPDF2.0
against HERAFitter
* New chisq definitions with analytic calculation of
nuisance parameters
* Write out PDF root-files for plotting (SavePDFTGraph)
* 2D contour scans (Contour)
* 1D chisq scans (Chi2Scan)
* Apply cuts on data
* Enable to exclude datapoints
* access PDF uncertainties from LHAPDF6
* Specify uncertainties directly as numerical value
* Pass steering parameters in command line
* Enable to pass error-'nature' through code
* bugfix for covariance matrix of subsets
* Clearer getters for errors (uncorr, stat, matrix-type)
* Dummies for APC, Bi-log PDF parameterization
* Full interface to EPRC (EPRC)
* Print error summary (PrintErrors)
* v0.3, 24. Jul 2015, contact: daniel.britzger@desy.de
* version for summer students
* Tested and verified inclusive jet fits
* ...
* v0.2, 15. Feb 2015, contact: daniel.britzger@desy.de
Update with relevant feature to exclude datapoints (to come) and study ranges of data points
* Verbosity steerable
* error averaging steerable
* Subsets of datapoints for each datatheory sets
* AStatAnalysis: (chisq, pulls, p-value) also for 'subsets'
* Improved printout and verbosity-level
* One minor bugfix in ARegisterRequirements() (default values no longer needed)
* Calculation of Pull values
* New Chisq's for uncor and stat uncertainties only
* Simpler access to dataTheorysets from TheoryHandler: i.e. ``return map> // for 'full datasets'`` and ``return map>> // for subsets``
* Init subsets in TheoryHandler
* v0.1, 11. Feb 2015, contact: daniel.britzger@desy.de
First version available as tarball
* Tasks, Functions and datasets available
* Simple fitting Task AFitter
* several chisq functions
* Various treatments of uncertainties: corr, uncorr, stat, error-averaging, etc...
* Many inclusive jet data tables (HERA,LHC,Tevatron)
* SuperData and SuperTheory
* fastNLO interface
* QCDNUM init and alpha_s evolution
* CRunDec alpha_s code
* LHAPDF interface (PDFs and alpha_s)
* TheoryHandler and all that parameter/function stuff
* Alpha_s fit doable for 8 inclusive jet measurements
* Short pdf-manual available
Todo's
======
Apparent todo's
* Tasks cannot yet access the previous results from previous tasks, although these are collected and stored
* Re-implement the datasets (with full error-split up as provided in the publications)
* Maybe the 'datatheory' steering should be somewhat separated, such that
different theory-function can be directly choosable without having an
own steering file with duplicated data
* Plotting tools, etc...
* GetRequirements() should return 'const string&'
* Chisq's could be implemented as 'AFunctions' as well