public override T GetValue(params T[] input) { if (input.Length != ParamsLength) { throw new InvalidParamsLength(); } T value = input[0]; if (Dependent != null) { value = Dependent.GetValue(value); } return(Gain * (dynamic)ComputeOutput(value)); }
public override T GetValue(params T[] input) { if (input.Length != ParamsLength) { throw new InvalidParamsLength(); } T aInput = input[0]; if (Dependent != null) { aInput = Dependent.GetValue(input); } return(Gain * ((dynamic)a.GetValue(aInput) * b.GetValue(aInput))); }