Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add some tutorials #255

Merged
merged 20 commits into from
Jan 26, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 7 additions & 7 deletions docs/source/dev-tools/bench-coverage.csv
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
"feature \\ reference" APFEL QCDNUM xspace-bench
projectiles |T| "" |T|
EM |T| |T| |T|
NC |T| |T| |T|
CC |T| "" |T|
scale-variatons |T| |T| ""
target-mass-corrections |T| "" ""
"feature \\ reference" APFEL QCDNUM xspace-bench APFEL++
projectiles |T| "" |T| |T|
EM |T| |T| |T| |T|
NC |T| |T| |T| |T|
CC |T| "" |T| |T|
scale-variatons |T| |T| "" |T|
target-mass-corrections |T| "" "" |T|
8 changes: 4 additions & 4 deletions docs/source/dev-tools/bench-fns.csv
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
"|FNS| \\ reference" APFEL QCDNUM xspace-bench
|FFNS| |T| |T| "|T| [#f1]_"
|ZM-VFNS| |T| |T| |T|
FONLL "|T| [#f2]_" "" "|T| [#f2]_"
"|FNS| \\ reference" APFEL QCDNUM xspace-bench APFEL++
|FFNS| |T| |T| "|T| [#f1]_" |T|
|ZM-VFNS| |T| |T| |T| |T|
|FFN0| |T| "" |T| |T|
21 changes: 19 additions & 2 deletions docs/source/dev-tools/benchmarks.rst
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,6 @@ also incoming projectiles, different type of currents, SV and TMC.
:align: center

