public override double Compute(double[] input) { double sum = threshold; for (int i = 0; i < weights.Length; i++) sum += weights[i] * input[i]; double output = function.Function(sum); this.output = output; return output; }