Skip to content

Conversation

@guitargeek
Copy link
Contributor

  1. Reduce code duplication
  2. Support expressions with complex numbers, as generated by sympy for example
  3. Use std::string instead of C-style strings
  4. Don't recompile when requesting the same class instance twice (to better support jupyter notebook workflows)

@guitargeek guitargeek self-assigned this Sep 7, 2023
@guitargeek guitargeek force-pushed the rooclassfactory_1 branch 2 times, most recently from 179e90f to 515ade0 Compare September 8, 2023 16:45
@root-project root-project deleted a comment from phsft-bot Sep 11, 2023
@root-project root-project deleted a comment from phsft-bot Sep 11, 2023
@root-project root-project deleted a comment from phsft-bot Sep 11, 2023
@root-project root-project deleted a comment from phsft-bot Sep 11, 2023
@root-project root-project deleted a comment from github-actions bot Sep 11, 2023
@root-project root-project deleted a comment from phsft-bot Sep 11, 2023
@root-project root-project deleted a comment from phsft-bot Sep 11, 2023
@root-project root-project deleted a comment from phsft-bot Sep 11, 2023
@root-project root-project deleted a comment from phsft-bot Sep 11, 2023
@phsft-bot
Copy link

Starting build on ROOT-performance-centos8-multicore/soversion, ROOT-ubuntu2204/nortcxxmod, ROOT-ubuntu2004/python3, mac11/noimt, mac12arm/cxx20, windows10/default
How to customize builds

This is to enable support for expressions representing the complicated
amplitudes in partial wave analysis.
This should preserve backwards compatibility, because `const char*`
implicitly casts to `std::string`.
If you call `makePdfInstance` or `makeFunctionInstance` twice in a row
with the same arguments, the RooClassFactory should not have to
recompile anything.

This is particularly important to support the jupyter notebook workflow,
where the same cell might be run several times.

In fact, before this commit, calling the `makeClassInstance` function
twice in a row with the same arguments resulted in a crash.
@phsft-bot
Copy link

Build failed on ROOT-ubuntu2004/python3.
See console output.

@phsft-bot
Copy link

@github-actions
Copy link

Test Results

         9 files           9 suites   2d 1h 8m 30s ⏱️
  2 486 tests   2 483 ✔️ 0 💤 3
21 608 runs  21 605 ✔️ 0 💤 3

For more details on these failures, see this check.

Results for commit ee72f8a.

Copy link
Member

@lmoneta lmoneta left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!
Thank you for this improvement!

@guitargeek guitargeek merged commit 0a0bcaa into root-project:master Sep 11, 2023
@guitargeek guitargeek deleted the rooclassfactory_1 branch September 11, 2023 12:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants