-
Notifications
You must be signed in to change notification settings - Fork 0
Move permanent part of fkutils here #12
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
Merged
Merged
Changes from all commits
Commits
Show all changes
37 commits
Select commit
Hold shift + click to select a range
006280c
Move towards datasets
felixhekhorn 1e9cb65
Expose opcard generation for datasets
felixhekhorn 5ff8e64
Add theory_ekos
felixhekhorn fc6ed74
Attempt on logging
felixhekhorn 6ee0fb1
Drop Configurations class
felixhekhorn 4eb7947
Fix eko logging
felixhekhorn f2b3d29
Upgrade syntax with pylint
felixhekhorn 1d1d10e
Add theory_fks
felixhekhorn 1d3c2b7
Add FK comparison log
felixhekhorn 68cd123
Merge branch 'main' into fkutils-move
felixhekhorn e7ef4a6
Add comparison after evolution
felixhekhorn 512332a
Init TheoryBuilder
felixhekhorn 096f760
Move theory opcards
felixhekhorn a0d58fd
Reshuffle fks into theory
felixhekhorn 784dee8
Regroup theory cli
felixhekhorn 3a53e56
Update config
felixhekhorn cb516d5
Add inherit-grids command
felixhekhorn 4900d4a
Drop paths.grids.common, add Readme
felixhekhorn e0bffc4
Fix Readme
felixhekhorn 36205d7
Move old stuff
felixhekhorn 2e4829e
Introduce overwrite option and skipping
felixhekhorn c2e3459
Make inherit-grids more consistent
felixhekhorn 1e35e50
Make inherit-grids yet more consistent
felixhekhorn 11e52ae
Update Readme
felixhekhorn 9c3dd18
Add inherit-ekos command
felixhekhorn a10887b
Drop config.add_scope
felixhekhorn 23449b6
Improve logging
felixhekhorn b464b52
Improve logging
felixhekhorn 19ccfee
Adjust README a bit
cschwan f5702e5
Remove common grids dir
felixhekhorn d2018a4
Move pylint and apply some suggestions
felixhekhorn 24674cf
Remove old code and folder
felixhekhorn b69353e
Drop module entry point
felixhekhorn ada17a4
Update parser
felixhekhorn 3bf4bbc
Fix compare arg names
felixhekhorn 0e0b141
Recover file base operations
felixhekhorn ee6b9da
Run poetry update
felixhekhorn File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,3 +1,5 @@ | ||
| pineko.toml | ||
|
|
||
| # Byte-compiled / optimized / DLL files | ||
| __pycache__/ | ||
| *.py[cod] | ||
|
|
||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,4 +1,91 @@ | ||
| # Pineko | ||
| # `pineko` = `PineAPPL` + `eko` | ||
|
|
||
| This repository contains specifications for the apfelcomb code replacement. | ||
| `pineko` converts | ||
|
|
||
| - interpolation grids for theory predictions ('grids' for short) in the form of | ||
| [`PineAPPL`](https://github.com/N3PDF/pineappl) grids, together with | ||
| - Evolution Kernel Operators (EKO) generated by | ||
| [`eko`](https://github.com/N3PDF/eko) | ||
|
|
||
| into fast-kernel (FK) tables. The collection of all FK tables constitute the | ||
| theory predictions for a PDF fit and therefore is often simply called 'theory'. | ||
|
|
||
| `pineko` replaces [`APFELcomb`](https://github.com/NNPDF/apfelcomb), which was | ||
| used up to NNPDF4.0. | ||
|
|
||
| ## Prerequisites | ||
|
|
||
| Generating a 'theory', as defined above, requires several files which are | ||
| described next. | ||
|
|
||
| ### `pineko.toml` | ||
|
|
||
| You need to provide a `pineko.toml`, that provides all necessary paths to the input and output folders. | ||
| [DEBUG: Look at the debug example in this repo [1].] | ||
|
|
||
| ### ymldb | ||
|
|
||
| You need all files of the `ymldb` [2]. [DEBUG: Look at the respective `load.sh` script to load from dom.] | ||
| This defines the mapping from datasets to FK tables. | ||
|
|
||
| ### Theory Runcards | ||
|
|
||
| You need to provide the necessary theory runcards named with their respective theory ID inside the `<paths.theory_cards>` folder [3]. | ||
|
|
||
| ### Default Operator Card | ||
|
|
||
| You need to provide a default operator card for `eko` [4]. | ||
| [DEBUG: Look at the respective `load.sh` script to load from dom.] | ||
|
|
||
| ### Grids | ||
|
|
||
| `pineko` does **NOT** compute grids, which are instead expected input to `pineko`. | ||
| There are typically two ways to obtain grids: computing them from scratch with [`runcards`](https://github.com/NNPDF/runcards) | ||
| or reusing existing ones. | ||
|
|
||
| #### Generate new Grids with `rr` | ||
|
|
||
| You need to run `rr` with a given theory runcard and put the generated grid file with the same name | ||
| inside the `<paths.grids>/<theory_id>` folder. The name has to match the `ymldb` which is the case by default. | ||
|
|
||
| #### Inherit Grids from Existing Theory | ||
|
|
||
| You can reuse the grids from a different theory by running `pineko theory inherit-grids SOURCE_THEORY_ID TARGET_THEORY_ID DATASET1 DATASET2 ...`. | ||
| The relation between the source theory and the target theory is non-trivial [5]. | ||
|
|
||
| ## Running `pineko` | ||
|
|
||
| Running `pineko` consists of two steps - each of them being potentially computationally expensive: | ||
| computing the EKO and convoluting the EKO with the grid. | ||
|
|
||
| ### Computing the EKO | ||
|
|
||
| #### Generating new EKOs | ||
|
|
||
| This is a two step process: | ||
| 1. Generate the necessary operator cards with `pineko theory opcards THEORY_ID DATASET1 DATASET2 ...` | ||
| 2. Generate the actual EKOs with `pineko theory ekos THEORY_ID DATASET1 DATASET2 ...` | ||
|
|
||
| #### Inherit EKOs from Existing Theory | ||
|
|
||
| You can reuse the EKOs from a different theory by running `pineko theory inherit-ekos SOURCE_THEORY_ID TARGET_THEORY_ID DATASET1 DATASET2 ...`. | ||
| The relation between the source theory and the target theory is non-trivial [6]. | ||
|
|
||
| ### Generating the FK Table | ||
|
|
||
| You need to have the EKOs computed in the previous step. | ||
| Then you can convolute the EKOs with the grids by running `pineko theory fks THEORY_ID DATASET1 DATASET2 ...` | ||
|
|
||
| --- | ||
|
|
||
| [1] Actually, instead we should provide a concise description here - but let's wait to be stable first | ||
|
|
||
| [2] this is to be replaced by the new CommonData format | ||
|
|
||
| [3] this is to be replaced by a binding to the true theory DB | ||
|
|
||
| [4] I'm thinking how to improve this, because how could we provide a study on the interpolation accuracy? at the moment there just equal | ||
|
|
||
| [5] examples being SV, different evolution settings, etc. | ||
|
|
||
| [6] examples being SV, different DIS settings, etc. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1 @@ | ||
| *.tar |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1 @@ | ||
| *.pineappl.lz4 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1 @@ | ||
| *.pineappl.lz4 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,8 @@ | ||
| # copy from remote | ||
|
|
||
| # common example | ||
| # scp dom.mi.infn.it:/media/FK/fktables/data/grids/200-LHCB_DY_13TEV_DIELECTRON.pineappl.lz4 ./common/LHCB_DY_13TEV_DIELECTRON.pineappl.lz4 | ||
|
|
||
| # theory example | ||
| # scp dom.mi.infn.it:/media/FK/fktables/data/grids/200-SLAC_NC_EM_D_F2.pineappl.lz4 ./200/SLAC_NC_EM_D_F2.pineappl.lz4 | ||
| # scp dom.mi.infn.it:/media/FK/fktables/data/grids/200-SLAC_NC_EM_P_F2.pineappl.lz4 ./200/SLAC_NC_EM_P_F2.pineappl.lz4 | ||
File renamed without changes.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1 @@ | ||
| *.yaml |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1 @@ | ||
| *.yaml |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,2 @@ | ||
| # copy from remote | ||
| # scp dom.mi.infn.it:/media/FK/fktables/data/fktocommon/*.yaml . |
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.