Bonjour, cliquez-ici pour vous inscrire et participer au forum.
  • Login:



+ Répondre à la discussion
Affichage des résultats 1 à 1 sur 1

Freefem++ problème de maillage T_T

  1. yuki-kurama

    Date d'inscription
    janvier 2010
    Messages
    36

    Freefem++ problème de maillage T_T

    Salutation ^^

    Donc j'ai un soucis sur deux programmes, il y a une partie de mes programmes qui sont bons mais le maillage est loin d'être parfait (il faut dire que j'ai du mal avec les maillages...), voici les énoncés et mes programmes à moi ^^

    1) On considère un barreau de section rectangulaire omega = [0,L]x[-H/2,H/2], on néglige la troisième dimension.
    Le barreau est chauffé à Tc à une extrémité et est refroidit à Tf à l'autre extrémité, la température à l'équilibre est la solution de l'EDP :

    -delta(teta) = f pour (x,y) appartient à omega.

    La variable teta = (T-Ta)/Ta est la température adimensionnée par rapport à l'ambiance Ta, les conditions aux limites sont :

    sur gamma 4 teta=teta(c) (condition dirichlet)
    gamma 2 teta = teta(f) (pareil
    gamma1 UU gamma3 d(teta)/d(n) = 0 (paroi isolé, condition Neumann)

    Les gamma 1 et 3 correspondent au côté du rectangle [0,L] et les 2 autres au côté [-H/2,H/2]

    Programme 1 : résoudre le problème pour la fonction f(x,y)=0 et tracer la distribution de température T en °C

    2) On suppose maintenant qu'à l'intérieur du barreau se trouve une résistance électrique cylindrique (domaine circulaire C) qui produit un flux constant de chaleur, elle sera modélisée par la fonction f(x,y) qui est constante sur C et nulle ailleurs.

    On positionne le domaine C de rayon r = H/10 au milieu du barreau et on prendra f(x,y) = q = 250

    Programme 2 : résoudre ce problème et tracer la distribution T en °C dans le barreau.

    Voici mon programme 1 :

    Code:
    real L=1, Ta=293, Tc=575, Tf=278,H=0.4,To=273.15;
    mesh Th= square(2,2,[x*H/2,y*H/2]);
    plot(Th);
    savemesh(Th, "Th.mesh");
    fespace Vh(Th,P1);
    Vh u,v,T;
    T=Ta*u+Ta-To;
    func f=0;
    problem barreau(u,v)=int2d(Th)(dx(u)*dx(v)+dy(u)*dy(v))
    		    -int2d(Th)(f*v)+on(1,u=Tc)+on(2,u=Tf);
    plot(T);


    Voici mon programme 2 :

    Code:
    real L=1, Ta=293, Tc=575, Tf=278,H=0.4,To=273.15,q=250;
    mesh Th = square(2,2,[x*H/10,y*H/10]);
    plot(Th);
    savemesh(Th, "Th.msh");
    
    fespace Vh(Th,P1);
    Vh u,v,T;
    T=Ta*u+Ta-To;
    func f=q;
    problem barreau(u,v)=int2d(Th)(dx(u)*dx(v)+dy(u)*dy(v))
    		    -int2d(Th)(f*v)+on(1,u=Tc)+on(2,u=Tf);
    plot(T);
    fespace Ph(Th,P0);
    Ph labelR=region;
    int label1=labelR(0,0);
    int label2=labelR(0,L/2);
    cout<<"labels domaines="<<label<<" et "<<label2<<endl;
    plot(labelR,cmm="labels des domaines", wait=1,fill=1);
    Ph IdCercle = (region==label2) ? 1: 0;
    plot(IdCercle, cmm="fonction indicatrice du cercle", wait=1, fill=1);


    Le 2 est pas fini, mais mon soucis c'est surtout faire les maillages pour le barreau normal en 1 et pour le barreau avec le cercle dans le 2, c'est ça que je voudrais comprendre, comment faire ces 2 maillages !

    Merci d'avance ^^
    Dernière modification par yoda1234 ; 20/02/2012 à 16h36.
     


    • Publicité




Poursuivez votre recherche :




Sur le même thème :




 

Discussions similaires

  1. Espace de Hilbert, Méthode du point milieu, freefem++
    Par japotaku dans le forum Mathématiques du supérieur
    Réponses: 0
    Dernier message: 12/05/2011, 18h59
  2. Simulation freefem++: Pont thermique
    Par bardouxj dans le forum Physique
    Réponses: 0
    Dernier message: 07/02/2011, 17h33
  3. problème e maillage sur gambit
    Par mounimanel dans le forum Technologies
    Réponses: 5
    Dernier message: 09/12/2009, 20h30
  4. installer internet sans le CD T_T
    Par Eliès dans le forum Internet - Réseau - Sécurité générale
    Réponses: 4
    Dernier message: 03/10/2006, 22h06