feat(thermal): certify shell geometry and local heat operators
This commit is contained in:
@@ -13,8 +13,8 @@ TEST(ThermalTimeGrid, SingleStepUsesPeriodAsActualIncrement) {
|
||||
}
|
||||
|
||||
TEST(ThermalTimeGrid, PreservesGenuineRemainderOutsideInputCells) {
|
||||
const auto grid = fesa::ThermalTimeGrid::Create(
|
||||
std::nextafter(.9, 1.0), .3, 4U);
|
||||
const auto grid =
|
||||
fesa::ThermalTimeGrid::Create(std::nextafter(.9, 1.0), .3, 4U);
|
||||
ASSERT_TRUE(grid.HasValue());
|
||||
EXPECT_EQ(grid.Value().Count(), 4U);
|
||||
EXPECT_EQ(grid.Value().Delta(4U), 1.6653345369377348e-16);
|
||||
@@ -41,13 +41,14 @@ TEST(ThermalTimeGrid, DecimalCellsCounterexampleAndScale) {
|
||||
EXPECT_EQ(grid.Value().Delta(3U), delta);
|
||||
EXPECT_EQ(grid.Value().Time(3U), period);
|
||||
}
|
||||
const auto old_counterexample = fesa::ThermalTimeGrid::Create(
|
||||
5.351455173733616, .17262758624947144, 31U);
|
||||
const auto old_counterexample =
|
||||
fesa::ThermalTimeGrid::Create(5.351455173733616, .17262758624947144, 31U);
|
||||
ASSERT_TRUE(old_counterexample.HasValue());
|
||||
EXPECT_EQ(old_counterexample.Value().Count(), 31U);
|
||||
EXPECT_EQ(old_counterexample.Value().Delta(31U), .17262758624947144);
|
||||
EXPECT_FALSE(fesa::ThermalTimeGrid::Create(
|
||||
5.351455173733616, .17262758624947144, 30U).HasValue());
|
||||
EXPECT_FALSE(
|
||||
fesa::ThermalTimeGrid::Create(5.351455173733616, .17262758624947144, 30U)
|
||||
.HasValue());
|
||||
}
|
||||
|
||||
TEST(ThermalTimeGrid, BinadeLimitsAndMaximumFinitePreserveOriginalCells) {
|
||||
@@ -56,13 +57,16 @@ TEST(ThermalTimeGrid, BinadeLimitsAndMaximumFinitePreserveOriginalCells) {
|
||||
ASSERT_TRUE(grid.HasValue());
|
||||
EXPECT_EQ(grid.Value().Count(), 3U);
|
||||
EXPECT_EQ(grid.Value().Delta(3U), max / 3);
|
||||
const auto upper = fesa::ThermalTimeGrid::Create(4294967295., 1., 4294967295U);
|
||||
const auto upper =
|
||||
fesa::ThermalTimeGrid::Create(4294967295., 1., 4294967295U);
|
||||
ASSERT_TRUE(upper.HasValue());
|
||||
EXPECT_EQ(upper.Value().Count(), 4294967295U);
|
||||
EXPECT_TRUE(upper.Value().Frame(4294967295U).HasValue());
|
||||
EXPECT_FALSE(fesa::ThermalTimeGrid::Create(4294967296., 1., 4294967295U).HasValue());
|
||||
EXPECT_FALSE(fesa::ThermalTimeGrid::Create(max,
|
||||
std::numeric_limits<double>::denorm_min(), 4294967295U).HasValue());
|
||||
EXPECT_FALSE(
|
||||
fesa::ThermalTimeGrid::Create(4294967296., 1., 4294967295U).HasValue());
|
||||
EXPECT_FALSE(fesa::ThermalTimeGrid::Create(
|
||||
max, std::numeric_limits<double>::denorm_min(), 4294967295U)
|
||||
.HasValue());
|
||||
}
|
||||
|
||||
TEST(ThermalTimeGrid, ShortenedIncrementAndCheckedFrames) {
|
||||
@@ -83,7 +87,8 @@ TEST(ThermalTimeGrid, ShortenedIncrementAndCheckedFrames) {
|
||||
EXPECT_EQ(decimals.Value().Delta(10U), .1);
|
||||
const double below = std::nextafter(.9, 0.);
|
||||
const auto close = fesa::ThermalTimeGrid::Create(below, .3, 3U);
|
||||
const auto short_last = fesa::ThermalTimeGrid::Create(std::nextafter(below, 0.), .3, 3U);
|
||||
const auto short_last =
|
||||
fesa::ThermalTimeGrid::Create(std::nextafter(below, 0.), .3, 3U);
|
||||
ASSERT_TRUE(close.HasValue());
|
||||
ASSERT_TRUE(short_last.HasValue());
|
||||
EXPECT_EQ(close.Value().Delta(3U), .3);
|
||||
|
||||
Reference in New Issue
Block a user