CLHEP VERSION Reference Documentation
CLHEP Home Page
CLHEP Documentation
CLHEP Bug Reports
Main Page
Namespaces
Classes
Files
File List
File Members
GenericFunctions
src
Gaussian.cc
Go to the documentation of this file.
1
// -*- C++ -*-
2
// $Id: Gaussian.cc,v 1.8 2010/06/16 18:22:01 garren Exp $
3
#include "
CLHEP/GenericFunctions/defs.h
"
4
#include "
CLHEP/GenericFunctions/Gaussian.hh
"
5
#include "
CLHEP/GenericFunctions/Variable.hh
"
6
#include <assert.h>
7
#include <cmath>
// for exp()
8
9
#if (defined __STRICT_ANSI__) || (defined _WIN32)
10
#ifndef M_PI
11
#define M_PI 3.14159265358979323846
12
#endif // M_PI
13
#endif // __STRICT_ANSI__
14
15
namespace
Genfun {
16
FUNCTION_OBJECT_IMP
(Gaussian)
17
18
Gaussian
::
Gaussian
():
19
_mean("Mean", 0.0,-10,10),
20
_sigma("
Sigma
",1.0,0, 10)
21
{}
22
23
Gaussian::~Gaussian
() {
24
}
25
26
Gaussian::Gaussian
(
const
Gaussian
& right):
27
AbsFunction
(right),
28
_mean(right._mean),
29
_sigma(right._sigma)
30
{
31
}
32
33
double
Gaussian::operator()
(
double
x)
const
{
34
double
s = _sigma.
getValue
();
35
double
x0 = _mean.
getValue
();
36
return
(1.0/(sqrt(2*M_PI)*s))*
37
exp(-(x-x0)*(x-x0)/(2.0*s*s));
38
}
39
40
Parameter
&
Gaussian::mean
() {
41
return
_mean;
42
}
43
44
Parameter
&
Gaussian::sigma
() {
45
return
_sigma;
46
}
47
48
const
Parameter
&
Gaussian::mean
()
const
{
49
return
_mean;
50
}
51
52
const
Parameter
&
Gaussian::sigma
()
const
{
53
return
_sigma;
54
}
55
56
57
58
Derivative
Gaussian::partial
(
unsigned
int
index)
const
{
59
assert(index==0);
60
Variable
x;
61
const
AbsFunction
& fPrime = (*this)*(_mean-x)/_sigma/_sigma;
62
return
Derivative
(&fPrime);
63
}
64
65
}
// namespace Genfun
Variable.hh
Genfun::Gaussian::partial
Derivative partial(unsigned int) const
Definition:
Gaussian.cc:58
Genfun::AbsFunction
Definition:
CLHEP/GenericFunctions/AbsFunction.hh:48
Genfun::Gaussian::sigma
Parameter & sigma()
Definition:
Gaussian.cc:44
Genfun::Gaussian::mean
Parameter & mean()
Definition:
Gaussian.cc:40
Gaussian.hh
Genfun::Gaussian::~Gaussian
virtual ~Gaussian()
Definition:
Gaussian.cc:23
Genfun::Variable
Definition:
CLHEP/GenericFunctions/Variable.hh:19
defs.h
Genfun::Sigma
Definition:
CLHEP/GenericFunctions/Sigma.hh:19
Genfun::Derivative
FunctionNoop Derivative
Definition:
CLHEP/GenericFunctions/AbsFunction.hh:40
Genfun::Gaussian::operator()
virtual double operator()(double argument) const
Definition:
Gaussian.cc:33
FUNCTION_OBJECT_IMP
#define FUNCTION_OBJECT_IMP(classname)
Definition:
CLHEP/GenericFunctions/AbsFunction.hh:156
Genfun::FunctionNoop
Definition:
CLHEP/GenericFunctions/FunctionNoop.hh:19
Genfun::Parameter
Definition:
CLHEP/GenericFunctions/Parameter.hh:35
Genfun::Gaussian::Gaussian
Gaussian()
Definition:
Gaussian.cc:18
Genfun::Gaussian
Definition:
CLHEP/GenericFunctions/Gaussian.hh:20
Genfun::Parameter::getValue
virtual double getValue() const
Definition:
Parameter.cc:27
Generated on Sat Apr 26 2014 20:36:36 for CLHEP by
1.8.6