CLHEP VERSION Reference Documentation
CLHEP Home Page
CLHEP Documentation
CLHEP Bug Reports
Main Page
Namespaces
Classes
Files
File List
File Members
GenericFunctions
GenericFunctions
GenericFunctions/FourierFit.hh
Go to the documentation of this file.
1
// -*- C++ -*-
2
// $Id:
3
//---------------------FourierFit-------------------------------------------//
4
// //
5
// Class FourierFit. This is a fitting function consisting of a super //
6
// position of N legendre polynomials. Cascading fractions and phases are //
7
// the input parameters. Function is normalized to one (on [0,2PI]) //
8
// Joe Boudreau, Petar Maksimovic, January 2000 //
9
// //
10
//--------------------------------------------------------------------------//
11
#ifndef FourierFit_h
12
#define FourierFit_h 1
13
#include "
CLHEP/GenericFunctions/AbsFunction.hh
"
14
#include "
CLHEP/GenericFunctions/Parameter.hh
"
15
namespace
Genfun {
16
21
class
FourierFit :
public
AbsFunction {
22
23
FUNCTION_OBJECT_DEF
(
FourierFit
)
24
25
public:
26
27
// Constructor
28
FourierFit
(
unsigned
int
N);
29
30
// Copy constructor
31
FourierFit
(const
FourierFit
&right);
32
33
// Destructor
34
virtual ~
FourierFit
();
35
36
// Retreive function value
37
virtual
double
operator ()(
double
argument) const;
38
virtual
double
operator ()(const
Argument
&
a
)
const
{
return
operator()
(a[0]);}
39
40
unsigned
int
order
()
const
;
41
42
Parameter
*
getFraction
(
unsigned
int
i);
43
const
Parameter
*
getFraction
(
unsigned
int
i)
const
;
44
45
Parameter
*
getPhase
(
unsigned
int
i);
46
const
Parameter
*
getPhase
(
unsigned
int
i)
const
;
47
48
49
private
:
50
51
// It is illegal to assign an adjustable constant
52
const
FourierFit
& operator=(
const
FourierFit
&right);
53
54
//
55
const
unsigned
int
N;
56
std::vector <Genfun::Parameter *> fraction;
57
std::vector <Genfun::Parameter *> phase;
58
59
60
};
61
}
// namespace Genfun
62
#include "CLHEP/GenericFunctions/FourierFit.icc"
63
#endif
Generated on Mon May 6 2013 04:04:10 for CLHEP by
1.8.1.2