Gaudi Framework, version v25r0
Home
Generated: Mon Feb 17 2014
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Groups
Pages
GaudiGSL
src
Components
FuncMinimum.h
Go to the documentation of this file.
1
// $Id: FuncMinimum.h,v 1.3 2006/11/30 10:40:53 mato Exp $
2
// ============================================================================
3
#ifndef ALGTOOLS_FUNCMINIMUM_H
4
#define ALGTOOLS_FUNCMINIMUM_H 1
5
// Include files
6
// from CLHEP
7
#include "CLHEP/GenericFunctions/GenericFunctions.hh"
8
#include "CLHEP/GenericFunctions/Argument.hh"
9
#include "CLHEP/GenericFunctions/AbsFunction.hh"
10
#include "CLHEP/Matrix/SymMatrix.h"
11
// from Gaudi
12
#include "
GaudiAlg/GaudiTool.h
"
13
//from GSL
14
#include "gsl/gsl_multimin.h"
15
16
// local
17
#include "
GaudiGSL/IFuncMinimum.h
"
18
26
class
FuncMinimum
:
public
extends1
<GaudiTool, IFuncMinimum> {
27
public
:
28
typedef
std::vector<const GenFunc*>
Gradient
;
29
public
:
30
35
virtual
StatusCode
minimum
(
const
GenFunc
&
func
,
36
Arg
& arg )
const
;
37
42
virtual
StatusCode
minimum
(
const
GenFunc
&
func
,
43
Arg
& arg ,
44
Covariance
& covar )
const
;
45
47
virtual
StatusCode
initialize
();
48
virtual
StatusCode
finalize
();
49
50
virtual
~FuncMinimum
( );
51
52
class
FuncMinimumMisc
53
{
54
public
:
58
FuncMinimumMisc
(
const
GenFunc
&
func
,
59
Arg
&
arg
);
60
// destructor
61
~FuncMinimumMisc
() ;
62
63
public
:
64
inline
const
Arg
&
argument
()
const
{
return
m_argum
;}
65
inline
Arg
&
argument
() {
return
m_argum
;}
66
inline
const
GenFunc
*
equation
()
const
{
return
m_eq
;}
67
inline
const
Gradient
&
gradient
()
const
{
return
m_grad
;}
68
private
:
69
// default constructor is disabled
70
FuncMinimumMisc
() ;
71
// copy constructor is disabled
72
FuncMinimumMisc
(
const
FuncMinimumMisc
& );
73
// assignment operator is disabled
74
FuncMinimumMisc
&
operator=
(
const
FuncMinimumMisc
& );
75
private
:
76
Arg
m_argum
;
77
const
GenFunc
*
m_eq
;
78
Gradient
m_grad
;
79
};
80
81
88
FuncMinimum
(
const
std::string
&
type
,
89
const
std::string
&
name
,
90
const
IInterface
*
parent
);
91
92
private
:
93
95
FuncMinimum
();
97
FuncMinimum
(
const
FuncMinimum
& );
99
FuncMinimum
&
operator=
(
const
FuncMinimum
& );
100
101
private
:
102
103
std::string
m_algType
;
104
double
m_max_iter
;
105
double
m_norm_gradient
;
106
double
m_step_size
;
107
double
m_tol
;
108
const
gsl_multimin_fdfminimizer_type*
m_type
;
109
};
110
111
// ============================================================================
112
// The END
113
// ============================================================================
114
#endif // ALGTOOLS_FUNCMINIMUM_H
115
// ============================================================================
Generated at Mon Feb 17 2014 14:37:41 for Gaudi Framework, version v25r0 by
Doxygen
version 1.8.2 written by
Dimitri van Heesch
, © 1997-2004