diff --git a/src/lbm/ChimeraTests.cpp b/src/lbm/ChimeraTests.cpp index 673d1c026785e63995ab9d87a9b2625db38568c5..2b9e13ad7219952d1cf2f02f44db0004aad36cd8 100644 --- a/src/lbm/ChimeraTests.cpp +++ b/src/lbm/ChimeraTests.cpp @@ -1,10 +1,10 @@ #include <gmock/gmock.h> #include "Chimera.h" -#include "D3Q27.h" - - +/* +* InverseChimeraWithK +*/ TEST(ChimeraTest, forwardInverseChimeraWithK) { real mfa = 1; @@ -23,3 +23,105 @@ TEST(ChimeraTest, forwardInverseChimeraWithK) EXPECT_THAT(mfb, testing::DoubleEq(-4.)); // -(mfa + mfb + mfc + 1) EXPECT_THAT(mfc, testing::DoubleEq(6.)); // (mfa + mfc) + (mfa + mfb + mfc + 1) } + + +TEST(ChimeraTest, backwardInverseChimeraWithK) +{ + // starting with the result values from the test above. + real mfa = 3.; + real mfb = -4.; + real mfc = 6.; + + const real vv = 1.; + const real v2 = 1.; + + const real K = 1.; + const real Kinverse = 1 / K; + + VF::LBM::backwardInverseChimeraWithK(mfa, mfb, mfc, vv, v2, K, Kinverse); + + // resulting in the start values from the test above. + EXPECT_THAT(mfa, testing::DoubleEq(1.)); + EXPECT_THAT(mfb, testing::DoubleEq(1.)); + EXPECT_THAT(mfc, testing::DoubleEq(1.)); +} + +/* +* Chimera +*/ +TEST(ChimeraTest, forwardChimera) +{ + real mfa = 1; + real mfb = 1; + real mfc = 1; + + const real vv = 1.; + const real v2 = 1.; + + VF::LBM::forwardChimera(mfa, mfb, mfc, vv, v2); + + EXPECT_THAT(mfa, testing::DoubleEq(3.)); // mfa + mfb + mfc + EXPECT_THAT(mfb, testing::DoubleEq(-3.)); // -(mfa + mfb + mfc) + EXPECT_THAT(mfc, testing::DoubleEq(5.)); // (mfa + mfc) + (mfa + mfb + mfc) +} + + +TEST(ChimeraTest, backwardChimera) +{ + // starting with the result values from the test above. + real mfa = 3.; + real mfb = -3.; + real mfc = 5.; + + const real vv = 1.; + const real v2 = 1.; + + VF::LBM::backwardChimera(mfa, mfb, mfc, vv, v2); + + // resulting in the start values from the test above. + EXPECT_THAT(mfa, testing::DoubleEq(1.)); + EXPECT_THAT(mfb, testing::DoubleEq(1.)); + EXPECT_THAT(mfc, testing::DoubleEq(1.)); +} + +/* +* ChimeraWithK +*/ +TEST(ChimeraTest, forwardChimeraWithK) +{ + real mfa = 1; + real mfb = 1; + real mfc = 1; + + const real vv = 1.; + const real v2 = 1.; + + const real K = 1.; + + VF::LBM::forwardChimeraWithK(mfa, mfb, mfc, vv, v2, K); + + EXPECT_THAT(mfa, testing::DoubleEq(3.)); // mfa + mfb + mfc + EXPECT_THAT(mfb, testing::DoubleEq(-4.)); // -(mfa + mfb + mfc) + EXPECT_THAT(mfc, testing::DoubleEq(6.)); // (mfa + mfc) + (mfa + mfb + mfc) +} + + +TEST(ChimeraTest, backwardChimeraWithK) +{ + // starting with the result values from the test above. + real mfa = 3.; + real mfb = -4.; + real mfc = 6.; + + const real vv = 1.; + const real v2 = 1.; + + const real K = 1.; + + VF::LBM::backwardChimeraWithK(mfa, mfb, mfc, vv, v2, K); + + // resulting in the start values from the test above. + EXPECT_THAT(mfa, testing::DoubleEq(1.)); + EXPECT_THAT(mfb, testing::DoubleEq(1.)); + EXPECT_THAT(mfc, testing::DoubleEq(1.)); +} diff --git a/src/lbm/MacroscopicQuantitiesTests.cpp b/src/lbm/MacroscopicQuantitiesTests.cpp index fc9d8492b598d4900e72f3d50c83e89580be1940..96464eb229c3edf4ccaf50522ddc8e20045d3717 100644 --- a/src/lbm/MacroscopicQuantitiesTests.cpp +++ b/src/lbm/MacroscopicQuantitiesTests.cpp @@ -31,7 +31,7 @@ TEST(MacroscopicQuantitiesTest, whenFsAreEqual_velocityInEachDirectionShouldBeZe EXPECT_THAT(velocityX3, testing::DoubleEq(expected_velocity)); } -TEST(MacroscopicQuantitiesTest, givenAllFsAreOne_when_Eis2_velocityInXShouldBeOne) +TEST(MacroscopicQuantitiesTest, givenAllFsAreOne_when_Eis2_velocityInX1ShouldBeOne) { f[VF::LBM::DIR::E] = 2.;