public void ConstructorTest1()
{
var sech = new HyperbolicSecantDistribution();
double mean = sech.Mean; // 0.0
double median = sech.Median; // 0.0
double mode = sech.Mode; // 0.0
double var = sech.Variance; // 1.0
double cdf = sech.DistributionFunction(x: 1.4); // 2.2939067361538474
double pdf = sech.ProbabilityDensityFunction(x: 1.4); // 0.10955386512899701
double lpdf = sech.LogProbabilityDensityFunction(x: 1.4); // -2.2113389316917877
double ccdf = sech.ComplementaryDistributionFunction(x: 1.4); // -1.2939067361538474
double icdf = sech.InverseDistributionFunction(p: cdf); // 1.4000000017042402
double hf = sech.HazardFunction(x: 1.4); // -0.084669058493850285
string str = sech.ToString(); // Sech(x)
Assert.AreEqual(0, mean);
Assert.AreEqual(0, median);
Assert.AreEqual(1, var);
Assert.AreEqual(0, mode);
Assert.AreEqual(2.2939067361538474, cdf);
Assert.AreEqual(0.10955386512899701, pdf);
Assert.AreEqual(-2.2113389316917877, lpdf);
Assert.AreEqual(-0.084669058493850285, hf);
Assert.AreEqual(-1.2939067361538474, ccdf);
Assert.AreEqual(1.4000000017042402, icdf, 1e-13);
Assert.AreEqual("Sech(x)", str);
Assert.IsFalse(double.IsNaN(icdf));
}