public void TTestPowerAnalysisConstructorTest3()
{
// Examples from R's graphical manual
// http://rgm2.lab.nig.ac.jp/RGM2/func.php?rd_id=pwr:pwr.t.test
double actual, expected;
{
var target = new TTestPowerAnalysis(OneSampleHypothesis.ValueIsDifferentFromHypothesis)
{
Effect = 0.2,
Samples = 60,
Size = 0.10,
};
target.ComputePower();
expected = 0.4555818;
actual = target.Power;
Assert.AreEqual(expected, actual, 1e-5);
}
{
var target = new TwoSampleTTestPowerAnalysis(TwoSampleHypothesis.ValuesAreDifferent)
{
Effect = 2 / 2.8,
Samples1 = 30,
Samples2 = 30,
};
target.ComputePower();
expected = 0.7764889;
actual = target.Power;
Assert.AreEqual(expected, actual, 1e-6);
}
{
var target = new TwoSampleTTestPowerAnalysis(TwoSampleHypothesis.FirstValueIsGreaterThanSecond)
{
Effect = 0.3,
Power = 0.75,
};
target.ComputeSamples();
expected = 120.2232016;
actual = target.Samples1;
Assert.AreEqual(expected, actual, 1e-6);
Assert.AreEqual(target.Samples1, target.Samples2);
}
}