From f6a26637debcb1f4c6d7f9d10697d053da5adc51 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Joachim=20Sch=C3=B6berl?= Date: Mon, 19 Nov 2018 10:57:03 +0100 Subject: [PATCH] optimization for bilinear quads --- libsrc/meshing/curvedelems.cpp | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/libsrc/meshing/curvedelems.cpp b/libsrc/meshing/curvedelems.cpp index 709c25e9..b5ddc564 100644 --- a/libsrc/meshing/curvedelems.cpp +++ b/libsrc/meshing/curvedelems.cpp @@ -2254,6 +2254,18 @@ namespace netgen } break; } + case QUAD: + { + if (info.order >= 2) return false; // not yet supported + AutoDiff<2,T> lami[4] = { (1-x)*(1-y), x*(1-y), x*y, (1-x)*y }; + for (int j = 0; j < 4; j++) + { + Point<3> p = mesh[el[j]]; + for (int k = 0; k < DIM_SPACE; k++) + mapped_x[k] += p(k) * lami[j]; + } + break; + } default: return false; }