00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026 #ifndef __FUNCTION_LIBRARY__
00027 #define __FUNCTION_LIBRARY__
00028
00039 #include <function.h>
00040
00041
00042
00043
00044
00045
00046
00047
00048
00050
00054 class Ramp_function
00055 :public unary_function<float,float>{
00056
00057 private:
00059 float lower_bound;
00061 float higher_bound;
00064 float inv_delta;
00066 float low_value;
00068 float high_value;
00069
00070 public:
00071 Ramp_function(const float low,
00072 const float high,
00073 const float low_val,
00074 const float high_val);
00075
00076 inline float operator()(const float x) const;
00077 };
00078
00079
00080
00081
00082
00083
00084
00085
00086
00088 class Inv_square_function
00089 :public unary_function<float,float>{
00090
00091 private:
00093 float alpha;
00094
00095 public:
00098 Inv_square_function(const float cut = 1);
00099
00100 inline float operator()(const float x) const;
00101 };
00102
00103
00104 #include "function_library.cc"
00105
00106 #endif
00107
00108
00109
00110