r46745 - /packages/gmsh-tetgen/trunk/debian/patches/alauzet.patch
trophime-guest at users.alioth.debian.org
trophime-guest at users.alioth.debian.org
Tue Jun 24 13:29:38 UTC 2014
Author: trophime-guest
Date: Tue Jun 24 13:29:38 2014
New Revision: 46745
URL: http://svn.debian.org/wsvn/debian-science/?sc=1&rev=46745
Log:
fix alauzet patch
Modified:
packages/gmsh-tetgen/trunk/debian/patches/alauzet.patch
Modified: packages/gmsh-tetgen/trunk/debian/patches/alauzet.patch
URL: http://svn.debian.org/wsvn/debian-science/packages/gmsh-tetgen/trunk/debian/patches/alauzet.patch?rev=46745&op=diff
==============================================================================
--- packages/gmsh-tetgen/trunk/debian/patches/alauzet.patch (original)
+++ packages/gmsh-tetgen/trunk/debian/patches/alauzet.patch Tue Jun 24 13:29:38 2014
@@ -1,7 +1,7 @@
-Index: gmsh-tetgen-2.8.5~svn18982/Mesh/Field.cpp
+Index: gmsh-tetgen-2.8.5~svn18983/Mesh/Field.cpp
===================================================================
---- gmsh-tetgen-2.8.5~svn18982.orig/Mesh/Field.cpp
-+++ gmsh-tetgen-2.8.5~svn18982/Mesh/Field.cpp
+--- gmsh-tetgen-2.8.5~svn18983.orig/Mesh/Field.cpp
++++ gmsh-tetgen-2.8.5~svn18983/Mesh/Field.cpp
@@ -534,6 +534,55 @@ class SphereField : public Field
}
};
@@ -109,7 +109,7 @@
+ }
+ virtual void operator() (double x, double y, double z, SMetric3 &metr, GEntity *ge=0)
+ {
-+ // check if idlist contains 2 elements other error message
++ // check if idlist contains 2 elements other error message
+ SMetric3 v;
+ for(std::list<int>::iterator it = idlist.begin(); it != idlist.end(); it++) {
+ Field *f = (GModel::current()->getFields()->get(*it));
@@ -122,7 +122,7 @@
+ else{
+ (*f) (x, y, z, ff, ge);
+ }
-+ if (it == idlist.begin())
++ if (it == idlist.begin())
+ v = ff;
+ else
+ v = intersection_alauzet(v,ff);
@@ -148,7 +148,7 @@
+ m(i,i) = 1. / (L*L);
+ }
+ }
-+ if (it == idlist.begin())
++ if (it == idlist.begin())
+ metr = m;
+ else
+ metr = intersection_alauzet(metr,m);
@@ -158,10 +158,10 @@
metr.eig(V, S, 1);
return sqrt(1./S(2)); //S(2) is largest eigenvalue
}
-Index: gmsh-tetgen-2.8.5~svn18982/Geo/STensor3.h
+Index: gmsh-tetgen-2.8.5~svn18983/Geo/STensor3.h
===================================================================
---- gmsh-tetgen-2.8.5~svn18982.orig/Geo/STensor3.h
-+++ gmsh-tetgen-2.8.5~svn18982/Geo/STensor3.h
+--- gmsh-tetgen-2.8.5~svn18983.orig/Geo/STensor3.h
++++ gmsh-tetgen-2.8.5~svn18983/Geo/STensor3.h
@@ -175,6 +175,8 @@ SMetric3 intersection (const SMetric3 &m
const SMetric3 &m2);
SMetric3 intersection_alauzet (const SMetric3 &m1,
@@ -171,35 +171,3 @@
SMetric3 interpolation (const SMetric3 &m1,
const SMetric3 &m2,
const double t);
-Index: gmsh-tetgen-2.8.5~svn18982/Geo/STensor3.cpp
-===================================================================
---- gmsh-tetgen-2.8.5~svn18982.orig/Geo/STensor3.cpp
-+++ gmsh-tetgen-2.8.5~svn18982/Geo/STensor3.cpp
-@@ -69,6 +69,27 @@ SMetric3 intersection_alauzet (const SMe
- return iv;
- }
-
-+SMetric3 intersection_alauzet (const SMetric3 &m1, const SMetric3 &m2)
-+{
-+ SMetric3 im1 = m1.invert();
-+ fullMatrix<double> V(3,3);
-+ fullVector<double> S(3);
-+ im1 *= m2;
-+ im1.eig(V,S,true);
-+ SVector3 v0(V(0,0),V(1,0),V(2,0));
-+ SVector3 v1(V(0,1),V(1,1),V(2,1));
-+ SVector3 v2(V(0,2),V(1,2),V(2,2));
-+ // is this required??
-+ v0.normalize();
-+ v1.normalize();
-+ v2.normalize();
-+ double l0 = std::max(dot(v0,m1,v0),dot(v0,m2,v0));
-+ double l1 = std::max(dot(v1,m1,v1),dot(v1,m2,v1));
-+ double l2 = std::max(dot(v2,m1,v2),dot(v2,m2,v2));
-+ SMetric3 iv(l0,l1,l2,v0,v1,v2);
-+ return iv;
-+}
-+
- // preserve orientation of m1 !!!
- SMetric3 intersection_conserveM1 (const SMetric3 &m1, const SMetric3 &m2)
- {
More information about the debian-science-commits
mailing list