41 #define LOW_DEFAULT_LIMIT -100.0
42 #define HIGH_DEFAULT_LIMIT 100.0
65 size_t rules(
size_t output)
const;
67 TNT::Array1D<size_t>
rules(
void)
const;
69 TNT::Array1D<double>
in_low(
void)
const;
70 double in_low(
size_t input)
const;
72 TNT::Array1D<double>
in_high(
void)
const;
73 double in_high(
size_t input)
const;
75 TNT::Array1D<double>
out_low(
void)
const;
76 double out_low(
size_t output)
const;
78 TNT::Array1D<double>
out_high(
void)
const;
79 double out_high(
size_t output)
const;
81 void in_low(
double *limits);
108 int test(
void)
const;
191 TNT::Array1D<double>
evaluate(
const double *
const point);
int readRule(Rule &R, size_t output, size_t r) const
Reads a Rule from the System.
Definition: system.cpp:161
size_t inputs(void) const
Returns the number of inputs of the System.
Definition: system.cpp:7
double * low_in
Low limits for the inputs of the System.
Definition: system.hpp:57
TNT::Array1D< double > in_low(void) const
Returns the low limits of the System inputs.
Definition: system.cpp:32
TNT::Array1D< double > out_low(void) const
Returns the low limits of the System outputs.
Definition: system.cpp:62
TNT::Array1D< size_t > rules(void) const
Returns the number of rules for each output of the System.
Definition: system.cpp:24
This class contains methods and attributes common to fuzzy Rules.
Definition: rule.hpp:53
TNT::Array1D< double > in_high(void) const
Returns the high limits of the System inputs.
Definition: system.cpp:47
int checkOutputLimits(const double *const output)
Checks if output meets the output limits of the system.
Definition: system.cpp:124
size_t out
Number of outputs of the System.
Definition: system.hpp:55
TNT::Array1D< double > getAntecedents(void)
Gets all the parameters of the antecedents of the System.
Definition: system.cpp:256
Fuzzy Logic Tools (FLT) namespace.
Definition: derivatives.hpp:41
TNT::Array1D< double > evaluate(const double *const point)
Evaluates the System for input point.
Definition: system.cpp:311
size_t outputs(void) const
Returns the number of outputs of the System.
Definition: system.cpp:12
size_t in
Number of inputs of the System.
Definition: system.hpp:54
int setAntecedents(const double *const parameters)
Sets all the parameters of the antecedents of the System.
Definition: system.cpp:236
Defines a Takagi-Sugeno fuzzy Rule.
Rule ** R
System Rules.
Definition: system.hpp:61
void setConsequents(const double *const parameters)
Sets all the consequets of the System.
Definition: system.cpp:287
size_t NumberOfAntecedents(void)
Gets the number of parameters stored in the antecedents of the System.
Definition: system.cpp:224
double * high_in
High limits for the inputs of the System.
Definition: system.hpp:59
size_t * N
Number of rules of the System for each output.
Definition: system.hpp:56
TNT::Array1D< double > getConsequents(void)
Gets the consequets of the System.
Definition: system.cpp:298
int test(void) const
This function checks the parameters of all Membership functions of the System, and corrects them if p...
Definition: system.cpp:132
This class contains methods and attributes common to fuzzy Systems.
Definition: system.hpp:52
double * low_out
Low limits for the outputs of the System.
Definition: system.hpp:58
double * high_out
High limits for outputs of the System.
Definition: system.hpp:60
void initialize(size_t in, size_t out, size_t *N)
Initializes the System with in inputs, out outputs and N[out] rules for each output.
Definition: system.cpp:178
TNT::Array1D< double > out_high(void) const
Returns the high limits of the System outputs.
Definition: system.cpp:77
int checkInputLimits(const double *const point)
Checks if point meets the input limits of the system.
Definition: system.cpp:116
int changeRule(const Rule &R, size_t r, size_t output)
Changes a Rule in the System.
Definition: system.cpp:153
size_t NumberOfConsequents(void)
Gets the number of parameters stored in the consequents of the System.
Definition: system.cpp:278