public class FuzzyOneVariableFunction
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
protected FuzzyNumberFactory |
fnFactory
factory for providing result
|
protected PiecewiseLinear |
fuzzyNumber
the fuzzy number for which the function is to be computed
|
protected IntervalFactory |
intervalFactory
factory for providing result
|
protected int |
numberOfSections
number of parts to split the fuzzy for propagation through the function
|
Constructor and Description |
---|
FuzzyOneVariableFunction(PiecewiseLinear fuzzyNumber,
int number)
constructor that defines the input fuzzy number and the number of parts of the fuzzy number for calculation,
default fuzzyNumberFactory is used for result interval
|
FuzzyOneVariableFunction(PiecewiseLinear fuzzyNumber,
int number,
FuzzyNumberFactory fnFactory)
constructor that defines the input fuzzy number, the number of parts of the fuzzy number for calculation
and fuzzyNumberFactory used to create the result interval
|
Modifier and Type | Method and Description |
---|---|
protected double |
calculate(double x)
actual function that calculates value of the function for input x
|
PiecewiseLinear |
propagate()
default propagation that uses only alpha cuts that defines the fuzzy number
|
PiecewiseLinear |
propagate(double[] alphas)
function that applies function calculate for each value of the interval of alpha cuts
returns fuzzy number based on minimum and maximum of the output values
|
PiecewiseLinear |
propagate(int numberAlphaCuts)
/**
function that applies function calculate for each value of the interval of the given number of alpha cuts
returns fuzzy number based on minimum and maximum of the output values
|
void |
setfuzzyNumber(PiecewiseLinear fuzzyNumber) |
protected PiecewiseLinear |
specialCases(double[] alphas)
function for special cases of propagation of the fuzzy number through the function
returns null if the special cases are not valid for this fuzzy number or the resulting fuzzy number
|
java.lang.String |
toString()
each function must override this function with its name
|
protected PiecewiseLinear fuzzyNumber
protected int numberOfSections
protected FuzzyNumberFactory fnFactory
protected IntervalFactory intervalFactory
public FuzzyOneVariableFunction(PiecewiseLinear fuzzyNumber, int number, FuzzyNumberFactory fnFactory)
fuzzyNumber
- number
- fnFactory
- public FuzzyOneVariableFunction(PiecewiseLinear fuzzyNumber, int number)
fuzzyNumber
- number
- public PiecewiseLinear propagate(double[] alphas)
alphas
- set of alpha cuts for which the propagation should be computedpublic PiecewiseLinear propagate()
public PiecewiseLinear propagate(int numberAlphaCuts)
numberAlphaCuts
- protected PiecewiseLinear specialCases(double[] alphas)
alphas
- protected double calculate(double x)
x
- input value for which the output is calculatedpublic void setfuzzyNumber(PiecewiseLinear fuzzyNumber)
fuzzyNumber
- public java.lang.String toString()
toString
in class java.lang.Object