[Getdp] getdp et fluides (suite) + domaine infiniment fin

Laurent De Vroey Devroey at lei.ucl.ac.be
Tue Mar 1 17:35:29 CET 2005


Bonjour Christophe,

1)

As-tu trouvé un peu de temps pour regarder le problème que je t'avais 
exposé au sujet de mes applications fluidiques ? J'avais un problème de 
rotationnel qui me donnait des résultats étranges (visiblement un problème 
de signe que je n'ai pas localisé).

2)

Les travaux que je poursuis portent en fait sur des simulations de 
bio-microsystèmes, où des cellules biologiques plongées dans des fluides 
sont mises en mouvement par les forces induites par des champs électriques. 
Je m'intéresse donc tant aux aspects électriques que fluidiques (les 
fluides sont également mis en mouvement, notamment par électro-osmose).

J'ai une nouvelle question, qui cette fois concerne les aspects électriques.

La cellule bio peut être considérée, en première approx, comme une sphère 
assez conductrice entourée d'une membrane très peu conductrice. L'épaisseur 
de cette membrane est très faible par rapport au rayon de la cellule.

Ma question est la suivante : est-il possible, et comment, de ramener la 
membrane à un cercle (en 2D) ? Ceci permettrait d'éviter le recours à un 
maillage de la membrane, très fin par rapport au maillage du reste de la 
cellule compte tenu des différences de dimensions géométriques.

La difficulté que j'ai est que la tension sur le bord intérieur de la 
membrane diffère de celle sur le bord extérieur, ce qui conduit à une 
double valeur du potentiel au niveau de la membrane si on réduit son 
épaisseur à zéro.

