Feature #803

Optimize interface for binned event analysis

Added by Knödlseder Jürgen about 11 years ago. Updated over 9 years ago.

Status:ClosedStart date:
Priority:NormalDue date:12/19/2014
Assigned To:-% Done:

100%

Category:-
Target version:1.0.0
Duration:

Description

The actual class interface is not really optimized for binned event analysis. The likelihood optimizer loops for example over all event bins, needing repeated evaluation of functions with the same data space values (e.g. energies, positions, etc.). Binned analysis generally benefits a lot from pre-computations, but the actual interfaces do not really help in doing pre-computations. At least, things are actually be overly complicated. The interface should thus be improved to easily support pre-computations.

One simple thing, that we may want to do in any case, is to move the likelihood computations from the GObservations::optimizer class to the GObservation class. For example, GObservations::optimizer::poisson_unbinned should become the virtual method GObservation::poisson_unbinned. We should even develop a higher-level method GObservation::loglikelihood (or similar) that computes for a given observation the log-likelihood. As each observations “knows” whether it is binned or unbinned, the method could then dispatch to the appropriate method.

This reorganization would have the advantage that instrument classes could implement their own likelihood computations, optimizing the computations for the specific data structure. There should always be virtual standard methods for Poisson and Gaussian statistics in GObservation, so that no additional implementation is needed. But the methods can be overloaded by more efficient instrument specific methods.


Recurrence

No recurrence.

History

#1 Updated by Knödlseder Jürgen about 11 years ago

  • Description updated (diff)

#2 Updated by Knödlseder Jürgen almost 10 years ago

  • Target version set to 1.0.0

#3 Updated by Knödlseder Jürgen almost 10 years ago

  • Due date set to 12/19/2014

#4 Updated by Knödlseder Jürgen over 9 years ago

  • Status changed from New to Closed
  • % Done changed from 0 to 100

The likelihood computation has been moved to GObservation. I made some checks for possible optimizations without a hugh success. Close this now as stacked analysis is now quite powerful and fast (see [CTA model fitting benchmarks]).

Also available in: Atom PDF