getfem-commits
[Top][All Lists]
Advanced

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

[Getfem-commits] r5258 - in /trunk/getfem/src: ./ getfem/


From: logari81
Subject: [Getfem-commits] r5258 - in /trunk/getfem/src: ./ getfem/
Date: Wed, 23 Mar 2016 08:52:53 -0000

Author: logari81
Date: Wed Mar 23 09:52:52 2016
New Revision: 5258

URL: http://svn.gna.org/viewcvs/getfem?rev=5258&view=rev
Log:
move vectorize_base_tensor and vectorize_grad_base_tensor functions to 
getfem_mesh_fem.h

Modified:
    trunk/getfem/src/getfem/getfem_contact_and_friction_common.h
    trunk/getfem/src/getfem/getfem_mesh_fem.h
    trunk/getfem/src/getfem_contact_and_friction_common.cc
    trunk/getfem/src/getfem_linearized_plates.cc
    trunk/getfem/src/getfem_mesh_fem.cc

Modified: trunk/getfem/src/getfem/getfem_contact_and_friction_common.h
URL: 
http://svn.gna.org/viewcvs/getfem/trunk/getfem/src/getfem/getfem_contact_and_friction_common.h?rev=5258&r1=5257&r2=5258&view=diff
==============================================================================
--- trunk/getfem/src/getfem/getfem_contact_and_friction_common.h        
(original)
+++ trunk/getfem/src/getfem/getfem_contact_and_friction_common.h        Wed Mar 
23 09:52:52 2016
@@ -386,13 +386,6 @@
   }
 
 
-  void vectorize_base_tensor(const base_tensor &t, base_matrix &vt,
-                             size_type ndof, size_type qdim, size_type N);
-
-  void vectorize_grad_base_tensor(const base_tensor &t, base_tensor &vt,
-                                  size_type ndof, size_type qdim, size_type N);
-
-
   void compute_normal(const fem_interpolation_context &ctx, size_type face,
                       bool in_reference_conf, const model_real_plain_vector 
&coeff,
                       base_node &n0, base_node &n, base_matrix &grad);

Modified: trunk/getfem/src/getfem/getfem_mesh_fem.h
URL: 
http://svn.gna.org/viewcvs/getfem/trunk/getfem/src/getfem/getfem_mesh_fem.h?rev=5258&r1=5257&r2=5258&view=diff
==============================================================================
--- trunk/getfem/src/getfem/getfem_mesh_fem.h   (original)
+++ trunk/getfem/src/getfem/getfem_mesh_fem.h   Wed Mar 23 09:52:52 2016
@@ -651,6 +651,13 @@
     }
   }
 
+  void vectorize_base_tensor(const base_tensor &t, base_matrix &vt,
+                             size_type ndof, size_type qdim, size_type N);
+
+  void vectorize_grad_base_tensor(const base_tensor &t, base_tensor &vt,
+                                  size_type ndof, size_type qdim, size_type N);
+
+
 }  /* end of namespace getfem.                                             */
 
 

Modified: trunk/getfem/src/getfem_contact_and_friction_common.cc
URL: 
http://svn.gna.org/viewcvs/getfem/trunk/getfem/src/getfem_contact_and_friction_common.cc?rev=5258&r1=5257&r2=5258&view=diff
==============================================================================
--- trunk/getfem/src/getfem_contact_and_friction_common.cc      (original)
+++ trunk/getfem/src/getfem_contact_and_friction_common.cc      Wed Mar 23 
09:52:52 2016
@@ -48,40 +48,6 @@
         gmm::mult(gmm::transposed(grad), n0, n);
         gmm::scale(n, gmm::sgn(J)); // Test
       }
