18 MnStrategy::MnStrategy() : fStoreLevel(1) {
24 MnStrategy::MnStrategy(
unsigned int stra) : fStoreLevel(1) {
26 if(stra == 0) SetLowStrategy();
27 else if(stra == 1) SetMediumStrategy();
28 else SetHighStrategy();
31 void MnStrategy::SetLowStrategy() {
34 SetGradientNCycles(2);
35 SetGradientStepTolerance(0.5);
36 SetGradientTolerance(0.1);
38 SetHessianStepTolerance(0.5);
39 SetHessianG2Tolerance(0.1);
40 SetHessianGradientNCycles(1);
43 void MnStrategy::SetMediumStrategy() {
46 SetGradientNCycles(3);
47 SetGradientStepTolerance(0.3);
48 SetGradientTolerance(0.05);
50 SetHessianStepTolerance(0.3);
51 SetHessianG2Tolerance(0.05);
52 SetHessianGradientNCycles(2);
55 void MnStrategy::SetHighStrategy() {
58 SetGradientNCycles(5);
59 SetGradientStepTolerance(0.1);
60 SetGradientTolerance(0.02);
62 SetHessianStepTolerance(0.1);
63 SetHessianG2Tolerance(0.02);
64 SetHessianGradientNCycles(6);