FitUtilParallel.h

Go to the documentation of this file.
00001 // @(#)root/mathcore:$Id: FitUtilParallel.h 26014 2008-10-29 16:37:28Z moneta $
00002 // Author: L. Moneta Tue Nov 28 10:52:47 2006
00003 
00004 /**********************************************************************
00005  *                                                                    *
00006  * Copyright (c) 2006  LCG ROOT Math Team, CERN/PH-SFT                *
00007  *                                                                    *
00008  *                                                                    *
00009  **********************************************************************/
00010 
00011 // Header file for class FitUtil
00012 
00013 
00014 #ifdef _WIN32  // no support for parallel fits on Win32 
00015 #ifdef ROOT_FIT_PARALLEL
00016 #undef ROOT_FIT_PARALLEL
00017 #endif
00018 #endif
00019 
00020 #ifdef ROOT_FIT_PARALLEL
00021 
00022 #ifndef ROOT_Fit_FitUtilParallel
00023 #define ROOT_Fit_FitUtilParallel
00024 
00025 #ifndef ROOT_Math_IParamFunctionfwd
00026 #include "Math/IParamFunctionfwd.h"
00027 #endif
00028 
00029 #ifndef ROOT_Fit_DataVectorfwd
00030 #include "Fit/DataVectorfwd.h"
00031 #endif
00032 
00033 
00034 namespace ROOT { 
00035 
00036    namespace Fit { 
00037 
00038 
00039    typedef  ROOT::Math::IParamMultiFunction IModelFunction;
00040    
00041 
00042 /** 
00043    namespace defining free functions for Fitting parallel mode 
00044 
00045    Status: functions are not not completed and are still preliminary
00046 
00047    @ingroup FitMain
00048 */ 
00049 namespace FitUtilParallel {
00050 
00051 
00052 
00053    /** 
00054        evaluate the Chi2 given a model function and the data at the point x. 
00055        return also nPoints as the effective number of used points in the Chi2 evaluation
00056        Use a parallel evaluation spawning multiple threads 
00057    */ 
00058    double EvaluateChi2(IModelFunction & func, const BinData & data, const double * x, unsigned int & nPoints);  
00059 
00060 
00061    double EvaluateLogL(IModelFunction & func, const UnBinData & data, const double * p, unsigned int &nPoints);  
00062 
00063 
00064 } // end namespace FitUtil 
00065 
00066    } // end namespace Fit
00067 
00068 } // end namespace ROOT
00069 
00070 
00071 #endif /* ROOT_Fit_FitUtil */
00072 #endif /* ROOT_FIT_PARALLEL */

Generated on Tue Jul 5 14:25:00 2011 for ROOT_528-00b_version by  doxygen 1.5.1