https://github.com/lmoneta/root

sort by:
Revision Author Date Message Commit Date
e28dfbc [math] Include suggestions from Jonas 19 December 2022, 15:31:14 UTC
8c6da4e [math] Fix unbin test using TFumili since it minimizes 2 * NLL 16 December 2022, 23:17:53 UTC
16edf93 [hist] Return direct a zero Hessian for linear functions In the WrappedMultiTF1 when trying to compute the Hessian for linear functions via TFormula::HessianPar , the code asserts in CLAD since there is no Hessian to compute. Return then by default a zero value [math][minuit2] Fix some warning message in Minuit2 [math][fit] Enable External Hessian computation only for Minuit2 to avoid Hessian check in case of linear fitting Fix also an issue with TFumiliMinimizer (divide correctly by 2 in chi2) and fix a bug in computing Chi2 hessian element that is used by fumili In stressHistoFit uses Fumili2 for test without analytical gradients (w/o option G) 16 December 2022, 23:05:18 UTC
033a7b7 [math][fit] Add also interface for checking if Hessian can be computed Add in the Model funciton and in the FitMethodFunction teh interface to check if the Hessian can be computed and provided for fitting Fix also few compilation errors when using VecCore 16 December 2022, 16:03:54 UTC
5b9a8b9 [math] Add interface to compute Hessian in Parameteric Model function and FitMethof functions Add possibility to compute directly Hessian (e.g. from AD in TFormula) to the interfaces used in Fitting. Propagate the computation in the Fitter class so the Hessian computation can then be brought to Minuit. Improve also the DataElement computations in the FitMethod functions that are used by the Fumili algorithm. Ther eone can compute either the approximated Hessian (using only the gradients of the model function) or the full one. Adapt corresponding interfaces also in GSL MultiFit and in TFumili 15 December 2022, 18:23:21 UTC
dc6a46a [math][minuit2] Various improvements for Analytical Hessian and in Fumili Improve computation of the correct Hessian approximation in Fumili for binned likelihood. We assume now that the approximated Hessian is computed from the FitMethodFunction, since some extra information (function bin value and bin contents) are needed. 15 December 2022, 16:53:28 UTC
830a7da [math][minuit2] Improve printing of vector and matrices Improve in MnPrint the printing of the vector and the matrices. Use a default static parameter, MnPrint::MaxNP to stop printing parameter vector and matrices over a given values. Use 10 as default max. 15 December 2022, 16:50:19 UTC
18bd5ee [math][minuit2] Fix some compiler errors due to a missing include 23 November 2022, 14:13:24 UTC
b1a8beb [math][minuit2] Implement SeedGenerator using Analytical (external) Hessian Update SeedGenerator to use the AnalyticalCalculator with G2 or Hessian compiutation. If G2 is not available, compute Hessian and use only its diagonal. Using the full Hessian is reserved for strategy 2, since it would require to check also if it is positive defined. Apply also same small improvements and cleanup in other Minuit classes 22 November 2022, 17:50:07 UTC
fcf57e7 [math] Improve GradFunctor with a new constructor. Add a new constructor in GradFunctor from a std::function implmenting the gradient calculation instead of partial derivatives. 18 November 2022, 09:38:21 UTC
2bd2e8d [math][minuit2] Improve test for external gradients (AD) 10 November 2022, 15:54:22 UTC
ded9c50 [hist][tformula] Use TMath::Sq instead of TMath::Power for ^2 in TTFormula expressions 10 November 2022, 15:53:16 UTC
9572a2b [math][minuit2] First implelmentation in Minuit2 of mNHesse using external Hessian calculator 09 November 2022, 09:07:59 UTC
8be3a00 Register the operators in the constructor of RModelParser_ONNX 08 November 2022, 18:01:15 UTC
af3b64a [RF] Always clone constraint term in `createNLL` Even though cloning the constraint term is technically only required when the computation graph is changed because global observables are taken from data, it is safer to clone the constraint model in general to reset the normalization integral caches and avoid ASAN build failures (the PDF of the main measurement is cloned too anyway, so not much overhead). This can be reconsidered after the caching of normalization sets by pointer is changed to a more memory-safe solution. 08 November 2022, 17:55:28 UTC
25619a4 Add LayerNormalization operator 08 November 2022, 15:12:19 UTC
0e86080 [skip-ci] wrong variable was tested in Makefile 08 November 2022, 13:29:13 UTC
0bff81e [RF] Remove unused includes of RooNLLVar.h 08 November 2022, 09:24:27 UTC
352842c [RF] Restrict sigma parameters in `testFitPerf` to positive values This is to suppress RooFits warnings. 08 November 2022, 09:24:27 UTC
1adfe6e [RF] Correctly support `enableOffsetting()` in new BatchMode The old test statistic classes also supported enabling the offset feature after their construction via the `RooAbsReal::enableOffsetting` hook. This function is now also correctly overloaded in the `RooNLLVarNew` for the BatchMode. Furthermore, the implementation of `RooAddition::enableOffsetting` is now moved to the base class `RooAbsReal`. This implementation was only recursively calling `enableOffsetting` for the servers, which did the job for the old test statistics, which were only combined with `RooAdditions`. The new BatchMode also adds the NLLs with RooAdditions, but on top of them sits another wrapper class, the `RooFitDriverWrapper`. It should also forward the `enableOffsetting` calls correctly. The most general solution to this problem is probably to forward the `enableOffsetting` call for all `RooAbsReal`-derived classed, up to the point where the recursion ends either at an old or a new test statistic object. 08 November 2022, 09:24:27 UTC
43016f0 [ACLiC] For macOS, make sure the syslib exists: macOS 13 again moves many libraries into the binary blob: these files do not exist anymore on disk, but the linker "knows what to do". Linking against them would fail ("file not found"), so rely on the non-system libraries to pull them in. An exception are /usr/lib/system/libsystem_... which *do* exist on disk but must not be linked against. (cherry picked from commit 00232a0ca4fdfea2b813158f2406a33ef3e2512b) 07 November 2022, 13:54:39 UTC
916a1cf [RF] Update `RooRealIntegral::_funcNormSet` member to unique_ptr Changing a raw pointer to `std::unique_ptr` is handled by automatic schema evolution, but the class version still needs to be incremented. 07 November 2022, 11:31:22 UTC
faa42a1 [RF] Ensure that using variable clones also works to specify integrals Recently, in commit 47c250898f, the algorithm to figure out the value and shape servers of integrals was rewritten. However, the new implementation analyzed the computation graph by pointer, which caused a wrong list of servers if one passed clones of the integration variables to the integral constructor. This commit fixes that, and also implements a unit test for this case. Closes #11637, as the issue was caused by the integration variable wrongly being registered as a value server of the integral. This made the reproducer code in the issue thread very slow, because the integral was reevaluated for each event. 07 November 2022, 11:31:22 UTC
b485048 DTD files are not in XML format and should not claim to be (#11646) The bogus XML designation causes the file to fail XML diagnostic tests. Test description: Check that XML files included in the RPM payload are well-formed. ======================================== Test Output ======================================== xml: ---- Result: VERIFY 1) /usr/share/doc/root/tutorials/xml/person.dtd is not a well-formed XML file in root-tutorial on noarch Waiver Authorization: Anyone Details: Extra content at the end of the document Suggested Remedy: Correct the reported errors in the XML document 07 November 2022, 09:43:08 UTC
25e425f [ski-ci] fix typo (#11661) 04 November 2022, 12:11:37 UTC
c1c95e3 [tmva][sofie] Fix broadcasting of bias tensor in ConvTranspose When fusing from ConvTranspose + Add the bias tensor has the same dimension of the ConvTranspose output but different legth (with 1's for batch and input sizes). We need to support this case in broadcasting it. - Fix also Gemm when input shape is of dim=1 This is the case when the input has no batch size, i.e. has dim=1. e.g from a model received from ALICE - Add also some fixes in the Fuse MatMul+Add and ConvTrans+Add in case the input of Add is reversed, i.e. bias input tensor is the first one instead of being the second one 04 November 2022, 11:58:43 UTC
f7674ab [tmva][sofie] Fix Transpose convolution using col2im - fix computing output dimension with padding - fix trans convolution by adding a function col2im in SOFIE_Common - do convolution as an inverse, first a Gemm and then col2im - disable 3d conv transpose since it is not supported yet - disable 3D convtranspose tests - Fix Parsing Fuse MatMul and Add operators - Add the bias inside the loop - Fix the BLAS in Transpose convolution when using col2im - Do correctly the BLAS operation. The returne dmatrix after BLAS needs to be transposed to what was done before. Fixes also for input/output channels. All tests now pass in all configuration apart from group and dilated convolution that still needs to be tested. 3D conv transpose needs also to be fixed using the correct 3d col2im 04 November 2022, 11:58:43 UTC
d7da036 [tmva][sofie] Add new test for ConvTranspose in TestSofieModels 04 November 2022, 11:58:43 UTC
cfe9f4c [tmva][sofie] Fix ConvTranspose for multiple channels We need to multiply by the number of input channels one of the input dimension for the matrices used for the convolution. 04 November 2022, 11:58:43 UTC
cac8cc1 [slip-ci] Improve the graph figures (add titles) (#11659) 04 November 2022, 11:52:13 UTC
b04580f Minuit2: Explained delgam warning messages in info (#11652) The previous warning messages only helped if one already knows how Minuit works. Also they warned, without adding insight as to what exactly the issue is. This commit adds explanatory text printed in loglevel "Info", and a short discovery note in the old warnings. Also adding a link to the "Tutorial" that is referenced for documentation, since otherwise it is very non-trivial for unexperienced people to find it. Co-authored-by: 2xB <2xB@users.noreply.github.com> 04 November 2022, 11:06:44 UTC
f77e199 Fixing a dead link to minuit.pdf in TMinuit.cxx (#11658) Fixing a dead link to `minuit.pdf` in `TMinuit.cxx` 04 November 2022, 10:19:35 UTC
260c662 [PyROOT] Replace assertEquals (removed in Python 3.12) with assertEqual The deprecated alias assertEquals has been removed in Python 3.12: https://docs.python.org/3.12/whatsnew/3.12.html#removed The removal causes tests to fail with errors like the one below: Traceback (most recent call last): File "root/bindings/pyroot/pythonizations/test/tclass_dynamiccast.py", line 22, in test_dynamiccast self.assertEquals(type(o_upcast), TObject) ^^^^^^^^^^^^^^^^^ AttributeError: 'TClassDynamicCast' object has no attribute 'assertEquals'. Did you mean: 'assertEqual'? 03 November 2022, 19:54:29 UTC
dcd54d6 Arrow on axis (#11645) 03 November 2022, 12:32:09 UTC
9d95f44 [rbrowser] automatically create info widget when typing ".g" 03 November 2022, 10:26:42 UTC
4468023 [rbrowser] use TreeTable to display cling info Let expand dedicated items 03 November 2022, 10:26:42 UTC
51e2467 [rbrowser] introduce cling info widget It shows parsed output of '.g' command in TextArea 03 November 2022, 10:26:42 UTC
a438cf0 [TMVA][SOFIE] Fix infer function input tensors order (#11625) * fix: infer function should take input in correct order * fix: ordering of input tensors in tests of Pow, Sub, Div and Pow_Broadcast * fix: correct order for input tensors in tests for AddBroadcast * fix: added default case to avoid warnings 03 November 2022, 10:24:17 UTC
c090147 [cling][docs] Change the theme with a better looking one. 03 November 2022, 09:51:21 UTC
088d524 [TMVA][SOFIE] Fix concat operator (#11594) * fix: Concat op for 0th dimension concat * feat: inference for tensors with contigous memory * fix: for loop condition for checking contigous memory 02 November 2022, 15:41:01 UTC
80b20c8 [skip-ci] clarify which methods are not implemented in TH2Poly (#11648) 01 November 2022, 16:25:32 UTC
8cc176c Avoid race condition between tutorial/roofit/rf512_wsfactory_oper.C and tutorial/roofit/rf512_wsfactory_oper.py When run in parallel they delete eachother's files: cc1plus: fatal error: /builddir/build/BUILD/root-6.26.08/redhat-linux-build/runtutorials/RooCFAuto000Pdf_cxx_ACLiC_dict.cxx: No such file or directory compilation terminated. /usr/bin/ld: cannot find /builddir/build/BUILD/root-6.26.08/redhat-linux-build/runtutorials/RooCFAuto000Pdf_cxx_ACLiC_dict.o: No such file or directory collect2: error: ld returned 1 exit status 31 October 2022, 08:41:30 UTC
04a77df [windows][cmake] Replace all CMAKE_GENERATOR_PLATFORM by CMAKE_SIZEOF_VOID_P to test x86/x64 27 October 2022, 10:36:59 UTC
233019e The line color for "COL POL" can be changed (#11638) * The line color for "COL POL" can be changed * Add the others line attributes 26 October 2022, 14:05:31 UTC
36d6a97 [RF] Only subtract NLL offset when not hidden in new BatchMode The old test statistics did not apply the offset subtraction if `RooAbsReal::hideOffset()` was `true`, and the new BatchMode should do the same. 26 October 2022, 10:16:44 UTC
1d68411 [RF] Don't ignore empty bins for binned PDF in BatchMode To be consistent with the old test statistics classes, empty bins should not be skipped if the binned likelihood optimization is enabled. 26 October 2022, 10:16:44 UTC
4b99787 [RF] Avoid arg name collision in simultaneous components in BatchMode The new BatchMode always had some trouble in simultaneous fits when the same argument was reused in different components, because intermediate values are stored by argument name and there are different results for each component. To solve this problem, the names of all arguments in a given component are now prefixed by the category label surrounded by underscores. Furthermore, the `getParameters` function for objects created with the new BatchMode is improved such that observables renamed with this prefixing are not confused with parameters. Closes #10991. 26 October 2022, 10:16:44 UTC
7bbe688 [RF] Add printing to RooFitDriver to inspect current state It is very useful for debugging to inspect the state of the `RooFitDriver`. For this, a new function is added that prints a nice table like this: ``` --- RooFit BatchMode evaluation --- -----------------------------------------------------------------------------| | Idx | Name | Class | Size | From Data | 1st value | -----------------------------------------------------------------------------| | 0 | _weight_sumW2 | RooRealVar | 1 | 1 | 1 | | 1 | _weight | RooRealVar | 1 | 1 | 1 | | 2 | b | RooRealVar | 1 | 0 | -0.5 | | 3 | x | RooRealVar | 1000 | 1 | 0.437143 | | 4 | c2 | RooGenericPdf | 1000 | 0 | 0.803666 | | 5 | c2_Int[x] | RooRealIntegral | 1 | 0 | 1.83583 | | 6 | c2_over_c2_Int[x] | RooAbsPdf | 1000 | 0 | 0.437767 | | 7 | a | RooRealVar | 1 | 0 | -0.2 | | 8 | c1 | RooGenericPdf | 1000 | 0 | 0.916284 | | 9 | c1_Int[x] | RooRealIntegral | 1 | 0 | 3.1606 | | 10 | c1_over_c1_Int[x] | RooAbsPdf | 1000 | 0 | 0.289908 | | 11 | mypdf | RooProdPdf | 1000 | 0 | 0.126912 | | 12 | RooNLLVarNew | RooAbsReal | 1 | 0 | 2633.6 | | 13 | nll_mypdf_mypdfData | RooAddition | 1 | 0 | 2633.6 | -----------------------------------------------------------------------------| ``` For any likelihood that is created with the new BatchMode, just call `Print("v")` on it and you will get this. This is meant for debugging and doesn't change any functionality. 26 October 2022, 10:16:44 UTC
d8ae8a0 [RF] Correctly normalize simultaneous PDFs in BatchMode In simultaneous fits, the combined PDF should be correctly normalized over the union of the components, weighted by the component data weight. This was not implemented in the new BatchMode so far and is added in this commit. 26 October 2022, 10:16:44 UTC
34e736c [RF] Support `SplitRange()` in new BatchMode The RooAbsPdf::fitTo() function has a `SplitRange()` command argument that was so far ignored by the new BatchMode. The effect is that for each component, the fit range is suffixed by the category label. Testing this functionality is covered by the `MultiRangeFitWithSplitRange` test in `testRooSimultaneous`, which is changed in this commit to also validate the new BatchMode. 26 October 2022, 10:16:44 UTC
54dcd9e [RF] Add new helper function to adapt fit range name for component When `SplitRange()` is used, each subrange in a ranged fit needs to be suffixed with the category label. For example, `r1,r2` becomes `r1_cat0,r1_cat0`. Since this has also to be done in the new test statistics and the new BatchMode, the logic to do so is factored out into a helper function that will also be used by the BatchMode in the next commit. 26 October 2022, 10:16:44 UTC
09b50b4 [RF] Fix inconsistency in `NumCPU()` that was there at least since 5.34 For some reason, the `nCPU` configuration argument for the test statistics was propagated differently to the component test statistics for ranged and non-ranged fits. In the range case, there was a sign flip if `_mpinterl` was `true`, but there is not reason to have this different multiprocessing logic for ranged fits. It only adds a further code branching that is not convenient to consider in code refactoring. Therefore, this commit suggests to treat the `nCPU` argument the same for ranged and non-ranged fits. 26 October 2022, 10:16:44 UTC
e384fce [RF] Force BatchMode `off` in test that covers legacy test statistics There is one unit test that covers a problem that is specific to the old `RooNLLVar`, so when creating the NLL in that test the BatchMode should be explicitely switched off. Like this, the test would still work if the default backend would be changed to the BatchMode. 26 October 2022, 10:16:44 UTC
b7a5d89 [RF] Add support for `RooCompositeDataStore` in new BatchMode The `BatchMode()` so far did not support fitting to datasets that used the `RooCompositeDataStore`, which is commonly used for simultaneous datasets. To support this, the new BatchMode now also used `RooAbsData::split()` to split the data accorting to the category in simultaneous fits, because the datasets that are resulting from the split are using the `RooVectorDataStore` again. 26 October 2022, 10:16:44 UTC
28f5553 [RF] Reduce code duplication in `RooAbsData::split()` The `RooAbsData::split()` methods had two overloads. One for general categories, and one for splitting according to the components of a RooSimultaneous. The code in these two functions was largely duplicated. This commit factors out common parts to anonymous functions, such that no code is duplicated. This improvement is done now, as I plan to use the same `split()` function also in the new BatchMode. 26 October 2022, 10:16:44 UTC
e5c82a8 Fix Shape operator (#11635) 26 October 2022, 09:57:40 UTC
6565c95 Fix ClingTargets.cmake not being installed The property CLING_HAS_EXPORTS seems to be a leftover, there are no references to it in the codebase. 25 October 2022, 13:16:52 UTC
b5353ac Fix the build on MSVC Closes https://github.com/root-project/cling/issues/454 25 October 2022, 13:16:52 UTC
8b5c4d6 Typo (#11324) 25 October 2022, 06:21:38 UTC
d63eef9 clarify that TGaxis func is inverted (#11281) * clarify that TGaxis func is inverted Fixes https://sft.its.cern.ch/jira/browse/ROOT-8498 * clarify also in constructor 24 October 2022, 15:22:54 UTC
a5cbb5d [win] Add manifest file for UTF-8 code pages This should fix the issue #11519. Thanks to shangjiaxuan for providing the solution! 24 October 2022, 13:39:26 UTC
fc8df76 [PyROOT] Filter out ASan related libraries They need to be preloaded into the Python process, but must not be propagated into instrumented executables such as root or rootcling. 24 October 2022, 11:04:26 UTC
26ff57e Whitelist AddressSanitizer runtime and ROOT configuration 24 October 2022, 11:04:26 UTC
84e0700 [rbrowser] fix gcc warning about missing override specifier 21 October 2022, 11:38:40 UTC
b70423a [jsroot] fix lgtm warning concerning unused import 21 October 2022, 11:38:40 UTC
ba4dab1 [jsroot] dev 20/10/2022 - Improve ui5 loading inside TCanvasPainter - provide JSROOT functions from JSROOT code - Fix tiny update problem of online canvas - Fix multipart http message handling 21 October 2022, 11:38:40 UTC
0c5db16 [rbrowser] adjust JS syntax in controller.js Also let enter plain regex when filtering items 21 October 2022, 11:38:40 UTC
0271bce [web tree viewer] better format histogram title Some special symbols may not be displayed with MathJax 21 October 2022, 11:38:40 UTC
e191937 [web tree viewer] better handling of branch/leaf clicks Use expression which are used for TTree::Draw Let reassign TTree 21 October 2022, 11:38:40 UTC
ff2c5ed [rbrowser] improve branches/leafs handling in browsables Correctly handle elements like @size, show tree when branch cannot be drawn directly 21 October 2022, 11:38:40 UTC
1c50efc [rbrowser] let disable browsing of some objects Even when object returns IsFolder() kTRUE, one can now disable browsing of that object. This done now TClass instances. 21 October 2022, 11:38:40 UTC
8e893cb [rbrowser] correctly handle TObject with complex inheritance One should correctly handle classes offsets when TObject is not very first parent in inheritance 21 October 2022, 11:38:40 UTC
79ca076 [rbrowser] set default edit action for TColor element 21 October 2022, 11:38:40 UTC
f543f9c [rbrowser] use TObjectElement as base class for dir/keys elements While they holding TObject with class, size (optional), modification time (optional) 21 October 2022, 11:38:40 UTC
0cdb7b4 [rbrowser] create RItem via RElement Item is send to client to describe entry in hierarchical structure. It has name, title, size, modification time. Before item was created only via iterator - faster but not flexible Now item created by element - which has all kind of custom information Add size and modification time for TFile and TKey 21 October 2022, 11:38:40 UTC
10dd7d5 [rbrowser] provide size and time info for TFile and TKey classes 21 October 2022, 11:38:40 UTC
6873899 [web fitpanel] avoid double deletion of TF1 Can happen when function drawn on the canvas. 21 October 2022, 11:38:40 UTC
b06a0bf [webcanvas] change method to initialize ui5 panels inside canvas After JSROOT v7 code managed absolutely different and therefore selecting some special methods is not trivial from outside JSROOT. Therefore now canvas painter will provide special method to resolve such problem. Requires latest JSROOT code. 21 October 2022, 11:38:40 UTC
ced2f1d [webgui] adjust ping.html Do not use deprecated methods, use single quotes 21 October 2022, 11:38:40 UTC
40aa68d [cxxmodules] Avoid lookup from system headers (#11514) Avoid loading ROOT modules while Clang is instantiating a template class from STL, leading to ODR checks with an incomplete class. 21 October 2022, 06:40:04 UTC
e4e870a [RF] Optimize new algo to figure out RooRealIntegral servers This is a followup to commit 47c250898f3. The new algorithm to figure out the servers of a RooRealIntegral could get very expensive for large computation graphs, as seen with the ATLAS Higgs combinaiton. The problem was that there was a loop over an arguments clients for each argument in the computation graph. In this commit, loop is replaced by another loop over the computation graph in which one iterates only over the servers of the arguments that depend on the integration variables. I think this logic is even more intuitive to understand as well. I learned also that iterating over clients is never a good idea, because while the number of servers is well defined, there can be arbitrary many clients, making the performance very unpredictable. It was verified with flamegraphs that the performance of the likelihood creation for the ATLAS Higgs combinaiton model is now again identical to the state before commit 47c250898f3 20 October 2022, 15:02:04 UTC
803aada [RF] Make `createConstraintsTerm()` a private implementation detail In ROOT 6.26, the `createConstraintsTerm()` function was introduced as a public static member of RooConstraintSum. But it's better if this stays private such that the interface can be changed more freely. This should be no problem, because as it was only in one release so far and never advertised anywhere. 20 October 2022, 15:01:53 UTC
08c4265 [RF] Get rid of caching of constraints in RooWorkspace With the performance optimizations in #11015, the cost of `createConstraintTerm` became negligible even for the biggest computation graphs (full ATLAS Higgs combination models). See also the flamegraphs in the description of that PR>. It is therefore not necessary to implement the caching of constraints in the workspace anymore, which is better because with caching things go often wrong. 20 October 2022, 15:01:53 UTC
2c97c6f [RF] Check that all params passed to `Constrain()` are RooRealVars It only makes sense to constraint parameters, not functions or PDFs. This commit suggests to error out if one passes arguments that are not RooRealVars to `Constrain()`. This check was motivated by the `testRooSimultaneous` unit test, which used the `Constrain()` command argument wrong. This is also fixed in this commit. 20 October 2022, 15:01:53 UTC
ac7aedf [RF] Remove `RooProdPdf::computeBatch` hack meant to ignore constraints 20 October 2022, 15:01:53 UTC
611216b [RF] Remove obsolete checks for constraints in NormalizationHelpers Now that in the BatchMode NLLs the constraints are removed from their original `RooProdPdfs`, we don't need no code in the BatchMode implementation details to account for this. 20 October 2022, 15:01:53 UTC
c797cfa [RF] Implement removing constraints from `RooProdPdf` when getting them This is the central commit of the PR that this commit belongs to. A new optional flag is added to `RooAbsPdf::getConstraints()` to remove the constraints from the PDF that they were extracted from. This means that it is technically impossible to double count constraints, and misleading connections between the constraints and the `RooProdPdfs` that they shipped with in the final NLL computation graph are avoided. The new BatchMode is using this constraint removal, resulting in it having to do no special treatment of RooProdPdfs with constraints later on. 20 October 2022, 15:01:53 UTC
5e50446 [RF] Don't clone constraint term separately for new BatchMode We can just take the PDF that is already cloned and extract the constraints. This makes it possible to not bother about changing the computation graph when extracting the constraints, which is the plan for the next commit: the constraints will be removed from the original PDF. 20 October 2022, 15:01:53 UTC
d0b0aac [RF] Avoid duplicating PDF massaging code in BatchMode and old RooFit * The reoccuring pattern of cloning a PDF recursively and then reattaching parameters is put in a new `RooHelper` function for use in multiple places of the NLL creation * The logic to set the `"fitrange"` attribute that was so far duplicated in the old test statistics classes and the BatchModeHelper is not put in a single function that is called before the NLL creation no matter what the backend is 20 October 2022, 15:01:53 UTC
c83afdd [RF] Fix AddPdf normalization sets for BatchMode test statistics test The new test statistics classes are still using the old BatchMode, which has a problem with the RooAddPdf normalization if the coefficient normalization is not fixed in advance, or the PDF is evaluated already before such that the last normalization set is used. 20 October 2022, 15:01:53 UTC
e7c7170 [cmake] Update XRootD to v5.5.1 * Update XRootD builtin from v5.5.0 to v5.5.1 - c.f. https://github.com/xrootd/xrootd/releases/tag/v5.5.1 * Follow up to https://github.com/root-project/root PR 11328 20 October 2022, 07:03:32 UTC
5f5fdc2 reorder 19 October 2022, 16:39:58 UTC
de61706 reorder 19 October 2022, 16:39:58 UTC
9f64446 reorder Co-authored-by: Philippe Canal <pcanal@fnal.gov> 19 October 2022, 16:39:58 UTC
80bde6d unify two lines docu returning same value 19 October 2022, 16:39:58 UTC
f38015b fix sign of comparison 19 October 2022, 16:39:58 UTC
d7cdd50 more precise wording Co-authored-by: Javier Lopez-Gomez <javier.lopez.gomez@cern.ch> 19 October 2022, 16:39:58 UTC
7b286ec fix typo and clarify when unreachable 19 October 2022, 16:39:58 UTC
9a1aa12 add noreturn also to abort function. use throw to circumvent the fact that compiler does know whether abstractMethod is noreturn 19 October 2022, 16:39:58 UTC
d095aa1 clarify in doc that terminate sometimes returns if SetReturnFromRun was called 19 October 2022, 16:39:58 UTC
back to top