00001 /* -*- mode: c++ -*- */ 00002 00013 #ifndef _BrokenPowerLaw_H_ 00014 #define _BrokenPowerLaw_H_ 00015 00016 #include "FunctionBase.h" 00017 00025 class MDL_HIPPOPLOT_API BrokenPowerLaw : public FunctionBase 00026 { 00027 00028 protected: 00029 00031 virtual void initialize (); 00032 00033 public: 00034 00036 BrokenPowerLaw (); 00037 00039 BrokenPowerLaw ( double prefactor, double index1, 00040 double index2, double x_break ); 00041 00042 virtual FunctionBase * clone () const; 00043 00045 virtual double operator () ( double x ) const; 00046 00047 virtual void initialParameters ( const FunctionHelper * helper ); 00048 00049 protected: 00050 00051 virtual double derivByParm ( int i, double x ) const; 00052 00053 }; 00054 00055 #endif // _BrokenPowerLaw_H_