diff --git a/src/algebra/IntegrationTools.hpp b/src/algebra/IntegrationTools.hpp index 954924d6ec9f6db78127d3e6afe4fae28db6cb3b..608b56b9946c3c25f2e4f7c0cd9b4cf951a7d775 100644 --- a/src/algebra/IntegrationTools.hpp +++ b/src/algebra/IntegrationTools.hpp @@ -7,8 +7,8 @@ #include <utils/PugsMacros.hpp> #include <utils/Types.hpp> -#include <analysis/GaussLegendreQuadrature.hpp> -#include <analysis/GaussLobattoQuadrature.hpp> +#include <analysis/TensorialGaussLegendreQuadrature.hpp> +#include <analysis/TensorialGaussLobattoQuadrature.hpp> #include <cmath> @@ -166,13 +166,13 @@ class IntegrationTools { switch (quadrature) { case QuadratureType::gausslobatto: { - GaussLobattoQuadrature<1> tensorial_gauss_lobatto(Order); + TensorialGaussLobattoQuadrature<1> tensorial_gauss_lobatto(Order); m_quadrature_positions = tensorial_gauss_lobatto.pointList(); m_weights = tensorial_gauss_lobatto.weightList(); break; } case QuadratureType::gausslegendre: { - GaussLegendreQuadrature<1> tensorial_gauss_legendre(Order); + TensorialGaussLegendreQuadrature<1> tensorial_gauss_legendre(Order); m_quadrature_positions = tensorial_gauss_legendre.pointList(); m_weights = tensorial_gauss_legendre.weightList(); break; diff --git a/src/analysis/CMakeLists.txt b/src/analysis/CMakeLists.txt index 03c39ec899321a01c4ec569a44bd3c3791e39589..a99e6a339738db7dc13df02e2e388c06b98ef0d7 100644 --- a/src/analysis/CMakeLists.txt +++ b/src/analysis/CMakeLists.txt @@ -2,5 +2,5 @@ add_library( PugsAnalysis - GaussLegendreQuadrature.cpp - GaussLobattoQuadrature.cpp) + TensorialGaussLegendreQuadrature.cpp + TensorialGaussLobattoQuadrature.cpp) diff --git a/src/analysis/GaussLegendreQuadrature.hpp b/src/analysis/GaussLegendreQuadrature.hpp deleted file mode 100644 index 49f5c8ff77d8dee9b6fb4c89c8c2a6986d78d6b4..0000000000000000000000000000000000000000 --- a/src/analysis/GaussLegendreQuadrature.hpp +++ /dev/null @@ -1,31 +0,0 @@ -#ifndef GAUSS_LEGENDRE_QUADRATURE_HPP -#define GAUSS_LEGENDRE_QUADRATURE_HPP - -#include <analysis/QuadratureFormula.hpp> - -/** - * Defines Gauss Legendre quadrature on the reference element - * \f$]-1,1[^d\f$, where \f$d\f$ denotes the \a Dimension. - * - * \note formulae are extracted from High-order Finite Element Method [2004 - Chapman & Hall] - */ -template <size_t Dimension> -class GaussLegendreQuadrature final : public QuadratureForumla<Dimension> -{ - private: - void _buildPointAndWeightLists(); - - public: - GaussLegendreQuadrature(GaussLegendreQuadrature&&) = default; - GaussLegendreQuadrature(const GaussLegendreQuadrature&) = default; - - explicit GaussLegendreQuadrature(const size_t order) : QuadratureForumla<Dimension>(order) - { - this->_buildPointAndWeightLists(); - } - - GaussLegendreQuadrature() = delete; - ~GaussLegendreQuadrature() = default; -}; - -#endif // GAUSS_LEGENDRE_QUADRATURE_HPP diff --git a/src/analysis/GaussLobattoQuadrature.hpp b/src/analysis/GaussLobattoQuadrature.hpp deleted file mode 100644 index 92a104bb6f669f92a4ecbbab9cc4fef4e7473877..0000000000000000000000000000000000000000 --- a/src/analysis/GaussLobattoQuadrature.hpp +++ /dev/null @@ -1,31 +0,0 @@ -#ifndef GAUSS_LOBATTO_QUADRATURE_HPP -#define GAUSS_LOBATTO_QUADRATURE_HPP - -#include <analysis/QuadratureFormula.hpp> - -/** - * Defines Gauss Lobatto quadrature on the reference element - * \f$]-1,1[^d\f$, where \f$d\f$ denotes the \a Dimension. - * - * \note formulae are extracted from High-order Finite Element Method [2004 - Chapman & Hall] - */ -template <size_t Dimension> -class GaussLobattoQuadrature final : public QuadratureForumla<Dimension> -{ - private: - void _buildPointAndWeightLists(); - - public: - GaussLobattoQuadrature(GaussLobattoQuadrature&&) = default; - GaussLobattoQuadrature(const GaussLobattoQuadrature&) = default; - - explicit GaussLobattoQuadrature(const size_t order) : QuadratureForumla<Dimension>(order) - { - this->_buildPointAndWeightLists(); - } - - GaussLobattoQuadrature() = delete; - ~GaussLobattoQuadrature() = default; -}; - -#endif // GAUSS_LOBATTO_QUADRATURE_HPP diff --git a/src/analysis/GaussLegendreQuadrature.cpp b/src/analysis/TensorialGaussLegendreQuadrature.cpp similarity index 96% rename from src/analysis/GaussLegendreQuadrature.cpp rename to src/analysis/TensorialGaussLegendreQuadrature.cpp index e9cc2b9638ee95045444efad116dccad0f117fc7..6b70c6a4ad3a4212190d5e5aea61596ad50bc100 100644 --- a/src/analysis/GaussLegendreQuadrature.cpp +++ b/src/analysis/TensorialGaussLegendreQuadrature.cpp @@ -1,9 +1,9 @@ -#include <analysis/GaussLegendreQuadrature.hpp> +#include <analysis/TensorialGaussLegendreQuadrature.hpp> #include <utils/Exceptions.hpp> template <> void -GaussLegendreQuadrature<1>::_buildPointAndWeightLists() +TensorialGaussLegendreQuadrature<1>::_buildPointAndWeightLists() { const size_t nb_points = m_order / 2 + 1; @@ -238,7 +238,7 @@ GaussLegendreQuadrature<1>::_buildPointAndWeightLists() template <> void -GaussLegendreQuadrature<2>::_buildPointAndWeightLists() +TensorialGaussLegendreQuadrature<2>::_buildPointAndWeightLists() { const size_t nb_points_1d = this->m_order / 2 + 1; const size_t nb_points = nb_points_1d * nb_points_1d; @@ -246,7 +246,7 @@ GaussLegendreQuadrature<2>::_buildPointAndWeightLists() SmallArray<TinyVector<2>> point_list(nb_points); SmallArray<double> weight_list(nb_points); - GaussLegendreQuadrature<1> gauss_legendre_1d(m_order); + TensorialGaussLegendreQuadrature<1> gauss_legendre_1d(m_order); const auto& point_list_1d = gauss_legendre_1d.pointList(); const auto& weight_list_1d = gauss_legendre_1d.weightList(); @@ -264,7 +264,7 @@ GaussLegendreQuadrature<2>::_buildPointAndWeightLists() template <> void -GaussLegendreQuadrature<3>::_buildPointAndWeightLists() +TensorialGaussLegendreQuadrature<3>::_buildPointAndWeightLists() { const size_t nb_points_1d = this->m_order / 2 + 1; const size_t nb_points = nb_points_1d * nb_points_1d * nb_points_1d; @@ -272,7 +272,7 @@ GaussLegendreQuadrature<3>::_buildPointAndWeightLists() SmallArray<TinyVector<3>> point_list(nb_points); SmallArray<double> weight_list(nb_points); - GaussLegendreQuadrature<1> gauss_legendre_1d(m_order); + TensorialGaussLegendreQuadrature<1> gauss_legendre_1d(m_order); const auto& point_list_1d = gauss_legendre_1d.pointList(); const auto& weight_list_1d = gauss_legendre_1d.weightList(); diff --git a/src/analysis/TensorialGaussLegendreQuadrature.hpp b/src/analysis/TensorialGaussLegendreQuadrature.hpp new file mode 100644 index 0000000000000000000000000000000000000000..eaf4853569cde63b882f2e69a4325be1fed39a13 --- /dev/null +++ b/src/analysis/TensorialGaussLegendreQuadrature.hpp @@ -0,0 +1,31 @@ +#ifndef TENSORIAL_GAUSS_LEGENDRE_QUADRATURE_HPP +#define TENSORIAL_GAUSS_LEGENDRE_QUADRATURE_HPP + +#include <analysis/QuadratureFormula.hpp> + +/** + * Defines Gauss Legendre quadrature on the reference element + * \f$]-1,1[^d\f$, where \f$d\f$ denotes the \a Dimension. + * + * \note formulae are extracted from High-order Finite Element Method [2004 - Chapman & Hall] + */ +template <size_t Dimension> +class TensorialGaussLegendreQuadrature final : public QuadratureForumla<Dimension> +{ + private: + void _buildPointAndWeightLists(); + + public: + TensorialGaussLegendreQuadrature(TensorialGaussLegendreQuadrature&&) = default; + TensorialGaussLegendreQuadrature(const TensorialGaussLegendreQuadrature&) = default; + + explicit TensorialGaussLegendreQuadrature(const size_t order) : QuadratureForumla<Dimension>(order) + { + this->_buildPointAndWeightLists(); + } + + TensorialGaussLegendreQuadrature() = delete; + ~TensorialGaussLegendreQuadrature() = default; +}; + +#endif // TENSORIAL_GAUSS_LEGENDRE_QUADRATURE_HPP diff --git a/src/analysis/GaussLobattoQuadrature.cpp b/src/analysis/TensorialGaussLobattoQuadrature.cpp similarity index 93% rename from src/analysis/GaussLobattoQuadrature.cpp rename to src/analysis/TensorialGaussLobattoQuadrature.cpp index 267b91c36c2df63bdb812d307777eef5f47ff9d2..1b4ab59867f3212d5e641b306a114962c3a65379 100644 --- a/src/analysis/GaussLobattoQuadrature.cpp +++ b/src/analysis/TensorialGaussLobattoQuadrature.cpp @@ -1,9 +1,9 @@ -#include <analysis/GaussLobattoQuadrature.hpp> +#include <analysis/TensorialGaussLobattoQuadrature.hpp> #include <utils/Exceptions.hpp> template <> void -GaussLobattoQuadrature<1>::_buildPointAndWeightLists() +TensorialGaussLobattoQuadrature<1>::_buildPointAndWeightLists() { const size_t nb_points = m_order / 2 + 2; @@ -127,7 +127,7 @@ GaussLobattoQuadrature<1>::_buildPointAndWeightLists() template <> void -GaussLobattoQuadrature<2>::_buildPointAndWeightLists() +TensorialGaussLobattoQuadrature<2>::_buildPointAndWeightLists() { const size_t nb_points_1d = this->m_order / 2 + 2; const size_t nb_points = nb_points_1d * nb_points_1d; @@ -135,7 +135,7 @@ GaussLobattoQuadrature<2>::_buildPointAndWeightLists() SmallArray<TinyVector<2>> point_list(nb_points); SmallArray<double> weight_list(nb_points); - GaussLobattoQuadrature<1> gauss_lobatto_1d(m_order); + TensorialGaussLobattoQuadrature<1> gauss_lobatto_1d(m_order); const auto& point_list_1d = gauss_lobatto_1d.pointList(); const auto& weight_list_1d = gauss_lobatto_1d.weightList(); @@ -153,7 +153,7 @@ GaussLobattoQuadrature<2>::_buildPointAndWeightLists() template <> void -GaussLobattoQuadrature<3>::_buildPointAndWeightLists() +TensorialGaussLobattoQuadrature<3>::_buildPointAndWeightLists() { const size_t nb_points_1d = this->m_order / 2 + 2; const size_t nb_points = nb_points_1d * nb_points_1d * nb_points_1d; @@ -161,7 +161,7 @@ GaussLobattoQuadrature<3>::_buildPointAndWeightLists() SmallArray<TinyVector<3>> point_list(nb_points); SmallArray<double> weight_list(nb_points); - GaussLobattoQuadrature<1> gauss_lobatto_1d(m_order); + TensorialGaussLobattoQuadrature<1> gauss_lobatto_1d(m_order); const auto& point_list_1d = gauss_lobatto_1d.pointList(); const auto& weight_list_1d = gauss_lobatto_1d.weightList(); diff --git a/src/analysis/TensorialGaussLobattoQuadrature.hpp b/src/analysis/TensorialGaussLobattoQuadrature.hpp new file mode 100644 index 0000000000000000000000000000000000000000..d740f9c48900581119e355fa12705089c03f24a0 --- /dev/null +++ b/src/analysis/TensorialGaussLobattoQuadrature.hpp @@ -0,0 +1,31 @@ +#ifndef TENSORIAL_GAUSS_LOBATTO_QUADRATURE_HPP +#define TENSORIAL_GAUSS_LOBATTO_QUADRATURE_HPP + +#include <analysis/QuadratureFormula.hpp> + +/** + * Defines Gauss Lobatto quadrature on the reference element + * \f$]-1,1[^d\f$, where \f$d\f$ denotes the \a Dimension. + * + * \note formulae are extracted from High-order Finite Element Method [2004 - Chapman & Hall] + */ +template <size_t Dimension> +class TensorialGaussLobattoQuadrature final : public QuadratureForumla<Dimension> +{ + private: + void _buildPointAndWeightLists(); + + public: + TensorialGaussLobattoQuadrature(TensorialGaussLobattoQuadrature&&) = default; + TensorialGaussLobattoQuadrature(const TensorialGaussLobattoQuadrature&) = default; + + explicit TensorialGaussLobattoQuadrature(const size_t order) : QuadratureForumla<Dimension>(order) + { + this->_buildPointAndWeightLists(); + } + + TensorialGaussLobattoQuadrature() = delete; + ~TensorialGaussLobattoQuadrature() = default; +}; + +#endif // TENSORIAL_GAUSS_LOBATTO_QUADRATURE_HPP diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index 69542a25317c0cbb4ea7f64964697cb948af042d..7ecbb1f77863a1cffe5f4ed0ede604c35b95fcd1 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -81,8 +81,6 @@ add_executable (unit_tests test_FunctionProcessor.cpp test_FunctionSymbolId.cpp test_FunctionTable.cpp - test_GaussLegendreQuadrature.cpp - test_GaussLobattoQuadrature.cpp test_IfProcessor.cpp test_IncDecExpressionProcessor.cpp test_INodeProcessor.cpp @@ -105,6 +103,8 @@ add_executable (unit_tests test_SmallVector.cpp test_SymbolTable.cpp test_Table.cpp + test_TensorialGaussLegendreQuadrature.cpp + test_TensorialGaussLobattoQuadrature.cpp test_Timer.cpp test_TinyMatrix.cpp test_TinyVector.cpp diff --git a/tests/test_Q1Transformation.cpp b/tests/test_Q1Transformation.cpp index b4e0314ef7c6c945e477e9bc426eeef1dafdc690..f42a60b4b8fdbe37cd2d08e1d162366c485287c6 100644 --- a/tests/test_Q1Transformation.cpp +++ b/tests/test_Q1Transformation.cpp @@ -1,7 +1,7 @@ #include <catch2/catch_approx.hpp> #include <catch2/catch_test_macros.hpp> -#include <analysis/GaussLegendreQuadrature.hpp> +#include <analysis/TensorialGaussLegendreQuadrature.hpp> #include <geometry/Q1Transformation.hpp> // clazy:excludeall=non-pod-global-static @@ -63,7 +63,7 @@ TEST_CASE("Q1Transformation", "[geometry]") SECTION("Gauss order 1") { // One point is enough in 2d - GaussLegendreQuadrature<2> gauss(1); + TensorialGaussLegendreQuadrature<2> gauss(1); double surface = 0; for (size_t i = 0; i < gauss.numberOfPoints(); ++i) { surface += gauss.weight(i) * t.jacobianDeterminant(gauss.point(i)); @@ -75,7 +75,7 @@ TEST_CASE("Q1Transformation", "[geometry]") SECTION("Gauss order 7") { - GaussLegendreQuadrature<2> gauss(7); + TensorialGaussLegendreQuadrature<2> gauss(7); double surface = 0; for (size_t i = 0; i < gauss.numberOfPoints(); ++i) { surface += gauss.weight(i) * t.jacobianDeterminant(gauss.point(i)); @@ -135,7 +135,7 @@ TEST_CASE("Q1Transformation", "[geometry]") SECTION("Gauss order 3") { // At least 2^3 points is are required in 2d - GaussLegendreQuadrature<3> gauss(3); + TensorialGaussLegendreQuadrature<3> gauss(3); double volume = 0; for (size_t i = 0; i < gauss.numberOfPoints(); ++i) { volume += gauss.weight(i) * t.jacobianDeterminant(gauss.point(i)); @@ -147,7 +147,7 @@ TEST_CASE("Q1Transformation", "[geometry]") SECTION("Gauss order 7") { - GaussLegendreQuadrature<3> gauss(7); + TensorialGaussLegendreQuadrature<3> gauss(7); double volume = 0; for (size_t i = 0; i < gauss.numberOfPoints(); ++i) { volume += gauss.weight(i) * t.jacobianDeterminant(gauss.point(i)); diff --git a/tests/test_GaussLegendreQuadrature.cpp b/tests/test_TensorialGaussLegendreQuadrature.cpp similarity index 93% rename from tests/test_GaussLegendreQuadrature.cpp rename to tests/test_TensorialGaussLegendreQuadrature.cpp index 4fff0f2ae43e788cbac46847a3893cab1641d1c8..90661e2efa788516baa4c61b779545f59d6235f2 100644 --- a/tests/test_GaussLegendreQuadrature.cpp +++ b/tests/test_TensorialGaussLegendreQuadrature.cpp @@ -2,12 +2,12 @@ #include <catch2/catch_test_macros.hpp> #include <catch2/matchers/catch_matchers_all.hpp> -#include <analysis/GaussLegendreQuadrature.hpp> +#include <analysis/TensorialGaussLegendreQuadrature.hpp> #include <utils/Exceptions.hpp> // clazy:excludeall=non-pod-global-static -TEST_CASE("GaussLegendreQuadrature", "[analysis]") +TEST_CASE("TensorialGaussLegendreQuadrature", "[analysis]") { auto same_formulas = [](auto quadrature_formula0, auto quadrature_formula1) { auto point_list0 = quadrature_formula0.pointList(); @@ -181,8 +181,8 @@ TEST_CASE("GaussLegendreQuadrature", "[analysis]") SECTION("order 0 and 1") { - GaussLegendreQuadrature<1> l0(0); - GaussLegendreQuadrature<1> l1(1); + TensorialGaussLegendreQuadrature<1> l0(0); + TensorialGaussLegendreQuadrature<1> l1(1); REQUIRE(same_formulas(l0, l1)); REQUIRE(is_symmetric_formula(l1)); @@ -198,8 +198,8 @@ TEST_CASE("GaussLegendreQuadrature", "[analysis]") SECTION("order 2 and 3") { - GaussLegendreQuadrature<1> l2(2); - GaussLegendreQuadrature<1> l3(3); + TensorialGaussLegendreQuadrature<1> l2(2); + TensorialGaussLegendreQuadrature<1> l3(3); REQUIRE(same_formulas(l2, l3)); REQUIRE(is_symmetric_formula(l3)); @@ -217,8 +217,8 @@ TEST_CASE("GaussLegendreQuadrature", "[analysis]") SECTION("order 4 and 5") { - GaussLegendreQuadrature<1> l4(4); - GaussLegendreQuadrature<1> l5(5); + TensorialGaussLegendreQuadrature<1> l4(4); + TensorialGaussLegendreQuadrature<1> l5(5); REQUIRE(same_formulas(l4, l5)); REQUIRE(is_symmetric_formula(l5)); @@ -238,8 +238,8 @@ TEST_CASE("GaussLegendreQuadrature", "[analysis]") SECTION("order 6 and 7") { - GaussLegendreQuadrature<1> l6(6); - GaussLegendreQuadrature<1> l7(7); + TensorialGaussLegendreQuadrature<1> l6(6); + TensorialGaussLegendreQuadrature<1> l7(7); REQUIRE(same_formulas(l6, l7)); REQUIRE(is_symmetric_formula(l7)); @@ -261,8 +261,8 @@ TEST_CASE("GaussLegendreQuadrature", "[analysis]") SECTION("order 8 and 9") { - GaussLegendreQuadrature<1> l8(8); - GaussLegendreQuadrature<1> l9(9); + TensorialGaussLegendreQuadrature<1> l8(8); + TensorialGaussLegendreQuadrature<1> l9(9); REQUIRE(same_formulas(l8, l9)); REQUIRE(is_symmetric_formula(l9)); @@ -286,8 +286,8 @@ TEST_CASE("GaussLegendreQuadrature", "[analysis]") SECTION("order 10 and 11") { - GaussLegendreQuadrature<1> l10(10); - GaussLegendreQuadrature<1> l11(11); + TensorialGaussLegendreQuadrature<1> l10(10); + TensorialGaussLegendreQuadrature<1> l11(11); REQUIRE(same_formulas(l10, l11)); REQUIRE(is_symmetric_formula(l11)); @@ -313,8 +313,8 @@ TEST_CASE("GaussLegendreQuadrature", "[analysis]") SECTION("order 12 and 13") { - GaussLegendreQuadrature<1> l12(12); - GaussLegendreQuadrature<1> l13(13); + TensorialGaussLegendreQuadrature<1> l12(12); + TensorialGaussLegendreQuadrature<1> l13(13); REQUIRE(same_formulas(l12, l13)); REQUIRE(is_symmetric_formula(l13)); @@ -342,8 +342,8 @@ TEST_CASE("GaussLegendreQuadrature", "[analysis]") SECTION("order 14 and 15") { - GaussLegendreQuadrature<1> l14(14); - GaussLegendreQuadrature<1> l15(15); + TensorialGaussLegendreQuadrature<1> l14(14); + TensorialGaussLegendreQuadrature<1> l15(15); REQUIRE(same_formulas(l14, l15)); REQUIRE(is_symmetric_formula(l15)); @@ -373,8 +373,8 @@ TEST_CASE("GaussLegendreQuadrature", "[analysis]") SECTION("order 16 and 17") { - GaussLegendreQuadrature<1> l16(16); - GaussLegendreQuadrature<1> l17(17); + TensorialGaussLegendreQuadrature<1> l16(16); + TensorialGaussLegendreQuadrature<1> l17(17); REQUIRE(same_formulas(l16, l17)); REQUIRE(is_symmetric_formula(l17)); @@ -406,8 +406,8 @@ TEST_CASE("GaussLegendreQuadrature", "[analysis]") SECTION("order 18 and 19") { - GaussLegendreQuadrature<1> l18(18); - GaussLegendreQuadrature<1> l19(19); + TensorialGaussLegendreQuadrature<1> l18(18); + TensorialGaussLegendreQuadrature<1> l19(19); REQUIRE(same_formulas(l18, l19)); REQUIRE(is_symmetric_formula(l19)); @@ -441,8 +441,8 @@ TEST_CASE("GaussLegendreQuadrature", "[analysis]") SECTION("order 20 and 21") { - GaussLegendreQuadrature<1> l20(20); - GaussLegendreQuadrature<1> l21(21); + TensorialGaussLegendreQuadrature<1> l20(20); + TensorialGaussLegendreQuadrature<1> l21(21); REQUIRE(same_formulas(l20, l21)); REQUIRE(is_symmetric_formula(l21)); @@ -478,8 +478,8 @@ TEST_CASE("GaussLegendreQuadrature", "[analysis]") SECTION("order 22 and 23") { - GaussLegendreQuadrature<1> l22(22); - GaussLegendreQuadrature<1> l23(23); + TensorialGaussLegendreQuadrature<1> l22(22); + TensorialGaussLegendreQuadrature<1> l23(23); REQUIRE(same_formulas(l22, l23)); REQUIRE(is_symmetric_formula(l23)); @@ -517,7 +517,7 @@ TEST_CASE("GaussLegendreQuadrature", "[analysis]") SECTION("not implemented formulae") { - REQUIRE_THROWS_WITH(GaussLegendreQuadrature<1>(24), + REQUIRE_THROWS_WITH(TensorialGaussLegendreQuadrature<1>(24), "error: Gauss-Legendre quadrature formulae handle orders up to 23"); } } @@ -558,8 +558,8 @@ TEST_CASE("GaussLegendreQuadrature", "[analysis]") SECTION("order 6 and 7") { - GaussLegendreQuadrature<2> l6(6); - GaussLegendreQuadrature<2> l7(7); + TensorialGaussLegendreQuadrature<2> l6(6); + TensorialGaussLegendreQuadrature<2> l7(7); REQUIRE(same_formulas(l6, l7)); @@ -609,8 +609,8 @@ TEST_CASE("GaussLegendreQuadrature", "[analysis]") SECTION("order 6 and 7") { - GaussLegendreQuadrature<3> l6(6); - GaussLegendreQuadrature<3> l7(7); + TensorialGaussLegendreQuadrature<3> l6(6); + TensorialGaussLegendreQuadrature<3> l7(7); REQUIRE(same_formulas(l6, l7)); @@ -624,7 +624,7 @@ TEST_CASE("GaussLegendreQuadrature", "[analysis]") SECTION("Access functions") { - GaussLegendreQuadrature<3> quadrature_formula(7); + TensorialGaussLegendreQuadrature<3> quadrature_formula(7); auto point_list = quadrature_formula.pointList(); auto weight_list = quadrature_formula.weightList(); diff --git a/tests/test_GaussLobattoQuadrature.cpp b/tests/test_TensorialGaussLobattoQuadrature.cpp similarity index 92% rename from tests/test_GaussLobattoQuadrature.cpp rename to tests/test_TensorialGaussLobattoQuadrature.cpp index f8d12af51beefe3d7b50bb2431da9057c3ca050e..56296561f0e43733951f87b4d76c6e5fb20aef83 100644 --- a/tests/test_GaussLobattoQuadrature.cpp +++ b/tests/test_TensorialGaussLobattoQuadrature.cpp @@ -2,12 +2,12 @@ #include <catch2/catch_test_macros.hpp> #include <catch2/matchers/catch_matchers_all.hpp> -#include <analysis/GaussLobattoQuadrature.hpp> +#include <analysis/TensorialGaussLobattoQuadrature.hpp> #include <utils/Exceptions.hpp> // clazy:excludeall=non-pod-global-static -TEST_CASE("GaussLobattoQuadrature", "[analysis]") +TEST_CASE("TensorialGaussLobattoQuadrature", "[analysis]") { auto same_formulas = [](auto quadrature_formula0, auto quadrature_formula1) { auto point_list0 = quadrature_formula0.pointList(); @@ -141,8 +141,8 @@ TEST_CASE("GaussLobattoQuadrature", "[analysis]") SECTION("order 0 and 1") { - GaussLobattoQuadrature<1> l0(0); - GaussLobattoQuadrature<1> l1(1); + TensorialGaussLobattoQuadrature<1> l0(0); + TensorialGaussLobattoQuadrature<1> l1(1); REQUIRE(same_formulas(l0, l1)); REQUIRE(is_symmetric_formula(l1)); @@ -158,8 +158,8 @@ TEST_CASE("GaussLobattoQuadrature", "[analysis]") SECTION("order 2 and 3") { - GaussLobattoQuadrature<1> l2(2); - GaussLobattoQuadrature<1> l3(3); + TensorialGaussLobattoQuadrature<1> l2(2); + TensorialGaussLobattoQuadrature<1> l3(3); REQUIRE(same_formulas(l2, l3)); REQUIRE(is_symmetric_formula(l3)); @@ -177,8 +177,8 @@ TEST_CASE("GaussLobattoQuadrature", "[analysis]") SECTION("order 4 and 5") { - GaussLobattoQuadrature<1> l4(4); - GaussLobattoQuadrature<1> l5(5); + TensorialGaussLobattoQuadrature<1> l4(4); + TensorialGaussLobattoQuadrature<1> l5(5); REQUIRE(same_formulas(l4, l5)); REQUIRE(is_symmetric_formula(l5)); @@ -198,8 +198,8 @@ TEST_CASE("GaussLobattoQuadrature", "[analysis]") SECTION("order 6 and 7") { - GaussLobattoQuadrature<1> l6(6); - GaussLobattoQuadrature<1> l7(7); + TensorialGaussLobattoQuadrature<1> l6(6); + TensorialGaussLobattoQuadrature<1> l7(7); REQUIRE(same_formulas(l6, l7)); REQUIRE(is_symmetric_formula(l7)); @@ -221,8 +221,8 @@ TEST_CASE("GaussLobattoQuadrature", "[analysis]") SECTION("order 8 and 9") { - GaussLobattoQuadrature<1> l8(8); - GaussLobattoQuadrature<1> l9(9); + TensorialGaussLobattoQuadrature<1> l8(8); + TensorialGaussLobattoQuadrature<1> l9(9); REQUIRE(same_formulas(l8, l9)); REQUIRE(is_symmetric_formula(l9)); @@ -246,8 +246,8 @@ TEST_CASE("GaussLobattoQuadrature", "[analysis]") SECTION("order 10 and 11") { - GaussLobattoQuadrature<1> l10(10); - GaussLobattoQuadrature<1> l11(11); + TensorialGaussLobattoQuadrature<1> l10(10); + TensorialGaussLobattoQuadrature<1> l11(11); REQUIRE(same_formulas(l10, l11)); REQUIRE(is_symmetric_formula(l11)); @@ -273,8 +273,8 @@ TEST_CASE("GaussLobattoQuadrature", "[analysis]") SECTION("order 12 and 13") { - GaussLobattoQuadrature<1> l12(12); - GaussLobattoQuadrature<1> l13(13); + TensorialGaussLobattoQuadrature<1> l12(12); + TensorialGaussLobattoQuadrature<1> l13(13); REQUIRE(same_formulas(l12, l13)); REQUIRE(is_symmetric_formula(l13)); @@ -302,7 +302,7 @@ TEST_CASE("GaussLobattoQuadrature", "[analysis]") SECTION("not implemented formulae") { - REQUIRE_THROWS_WITH(GaussLobattoQuadrature<1>(14), + REQUIRE_THROWS_WITH(TensorialGaussLobattoQuadrature<1>(14), "error: Gauss-Lobatto quadrature formulae handle orders up to 13"); } } @@ -343,8 +343,8 @@ TEST_CASE("GaussLobattoQuadrature", "[analysis]") SECTION("order 6 and 7") { - GaussLobattoQuadrature<2> l6(6); - GaussLobattoQuadrature<2> l7(7); + TensorialGaussLobattoQuadrature<2> l6(6); + TensorialGaussLobattoQuadrature<2> l7(7); REQUIRE(same_formulas(l6, l7)); @@ -394,8 +394,8 @@ TEST_CASE("GaussLobattoQuadrature", "[analysis]") SECTION("order 6 and 7") { - GaussLobattoQuadrature<3> l6(6); - GaussLobattoQuadrature<3> l7(7); + TensorialGaussLobattoQuadrature<3> l6(6); + TensorialGaussLobattoQuadrature<3> l7(7); REQUIRE(same_formulas(l6, l7)); @@ -409,7 +409,7 @@ TEST_CASE("GaussLobattoQuadrature", "[analysis]") SECTION("Access functions") { - GaussLobattoQuadrature<3> quadrature_formula(7); + TensorialGaussLobattoQuadrature<3> quadrature_formula(7); auto point_list = quadrature_formula.pointList(); auto weight_list = quadrature_formula.weightList();