// // Created by jholder on 22.10.21. // #include #include "Simulation.h" TEST_CASE("Simulation") { auto sim = Simulation(1, 0); REQUIRE(sim.getSTD() == sqrt(1 * 2.0)); SECTION("Symmetrie") { constexpr int num = 10000000; double sum = 0.0; for (int i = 0; i < num; ++i) { sum += sim.getNorm(1); } CHECK(sum / num == Catch::Detail::Approx(0.0).margin(0.001)); } SECTION("STD") { constexpr int num = 10000000; double sum = 0.0; for (int i = 0; i < num; ++i) { sum += pow(sim.getNorm(1), 2); } CHECK(sum / num == Catch::Detail::Approx(1.0).margin(0.001)); } }