Logo ROOT   6.30.04
Reference Guide
 All Namespaces Files Pages
CombinedMinimizer.h
Go to the documentation of this file.
1 // @(#)root/minuit2:$Id$
2 // Authors: M. Winkler, F. James, L. Moneta, A. Zsenei 2003-2005
3 
4 /**********************************************************************
5  * *
6  * Copyright (c) 2005 LCG ROOT Math team, CERN/PH-SFT *
7  * *
8  **********************************************************************/
9 
10 #ifndef ROOT_Minuit2_CombinedMinimizer
11 #define ROOT_Minuit2_CombinedMinimizer
12 
16 
17 namespace ROOT {
18 
19  namespace Minuit2 {
20 
21 //__________________________________________________________________________
22 /**
23  Combined minimizer: combination of Migrad and Simplex. I
24  If the Migrad method fails at first attempt, a simplex
25  minimization is performed and then migrad is tried again.
26 
27 
28 */
29 
30 class CombinedMinimizer : public ModularFunctionMinimizer {
31 
32 public:
33 
34  CombinedMinimizer() : fMinSeedGen(MnSeedGenerator()),
35  fMinBuilder(CombinedMinimumBuilder()) {}
36 
37  ~CombinedMinimizer() {}
38 
39  const MinimumSeedGenerator& SeedGenerator() const {return fMinSeedGen;}
40  const MinimumBuilder& Builder() const {return fMinBuilder;}
41  MinimumBuilder& Builder() {return fMinBuilder;}
42 
43 private:
44 
45  MnSeedGenerator fMinSeedGen;
46  CombinedMinimumBuilder fMinBuilder;
47 };
48 
49  } // namespace Minuit2
50 
51 } // namespace ROOT
52 
53 #endif // ROOT_Minuit2_CombinedMinimizer