Gaussian.h

Go to the documentation of this file.
00001 /* -*- mode: c++ -*- */
00002 
00014 #ifndef _Gaussian_H_
00015 #define _Gaussian_H_
00016 
00017 #include "FunctionBase.h"
00018 
00019 namespace hippodraw {
00020 
00031 class MDL_HIPPOPLOT_API Gaussian : public FunctionBase
00032 {
00033 
00034  private:
00035 
00038   enum { norm = 0, mean = 1, sigma = 2 };
00039 
00040 protected:
00041 
00043   virtual void initialize ();
00044 
00045 public:
00046 
00048   Gaussian ();
00049 
00051   Gaussian ( double norm, double mean, double sigma );
00052 
00053   virtual FunctionBase * clone () const;
00054 
00056   virtual double operator () ( double x ) const;
00057 
00058   virtual void initialParameters ( const FunctionHelper * helper );
00059 
00060 protected:
00061 
00062   virtual double derivByParm ( int i, double x ) const;
00063 
00064 private:
00065 
00068   double derivByNorm ( double x ) const;
00069 
00072   double derivByMean ( double x ) const;
00073 
00076   double derivBySigma ( double x ) const;
00077 
00078 };
00079 
00080 } // namespace hippodraw
00081 
00082 #endif // _Gaussian_H_

Generated for HippoDraw Class Library by doxygen