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

CLHEP/GenericFunctions/SphericalHarmonicExpansion.hh
Go to the documentation of this file.
1 // -*- C++ -*-
2 // $Id:
3 //---------------------SphericalHarmonicExpansion------------------------------------------//
4 // //
5 // Class SphericalHarmonicExpansion. 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 [-1,1]) //
8 // Joe Boudreau, Petar Maksimovic, January 2000 //
9 // //
10 //--------------------------------------------------------------------------//
11 #ifndef SphericalHarmonicExpansion_h
12 #define SphericalHarmonicExpansion_h
16 namespace Genfun {
17 
23 
25 
26  public:
27 
28  enum Type {REAL,IMAG,MAG, MAGSQ};
29 
30  // Constructor. Builds all the
32 
33  // Copy constructor
35 
36  // Destructor
38 
39  // Dimensionality=2. They are; cosTheta (not theta) and phi
40  virtual unsigned int dimensionality() const {return 2;}
41 
42  // Retreive function value
43  virtual double operator ()(double argument) const; // Gives an error.
44  virtual double operator ()(const Argument & a) const; // Must use this one
45 
46  // Get the expansion coefficients:
49 
50  private:
51 
52  // It is illegal to assign an adjustable constant
53  const SphericalHarmonicExpansion & operator=(const SphericalHarmonicExpansion &right);
54 
55 
56  class Clockwork;
57  Clockwork *c;
58 
59  };
60 } // namespace Genfun
61 
62 
63 
64 #include "CLHEP/GenericFunctions/SphericalHarmonicExpansion.icc"
65 #endif
#define FUNCTION_OBJECT_DEF(classname)
SphericalHarmonicExpansion(Type type, const SphericalHarmonicCoefficientSet &coefficients)
SphericalHarmonicCoefficientSet & coefficientSet()
const SphericalHarmonicCoefficientSet & coefficientSet() const
SphericalHarmonicExpansion(const SphericalHarmonicExpansion &right)
virtual double operator()(double argument) const
@ a