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 |