-  }
-
-  void vectorize_base_tensor(const base_tensor &t, base_matrix &vt,
-                             size_type ndof, size_type qdim, size_type N) {
-    GMM_ASSERT1(qdim == N || qdim == 1, "mixed intrinsic vector and "
-                "tensorised fem is not supported");
-    gmm::resize(vt, ndof, N);
-    ndof = (ndof*qdim)/N;
-    if (qdim == 1) {
-      gmm::clear(vt);
-      base_tensor::const_iterator it = t.begin();
-      for (size_type i = 0; i < ndof; ++i, ++it)
-        for (size_type j = 0; j < N; ++j) vt(i*N+j, j) = *it;
-    } else if (qdim == N) {
-      gmm::copy(t.as_vector(), vt.as_vector());
-    }
-  }
-
-  void vectorize_grad_base_tensor(const base_tensor &t, base_tensor &vt,
-                                         size_type ndof, size_type qdim,
-                                         size_type N) {
-    GMM_ASSERT1(qdim == N || qdim == 1, "mixed intrinsic vector and "
-                  "tensorised fem is not supported");
-    vt.adjust_sizes(bgeot::multi_index(ndof, N, N));
-    ndof = (ndof*qdim)/N;
-    if (qdim == 1) {
-      gmm::clear(vt.as_vector());
-      base_tensor::const_iterator it = t.begin();
-      for (size_type k = 0; k < N; ++k)
-        for (size_type i = 0; i < ndof; ++i, ++it)
-          for (size_type j = 0; j < N; ++j) vt(i*N+j, j, k) = *it;
-    } else if (qdim == N) {
-      gmm::copy(t.as_vector(), vt.as_vector());
-    }
   }
 
   //=========================================================================

Modified: trunk/getfem/src/getfem_linearized_plates.cc
URL: 
http://svn.gna.org/viewcvs/getfem/trunk/getfem/src/getfem_linearized_plates.cc?rev=5258&r1=5257&r2=5258&view=diff
==============================================================================
--- trunk/getfem/src/getfem_linearized_plates.cc        (original)
+++ trunk/getfem/src/getfem_linearized_plates.cc        Wed Mar 23 09:52:52 2016
@@ -21,7 +21,6 @@
 
 
 #include "getfem/getfem_linearized_plates.h"
-#include "getfem/getfem_contact_and_friction_common.h" // for 
vectorize_base_tensor
 
 
 namespace getfem {

Modified: trunk/getfem/src/getfem_mesh_fem.cc
URL: 
http://svn.gna.org/viewcvs/getfem/trunk/getfem/src/getfem_mesh_fem.cc?rev=5258&r1=5257&r2=5258&view=diff
==============================================================================
--- trunk/getfem/src/getfem_mesh_fem.cc (original)
+++ trunk/getfem/src/getfem_mesh_fem.cc Wed Mar 23 09:52:52 2016
@@ -821,6 +821,40 @@
   { return dal::singleton<dummy_mesh_fem_>::instance().mf; }
 
 
+  void vectorize_base_tensor(const base_tensor &t, base_matrix &vt,
+                             size_type ndof, size_type qdim, size_type N) {
+    GMM_ASSERT1(qdim == N || qdim == 1, "mixed intrinsic vector and "
+                "tensorised fem is not supported");
+    gmm::resize(vt, ndof, N);
+    ndof = (ndof*qdim)/N;
+    if (qdim == 1) {
+      gmm::clear(vt);
+      base_tensor::const_iterator it = t.begin();
+      for (size_type i = 0; i < ndof; ++i, ++it)
+        for (size_type j = 0; j < N; ++j) vt(i*N+j, j) = *it;
+    } else if (qdim == N) {
+      gmm::copy(t.as_vector(), vt.as_vector());
+    }
+  }
+
+  void vectorize_grad_base_tensor(const base_tensor &t, base_tensor &vt,
+                                  size_type ndof, size_type qdim,
+                                  size_type N) {
+    GMM_ASSERT1(qdim == N || qdim == 1, "mixed intrinsic vector and "
+                  "tensorised fem is not supported");
+    vt.adjust_sizes(bgeot::multi_index(ndof, N, N));
+    ndof = (ndof*qdim)/N;
+    if (qdim == 1) {
+      gmm::clear(vt.as_vector());
+      base_tensor::const_iterator it = t.begin();
+      for (size_type k = 0; k < N; ++k)
+        for (size_type i = 0; i < ndof; ++i, ++it)
+          for (size_type j = 0; j < N; ++j) vt(i*N+j, j, k) = *it;
+    } else if (qdim == N) {
+      gmm::copy(t.as_vector(), vt.as_vector());
+    }
+  }
+
 
 
 }  /* end of namespace getfem.                                             */




reply via email to

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