J'ai essayé d'utiliser un sous-domaine "Membrane" de type Physical Line 
avec un Jacobian Sur mais les résultats semblent ne pas tenir compte de ce 
sous-domaine (voir pièce jointe). J'ai aussi pensé qu'on pourrait définir 
des paramètres électriques équivalents pour la membrane (par exemple une 
conductance surfacique = à sa conductivité divisée par l'épaisseur 
qu'aurait normalement la membrane) mais dans ce cas je ne vois pas comment 
l'implémenter concrètement.

Est-il possible, et comment, de lever cette difficulté ? (on suppose que le 
courant est normal à la membrane si on rend celle-ci infiniment fine).

Un tout grand merci d'avance pour la réponse que tu pourras apporter à 
cette question et à la précédente.

Bien à toi,

Laurent


- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
De Vroey Laurent        | Universite Catholique de Louvain,
Research Assistant      | Laboratoire d' Electrotechnique,
(UCL / ELEC / LEI)      | Place du Levant, 3
MAXWELL building        | B-1348 Louvain-La-Neuve
Room: b.236             | BELGIUM
tel: +32 10 47 22 59 -fax: +32 10 47 86 67 devroey at lei.ucl.ac.be
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-------------- next part --------------
/********************************************
 *
 * Electroporation - Modele 2D
 *
 ********************************************/


// Parametres

k = 2;

r1 = 10e-6;

l1 = 2.5*2e-7;
l3 = 2e-7;

c = 2.5 * 2 * r1;

// Points

Point(1) = {-c/2, -c/2, 0, l1};
Point(2) = {-c/2, c/2, 0, l1};
Point(3) = {c/2, c/2, 0, l1};
Point(4) = {c/2, -c/2, 0, l1};

Point(5) = {0, 0, 0, l1};

Point(10) = {-r1, 0, 0, l3};
Point(11) = {0, r1, 0, l3};
Point(12) = {r1, 0, 0, l3};
Point(13) = {0, -r1, 0, l3};


// Lignes

Line(1) = {1,2};
Line(2) = {2,3};
Line(3) = {3,4};
Line(4) = {4,1};

Circle(9) = {10,5,11};
Circle(10) = {11,5,12};
Circle(11) = {12,5,13};
Circle(12) = {13,5,10};


// Surfaces

Line Loop(101) = {1,2,3,4};      // cuve
Line Loop(102) = {9,10,11,12};   // cellule

Plane Surface(201) = {101,102};  
Plane Surface(202) = {102};

Physical Line(1001) = {2};            // Electrode sup
Physical Line(1002) = {4};            // Electrode inf
Physical Line(1004) = {9,10,11,12};   // Interface cellule-milieu

Physical Surface(1101) = {201};       // Cuve
Physical Surface(1102) = {202};       // Cellule
-------------- next part --------------
/*------------------------------------------------------------

File "2D.pro"

------------------------------------------------------------*/


Group {

  V = 5;
  r1 = 10e-6;
  r2 = 10e-6 - 5e-8;

  Milieu = #{1101};
  Cellule = #{1102};

  ElectrodeSup = #{1001};
  ElectrodeInf = #{1002};
  Interface = #{1004};
  Domaine = #{1101, 1102, 1004};
  Dom = #{1101, 1102};

}


///////////////////////////////////////////////////


Function { 

  eps[Cellule] = 6.4e-10;
  eps[Milieu] = 6.4e-10;
  eps[Interface] = 6.4e-10;

  sigma[Cellule] = 1;
  sigma[Milieu] = 1;
  sigma[Interface] = 120e-8;

}


///////////////////////////////////////////////////


Constraint { 

  { Name ElectricScalarPotential ; Type Assign ; 
    Case { 
      { Region ElectrodeSup ; Value V; }
      { Region ElectrodeInf ; Value -V; }
    } 
  }

}

///////////////////////////////////////////////////


Group {
  DefineGroup[ DomainInf ] ;
  DefineVariable[ Val_Rint, Val_Rext ] ;
}

Jacobian {
  { Name Vol ;
    Case { { Region DomainInf ;
             Jacobian VolSphShell {Val_Rint, Val_Rext} ; }
           { Region All ; Jacobian Vol ; }
    }
  }
  { Name Sur ;
    Case { { Region All ; Jacobian Sur ; }
    }
  }
  { Name Lin ;
    Case { { Region All ; Jacobian Lin ; }
    }
  }
}

///////////////////////////////////////////////////


Integration {
  { Name GradGrad ;
    Case { {Type Gauss ;
            Case { { GeoElement Line        ; NumberOfPoints  3 ; }
                   { GeoElement Triangle    ; NumberOfPoints  4 ; }
                   { GeoElement Quadrangle  ; NumberOfPoints  4 ; }
                   { GeoElement Tetrahedron ; NumberOfPoints  4 ; }
                   { GeoElement Hexahedron  ; NumberOfPoints  6 ; }
                   { GeoElement Prism       ; NumberOfPoints  9 ; } }
           }
         }
  }
  { Name CurlCurl ;
    Case { {Type Gauss ;
            Case { { GeoElement Line        ; NumberOfPoints  3 ; }
                   { GeoElement Triangle    ; NumberOfPoints  4 ; }
                   { GeoElement Quadrangle  ; NumberOfPoints  4 ; }
                   { GeoElement Tetrahedron ; NumberOfPoints  4 ; }
                   { GeoElement Hexahedron  ; NumberOfPoints  6 ; }
                   { GeoElement Prism       ; NumberOfPoints  9 ; } }
           }
         }
  }
}


///////////////////////////////////////////////////


Include "EleSta_v.pro"


///////////////////////////////////////////////////


PostOperation {

  { Name SurfacePostOp; NameOfPostProcessing EleSta_v;
    Operation { 
      Print[ v, OnElementsOf Domaine, File "v.pos", Format Gmsh ]; 
      Print[ v, OnElementsOf Interface, File "v_bord.pos", Format Table ]; 
    }
  }

} 

-------------- next part --------------

Group {
  DefineGroup[ Cellule, Milieu, Domaine, Dom ];
}


///////////////////////////////////////////////////


FunctionSpace {
  { Name Hgrad_v_Ele; Type Form0;
    BasisFunction {
      { Name sn; NameOfCoef vn; Function BF_Node;
        Support Domaine; Entity NodesOf[All]; }
    }
    Constraint {
      { NameOfCoef vn; EntityType NodesOf;
        NameOfConstraint ElectricScalarPotential; }
    }
  }
}


///////////////////////////////////////////////////


Formulation {
  { Name Electrostatics_v; Type FemEquation;
    Quantity {
      { Name v; Type Local; NameOfSpace Hgrad_v_Ele; }
    }
    Equation {

      Galerkin { [ sigma[] * Dof{d v}, {d v} ]; In Dom;
                   Jacobian Vol; Integration GradGrad; }
      Galerkin { [ sigma[] * Dof{d v}, {d v} ]; In Interface;
                   Jacobian Sur; Integration GradGrad; }

    }
  }
}


////////////////////////////////////////////////////


Resolution {
  { Name EleSta_v;
    System {
      { Name Sys_Ele; NameOfFormulation Electrostatics_v; }
    }
    Operation {
      Generate[Sys_Ele]; Solve[Sys_Ele]; SaveSolutions[Sys_Ele];
    }
  }
}


///////////////////////////////////////////////////


PostProcessing {
  { Name EleSta_v; NameOfFormulation Electrostatics_v;
    Quantity {
      { Name v;
        Value {
          Local { [ {v} ]; In Domaine; Jacobian Vol; }
        }
      }

    }
  }
}