[WIP] Reintroducing cholesky
Created by: tgiani
Hi, here as discussed in the last pc I m trying to do the following:
- reading the theory cov matrix from file at the level of
ComputeCovMat_basic
inchisquare.cc
, using the functionread_total_covmat
(which btw should now be calledread_theory_covmat
) - construct the total cov matrix inside
ComputeCovMat_basic
, adding to the additive errors also the part coming from the theory cov mat, if present - performing the replica sampling doing a gaussian sampling using just the additive part of the total cov mat, and adding the mjultiplicative uncertainties by hand, like in the old implementation. The gaussian sampling is performed using cholesky decomposition
- use the same function
ComputeCovMat_basic
to build the fit covariance matrix inExperiment::LoadFitCovMat
Merge request reports
Activity
Created by: tgiani
Trying to run vp-setupfit using this pull request I m getting
[INFO]: All requirements processed and checked successfully. Executing actions. [CRITICAL]: Bug in setup-fit ocurred. Please report it. Traceback (most recent call last): File "/exports/csce/eddie/ph/groups/nnpdf/Users/tg/Documents/conda-nnpdf/nnpdf/validphys2/src/validphys/scripts/vp_setupfit.py", line 161, in run super().run() File "/exports/csce/eddie/ph/groups/nnpdf/Users/tg/Documents/conda-nnpdf/nnpdf/validphys2/src/validphys/app.py", line 141, in run super().run() File "/exports/csce/eddie/ph/groups/nnpdf/Users/tg/Documents/miniconda3/envs/dev/lib/python3.6/site-packages/reportengine/app.py", line 359, in run rb.execute_sequential() File "/exports/csce/eddie/ph/groups/nnpdf/Users/tg/Documents/miniconda3/envs/dev/lib/python3.6/site-packages/reportengine/resourcebuilder.py", line 165, in execute_sequential *self.resolve_callargs(callspec)) File "/exports/csce/eddie/ph/groups/nnpdf/Users/tg/Documents/miniconda3/envs/dev/lib/python3.6/site-packages/reportengine/resourcebuilder.py", line 172, in get_result fres = function(**kwdict) File "/exports/csce/eddie/ph/groups/nnpdf/Users/tg/Documents/conda-nnpdf/nnpdf/validphys2/src/validphys/results.py", line 385, in results return DataResult(data), ThPredictionsResult.from_convolution(pdf, dataset, File "/exports/csce/eddie/ph/groups/nnpdf/Users/tg/Documents/conda-nnpdf/nnpdf/validphys2/src/validphys/results.py", line 66, in __init__ self._covmat = dataobj.get_covmat() File "/exports/csce/eddie/ph/groups/nnpdf/Users/tg/Documents/miniconda3/envs/dev/lib/python3.6/site-packages/NNPDF/nnpdf.py", line 4721, in get_covmat return _nnpdf.DataSet_get_covmat(self) OSError: [experiments] error: Cannot read covariance matrix file from
In this PR I have moved the implementation of
read_total_covmat
fromexperiment.cc
tochisquare.cc
. Could this affect the vp2 part?Created by: voisey
I think you can get what you need from this comment: !244 (merged), but please let me know if not.
Created by: tgiani
This PR is not getting any error now, and it is ready to be reviewed. I ve tested it running a DIS only fit. The report comparing this fit with the baseline DIS only is https://vp.nnpdf.science/bt30WA5aRVqKzFZKlRWHLA==/ while the comparison with the previous bugged one is here https://vp.nnpdf.science/w3qAsWUTQ1u2jWEo-JLl3g==/
I m not sure if we are happy with the results or not. Even if the current fit looks better than the previous bugged one, it still has much bigger error band than the one without th cov mat..not sure what we expect to see actually
Created by: voisey
Thanks for this @tgiani! The new fit certainly looks better than the previous one, but I'm not sure exactly whether it's what we expect to see either. Thoughts @Zaharid, @scarrazza?
@tgiani, do you think now would be a good time to rename read_total_covmat as read_theory_covmat?
requested review from @enocera