090ccec | will-cern | 28 September 2023, 12:09:24 UTC | [RF] Update to latest xRooFit (#13717) * update xRooFit to latest version * declare ROOT::Experimental::XRooFit namespace for ROOT's copy of xRooFit * fix namespace alias * address PR comments * [RF] Improvements to `xroofit` documentation structure * Add a new `xroofit` group to the RooFit documentation * Add semicolons behind the `NAMESPACE` macros. They have no effect on the C++ compilier, but macros without trailing semicolons confuse doxygen * Add the `xRooNode` and `xRooNLLVar` classes to the `xroofit` documentation group. Other xroofit classes might also go there, but I don't know which ones should really be public. So I only added these two to give and example. * Move RooBrowser documentation to xRooBrowser. Now that xRooFit is considered part as the experimental user interface, this is fine to do. Like this, doxygen can associate the actual xRooBrowser implementation with the docs. * Rename `RooFit::Detail::XRooFit` namespace to `ROOT::Experimental::XRooFit` instad of using namespace alias. Again, this is done to not confuse doxygen. To build the documentation quickly, edit the `documentation/doxygen/makeinput.sh` directory and comment out all subdirectories except for `roofit`. Call `make` in the doxygen directory. Type `y` if it should ask you to overwrite some files in the end. The xRooFit documentation will end up in the `~/rootdoc/html/group__xroofit.html` directory. * address some typos | 28 September 2023, 12:09:24 UTC |
a345367 | Axel Naumann | 28 September 2023, 08:04:31 UTC | [ci] Pass --binaries for all platforms; fix syntax of cpack invocation. | 28 September 2023, 11:58:51 UTC |
41a40b3 | Bertrand Bellenot | 28 September 2023, 08:22:46 UTC | Append to the `xml_veto` list instead of (re-)creating it Prevent running xml tests when xml is disabled, suppressing the following test failures: ``` TEST FAILURES: 971:tutorial-xml-DOMParsePerson 972:tutorial-xml-DOMRecursive 973:tutorial-xml-SAXHandler ``` | 28 September 2023, 11:47:11 UTC |
ef2ff08 | Sergey Linev | 28 September 2023, 07:34:33 UTC | [jsroot] 7.5.pre 28/09/2023 with TPaletteAxis fixes 1. Properly redirect context menu commands to histogram Z axis 2. When moving palette - send updates back to the server 3. Improve HierarchyPainter Draw/Expand/Unexpand context menu commands | 28 September 2023, 08:00:36 UTC |
6e556ce | Jonas Rembser | 27 September 2023, 14:01:07 UTC | [math] Early return of minimum state when using simplex with no params This avoids the problems when running simplex with zero parameters reported in #6775. | 27 September 2023, 18:20:19 UTC |
aa3bff2 | Sergey Linev | 27 September 2023, 07:35:16 UTC | [jsroot] 7.5.pre 27/09/2023 with axis/palette fixes 1. Allow negative labels offsets on axis 2. Provide extra gaps for labels as it done in ROOT 3. Copy Z axis attributes to palette before drawing 4. Shrink axis labels 5. Small fix in col drawing | 27 September 2023, 14:13:46 UTC |
cbb4cfe | Sergey Linev | 26 September 2023, 16:47:28 UTC | [webcanvas] use only first frame in the pad Any others (or duplication) will be excluded from the web drawings | 27 September 2023, 14:13:46 UTC |
0d355cf | Sergey Linev | 26 September 2023, 12:48:46 UTC | [canvas] protect TPad::DrawFrame if gPad == nullptr If by chance gPad is nullptr, method will crash | 27 September 2023, 14:13:46 UTC |
d5d820e | Sergey Linev | 26 September 2023, 12:27:49 UTC | [jsroot] 7.5.pre 26/09/2023 with on/off for active pad highlight | 27 September 2023, 14:13:46 UTC |
5af4b57 | Sergey Linev | 26 September 2023, 12:24:18 UTC | [webcanvas] highlight active pad only optionally, off by default Can be changed in the options menu Make looking similar as with native ROOT | 27 September 2023, 14:13:46 UTC |
d25bf79 | Sergey Linev | 26 September 2023, 11:12:34 UTC | [webcanvas] fix first connection index Only first client allowed to change some values in the canvas. But now first connection has index 1 - while index 0 is for batch. | 27 September 2023, 14:13:46 UTC |
8eb4d23 | Sergey Linev | 26 September 2023, 09:30:03 UTC | [webcanvas] ensure TGraph histogram when axes drawing is specified | 27 September 2023, 14:13:46 UTC |
ce56b72 | Sergey Linev | 26 September 2023, 08:40:43 UTC | [jsroot] 7.5.pre 26/09/2023 1. Fix AXIS draw option - do not draw hist title 2. Fix scaling of custom labels - factor 0.6666 as in TGaxis:1504 | 27 September 2023, 14:13:46 UTC |
14d9b02 | Sergey Linev | 26 September 2023, 06:10:32 UTC | [webcanvas] do not show hist title with AXIS draw option | 27 September 2023, 14:13:46 UTC |
3d87d7d | Axel Naumann | 20 September 2023, 11:56:52 UTC | [cmake] Make unfold optional so it can be disabled: It is GPL licensed and ROOT binaries must not have it enabled. | 27 September 2023, 09:49:41 UTC |
e251a3a | Axel Naumann | 25 September 2023, 10:09:33 UTC | [pythia8] Fix license of TPythia8Decayer (NFC): as per request by Peter Hristov, ALICE. | 27 September 2023, 07:06:39 UTC |
d7baa44 | Jonas Rembser | 26 September 2023, 15:04:00 UTC | [RF][HS3][HF] Backwards compatible way of dealing with bin widths The bin width modifiers are handled separately from the other modifiers in the HistFactory JSON IO. However, do detect them, we can't just check for the RooBinWidthFunction type here, because prior to ROOT 6.26, the multiplication with the inverse bin width was done in a different way (like a normfactor with a RooRealVar, but it was stored in the dataset). Fortunately, the name was similar, so we can match the modifier name. | 26 September 2023, 20:44:05 UTC |
30177a3 | Jonas Rembser | 26 September 2023, 10:07:22 UTC | [RF][HS3] Don't automatically set `BinnedLikelihood` on HF model import The JSON import of HistFactory models was always setting the "BinnedLikelihood" attribute to trigger the binned likelihood optimization in the fit. That's generally a good thing, however it can create backwards compatibility issues. For older HistFactory models that don't use the binned likelihood optimization by default, it comes as a surprise to the user that the definition of the likelihood is suddenly different. This commit suggests to not hardcode the `BinnedLikelihood` attribute in the HistFactory JSON IO, but instead rely on the the regular JSON IO of RooAbsArg attributes to make sure that the attribute is only set in the imported workspace if it was also set in the original workspace. Other changes in this commit: * Some RooAbsArg names in the HS3 HistFactory import are also changed to reflect the old HistFactory implementation * Variables in the code are renamed to avoid one-letter variable names | 26 September 2023, 20:44:05 UTC |
6905629 | Florine de Geus | 21 September 2023, 13:29:33 UTC | [ntuple] Make column type info table Markdown-parseable | 26 September 2023, 06:58:02 UTC |
fdd8807 | Florine de Geus | 21 September 2023, 13:05:29 UTC | [ntuple] Extend `RNTupleInspector::PrintColumnTypeInfo` documentation | 26 September 2023, 06:58:02 UTC |
cae93d9 | Florine de Geus | 21 September 2023, 12:25:54 UTC | [ntuple] Change `ColumnTypeInfo` update operator | 26 September 2023, 06:58:02 UTC |
548422f | Florine de Geus | 03 August 2023, 08:53:15 UTC | [ntuple] Add `PrintColumnTypeInfo` to `RNTupleInspector` | 26 September 2023, 06:58:02 UTC |
297dbde | Florine de Geus | 21 September 2023, 13:53:40 UTC | [ntuple] Homogenize `RNTupleInspector` method names | 25 September 2023, 15:16:02 UTC |
b832604 | Sergey Linev | 22 September 2023, 13:37:50 UTC | [jsroot] 7.5.pre 22/09/2023 with TProfile3D support 1. Support TProfile3D 2. Support scaling of special fill patterns | 25 September 2023, 11:36:35 UTC |
f4a23f7 | Axel Naumann | 20 September 2023, 12:06:14 UTC | [win32gdk] Remove unused relocatable; gcompat.h: They are GPLed (unlike the rest); our build has `#undef ENABLE_RELOCATABLE` in `graf2d/win32gdk/gdk/src/iconv/config.h`. gcompat.h is not included anywhere. So there is just no reason to keep these. | 25 September 2023, 05:59:33 UTC |
fd2a14f | Axel Naumann | 20 September 2023, 11:44:42 UTC | [hist] Fix license for TGraphSmooth (NFC): After consultation with Christian Stratowa, the intent was to use the same license as that of ROOT. Given the commit 041f9ed55290e7edcfd78a15dfcd3c0eb7b8c9fc which sets the (c) to Fons+Rene, the copyright for Christian must end around that time that Christian has donated the code to Fons&Rene. Use consistent header for .h and .cxx. | 25 September 2023, 05:57:40 UTC |
ceef062 | Mattias Ellert | 25 September 2023, 04:25:54 UTC | Remove ELISPDIR - nothing is installed in it anymore | 25 September 2023, 05:53:43 UTC |
dc9d47b | Andre Sailer | 23 September 2023, 15:51:46 UTC | [config] remove install of remove root-help.el | 24 September 2023, 08:58:51 UTC |
1046dc6 | Danilo Piparo | 24 September 2023, 07:04:10 UTC | [TMVA] Do not run CNN tutorial if imt not specified if imt is not specified, this tutorial should not be run as a test. | 24 September 2023, 08:57:39 UTC |
b9d6ebc | Danilo Piparo | 22 September 2023, 07:42:40 UTC | [CMake] Eliminate duplicate linked libs | 23 September 2023, 15:15:10 UTC |
dae23db | Jonas Rembser | 22 September 2023, 10:44:13 UTC | [RF] Implement the `EvalBackend("codegen_no_grad")` option This is done by adding a new constructor flag to the RooFuncWrapper whether the gradient should be compiled or not. | 22 September 2023, 13:42:54 UTC |
ece77ec | Jonas Rembser | 21 September 2023, 23:33:24 UTC | [RF] Explain new `EvalBackend()` command argument in documentation Add explanation on all the possible `EvalBackend()` choices for the likelihood: * legacy * cpu * cuda * codegen * codegen_no_grad | 22 September 2023, 13:42:54 UTC |
9c6ed73 | Jonas Rembser | 21 September 2023, 22:26:53 UTC | [RF] Clean up `createNLL()` and `fitTo()` docs and interfaces * Remove duplicated explanations of likelihood options from `fitTo()`. Instead, just link to `createNLL()`. * Improve documentation with explicit explanations of input and output parametrs. * Rename the `virtual` overloads of `fitTo()` and `createNLL()` that are taking only a RooLinkedList to `fitToImpl()` and `createNLLImpl()`. This avoids confusing doxygen with different overloads, and thus ensures that everytime we are referencing `createNLL()` and `fitTo()` in the docs, it will link to the highest-level user interface: the templated functions that can either take a single RooLinkedList or an arbitrary number of command arguments. * Explicitly write in the docs which functions need to be overridden when you want to customize likelihood creation or fitting behaviour. This will be useful for the few RooFit-based frameworks that actually do such a thing. * Replace `///` with `/**` to denote doxygen comment blocks. This is done because otherwise, doxygen did not detect correctly in some circumstances what is the scope of the comment block. | 22 September 2023, 13:42:54 UTC |
b272e50 | Jonas Rembser | 25 April 2023, 23:42:30 UTC | [RF] Introduce new `EvalBackend()` option for createNLL() and fitTo() The new `EvalBackend()` option will replace the `BatchMode()` option, which is kept for backwards compatibility. However, a warning is printed when one passes the `BatchMode()` option. There are also versions of this new option that don't use string arguments, like `EvalBackend::Cuda()`, such that one can ensure at compile-time that a valid backend is used. this is helpful for unit tests, but not necessarily meant for the end user. | 22 September 2023, 13:42:54 UTC |
26f2b5f | siliataider | 12 September 2023, 12:52:31 UTC | Add tests for TGraph::Sort | 22 September 2023, 12:23:31 UTC |
8af5160 | siliataider | 12 September 2023, 12:50:40 UTC | Implement TGraph::Sort using std::stable_sort | 22 September 2023, 12:23:31 UTC |
6570c5d | Aniq | 19 September 2023, 11:54:05 UTC | Remove invalid value -1 as second arg from substr | 22 September 2023, 12:18:59 UTC |
a0cc580 | Axel Naumann | 21 September 2023, 15:22:37 UTC | [README] Take into account that modern code is less OO. | 22 September 2023, 12:18:11 UTC |
8730c47 | Axel Naumann | 19 September 2023, 14:49:31 UTC | [ci] Add generation of binary package artifacts. | 22 September 2023, 12:18:11 UTC |
f4f8133 | Axel Naumann | 20 September 2023, 12:16:55 UTC | [config] Remove config/root-help.el.in: it is GPLed and thus incompatible. | 22 September 2023, 09:20:10 UTC |
ebe6694 | Axel Naumann | 20 September 2023, 12:38:27 UTC | [cmake] Turn everything with incompatible licenses off by default: The default should be a ROOT binary that respects its license; any build that creates GPLed binaries should be an active decision. Affected are uses of fftw3, gsl, Pythia 8, and unuran (all GPL), as well as Pythia 6 which does not seem to have a license. | 22 September 2023, 09:19:06 UTC |
1d5baf0 | Danilo Piparo | 21 September 2023, 14:12:57 UTC | [Build] Remove flags causing warnings on MacOS when llvm 15 is used: -single_module and -bind_at_load. Once removed, they also do not cause problems to macos 11 and 12. | 21 September 2023, 17:29:30 UTC |
1831ce6 | Danilo Piparo | 21 September 2023, 14:12:41 UTC | [Build] Do not link libgtest twice when bulding ctest executables. | 21 September 2023, 17:29:30 UTC |
e188c8f | Danilo Piparo | 21 September 2023, 09:07:30 UTC | [Build] Fix implicit comp. warning on MacOS when using llvm 15. The warning was "implicit truncation from 'int' to a one-bit wide bit-field changes value from 1 to -1 [-Wsingle-bit-bitfield-constant-conversion]" | 21 September 2023, 17:29:30 UTC |
14338c8 | Sergey Linev | 21 September 2023, 15:06:27 UTC | [jsroot] dev 21/09/2023 with fixes 1. TText/TLatex scaling to pad size 2. Handle TAxis with ndiv = 0 3. TGraph B draw option - proper bar width 4. Correctly use fixed label font size in TLegend, not always autoscale 5. Adjust columns width in TLegend to content 6. Correctly store defs when create image Fixes #13693 | 21 September 2023, 15:40:36 UTC |
fb567b4 | Axel Naumann | 20 September 2023, 12:43:57 UTC | [core] Remove Demangle: unused and incompatible license. | 21 September 2023, 15:32:54 UTC |
6245f4f | Axel Naumann | 20 September 2023, 11:28:44 UTC | [mathcore] Fix incorrect license (NFC). | 21 September 2023, 15:25:35 UTC |
85a962f | Jonas Rembser | 21 September 2023, 12:26:09 UTC | [RF] Include `gsl_integration.h` in RooFitMore instead of copy-pasting Include `gsl_integration.h` in RooFitMore instead of copy-pasting code from gsl. The linking is done in the same was as in `math/mathmore/CMakeLists.txt`. This should add no additional dependency compilcations, because RooFitMore already linked against MathMore, which requires GSL to be present. | 21 September 2023, 15:00:35 UTC |
6627da7 | Utkarsh Saxena | 17 August 2022, 14:44:41 UTC | Do not evaluate dependent immediate invocations We deferred the evaluation of dependent immediate invocations in https://reviews.llvm.org/D119375 until instantiation. We should also not consider them referenced from a non-consteval context. Fixes: https://github.com/llvm/llvm-project/issues/55601 ``` template<typename T> class Bar { consteval static T x() { return 5; } public: Bar() : a(x()) {} private: int a; }; Bar<int> g(); ``` Is now accepted by clang. Previously it errored with: `cannot take address of consteval function 'x' outside of an immediate invocation Bar() : a(x()) {}` Differential Revision: https://reviews.llvm.org/D132031 --- Fixes https://github.com/root-project/root/issues/13698, a problem with the new C++ headers from the new macOS SDK. | 21 September 2023, 14:50:20 UTC |
f54c828 | Axel Naumann | 20 September 2023, 14:45:54 UTC | [mathmore] Remove license-incompatible KelvinFunctions. Part of ROOT-10992 | 21 September 2023, 12:40:20 UTC |
3acc0e6 | Jonas Rembser | 20 September 2023, 15:21:55 UTC | [cmake] Option `roofit_multiprocess` requires option `minuit2` The RooFit gradient multiprocessing depends on Minuit2 at compile time. Therefore, building with `roofti_multiprocess=ON` should imply `minuit2=ON`, giving a warning if the user defined `minuit2=OFF`. Then, Minuit2 should only be added as a dependency to RooFitCore if `roofit_multiprocess` is switched on. | 20 September 2023, 19:43:45 UTC |
6866a57 | Jonas Rembser | 18 September 2023, 14:14:33 UTC | [math] Make Minuit2 the default minimizer in ROOT Math if available Most people prefer Minuit2 nowadays, especially RooFit users, as some of the more complicated fits don't converge with the old Minuit implementation. In case ROOT was built without Minuit2 enabled, the default falls back to `Minuit`. Also, since there is a "default default" already hardcoded in `MinimizerOptions.cxx`, it is not necessary to specify another "default default" in the default `.rootrc`. The corresponding line is commented out. | 20 September 2023, 19:43:45 UTC |
1dcd853 | Jonas Rembser | 20 September 2023, 14:19:47 UTC | [RF] Loosen comparision precision in `testHypoTestInvResult` For the estimated error on the upper limit, we need to loosen the tolerance because it is determined on-the-fly with a fit, and not read as a data member like the comment in the test said before. Withg the default minimizer changing from Minuit to Minuit2, the results are slightly different and caused this test to fail. | 20 September 2023, 19:43:45 UTC |
8a1d41f | Jonas Rembser | 20 September 2023, 13:10:56 UTC | [RF] Always use Minuit1 for contour plot tutorials The contour implementation in Minuit2 doesn't work for these RooFit tutorials yet. | 20 September 2023, 19:43:45 UTC |
eb622bf | Jonas Rembser | 18 September 2023, 12:28:54 UTC | [RF] Slighlty loosen arbitrary precision parameter in `testHistFactory` This is to make the test also pass when using Minuit2, where the post fit parameters differ by a tiny bit, pushing one of the precision parameters over the edge by 3 percent. To have a bit of a margin, the relevant precision constants are increased by 10 percent. | 20 September 2023, 19:43:45 UTC |
bd562e1 | Jonas Rembser | 18 September 2023, 09:42:38 UTC | [RF] Adapt `testNaNPacker` to Minut2 being the default minimizer | 20 September 2023, 19:43:45 UTC |
cdc6830 | Jonas Rembser | 20 September 2023, 12:44:15 UTC | [RF] Add config flag to set minimizer in `stressRooFit/HistFactory` This config parameter was already present for `stressRooStats`, and this commit also adds it for `stressRooFit` and `stressHistFactory`. The default minimizer is hardcoded to `Minuit`, not `Minuit2`. Furthermore, the code is modernized a bit, for example by using raw string literals and `int` instead of `Int_t`. | 20 September 2023, 19:43:45 UTC |
e8bdfaf | Jonas Rembser | 19 September 2023, 14:22:19 UTC | [RF] Fix all typos in RooFit source code This was done with the help of this very useful tool: https://github.com/crate-ci/typos | 20 September 2023, 14:26:10 UTC |
256dd33 | YuryYury | 20 September 2023, 11:50:40 UTC | Fixing a typo in histpalettecolor.C (#13680) | 20 September 2023, 11:50:40 UTC |
e58055c | Jonas Rembser | 18 September 2023, 17:43:28 UTC | [RF] Avoid code duplication in likelihood and chi2 fitting The function that steered the chi2 minimization had almost the exact same implementation as the one steering the likelihood fits. It would be better is the chi2 fits also use the same function as the likelihood fits, which is implemented in this PR. | 20 September 2023, 09:45:06 UTC |
fb64189 | Jonas Rembser | 18 September 2023, 17:32:24 UTC | [RF] Move declaration and parsing of minimizer options to FitHelpers | 20 September 2023, 09:45:06 UTC |
a23595b | Jonas Rembser | 18 September 2023, 17:06:15 UTC | [RF] Don't preprocess const-term optimization flag in `fitTo()` We can avoid the const-term-optimization in BatchMode or `codegen` simply by overriding the relevant function in the wrapper classes. | 20 September 2023, 09:45:06 UTC |
1a7f63f | Jonas Rembser | 18 September 2023, 16:51:29 UTC | [RF] Remove `RooFitCommon` library and use `gSystem->TempDirectory()` The RooFitCommon library only contained one single function to create a temporary directory `/tmp/roofit/` that was not even platform independed. This commit suggests to use `gSystem->TempDirectory()` instead, and prefix the temporary files with `roofit_` so there is no need for creating another subdirectory. | 20 September 2023, 09:45:06 UTC |
1c4e1af | Jonas Rembser | 18 September 2023, 11:56:36 UTC | [RF] Introduce separate private `FitHeaders.h` interface | 20 September 2023, 09:45:06 UTC |
a680f0a | Jonas Rembser | 19 September 2023, 02:40:03 UTC | [RF] Fix logic error in RooAbsPdf where Offset() was ignored in fitTo() There was a little bug in `fitTo()` when the new modular test statistics got implemented in fe6935be8a. If the `ModularL` command is not passed, the offsetting flag should be forwarded to `createNLL()`, because only for the new test statistics the offsetting is done in the minimizer only. | 20 September 2023, 09:12:22 UTC |
acd7618 | Jonas Rembser | 19 September 2023, 02:39:20 UTC | [RF] Fix typos in RooFit tutorials | 20 September 2023, 09:12:22 UTC |
afd622c | Jonas Rembser | 19 September 2023, 01:59:38 UTC | [RF] Implement `Offset("bin")` also for RooDataSet fits Fully implement the `Offset("bin")` feature also for RooDataSet, both with CPU/CUDA BatchMode and the legacy tests statistics. This is done now by introducing a new element in the computation graph: an "offset pdf" that is created as a RooHistPdf from the observed data, and it is used to get the counterterm in each bin. It was validated with the `rf614` tutorial that this binwise offsetting is indeed fixing the convergense problems that the simple offsetting by the initial NLL value can't fix. Closes #11965. | 20 September 2023, 09:12:22 UTC |
f7594a3 | Vincenzo Eduardo Padulano | 05 September 2023, 16:21:03 UTC | [PyROOT] Make building with Python 2 optional In preparation for a future removal of Python 2 support, add the `pyroot-python2` cmake build option (OFF by default). Users who really need Python 2 support can still get it, but warn them that it will be removed in a future ROOT release. | 20 September 2023, 08:51:55 UTC |
57a5c9a | Axel Naumann | 19 September 2023, 14:51:42 UTC | [cmake] Replace FindOracle.cmake: Nicer to distribute a BSD licensed version. The file `COPYING-CMAKE-SCRIPTS` is missing virtually worldwide, not even CMake includes it: https://gitlab.kitware.com/search?search=COPYING-CMAKE-SCRIPTS&nav_source=navbar&project_id=541&group_id=415&search_code=true&repository_ref=master | 19 September 2023, 21:20:27 UTC |
8b7aa49 | Sergey Linev | 19 September 2023, 11:55:48 UTC | Provide correct TCanvas::Draw and TPad::Draw for web canvas Instead direct call of Paint() call UpdateAsync() Prevent Paint() when calling TCanvas::SetGrayscale | 19 September 2023, 15:42:44 UTC |
98e9e74 | Sergey Linev | 19 September 2023, 14:52:45 UTC | [jsroot] 7.5.pre 19/09/2023 with grayscale support Add support of grayscale flag in the canvas | 19 September 2023, 15:41:09 UTC |
5df0ef8 | Sergey Linev | 19 September 2023, 07:49:41 UTC | [jsroot] 7.5.pre 19/09/2023 Preliminary 7.5.0 release for ROOT 6.30 Improve build legend functionality, provide as context menu command Fix toggling of hist draw options | 19 September 2023, 11:48:35 UTC |
0e78f9c | Sergey Linev | 19 September 2023, 07:43:35 UTC | [webgui] use actual canvas size as pdf page size When producing pdf document, set page size to maximal canvas size. Also include margins into page size to let normally embed complete canvas per page. | 19 September 2023, 11:48:35 UTC |
0b8fc4b | Sergey Linev | 13 September 2023, 11:52:07 UTC | [ipython] fix canvas width/height usage Use GetWindowWidth()/GetWindowHeight() methods to get configured drawing dimension, do not swap width/height parameters | 19 September 2023, 06:08:34 UTC |
dfd8a8a | Sergey Linev | 13 September 2023, 11:19:35 UTC | [ipython] use TWebCanvas for canvas rendering This class provides all necessary functionality for web-based display, including handling of stacks, stats, styles, colors and so on Adjust layout of the div element - use 'relative' position to preserve dimension of the JSROOT drawings. | 19 September 2023, 06:08:34 UTC |
4f7854d | Sergey Linev | 13 September 2023, 09:27:16 UTC | [ipython] support RCnavas.Update() Handle same as for TCanvas. Use RCanvas::GetUID() for canvas identifier. | 19 September 2023, 06:08:34 UTC |
b3ae186 | Sergey Linev | 13 September 2023, 08:52:09 UTC | [rcanvas] add IsUpdated() flag, required for iPython Fix problem with IsShown() - also should be set in batch mode Provide GetUID() method, which will be used in iPython | 19 September 2023, 06:08:34 UTC |
40842c7 | Sergey Linev | 13 September 2023, 08:33:23 UTC | [ipython] implement Update of canvas drawing Keep list of display handles for TCanvas and if Update called - try to update it. Works for jsroot and png display | 19 September 2023, 06:08:34 UTC |
9fb6731 | Sergey Linev | 12 September 2023, 14:23:40 UTC | Add TCanvas::IsUpdated() method It inform that Update() or UpdateAsync() methods were called. Will be used in iPython to implement graphics update functionality | 19 September 2023, 06:08:34 UTC |
d0b9ee3 | moneta | 18 September 2023, 10:14:10 UTC | Reduce number of events in PyKeras Regression tutorial to avoid timeout | 18 September 2023, 13:52:42 UTC |
acc2849 | moneta | 18 September 2023, 09:42:49 UTC | [pyroot] Add dependency on dataframe for rtensor test. This should fix some of the failures observed for builds without rdataframe | 18 September 2023, 13:52:42 UTC |
6426d90 | Jonas Rembser | 15 September 2023, 14:01:42 UTC | [RF] Bugfix in `RooDataSet::reduce()` by also copying the stored errors After adding support for subrange fits with the `RooXYChi2Var`, it initially didn't work because the y-value errors were missing in the dataset. This is because `RooDataSet::reduce()` is not copying the errors over to the reduced dataset, which is a bug. Fortunately, there is a straighforward solution. To create the reduced `RooDataSet`, it now doesn't use some buggy private constructor (that is now removed), but instead the trusty `RooAbsData::emptyClone()` method, for which I fixed the problem with the errors not being copied already some time ago. | 18 September 2023, 09:03:48 UTC |
c9bbb99 | Jonas Rembser | 15 September 2023, 13:29:49 UTC | [RF] Support `NumCPU()` and `Range()` in createChi2() for RooDataSets This is achieved in the same was as in `createNLL()`, by forwarding the configuration options to the `RooAbsOptTestStatistic` base class. | 18 September 2023, 09:03:48 UTC |
1b892b1 | Jonas Rembser | 15 September 2023, 12:52:22 UTC | [RF] Avoid separate RooXYChi2Var constructors for pdfs and functions It can be checked at runtime if a given `RooAbsReal` is a pdf or not. Like this, we also don't need a separate override of `createChi2(RooDataSet &)` in RooAbsPdf. | 18 September 2023, 09:03:48 UTC |
889beb3 | Jonas Rembser | 15 September 2023, 11:34:00 UTC | [RF] Remove multi-range chi-square fit logic from RooAbsPdf Almost a year ago, I fixed the support for comma-separated normalization ranges for pdfs, e.g. `pdf.setNormRange("range1,range2")` was fixed also for RooAddPdfs. As a result, the logic for multi-range likelihood fits was removed from `createNLL()`, because the multi-range fit didn't have to be treated as a special case anymore. The same applies also to chi-square fits. In fact, the reason why the `RooChi2Var` constructor and `RooAbsReal::createChi2()` methods had a `RooAbsPdf` overload was *only* this workaround! For regular RooAbsReals, the workaround was not necessary, because there is no normalization. Therefore, quite a few functions were removed in this commit. The multi-range chi2 fit is now also validated by the multi-range fit unit test in `testRooAbsPdf`. This is a follow-up to PR #11455 (commit fa10523706 in particular), where the same change was already make for regular likelihoods. | 18 September 2023, 09:03:48 UTC |
8c9f8bf | Olivier Couet | 18 September 2023, 07:03:38 UTC | [skip-ci] add missing parenthesis (#13658) | 18 September 2023, 07:03:38 UTC |
e1c1002 | Danilo Piparo | 15 September 2023, 12:14:32 UTC | [Doc] Remove usage of polyfill.io | 15 September 2023, 20:28:35 UTC |
12d8a75 | Danilo Piparo | 15 September 2023, 10:18:54 UTC | [Doc] Remove CERN Matomo from the Doxygen documentation | 15 September 2023, 20:28:35 UTC |
4de48ca | Jonas Rembser | 14 September 2023, 23:51:05 UTC | [RF] Add flag to define RooLognormal in the standard way Add a flag to define the RooLognormal with `mu` and `sigma` instead of their exponentiated values. In particular, this is used for the RooFit HS3 import and export. | 15 September 2023, 11:16:41 UTC |
9cb2aab | Jonas Rembser | 14 September 2023, 16:15:46 UTC | [RF] Format code of RooExponential and RooLognormal As these classes are changed quite a bit by the previous and next commits, it is a good time to format them now. | 15 September 2023, 11:16:41 UTC |
a03076e | Jonas Rembser | 14 September 2023, 16:07:57 UTC | [RF] Add flag to define RooExponential in the standard `exp(-c*x)` way In particular, this is used for the RooFit HS3 import and export. | 15 September 2023, 11:16:41 UTC |
6385744 | Jonas Rembser | 14 September 2023, 14:01:43 UTC | [RF][HS3] Store reference norm. set of RooAddPdf also in an attribute By storing the reference normalization set also in an attribute, one gets the JSON IO for the `_refCoefNorm` for free, because attributes are always covered by the JSON IO. | 15 September 2023, 11:16:41 UTC |
16bb01f | Jonas Rembser | 13 September 2023, 15:35:15 UTC | [RF] Fix inconsistency in `RooMinimizer` about minimizer type This is a potential problem: ```c++ setMinimizerType(type); _theFitter->Config().SetMinimizer(type, alg); ``` The call to `setMinimizerType()` will set a default minimizer if `type` is empty. This default minimizer is right now the same as in general ROOT, but if RooFit would have a different default, the default minimizer of the RooMinimizer and the internal `_theFitter` would become out of sync, as `SetMinimizer(type)` takes the ROOT default if type is empty, not the RooMinimizer default. The better approach is this: ```c++ setMinimizerType(type); _theFitter->Config().SetMinimizer(_cfg.minimizerType.c_str(), alg); ``` First, `setMinimizerType(type)` sets the minimizer type in `_cfg.minimizerType`, and then this information is taken to set the minimizer of the `ROOT::Fitter`. | 15 September 2023, 11:16:41 UTC |
75146cc | Jonas Rembser | 13 September 2023, 15:31:38 UTC | [RF] Avoid fitting empty dataset in `testRooAbsPdf` unit tests Fitting empty datasets doesn't give you a well-defined likelihood, and Minuit2 would actually explicitly print errors that would cause the test to fail. It's better to actually simulate non-empty toy datasets for fitting. Then, the unit tests will also pass when Minuit2 will be the default in the future. | 15 September 2023, 11:16:41 UTC |
592b124 | Jonas Rembser | 13 September 2023, 00:52:27 UTC | [RF] Use Minuit2 in `testHS3SimultaneousFit` The fit results of Minuit2 are less random, and therefore we can tighten the test tolerance. | 15 September 2023, 11:16:41 UTC |
11d4ea7 | Jonas Rembser | 12 September 2023, 23:18:25 UTC | [RF][HF] Fix typos in HistFactory | 15 September 2023, 11:16:41 UTC |
282b41c | Jonas Rembser | 12 September 2023, 23:17:47 UTC | [RF][HS3] Fix typos in RooFitHS3 | 15 September 2023, 11:16:41 UTC |
b03e65a | Carsten Burgard | 08 September 2023, 10:13:57 UTC | [RF][HS3] Allow for non-exact matching in unit tests - off by default This is useful for debugging, but off by default. | 15 September 2023, 11:16:41 UTC |
6e9a07f | Carsten Burgard | 08 September 2023, 10:13:19 UTC | [RF][HS3] Updated importers and exporters to match changes in standard | 15 September 2023, 11:16:41 UTC |
38a30c2 | Carsten Burgard | 08 September 2023, 10:08:39 UTC | [RF][HS3] Added methods to automatically transform variables Also, renamed "bounds" to "edges" for data export. | 15 September 2023, 11:16:41 UTC |