--- Laplace.cpp	2004-01-19 22:11:49.000000000 +0100
+++ LaplaceConductivite.cpp	2004-01-27 23:04:11.000000000 +0100
@@ -25,6 +25,19 @@
 using namespace Fem2D;
 
 
+/*
+ * Donnees du tenseur de conductivite
+ * tenseurConductivite[i] est la diagonale du tenseur pour
+ * le label "i"
+ */
+#define MaxLabel 4
+R tenseurConductivite[][ 2 ] = {
+	{1.,1.}, // idendite, le plus classique
+	{.5,2.}, // surtout sur l'axe des y (anisotrope)
+	{2.,.5}, // surtout sur l'axe des x (anisotrope)
+	{0.,1.}, // rien selon l'axe des x
+};
+
 //------------------------------------------------------------------------------
 //Construction de la matrice elementaire Ae sur l'element K
 
@@ -39,13 +52,15 @@
      
   for (int i=0; i<3; i++)
   {
-    Vertex & vi = T[i];
-    R2 Hi = T.H(i);         //optimisation: [DPe]i = grad lambda^e_i = Hauteur
+    R2 vi = ( R2 ) T[i];
+    R2 Hj;              // optimisation: on declare ici avant la boucle
+    assert( ((Label)T ) < MaxLabel ); // check for tenseurConductivite[][]
+    R2 gmi( T.H(i).x * tenseurConductivite[((Label)T).lab][0], // gradient modifie = A(x)*grad(wi)
+	    T.H(i).y * tenseurConductivite[((Label)T).lab][1]);// ou A(x) est diagonale
     for (int j=0; j<=i; j++)
     {
-      Vertex & vj = T[j];
-      R2 Hj = T.H(j);       //optimisation: [DPe]j = grad lambda^e_j
-      *aa++ = (Hi,Hj) * T.area;  //operator , du produit scalaire dans R2
+      Hj = T.H(j);       //optimisation: [DPe]j = grad lambda^e_j
+      *aa++ = (gmi,Hj) * T.area;  //operator , du produit scalaire dans R2
     }
   }   
 }