00001 #ifndef FUZZYNUM_H 00002 #define FUZZYNUM_H 00003 00004 #include "iotools.h" 00005 00006 00007 /** 00008 class fuzzynum 00009 00010 00011 JK, 18.8.2005 00012 */ 00013 class fuzzynum 00014 { 00015 public: 00016 fuzzynum (void); 00017 ~fuzzynum (void); 00018 00019 void read (XFILE *in); 00020 void initiate (long n,double *al); 00021 00022 double give_min (double alpha); 00023 double give_min (long acutid); 00024 double give_max (double alpha); 00025 double give_max (long acutid); 00026 00027 void save_min (double alpha,double min); 00028 void save_min (long acutid,double min); 00029 void save_alp_min (long acutid,double al,double min); 00030 void save_max (double alpha,double max); 00031 void save_max (long acutid,double max); 00032 void save_alp_max (long acutid,double al,double max); 00033 00034 void print (FILE *out); 00035 void print_minmax (FILE *out); 00036 00037 double give_val (long i); 00038 void onearray (); 00039 00040 void save_value (double val); 00041 void minmax_init (); 00042 00043 00044 /// number of alpha-cuts 00045 long nalph; 00046 /// array of alpha-cut values 00047 double *alph; 00048 /// minimum values of alpha-cuts 00049 double *xmin; 00050 /// maximum values of alpha-cuts 00051 double *xmax; 00052 /// number of values on axis 00053 long nval; 00054 /// values of alpha-cuts in increasing ordering 00055 double *x; 00056 00057 /// required error/deviation 00058 double err; 00059 00060 }; 00061 00062 #endif