getfem-commits
[Top][All Lists]
Advanced

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

[Getfem-commits] (no subject)


From: Yves Renard
Subject: [Getfem-commits] (no subject)
Date: Wed, 31 May 2017 14:06:11 -0400 (EDT)

branch: devel-yves
commit ba56bb631f5dc09665a5acd0b6c4917389be858c
Author: Yves Renard <address@hidden>
Date:   Wed May 31 20:05:12 2017 +0200

    import of gmsh pyramidal element
---
 src/getfem_import.cc | 16 +++++++++++-----
 1 file changed, 11 insertions(+), 5 deletions(-)

diff --git a/src/getfem_import.cc b/src/getfem_import.cc
index f91fcba..d20fbef 100644
--- a/src/getfem_import.cc
+++ b/src/getfem_import.cc
@@ -56,7 +56,7 @@ namespace getfem {
         pgt = bgeot::prism_geotrans(3,1);
       } break;
       case 7: { /* PYRAMID */
-        GMM_ASSERT1(false, "sorry pyramidal elements not yet supported.");
+       pgt = bgeot::pyramidal_geotrans(1);
       } break;
       case 8: { /* 2ND ORDER LINE */
         pgt = bgeot::simplex_geotrans(1,2);
@@ -123,8 +123,7 @@ namespace getfem {
         nodes.resize(6);
       } break;
       case 7: { /* PYRAMID */
-        GMM_ASSERT1(false,
-                    "sorry pyramidal elements not done for the moment..");
+       nodes.resize(5);
       } break;
       case 8: { /* 2ND ORDER LINE */
         nodes.resize(3);
@@ -355,6 +354,13 @@ namespace getfem {
         ci.nodes[6] = tmp_nodes[7];
         ci.nodes[7] = tmp_nodes[6];
       } break;
+      case 7 : { /* first order pyramid */
+        //ci.nodes[0] = tmp_nodes[0];
+        ci.nodes[1] = tmp_nodes[2];
+        ci.nodes[2] = tmp_nodes[1];
+        // ci.nodes[3] = tmp_nodes[3];
+        // ci.nodes[4] = tmp_nodes[4];
+      } break;
       case 8 : { /* Second order line */
         //ci.nodes[0] = tmp_nodes[0];
         ci.nodes[1] = tmp_nodes[2];
@@ -1017,9 +1023,9 @@ namespace getfem {
             if (itype < elt_cnt.size())
               elt_cnt[itype] += 1;
           } else if (MM == NN && NN == OO && OO == PP) { // assume 13-node 
pyramid
-            GMM_ASSERT1(false, "Ansys 13-node pyramid elements are not 
supported yet");
+            GMM_ASSERT1(false, "Ansys 13-node pyramid elements are not 
supported yet, import to be done");
           } else if (KK == LL && OO == PP) { // assume 15-node pyramid
-            GMM_ASSERT1(false, "Ansys 15-node prism elements are not supported 
yet");
+            GMM_ASSERT1(false, "Ansys 15-node pyramid elements are not 
supported yet, import to be done");
           } else {
             getfem_cv_nodes.resize(20);
             getfem_cv_nodes[0] = cdb_node_2_getfem_node[II];



reply via email to

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