Skip to content
Snippets Groups Projects
  1. May 07, 2008
  2. May 06, 2008
  3. May 01, 2008
  4. Apr 30, 2008
  5. Apr 28, 2008
  6. Apr 24, 2008
    • Rene Brun's avatar
      From Axel: · b22a1dd7
      Rene Brun authored
      there is a bug in GCC 4.3.0 that makes roottest/root/hist/operator/runsparse.C fail in the error calculation part. Funny enough it fails because TH3 messes up its errors (not THnSparse  :-) .
      
      The problem stems from TH1::GetBinError():
         if (fSumw2.fN) return TMath::Sqrt(fSumw2.fArray[bin]);
      does not get evaluated properly - it has _horribly_ wrong values, e.g.
        -5063: 0.42
        +5063: 0.648074
      ("-" is GCC 3.4.6, "+" is GCC 4.3.0)
      after scaling a bin with a single entry by 0.42. So this is a real issue. It's possibly connected to the new math compiler intrinsics + pushing their results onto the stack.
      
      Attached patch fixes this, by introducing a temporary.
      
            Double_t err2 = fSumw2.fArray[bin];
            return TMath::Sqrt(err2);
      
      The patch also fixes THnSparse::Scale() - it was also scaling the entries.
      
      
      git-svn-id: http://root.cern.ch/svn/root/trunk@23533 27541ba8-7e3a-0410-8455-c3a389f83636
      b22a1dd7
  7. Apr 23, 2008
  8. Apr 21, 2008
  9. Apr 17, 2008
  10. Apr 11, 2008
  11. Apr 10, 2008
    • Lorenzo Moneta's avatar
      from Axel: · 9206b39e
      Lorenzo Moneta authored
      Implement THnSparse::RebinnedAdd(hnsparse, c), which adds hnsparse*c to this, 
      ignoring different bin sizes. 
      Can be used to rebin a THnSparse: create a new THnSparse with the binning you want, 
      and add the THnSparse with the old binning to it using RebinnedAdd(old).
      Also fixes an issue with Rebin() accessing an out-of-bound bin.
      
      
      git-svn-id: http://root.cern.ch/svn/root/trunk@23127 27541ba8-7e3a-0410-8455-c3a389f83636
      9206b39e
  12. Apr 09, 2008
  13. Apr 05, 2008
    • Philippe Canal's avatar
      Use the DirectoryAutoAdd facility for the classes: · 70fc8753
      Philippe Canal authored
              TTree, TH1, TEventList, TEntryList, TGraph2D
      (and hence their derived classes).
      
      The instances of those classes are now added automatically 
      to the current directory only when Constructe'd with arguments or Clone'd
      and to the directory they are read from when their are stored
      directly in a TKey. [Note: the default constructor never adds
      the object to the current directory]
      
      The directory auto add can still be disabled for instance
      of TH1 and TGraph2D by setting TH1::AddDirectory.
      
      Additionally one can disable the directory auto add for
      a specific class by doing:
      
          TClass::GetClass("myclass")->SetDirectoryAutoAdd(0)
      
      However you might want to also be able to restore the
      behavior in which case you ought to do:
      
          TClass *cl = TClass::GetClass("myclass");
          ROOT::DirAutoAdd_t func = cl->GetDirectoryAutoAdd();
          cl->SetDirectoryAutoAdd(0);
      
      TROOT::ReadingObject is marked as deprecated.. It is still
      set (as it was) but is no longer used by the above mention
      classes.
      
      NOTE:  One side effect of this change, is that instnace 
      of TTree, TH1, TEventList, TEntryList, TGraph2D that are
      retrieved from a TMessage (i.e. from a socket) no longer
      auto register themselves to the current ROOT directory.
      
      Add a new optional parameter to TDirectory::Append: 'replace'
      If replace is true (the default is false), the Append will
      first remove from the directory any existing object and
      print the message:
      
         Replacing existing OldClass: thename (Potential memory leak).
      
      Add a new option parameter to TDirectory::CloneObject: 'autoadd'
      If autoadd is true (the default), CloneObject will call the
      object 'DirectoryAutoAdd' function (if any)
      
      In TDirectory::CloneObject add support for multiple inheritance
      from TObject where TObject is not the left most base class.
      
      Fix memory leak in TGraph2D::operator= (and add TGraph2D::Clear)
      
      Cleanup some documentation
      
      
      git-svn-id: http://root.cern.ch/svn/root/trunk@22992 27541ba8-7e3a-0410-8455-c3a389f83636
      70fc8753
  14. Apr 04, 2008
    • Rene Brun's avatar
      Add more options to TH2::Smooth · 73573fc6
      Rene Brun authored
         // Smooth bin contents of this 2-d histogram using kernel algorithms
         // similar to the ones used in the raster graphics community.
         // Bin contents in the active range are replaced by their smooth values.
         // If Errors are defined via Sumw2, they are scaled.
         // 3 kernels are proposed k5a, k5b and k3a.
         // k5a and k5b act on 5x5 cells (i-2,i-1,i,i+1,i+2, and same for j)
         // k5b is a bit more stronger in smoothing
         // k3a acts only on 3x3 cells (i-1,i,i+1, and same for j).
         // By default the kernel "k5a" is used. You can select the kernels "k5b" or "k3a"
         // via the option argument.
         // If TAxis::SetRange has been called on the x or/and y axis, only the bins
         // in the specified range are smoothed.
         // In the current implementation if the first argument is not used (default value=1).
         //
         // implementation by David McKee (dmckee@bama.ua.edu). Extended by Rene Brun
      
      
      git-svn-id: http://root.cern.ch/svn/root/trunk@22986 27541ba8-7e3a-0410-8455-c3a389f83636
      73573fc6
  15. Apr 03, 2008
  16. Mar 31, 2008
  17. Mar 28, 2008
  18. Mar 26, 2008
  19. Mar 25, 2008
Loading