private float Operation(Flow flow) { float normalizedInput = MathLibrary.ReverseLinearFunction(flow.GetValue <float>(input), flow.GetValue <float>(minimumRange), flow.GetValue <float>(maximumRange)); float normalizedInflection = MathLibrary.ReverseLinearFunction(flow.GetValue <float>(inflectionPoint), flow.GetValue <float>(minimumRange), flow.GetValue <float>(maximumRange)); return(MathLibrary.DecayingSigmoid(normalizedInput, normalizedInflection, flow.GetValue <float>(minimum), flow.GetValue <float>(decayFactor), flow.GetValue <float>(scale))); }
private float Operation(Recursion recursion) { float inputValue = Mathf.Clamp01(input.GetValue <float>(recursion)); float inflectionPointValue = Mathf.Clamp01(inflectionPoint.GetValue <float>(recursion)); return(MathLibrary.DecayingSigmoid(inputValue, inflectionPointValue, minimum.GetValue <float>(), decayFactor.GetValue <float>(), scale.GetValue <float>())); }
private float Operation(Recursion recursion) { float normalizedInput = MathLibrary.ReverseLinearFunction(input.GetValue <float>(), minimumRange.GetValue <float>(), maximumRange.GetValue <float>()); float normalizedInflection = MathLibrary.ReverseLinearFunction(inflectionPoint.GetValue <float>(), minimumRange.GetValue <float>(), maximumRange.GetValue <float>()); return(MathLibrary.DecayingSigmoid(normalizedInput, normalizedInflection, minimum.GetValue <float>(), decayFactor.GetValue <float>(), scale.GetValue <float>())); }