|
[Rivet] YODA developmentBen Waugh waugh at hep.ucl.ac.ukThu Oct 29 22:22:48 GMT 2009
Hi Andy, All, I've been having a look at the YODA pages, in particular your note on the treatment of weights: http://projects.hepforge.org/yoda/trac/wiki/WeightTreatment Unless I am simply misunderstanding what you are trying to say, I'm afraid I disagree with two of your three bullet points. In some cases weights may allow more rapid convergence of some quantities, but they occur anywhere where the generated distribution of points is not the same as the desired distribution. It is not true that "the errors must be equivalent to filling with a larger number of samples with smaller weights which add up to the same". ITaking it to an extreme, a bin with 100 entries each with unit weight has an error of 10%, while one with a single entry with a weight of 100 does not have the same precision at all. And the same principle extends to negative weights. Equal numbers of large negative and positive weights indicate a correspondingly large uncertainty in the value of the distribution in that bin, rather than having no effect on the uncertainty at all as you suggest. Am I wrong? Cheers, Ben On 29/10/09 14:39, Andy Buckley wrote: > Hi guys, > > Sorry about the slowness in responding to YODA guidance... it's been > another busy week! I've asked the IPPP admins to add James, Frank, Eike > and Holger to the YODA project so you can commit code: hopefully that > will be done today. Eike, I think you already have some changes, e.g. > moving test scripts out of pyext, right? Please commit those when you > get access. > > Roughly, the things to try immediately are: > > * Check out the code and see if you can build and install it. There > are no dependencies. It worked for Eike, but you never know! > > * Try running some of the test scripts and programs in the tests > directory. Have a look at the code and comment on whether you think the > API sucks or can be improved in small ways. > > * Add some test scripts for the weighted run combination correctness: > this should already be done for both positive and negative weights on > standard histograms, but I don't think there are yet unit tests for the > Profile1D. > > * If you're feeling adventurous, try to fill in some of the missing > bits of code and functionality. Here are my top few tasks: > > - Get I/O working: this means a functional implementation of > http://projects.hepforge.org/yoda/trac/ticket/7 (register and discuss > the implementation on the tracker please... I never got any feedback, > but David and I decided after some playing with flex/yacc that it was > better to use a clean base like YAML than to try to crowbar a general > parser around the make-plots format. libyaml-cpp is included in YODA, as > for Rivet. > > - Also on the I/O, I'm not happy about the current design for the I/O > type detection: the current design handles the passing of a base > AnalysisObject into the Writer, which then produces an output stream, > but how can we safely work out the type of object which is being read > in, if all that's returned is a base reference? The basic C++ way is a > dynamic_cast: can that be made neater? > > - The Scatter<N> class, and especially the very complicated errors > associated with it, is a horrible abomination of a design, and getting > the templation to work ate more of my time than I want to think about. > It should probably be thrown away and replaced with simpler Scatter1D > and Scatter2D classes with usable errors. It's worth > > - Conversion of Histo1D and Profile1D to Scatter2D. Obvious > requirement, needs Scatter2D to exist first. Arguably more important for > Rivet usability is the ~opposite: booking the bins of Histo1D and > Profile1D from a Scatter (remember, in YODA bin edges don't have to be > contiguous, i.e. gaps are allowed) > > - Annotations: how we're going to specify target norms, scale factors > etc. in the persistent format. These particular annotations should be > treated specially by e.g. merging code, but arbitrary annotations such > as "KFactor" should also be possible. > > Please ask if there are any questions, and use the tracker and the YODA > mailing list (join it!) to coordinate who's doing what. Hopefully I can > answer any questions about the existing code... > > Thanks, > Andy > -- Dr Ben Waugh Tel. +44 (0)20 7679 7223 Dept of Physics and Astronomy Internal: 37223 University College London London WC1E 6BT
More information about the Rivet mailing list |