getfem-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Getfem-commits] (no subject)


From: Markus Bürg
Subject: [Getfem-commits] (no subject)
Date: Thu, 31 Aug 2017 06:19:23 -0400 (EDT)

branch: mb-transInversion
commit 46919bdf21635ba5a609640dc6ab062e3ec38c34
Author: mb <address@hidden>
Date:   Thu Aug 31 12:17:39 2017 +0200

    Create linear transformation only, if complexity is larger than one.
---
 src/getfem/bgeot_geotrans_inv.h | 16 +++++++++-------
 1 file changed, 9 insertions(+), 7 deletions(-)

diff --git a/src/getfem/bgeot_geotrans_inv.h b/src/getfem/bgeot_geotrans_inv.h
index 00fff23..b0f5203 100644
--- a/src/getfem/bgeot_geotrans_inv.h
+++ b/src/getfem/bgeot_geotrans_inv.h
@@ -182,15 +182,17 @@ namespace bgeot {
       nonlinear_storage.x_real.resize(P);
       nonlinear_storage.x_ref.resize(P);
 
-      auto plinear_pgt = create_linear_pgt(pgt);
-      std::vector<base_node> linear_nodes;
+      if (pgt->complexity() > 1) {
+        auto plinear_pgt = create_linear_pgt(pgt);
+        std::vector<base_node> linear_nodes;
 
-      for (auto &&i : get_linear_nodes_indices(pgt)) {
-        linear_nodes.push_back(nodes[i]);
-      }
+        for (auto &&i : get_linear_nodes_indices(pgt)) {
+          linear_nodes.push_back(nodes[i]);
+        }
 
-      nonlinear_storage.plinear_inversion
-        = std::make_shared<geotrans_inv_convex>(linear_nodes, plinear_pgt);
+        nonlinear_storage.plinear_inversion
+          = std::make_shared<geotrans_inv_convex>(linear_nodes, plinear_pgt);
+      }
     }
   }
 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]