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

HermitePolynomial.hh

Go to the documentation of this file.
00001 // -*- C++ -*-
00002 // $Id: 
00003 //---------------------Hermite----------------------------------------------//
00004 //                                                                          //
00005 // Class HermitePolynomial.  (Hermite polynomials)                          //
00006 // Joe Boudreau, October 2012                                               //
00007 //                                                                          //
00008 //--------------------------------------------------------------------------//
00009 #ifndef HermitePolynomial_h_
00010 #define HermitePolynomial_h_ 1
00011 #include "CLHEP/GenericFunctions/AbsFunction.hh"
00012 #include "CLHEP/GenericFunctions/Parameter.hh"
00013 
00014 namespace Genfun {
00015 
00020   class HermitePolynomial : public AbsFunction  {
00021   
00022     FUNCTION_OBJECT_DEF(HermitePolynomial)
00023 
00024       public:
00025 
00026     // Constructor
00027     HermitePolynomial(unsigned int N);
00028 
00029     // Copy constructor
00030     HermitePolynomial(const HermitePolynomial &right);
00031   
00032     // Destructor
00033     virtual ~HermitePolynomial();
00034   
00035     // Retreive function value
00036     virtual double operator ()(double argument) const;
00037     virtual double operator ()(const Argument & a) const {return operator() (a[0]);}
00038   
00039     // Get the integer variable N
00040     unsigned int N() const;
00041 
00042     // Derivative.  
00043     Derivative partial (unsigned int) const;
00044 
00045     // Does this function have an analytic derivative?
00046     virtual bool hasAnalyticDerivative() const {return true;}
00047   
00048 
00049   private:
00050 
00051     // It is illegal to assign a Hermite Polynomial
00052     const HermitePolynomial & operator=(const HermitePolynomial &right);
00053 
00054     // Here is the sigma
00055     unsigned int _N;
00056 
00057   };
00058 
00059 } // namespace Genfun
00060 
00061 
00062 #endif
00063 
00064 

Generated on 15 Nov 2012 for CLHEP by  doxygen 1.4.7