The GaussianProduct class is an extended Term that represents the two-sided Gaussian membership function. More...
#include <GaussianProduct.h>
| Public Member Functions | |
| GaussianProduct (const std::string &name="", scalar meanA=fl::nan, scalar standardDeviationA=fl::nan, scalar meanB=fl::nan, scalar standardDeviationB=fl::nan, scalar height=1.0) | |
| virtual | ~GaussianProduct () FL_IOVERRIDE | 
| virtual std::string | className () const FL_IOVERRIDE | 
| Returns the name of the class of the term.  More... | |
| virtual std::string | parameters () const FL_IOVERRIDE | 
| Provides the parameters of the term.  More... | |
| virtual void | configure (const std::string ¶meters) FL_IOVERRIDE | 
| Configures the term with the parameters.  More... | |
| virtual Complexity | complexity () const FL_IOVERRIDE | 
| Computes the estimated complexity of evaluating the membership function.  More... | |
| virtual scalar | membership (scalar x) const FL_IOVERRIDE | 
| Computes the membership function evaluated at \(x\).  More... | |
| virtual void | setMeanA (scalar meanA) | 
| Sets the mean of the first Gaussian curve.  More... | |
| virtual scalar | getMeanA () const | 
| Gets the mean of the first Gaussian curve.  More... | |
| virtual void | setStandardDeviationA (scalar standardDeviationA) | 
| Sets the standard deviation of the first Gaussian curve.  More... | |
| virtual scalar | getStandardDeviationA () const | 
| Gets the standard deviation of the first Gaussian curve.  More... | |
| virtual void | setMeanB (scalar meanB) | 
| Sets the mean of the second Gaussian curve.  More... | |
| virtual scalar | getMeanB () const | 
| Gets the mean of the second Gaussian curve.  More... | |
| virtual void | setStandardDeviationB (scalar standardDeviationB) | 
| Sets the standard deviation of the second Gaussian curve.  More... | |
| virtual scalar | getStandardDeviationB () const | 
| Gets the standard deviation of the second Gaussian curve.  More... | |
| virtual GaussianProduct * | clone () const FL_IOVERRIDE | 
| Creates a clone of the term.  More... | |
|  Public Member Functions inherited from fl::Term | |
| Term (const std::string &name="", scalar height=1.0) | |
| virtual | ~Term () | 
| virtual void | setName (const std::string &name) | 
| Sets the name of the term.  More... | |
| virtual std::string | getName () const | 
| Gets the name of the term.  More... | |
| virtual void | setHeight (scalar height) | 
| Sets the height of the term.  More... | |
| virtual scalar | getHeight () const | 
| Gets the height of the term.  More... | |
| virtual std::string | toString () const | 
| Returns the representation of the term in the FuzzyLite Language.  More... | |
| virtual void | updateReference (const Engine *engine) | 
| Updates the references (if any) to point to the current engine (useful when cloning engines or creating terms within Importer objects.  More... | |
| Static Public Member Functions | |
| static Term * | constructor () | 
| Additional Inherited Members | |
|  Protected Attributes inherited from fl::Term | |
| scalar | _height | 
The GaussianProduct class is an extended Term that represents the two-sided Gaussian membership function.
Definition at line 35 of file GaussianProduct.h.
| 
 | explicit | 
| 
 | virtual | 
| 
 | virtual | 
Returns the name of the class of the term.
Implements fl::Term.
| 
 | virtual | 
| 
 | virtual | 
Computes the estimated complexity of evaluating the membership function.
Implements fl::Term.
| 
 | virtual | 
Configures the term with the parameters.
| parameters | as "meanA standardDeviationA meanB
standardDeviationB [height]" | 
Implements fl::Term.
| 
 | static | 
| 
 | virtual | 
Gets the mean of the first Gaussian curve.
| 
 | virtual | 
Gets the mean of the second Gaussian curve.
| 
 | virtual | 
Gets the standard deviation of the first Gaussian curve.
| 
 | virtual | 
Gets the standard deviation of the second Gaussian curve.
Computes the membership function evaluated at \(x\).
| x | 
where \(h\) is the height of the Term, \(\mu_a\) is the mean of the first GaussianProduct, \(\sigma_a\) is the standard deviation of the first GaussianProduct, \(\mu_b\) is the mean of the second GaussianProduct, \(\sigma_b\) is the standard deviation of the second GaussianProduct, \(i=\begin{cases}1 & \mbox{if $x \leq \mu_a$} \cr 0 &\mbox{otherwise}\end{cases}\), \(j=\begin{cases}1 & \mbox{if $x \geq \mu_b$} \cr 0 &\mbox{otherwise}\end{cases}\)
Implements fl::Term.
| 
 | virtual | 
Provides the parameters of the term.
"meanA standardDeviationA meanB standardDeviationB [height]" Implements fl::Term.
| 
 | virtual | 
Sets the mean of the first Gaussian curve.
| meanA | is the mean of the first Gaussian curve | 
| 
 | virtual | 
Sets the mean of the second Gaussian curve.
| meanB | is the mean of the second Gaussian curve | 
| 
 | virtual | 
Sets the standard deviation of the first Gaussian curve.
| standardDeviationA | is the standard deviation of the first Gaussian curve | 
| 
 | virtual | 
Sets the standard deviation of the second Gaussian curve.
| standardDeviationB | is the standard deviation of the second Gaussian curve |