diff --git a/applications/GeoMechanicsApplication/custom_utilities/equation_of_motion_utilities.cpp b/applications/GeoMechanicsApplication/custom_utilities/equation_of_motion_utilities.cpp index 70c22585c178..1b50a39aa2ca 100644 --- a/applications/GeoMechanicsApplication/custom_utilities/equation_of_motion_utilities.cpp +++ b/applications/GeoMechanicsApplication/custom_utilities/equation_of_motion_utilities.cpp @@ -87,15 +87,16 @@ Vector GeoEquationOfMotionUtilities::CalculateInternalForceVector(const std::vec const std::vector& rStressVectors, const std::vector& rIntegrationCoefficients) { - KRATOS_ERROR_IF((rBs.size() != rStressVectors.size()) || (rBs.size() != rIntegrationCoefficients.size())) + KRATOS_DEBUG_ERROR_IF((rBs.size() != rStressVectors.size()) || + (rBs.size() != rIntegrationCoefficients.size())) << "Cannot calculate the internal force vector: input vectors have different sizes\n"; - KRATOS_ERROR_IF(rBs.empty()) + KRATOS_DEBUG_ERROR_IF(rBs.empty()) << "Cannot calculate the internal force vector: input vectors are empty\n"; auto has_inconsistent_sizes = [number_of_rows = rBs.front().size1(), number_of_columns = rBs.front().size2()](const auto& rMatrix) { return (rMatrix.size1() != number_of_rows) || (rMatrix.size2() != number_of_columns); }; - KRATOS_ERROR_IF(std::any_of(rBs.begin() + 1, rBs.end(), has_inconsistent_sizes)) + KRATOS_DEBUG_ERROR_IF(std::any_of(rBs.begin() + 1, rBs.end(), has_inconsistent_sizes)) << "Cannot calculate the internal force vector: B-matrices have different sizes"; auto result = Vector{ZeroVector{rBs.front().size2()}}; diff --git a/applications/GeoMechanicsApplication/tests/cpp_tests/test_equation_of_motion.cpp b/applications/GeoMechanicsApplication/tests/cpp_tests/test_equation_of_motion.cpp index 84a4a08186a5..3395213d9d81 100644 --- a/applications/GeoMechanicsApplication/tests/cpp_tests/test_equation_of_motion.cpp +++ b/applications/GeoMechanicsApplication/tests/cpp_tests/test_equation_of_motion.cpp @@ -199,6 +199,9 @@ KRATOS_TEST_CASE_IN_SUITE(TheInternalForceVectorIsTheIntegralOfBTransposedTimesS expected_internal_force_vector, relative_tolerance) } +// The following tests only raise errors when using debug builds +#ifdef KRATOS_DEBUG + KRATOS_TEST_CASE_IN_SUITE(CalculatingTheInternalForceVectorFailsWhenTheInputVectorsHaveDifferentSizes, KratosGeoMechanicsFastSuiteWithoutKernel) { @@ -238,4 +241,6 @@ KRATOS_TEST_CASE_IN_SUITE(CalculatingTheInternalForceVectorFailsWhenBMatricesHav "Cannot calculate the internal force vector: B-matrices have different sizes") } +#endif + } // namespace Kratos::Testing \ No newline at end of file