public void TestSIN()
{
var activation = new ActivationSIN();
Assert.IsTrue(activation.HasDerivative());
var clone = (ActivationSIN) activation.Clone();
Assert.IsNotNull(clone);
double[] input = {0.0};
activation.ActivationFunction(input, 0, 1);
Assert.AreEqual(0.0, input[0], 0.1);
// test derivative, should throw an error
input[0] = activation.DerivativeFunction(input[0],input[0]);
Assert.AreEqual(1.0, input[0], 0.1);
}