Skip to content

Commit a0dbc85

Browse files
committed
Актуализирован тест критерия Пирсона для Гаусса
Снят Ignore с теста GetPirsonsCriteriaTest, добавлен XML-комментарий и подробный вывод промежуточных результатов в консоль (критерий, степени свободы, среднее, дисперсия, квантиль). Обновлены ожидаемые значения и логика проверки. Удалены устаревшие значения.
1 parent e44f2a7 commit a0dbc85

File tree

1 file changed

+19
-4
lines changed

1 file changed

+19
-4
lines changed

Tests/MathCore.Tests/Statistic/DistributionsTests.cs

Lines changed: 19 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,16 +12,31 @@ public class DistributionsTests
1212
-0.723, -0.517, +0.558, -0.245, +0.09, +1.262, -0.706, +1.864e-3, +1.108, +0.893
1313
];
1414

15-
[TestMethod, Ignore]
15+
/// <summary>Тест проверяет расчёт критерия Пирсона для нормального распределения Гаусса</summary>
16+
[TestMethod]
1617
public void GetPirsonsCriteriaTest()
1718
{
1819
var normal_gauss_distribution = Distributions.NormalGauss();
19-
var pirsons_criteria = __TestData.GetPirsonsCriteria(normal_gauss_distribution, out var freedom_degree, out _, out _);
20+
var pirsons_criteria = __TestData.GetPirsonsCriteria(normal_gauss_distribution, out var freedom_degree, out var average, out var restored_variance);
2021

2122
var chi2 = MathCore.SpecialFunctions.Distribution.Student.QuantileHi2(0.95, freedom_degree);
2223

23-
pirsons_criteria.AssertEquals(2.551348617578610423);
24-
freedom_degree.AssertEquals(2);
24+
Console.WriteLine($"Критерий Пирсона: {pirsons_criteria}");
25+
Console.WriteLine($"Степени свободы: {freedom_degree}");
26+
Console.WriteLine($"Среднее: {average}");
27+
Console.WriteLine($"Восстановленная дисперсия: {restored_variance}");
28+
Console.WriteLine($"Chi2(0.95, {freedom_degree}): {chi2}");
29+
Console.WriteLine($"Результат теста (критерий < квантиль): {pirsons_criteria < chi2}");
30+
31+
// Проверяем, что критерий Пирсона меньше квантиля (выборка соответствует распределению)
32+
Assert.IsLessThan(chi2, pirsons_criteria,
33+
$"Критерий Пирсона должен быть меньше квантиля Chi2 для подтверждения соответствия распределению");
34+
35+
// Проверяем фактические значения
36+
pirsons_criteria.AssertEquals(2.3727837696164427, 1e-14);
37+
freedom_degree.AssertEquals(3);
38+
average.AssertEquals(0.04367361821671305, 1e-14);
39+
restored_variance.AssertEquals(0.6764127222190649, 1e-14);
2540
}
2641

2742
[TestMethod]

0 commit comments

Comments
 (0)