.. [#f1] Only for NfFF=3
.. [#f2] Only for charm threshold (FFNS3 to FFNS4 interpolation)

.. csv-table:: Banchmarks coverage
:file: ./bench-coverage.csv
Expand Down Expand Up @@ -131,5 +130,23 @@ In |xspace-bench| |SF| are defined as follows:

Given these definitions, benchmarks with `yadism` are possible only in the region
:math:`m^2_{charm} < Q^2 < m^2_{bottom}` selecting either |ZM-VFNS| with :math:`F_X^{total}`
or |FFNS| with NfFF=3 and FONLL with NfFF=4.
or |FFNS| with NfFF=3.
FONLL is implemented in the so called `scheme A` with and without damping factor.

APFEL++
-------


|APFEL++| is a C++ rewriting of the Fortran 77 evolution code |APFEL|. However, |APFEL++| is based on a completely new code design and
guarantees a better performance along with a more optimal memory management.
|APFEL++| is suitable for a wide range of tasks: from the solution of the DGLAP evolution equations to the computation of DIS
and single-inclusive-annihilation cross sections.

|APFEL++| is also currently interfaced to PARTONS, a software dedicated to the phenomenology of Generalised Parton Distributions (GPDs) and TMDs,
and to xFitter.


SF in APFEL++
~~~~~~~~~~~~~

The |APFEL++| definitions follow the ones of |APFEL|
31 changes: 0 additions & 31 deletions docs/source/dev-tools/metrics.rst

This file was deleted.

2 changes: 1 addition & 1 deletion docs/source/implementation/ESF.rst
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ belong to a :class:`StructureFunction` instance of the respective kind.

The kinds are defined by choosing one option for each of the following classes:

- ``F2`` or ``FL``
- ``F2``, ``FL``, ``F3``, ``g1``, `gL``, `g4``
- ``light``, ``charm``, ``bottom``, ``top``, or ``total``

Sometimes an instance of a different kind it is needed to complete the
Expand Down
29 changes: 0 additions & 29 deletions docs/source/implementation/input.rst

This file was deleted.

15 changes: 6 additions & 9 deletions docs/source/implementation/kernels.rst
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,8 @@ The actual physical combination are not as many as flavors, indeed |QCD| is
flavor blind (in the massless case, and the only difference in the massive case
are the value of the masses themselves).

In particular there are 3 relevant combinations, as described in
:doc:`../theory/coeff-funcs`.
In particular there are 3 relevant combinations, for polarized and
unpolarized |DIS| as described in :doc:`../theory/coeff-funcs`.

.. todo::

Expand All @@ -37,11 +37,8 @@ In particular there are 3 relevant combinations, as described in
(partons, operator, operator-error) by convolutions


Rearrange Singlet & Non-singlet
-------------------------------
Singlet & Non-singlet
---------------------

.. todo::

describe redefinition of the singlet -> pure singlet from Vogt notation

essentially include the already written note
For the distinction about singlet and non-singlet coefficient function,
see :doc:`../theory/nonsinglet`.
4 changes: 0 additions & 4 deletions docs/source/implementation/runner.rst
Original file line number Diff line number Diff line change
Expand Up @@ -59,10 +59,6 @@ Some **handlers objects** are used to dispatch some isolated services. They are
mostly not defined internally in :mod:`yadism` package, but mainly imported from
:mod:`eko`.

Another common trait that characterize these handlers is the presence of a
method :func:`from_dict`, with which the object can be created loading the
required options directly from a suitable dictionary (that in a :class:`Runner`
object is always either `theory` or `observable` dictionary).

Interpolator Dispatcher
~~~~~~~~~~~~~~~~~~~~~~~
Expand Down
19 changes: 8 additions & 11 deletions docs/source/implementation/structure.rst
Original file line number Diff line number Diff line change
Expand Up @@ -29,30 +29,28 @@ Essentially the flow of an execution is the following:
1. (**user** initiated) a :class:`~yadism.runner.Runner` is instantiated and it
is passed the theory configuration, and the requested observables to compute
(together with related configurations)
2. a check is performed on the user input (by an
:class:`~yadism.input.inspector.Inspector`)
3. the relevant global *service providers* are initialized and stored by the
2. the relevant global *service providers* are initialized and stored by the
:class:`~yadism.runner.Runner` (like the :math:`\alpha_s` evolution, or the
interpolation dispatcher, or the couplings computer)
4. the requested observables are scanned, and they are assigned to the
3. the requested observables are scanned, and they are assigned to the
respective :class:`~yadism.sf.StructureFunction` /
:class:`~yadism.xs.CrossSection` (acting as manager and caching storage)
according to their kind and heavyness (but multiple kinematics will belong to
the same :class:`~yadism.sf.StructureFunction` /
:class:`~yadism.xs.CrossSection`) each kinematic point will correspond to an instance of
:class:`~yadism.esf.esf.EvaluatedStructureFunction` / :class:`~yadism.esf.exs.EvaluatedCrossSection`

5. (**user** initiated) output is requested
6. the request is propagated to the managers, and then to all the required
4. (**user** initiated) output is requested
5. the request is propagated to the managers, and then to all the required
`ESF` objects
7. the `ESF` issues a request to the
6. the `ESF` issues a request to the
:class:`~yadism.coefficient_functions.Combiner` for the relevant
:class:`~yadism.coefficient_functions.kernels.Kernel`
8. all the :class:`~yadism.coefficient_functions.kernels.Kernel` are numerically
7. all the :class:`~yadism.coefficient_functions.kernels.Kernel` are numerically
convoluted with the |PDF| interpolation polynomials
9. all the results are collected in an :class:`~yadism.output.Output` object and
8. all the results are collected in an :class:`~yadism.output.Output` object and
returned to the user
10. (**user** initiated) the :class:`~yadism.output.Output` object might be
9. (**user** initiated) the :class:`~yadism.output.Output` object might be
dumped on disk in one of the available formats

Elements
Expand All @@ -62,7 +60,6 @@ Elements
:maxdepth: 2

runner
input
kernels
SF
ESF
Expand Down
5 changes: 2 additions & 3 deletions docs/source/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ In particular:
:hidden:

overview/features.rst
overview/tutorials/index.rst
overview/tutorials/tutorials.rst

.. toctree::
:maxdepth: 1
Expand Down Expand Up @@ -84,9 +84,8 @@ In particular:
:caption: Dev Tools
:hidden:

dev-tools/tests.rst
dev-tools/benchmarks.rst
dev-tools/yadmark.rst
dev-tools/metrics.rst
dev-tools/code-todos.rst

.. toctree::
Expand Down
2 changes: 1 addition & 1 deletion docs/source/overview/features.rst
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ according to their :ref:`heavyness <theory/intro:Heavyness>` (e.g.

Moreover the following features are all available:

1. :doc:`flavor number schemes <../theory/fns>`: |FFNS|, |ZM-VFNS|, |FONLL|
1. :doc:`flavor number schemes <../theory/fns>`: |FFNS|, |ZM-VFNS|, |FFN0|
2. :doc:`scale variations <../theory/scale-variations>`: independent variations
of factorization scale :math:`\mu_F` and renormalization scale :math:`\mu_R`
3. :ref:`target mass corrections <theory/misc:target mass corrections>`
Expand Down
2 changes: 2 additions & 0 deletions docs/source/overview/tutorials/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
*.pineappl.lz4
*.dat
53 changes: 0 additions & 53 deletions docs/source/overview/tutorials/benchmarks.ipynb

This file was deleted.

Loading
Loading