CLHEP 2.0.4.7 Reference Documentation
   
CLHEP Home Page     CLHEP Documentation     CLHEP Bug Reports

TrivariateGaussian.hh

Go to the documentation of this file.
00001 // -*- C++ -*-
00002 // $Id: TrivariateGaussian.hh,v 1.2 2003/09/06 14:04:13 boudreau Exp $
00003 //---------------------TrivariateGaussian-----------------------------------//
00004 //                                                                          //
00005 // Class TrivariateGaussian                                                 //
00006 // Joe Boudreau, Petar Maksimovic, November 1999                            //
00007 //                                                                          //
00008 //--------------------------------------------------------------------------//
00009 #ifndef TrivariateGaussian_h
00010 #define TrivariateGaussian_h 1
00011 #include "CLHEP/GenericFunctions/AbsFunction.hh"
00012 #include "CLHEP/GenericFunctions/Parameter.hh"
00013 
00014 namespace Genfun {
00015 
00020   class TrivariateGaussian : public AbsFunction  {
00021 
00022     FUNCTION_OBJECT_DEF(TrivariateGaussian)
00023 
00024       public:
00025 
00026     // Constructor
00027     TrivariateGaussian();
00028 
00029     // Copy constructor
00030     TrivariateGaussian(const TrivariateGaussian &right);
00031   
00032     // Destructor
00033     virtual ~TrivariateGaussian();
00034   
00035     // Retreive function value
00036     virtual double operator ()(double argument) const;    // Gives an error.
00037     virtual double operator ()(const Argument & a) const; // Must use this one
00038 
00039     // Dimensionality
00040     virtual unsigned int dimensionality() const;
00041 
00042     // Get the mean of the TrivariateGaussian
00043     Parameter & mean0(); 
00044     const Parameter & mean0() const; 
00045     Parameter & mean1(); 
00046     const Parameter & mean1() const; 
00047     Parameter & mean2(); 
00048     const Parameter & mean2() const; 
00049 
00050     // Get the sigma of the TrivariateGaussian
00051     Parameter & sigma0();
00052     const Parameter & sigma0() const;
00053     Parameter & sigma1();
00054     const Parameter & sigma1() const;
00055     Parameter & sigma2();
00056     const Parameter & sigma2() const;
00057   
00058     // Get the correlation coefficient:
00059     Parameter & corr01();
00060     const Parameter & corr01() const;
00061     Parameter & corr02();
00062     const Parameter & corr02() const;
00063     Parameter & corr12();
00064     const Parameter & corr12() const;
00065     
00066 
00067   private:
00068 
00069     // It is illegal to assign an adjustable constant
00070     const TrivariateGaussian & operator=(const TrivariateGaussian &right);
00071 
00072     // Here is the decay constant
00073     Parameter _mean0;
00074     Parameter _mean1;
00075     Parameter _mean2;
00076     
00077     // Here is the sigma
00078     Parameter _sigma0;
00079     Parameter _sigma1;
00080     Parameter _sigma2;
00081 
00082     // Here is the correlation coefficient:
00083     Parameter _corr01;
00084     Parameter _corr02;
00085     Parameter _corr12;
00086 
00087   };
00088 } // namespace Genfun
00089 
00090 #endif

Generated on Thu Jul 1 22:02:31 2010 for CLHEP by  doxygen 1.4.7