CLHEP VERSION Reference Documentation
CLHEP Home Page CLHEP Documentation CLHEP Bug Reports |
00001 // -*- C++ -*- 00002 // $Id: 00003 // Airy Functions Ai and Bi 00004 #ifndef Airy_h 00005 #define Airy_h 1 00006 #include "CLHEP/GenericFunctions/AbsFunction.hh" 00007 namespace Genfun { 00008 00013 class Airy : public AbsFunction { 00014 00015 FUNCTION_OBJECT_DEF(Airy) 00016 00017 public: 00018 00019 enum Type {Ai, Bi}; 00020 00021 // Constructor: Use this one and you will get a Airy function Ai or Bi 00022 Airy (Type type); 00023 00024 // Copy constructor 00025 Airy(const Airy &right); 00026 00027 // Destructor 00028 virtual ~Airy(); 00029 00030 // Retreive function value 00031 virtual double operator ()(double argument) const; 00032 virtual double operator ()(const Argument & a) const {return operator() (a[0]);} 00033 00034 private: 00035 00036 // It is illegal to assign an adjustable constant 00037 const Airy & operator=(const Airy &right); 00038 00039 // The type and order of the Airy function 00040 Type _type; 00041 00042 }; 00043 00044 } // namespace Genfun 00045 00046 00047 #include "CLHEP/GenericFunctions/Airy.icc" 00048 #endif