00001 /***************************************************************************** 00002 * Project: RooFit * 00003 * Package: RooFitCore * 00004 * File: $Id: RooChi2MCSModule.h 25185 2008-08-20 14:00:42Z wouter $ 00005 * Authors: * 00006 * WV, Wouter Verkerke, UC Santa Barbara, verkerke@slac.stanford.edu * 00007 * DK, David Kirkby, UC Irvine, dkirkby@uci.edu * 00008 * * 00009 * Copyright (c) 2000-2005, Regents of the University of California * 00010 * and Stanford University. All rights reserved. * 00011 * * 00012 * Redistribution and use in source and binary forms, * 00013 * with or without modification, are permitted according to the terms * 00014 * listed in LICENSE (http://roofit.sourceforge.net/license.txt) * 00015 *****************************************************************************/ 00016 00017 #ifndef ROO_CHI2_MCS_MODULE 00018 #define ROO_CHI2_MCS_MODULE 00019 00020 #include "RooAbsMCStudyModule.h" 00021 #include <string> 00022 00023 class RooChi2MCSModule : public RooAbsMCStudyModule { 00024 public: 00025 00026 RooChi2MCSModule() ; 00027 RooChi2MCSModule(const RooChi2MCSModule& other) ; 00028 virtual ~RooChi2MCSModule() ; 00029 00030 Bool_t initializeInstance() ; 00031 Bool_t initializeRun(Int_t /*numSamples*/) ; 00032 RooDataSet* finalizeRun() ; 00033 Bool_t processAfterFit(Int_t /*sampleNum*/) ; 00034 00035 private: 00036 00037 RooDataSet* _data ; // Summary dataset to store results 00038 RooRealVar* _chi2 ; // Chi^2 of function w.r.t. data 00039 RooRealVar* _ndof ; // Number of degrees of freedom 00040 RooRealVar* _chi2red ; // Reduced Chi^2 w.r.t data 00041 RooRealVar* _prob ; // Probability of chi^2,nDOF combination 00042 00043 ClassDef(RooChi2MCSModule,0) // MCStudy module to calculate chi2 between binned data and fit 00044 } ; 00045 00046 00047 #endif 00048