コード例 #1
0
        /// <inheritdoc/>
        public virtual void Check()
        {
            _longHashCode = LongHashCodeWeights.BaseOperatorWeight ^ (ulong)Math.Abs(Kind.GetHashCode());

            var sysDeffuzificatedValue = Defuzzificator.Defuzzificate(_kindOfDefuzzification, _a, _b, (double x) => SystemCall(x));

            _deffuzificatedValue = new NumberValue(sysDeffuzificatedValue);
        }
コード例 #2
0
        /// <inheritdoc/>
        public NumberValue Defuzzificate(IEnumerable <IFuzzyLogicOperatorHandler> operatorHandlers)
        {
            var sysDeffuzificatedValue = Defuzzificator.Defuzzificate(_kindOfDefuzzification, _a, _b, (double x) => {
                var result = SystemCall(x);

                foreach (var op in operatorHandlers)
                {
                    result = op.SystemCall(result);
                }

                return(result);
            });

            return(new NumberValue(sysDeffuzificatedValue));
        }