Uploaded image for project: 'ROOT'
  1. ROOT
  2. ROOT-9670

Cling problems with TFormula and std::math functions

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed (View Workflow)
    • Priority: High
    • Resolution: Fixed
    • Affects Version/s: 6.14/04
    • Fix Version/s: master, 6.14/06
    • Component/s: None
    • Labels:
      None
    • Environment:

      MacOS 10.13.6; 

      Apple LLVM version 9.1.0 (clang-902.0.39.2)

      Target: x86_64-apple-darwin17.7.0

       

    • Development:

      Description

      Reading a TFormula from a ROOT file shows the following symptom:

      Expression passed to Cling:

       [73381]: Double_t TFormula____id8411857145669054181(Double_t *x){ return 1/(TMath::Gamma(1.64366)*32.2452)*std::pow(x[0]/32.2452,0.643656)*std::exp(-x[0]/32.2452) ; }
      [73381]: std::exp is unknown.
      [73381]: std::pow is unknown.
      [73381]:                 polya : 1/(TMath::Gamma(1.64366)*146.016) *std::pow(x/146.016, 0.643656) *std::exp(-x/146.016) Ndim= 1, Npar= 0, Number= 0
       

       

      This bug appeared after our recent switch to ROOT 6.14.4 on MacOS 10.13.6. There was no problem with the same code before. The problem appears only at reading not at writing.

       

      Attaching the problematic file. Saying root 

      `root test.root` and inspecting the formula in the TBrowser also does not work:

      Error in <TFormula::Eval>: Formula is invalid and not ready to execute 
      std::exp is unknown.
      std::pow is unknown. 

       

        Attachments

          Activity

            People

            Assignee:
            moneta Lorenzo Moneta
            Reporter:
            swenzel Sandro Christian Wenzel
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved:
              Actual End: