ROOT
git-r3/HEAD
Reference Guide
Loading...
Searching...
No Matches
ExternalInternalGradientCalculator.h
Go to the documentation of this file.
1
// @(#)root/minuit2:$Id$
2
// Authors: M. Winkler, F. James, L. Moneta, A. Zsenei, E.G.P. Bos 2003-2017
3
4
/**********************************************************************
5
* *
6
* Copyright (c) 2005 LCG ROOT Math team, CERN/PH-SFT *
7
* *
8
**********************************************************************/
9
10
#ifndef ROOT_Minuit2_ExternalInternalGradientCalculator
11
#define ROOT_Minuit2_ExternalInternalGradientCalculator
12
13
#include "
Minuit2/AnalyticalGradientCalculator.h
"
14
15
namespace
ROOT
{
16
17
namespace
Minuit2
{
18
19
class
FCNBase
;
20
class
MnUserTransformation
;
21
22
/// Similar to the AnalyticalGradientCalculator, the ExternalInternalGradientCalculator
23
/// supplies Minuit with an externally calculated gradient. The main difference is that
24
/// ExternalInternalGradientCalculator expects that the external gradient calculator does
25
/// things in Minuit2-internal parameter space, which means many int2ext and ext2int
26
/// transformation steps are not necessary. This avoids loss of precision in some cases,
27
/// where trigonometrically transforming parameters back and forth can lose a few bits of
28
/// floating point precision on every pass.
29
30
class
ExternalInternalGradientCalculator
:
public
AnalyticalGradientCalculator
{
31
32
public
:
33
ExternalInternalGradientCalculator
(
const
FCNBase
&fcn,
const
MnUserTransformation
&trafo)
34
:
AnalyticalGradientCalculator
(fcn, trafo)
35
{
36
}
37
38
FunctionGradient
operator()
(
const
MinimumParameters
&)
const override
;
39
40
FunctionGradient
operator()
(
const
MinimumParameters
&,
const
FunctionGradient
&)
const override
;
41
};
42
43
}
// namespace Minuit2
44
45
}
// namespace ROOT
46
47
#endif
// ROOT_Minuit2_ExternalInternalGradientCalculator
AnalyticalGradientCalculator.h
ROOT::Minuit2::AnalyticalGradientCalculator::AnalyticalGradientCalculator
AnalyticalGradientCalculator(const FCNBase &fcn, const MnUserTransformation &state)
Definition
AnalyticalGradientCalculator.h:27
ROOT::Minuit2::ExternalInternalGradientCalculator::operator()
FunctionGradient operator()(const MinimumParameters &) const override
Definition
ExternalInternalGradientCalculator.cxx:21
ROOT::Minuit2::ExternalInternalGradientCalculator::ExternalInternalGradientCalculator
ExternalInternalGradientCalculator(const FCNBase &fcn, const MnUserTransformation &trafo)
Definition
ExternalInternalGradientCalculator.h:33
ROOT::Minuit2::FCNBase
Interface (abstract class) defining the function to be minimized, which has to be implemented by the ...
Definition
FCNBase.h:37
ROOT::Minuit2::FunctionGradient
Definition
FunctionGradient.h:21
ROOT::Minuit2::MinimumParameters
Definition
MinimumParameters.h:21
ROOT::Minuit2::MnUserTransformation
class dealing with the transformation between user specified parameters (external) and internal param...
Definition
MnUserTransformation.h:38
ROOT::Minuit2
Definition
AnalyticalGradientCalculator.h:18
ROOT
Definition
EExecutionPolicy.hxx:4
math
minuit2
inc
Minuit2
ExternalInternalGradientCalculator.h
ROOTgit-r3/HEAD - Reference Guide Generated on
(GVA Time) using Doxygen 1.16.1