CLHEP VERSION Reference Documentation
   
CLHEP Home Page     CLHEP Documentation     CLHEP Bug Reports

Sigma.cc
Go to the documentation of this file.
1 // -*- C++ -*-
2 // $Id:
4 #include <assert.h>
5 
6 namespace Genfun {
8 
9 void Sigma::accumulate( const AbsFunction & fcn) {
10  _fcn.push_back(fcn.clone());
11 }
12 
14 {
15 }
16 
17 Sigma::Sigma(const Sigma & right) : AbsFunction(right)
18 {
19  for (size_t i=0; i<right._fcn.size();i++) {
20  _fcn.push_back(right._fcn[i]->clone());
21  }
22 }
23 
24 unsigned int Sigma::dimensionality() const {
25  assert (_fcn.size()!=0);
26  return _fcn[0]->dimensionality();
27 }
28 
30 {
31  for (size_t i=0; i<_fcn.size();i++) {
32  delete _fcn[i];
33  }
34 }
35 
36 double Sigma::operator ()(double x) const
37 {
38  double retVal=0.0;
39  for (size_t i=0;i<_fcn.size();i++) retVal += (*_fcn[i])(x);
40  return retVal;
41 }
42 
43 
44 double Sigma::operator ()(const Argument & x) const
45 {
46  double retVal=0.0;
47  for (size_t i=0;i<_fcn.size();i++) retVal += (*_fcn[i])(x);
48  return retVal;
49 }
50 
51 
52 
53 Derivative Sigma::partial(unsigned int index) const {
54  Sigma fPrime;
55  for (size_t i=0;i<_fcn.size();i++) {
56  fPrime.accumulate(_fcn[i]->partial(index));
57  }
58  return Derivative(&fPrime);
59 }
60 
61 
62 
63 } // namespace Genfun
Genfun::Sigma::partial
Derivative partial(unsigned int) const
Definition: Sigma.cc:53
Genfun::Sigma::operator()
virtual double operator()(double argument) const
Definition: Sigma.cc:36
Genfun::Derivative
FunctionNoop Derivative
Definition: CLHEP/GenericFunctions/AbsFunction.hh:40
Genfun::AbsFunction
Definition: CLHEP/GenericFunctions/AbsFunction.hh:48
Genfun::Sigma::Sigma
Sigma()
Definition: Sigma.cc:13
Sigma.hh
void
We should separate methods that force the load of the Rotation class For practical that implies that methods like and that as in the ThreeVector class we separate the cc files Also again we have the rotation methods returning HepLorentzVector &rather than void
Definition: minorMergeIssues.doc:148
Genfun::Sigma::~Sigma
virtual ~Sigma()
Definition: Sigma.cc:29
Genfun::Sigma::dimensionality
virtual unsigned int dimensionality() const
Definition: Sigma.cc:24
Genfun::Argument
Definition: CLHEP/GenericFunctions/Argument.hh:17
Genfun::FunctionNoop
Definition: CLHEP/GenericFunctions/FunctionNoop.hh:19
Genfun::Sigma
Definition: CLHEP/GenericFunctions/Sigma.hh:19
i
long i
Definition: JamesRandomSeeding.txt:27
x
any side effects of that construction would occur twice The semantics of throw x
Definition: whyZMthrowRethrows.txt:37
FUNCTION_OBJECT_IMP
#define FUNCTION_OBJECT_IMP(classname)
Definition: CLHEP/GenericFunctions/AbsFunction.hh:156
Genfun
Definition: CLHEP/GenericFunctions/Abs.hh:14
Genfun::Sigma::accumulate
void accumulate(const AbsFunction &fcn)
Definition: Sigma.cc:9