00001
00002
00014 #ifndef _LogParabola_H_
00015 #define _LogParabola_H_
00016
00017 #include "FunctionBase.h"
00018
00019 namespace hippodraw {
00020
00029 class MDL_HIPPOPLOT_API LogParabola : public FunctionBase
00030 {
00031 private:
00032 enum { NORM, ALPHA, BETA};
00033
00034 protected:
00035
00037 virtual void initialize ();
00038
00039 virtual double derivByParm ( int i, double x ) const;
00040
00041 public:
00042
00044 LogParabola ();
00045
00049 LogParabola ( double norm, double alpha, double beta);
00050
00051 virtual FunctionBase * clone () const;
00052
00054 virtual double operator () ( double x ) const;
00055
00056 virtual void initialParameters ( const FunctionHelper * helper );
00057
00058 virtual bool hasDerivatives () const;
00059
00060 };
00061
00062 }
00063
00064 #endif // _LogParabola_H_