From 77c0a811f0f496a755c278fe4b86a15abe46cb75 Mon Sep 17 00:00:00 2001 From: Norihiro Watanabe <norihiro.watanabe@ufz.de> Date: Thu, 3 Nov 2016 13:51:15 +0100 Subject: [PATCH] [Mesh] remove checks for base nodes in checkNonlinearNodeIDs() --- MeshLib/Mesh.cpp | 23 ++++++++++------------- 1 file changed, 10 insertions(+), 13 deletions(-) diff --git a/MeshLib/Mesh.cpp b/MeshLib/Mesh.cpp index 771663394b8..758c7360c7b 100644 --- a/MeshLib/Mesh.cpp +++ b/MeshLib/Mesh.cpp @@ -259,21 +259,18 @@ void Mesh::checkNonlinearNodeIDs() const { for (MeshLib::Element const* e : _elements) { - for (unsigned i=0; i<e->getNumberOfBaseNodes(); i++) - { - if (!(e->getNodeIndex(i) < getNumberOfBaseNodes())) - OGS_FATAL( - "Node %d is a base/linear node, but the ID is not smaller " - "than the number of base nodes %d. Please renumber node IDs in the mesh.", - e->getNodeIndex(i), getNumberOfBaseNodes()); - } for (unsigned i=e->getNumberOfBaseNodes(); i<e->getNumberOfNodes(); i++) { - if (!(e->getNodeIndex(i) >= getNumberOfBaseNodes())) - OGS_FATAL( - "Node %d is a non-linear node, but the ID is smaller " - "than the number of base nodes %d. Please renumber node IDs in the mesh.", - e->getNodeIndex(i), getNumberOfBaseNodes()); + if (e->getNodeIndex(i) >= getNumberOfBaseNodes()) + continue; + + DBUG( + "Node %d is a non-linear node, but the ID is smaller " + "than the number of base nodes %d.", + e->getNodeIndex(i), getNumberOfBaseNodes()); + ERR("Found a nonlinear node whose ID is smaller than base node IDs." + "Some functions may not work properly."); + return; } } } -- GitLab