public static void UpdatePositiveMultitherading(this BackpropagationNetwork backpropagation, double[] Input)
                {
                    // Check parameters
                    if (Input.Length != backpropagation.InputNeurons.Length)
                    {
                        throw new ArgumentException("Invalid input array, its size is different from the number of input neurons.", nameof(Input));
                    }


                    // Update input neurons
                    Parallel.For(0, backpropagation.InputNeurons.Length, delegate(int i)
                    {
                        backpropagation.InputNeurons[i].Update(Input[i]);
                    });

                    // Sequential update neurons
                    backpropagation.SequentialUpdateMultitherading(0);
                }