IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Mathématiques Discussion :

bilaplacien & elements finis


Sujet :

Mathématiques

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    99
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 99
    Points : 77
    Points
    77
    Par défaut bilaplacien & elements finis
    Bien le bonjour,

    quelqu'un aurait-il eu vent d'une methode permettant la resolution par elements finis d'une EDP comportant un bilaplacien ?

    La seule methode qui me vient en tete pour le moment est de calculer la derrivee troisieme de mon inconnue (ordre 3 en formulation faible) a partir des valeurs discretes de cettes inconnue sur les noeuds voisins.
    Cependant j'imagine qu'a cet ordre, cette facon de faire est tres/trop sensible aux erreurs numeriques...

    Si quelqu'un a une idee je l'en remercie par avance.

    Bien cordialement,
    Yann.

  2. #2
    Rédacteur

    Homme Profil pro
    Comme retraité, des masses
    Inscrit en
    Avril 2007
    Messages
    2 978
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 83
    Localisation : Suisse

    Informations professionnelles :
    Activité : Comme retraité, des masses
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 2 978
    Points : 5 179
    Points
    5 179
    Par défaut
    Salut!

    Lorsque tu appliques la méthode des éléments finis à une équation de Laplace ou de Poisson avec des mailles triangulaires, tu minimise une fonctionnelle qui fait intervenir les dérivées premières et tu interpoles linéairement dans chaque triangle, ce qui te conduit à résoudre un système linéaire dont les inconnues sont les valeurs de la fonction recherchée sur les sommets des triangles.

    Alors, bien que je n'aie jamais eu à traiter ce problème, je te suggère d'essayer de faire une interpolation quadratique sur chaque triangle, les inconnues étant les valeurs de la fonction recherchée sur les sommets des triangles et au milieu de chacun de leurs côtés.

    Sans garantie, mais bonne chance quand même.
    Jean-Marc Blanc
    Calcul numérique de processus industriels
    Formation, conseil, développement

    Point n'est besoin d'espérer pour entreprendre, ni de réussir pour persévérer. (Guillaume le Taiseux)

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    99
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 99
    Points : 77
    Points
    77
    Par défaut
    Salut,

    merci beaucoup de m'avoir répondu.
    Oui en effet une interpolation quadratique sera meilleure en terme d'erreur. Cependant, ma question porte plutôt sur la façon de développer le gradient d'un Laplacien en FEM...
    Question bête en fait, mais hélas je n'ai rien vu de tel auparavant...

    Bien cordialement,
    Yann.

  4. #4
    Membre expérimenté
    Homme Profil pro
    Chercheur
    Inscrit en
    Mars 2010
    Messages
    1 218
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Chercheur

    Informations forums :
    Inscription : Mars 2010
    Messages : 1 218
    Points : 1 685
    Points
    1 685
    Par défaut
    Bonjour,

    tu ne doit pas avoir de dérivée d'ordre 3 dans ta formulation faible : il faut appliquer deux fois la formule de la divergence de Green. Ainsi, lorsque tu testes le gradient du laplacien, tu obtiens l'opposé du laplacien testé par un gradient, sommé avec un terme de bord que tu dois traiter à l'aide des conditions aux limites imposées à ton problème.

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    99
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 99
    Points : 77
    Points
    77
    Par défaut
    Salut,
    je ne comprends pas bien ta réponse, tu veux dire faire deux intégrations par parties successives afin de mettre l'intégrale volumique du bilaplacien sous forme faible ?
    Dans ce cas, de la seconde intégration par partie nous obtenons deux intégrales surfaciques et une intégrale de volume, cette dernière composé de deux Laplaciens... L'une sur mon inconnue, l'autre sur la fonction d'interpolation.
    Je ne suis pas un familier de cette méthode numérique, je crois que mon problème vient de là. Je ne vois pas bien comment programmer cette intégrale...
    Merci beaucoup pour ta réponse en tout cas !
    Yann.

  6. #6
    Membre expérimenté
    Homme Profil pro
    Chercheur
    Inscrit en
    Mars 2010
    Messages
    1 218
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Chercheur

    Informations forums :
    Inscription : Mars 2010
    Messages : 1 218
    Points : 1 685
    Points
    1 685
    Par défaut
    Bonjour,

    pour un problème unidimensionnel, appliquer deux fois la formule de la divergence de Green revient bien à intégrer deux fois par parties. L'approximation par éléments finis de ta formulation faible peut ensuite être effectuée de manière classique; je ne vois pas le point bloquant pour toi : il faudrait que tu développes.

    Quelques remarques de vocabulaire si tu es amené à rédiger un document sur ton travail par la suite :
    1. mettre une intégrale (quantité globale) sous forme faible ne veut rien dire, cela concerne uniquement des équations différentielles (quantités locales);
    2. mieux vaut parler d'approximation d'une intégrale que de programmation d'une intégrale.

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    99
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 99
    Points : 77
    Points
    77
    Par défaut
    Salut,
    merci pour le vocabulaire, en effet c'est important et j'ai tendance a prendre quelques libertes avec, je m'en excuse...

    Pour developper un peu voila ce qui me bloque :

    Le peu que j'ai fait avec les elements finis concernait des EDPs comportant un laplacien, par exemple l'equation de Poisson. La formulation faible de cette equation (obtenue comme tu l'as fait remarquer grace a la formule de la divergence de Green), donne une integrale surfacique, et une integrale volumique. Cette derniere comportant un produit de deux Laplaciens. Celui de la variable recherchee, et celui de la fonction d'interpolation. Dans ce cas, pas de probleme.

    Maintenant si je suis le meme raisonnement avec une EDP comportant un bilaplacien. Je realise la premiere integration par partie (formule de la divergence de Green), le premier terme est une integrale de surface faisant intervenir le produit d'un gradient d'ordre 3 avec une fonction test, et la seconde une integrale volumique faisant intervenir le produit d'un gradient d'ordre 3 avec le gradient de la fonction test.

    A ce point pas de probleme, ce que tu m'as suggere si j'ai bien compris, c'est d'utiliser une seconde fois la formule de la divergence de Green sur l'integrale volumique.
    Dans ce cas une seconde integrale de surface apparait, ainsi qu'une nouvelle integrale volumique, composee d'un produit de deux Laplaciens. Le Laplacien de mon inconnue et le Laplcien de ma fonction test.

    C'est a ce point ou je suis bloque, comment faire pour approximer l'integrale de deux Laplaciens par elements finis ?

    Encore merci de prendre de ton temps,
    bien cordialement,
    Yann.

  8. #8
    Membre expérimenté
    Homme Profil pro
    Chercheur
    Inscrit en
    Mars 2010
    Messages
    1 218
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Chercheur

    Informations forums :
    Inscription : Mars 2010
    Messages : 1 218
    Points : 1 685
    Points
    1 685
    Par défaut
    Bonjour,

    l'approche est la même que dans le cas du problème de Poisson avec le produit scalaire de gradients. Soit V l'espace de Hilbert dans lequel est posé ton problème, en partant du principe qu'il s'agit aussi de l'espace d'appartenance de tes fonctions tests. Dans la méthode des éléments finis, tu définis un maillage Th et un espace d'approximation Vh de dimension finie, disons N. Soit {vi; 1,2,...,N} une base de Vh. Alors tout élément v de Vh s'écrit de manière unique sous la forme
    v = c1*v1+c2*v2+...+cN*vN,
    où c1,...,cN sont des nombres réels. Soit (.,.) le produit scalaire usuel dont on munit l'espace L2. En oubliant les termes de bords, tu as moralement à résoudre le problème faible : trouver u dans V tel que (Lu,Lv) = (f,v) pour tout v dans V, où L représentant l'opérateur de Laplace. L'approximation par éléments finis consiste à trouver uh dans Vh tel que (Luh,Lvh) = (f,vh) pour tout vh dans Vh. Puisque c'est vrai pour tout élément de Vh, c'est vrai pour chaque élément de la base de Vh choisie :
    (Luh,Lvi)=(f,vi) pour i=1,2,...,N.
    De plus, la fonction uh étant un élément de Vh, on peut la décomposer de manière unique dans cette base. Par linéarité du laplacien, on obtient
    (Lv1,Lvi)c1+(Lv2,Lvi)c2+...+(LvN,Lvi)cN=(f,vi) pour i=1,2,...,N.
    Comme tu peux le constater, il s'agit d'un système d'équations linéaires à N équations et N inconnues c1,...,cN. Il reste ensuite à le résoudre. Bien évidemment, la base de Vh est donnée par les fonctions de base de tes éléments finis. Dans le cas particulier du problème de Poisson, on a dû te présenter les fonctions de base de Lagrange, ou encore fonctions "chapeau". Dans ton cas, tu ne peux pas utiliser ces fonctions car elles sont de degré 1 et leur laplacien est par conséquent nul. Il faut au moins des fonctions de base de degré 2. Est-ce que cela répond à ta question?

  9. #9
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    99
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 99
    Points : 77
    Points
    77
    Par défaut
    Super reponse merci ! Encore une fois je pense ne pas avoir ete assez precis...
    Ma question porte en fait sur l'autre Laplacien, c'est a dire celui faisant intervenir la derrivee cartesienne.

    Si je me place de nouveau dans une EDP faisant intervenir un Laplacien, tel que Poisson pour reprendre l'exemple.
    Dans l'integrale de volume, celle dont tu parles a la fin de ton message, nous avons deux gradients, le gradient des fonctions de base, et le gradient "ou derivees cartesiennes" des fonctions de base.
    C'est en fait cette derniere qui me pose probleme, je suis desole de ne pas avoir ete plus clair des le debut.

    Dans le cas EDP Poisson, ce gradient se formule ainsi :
    \grad_x N_i(x) = J^{-1}(\xi) \grad_xi N_i (\xi)

    avec le Jacobien J tel que :
    J = \sum_i \grad_xi N_i \otimes x_i

    x les coordonnes cartesiennes
    i l'index des noeuds sur un element
    N_i les fonctions de base

    On prend dans ce cas une matrice type "Jacobien" faisant intervenir les derrivees secondes ?

    Merci beaucoup en tout cas !
    Yann.

  10. #10
    Membre expérimenté
    Homme Profil pro
    Chercheur
    Inscrit en
    Mars 2010
    Messages
    1 218
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Chercheur

    Informations forums :
    Inscription : Mars 2010
    Messages : 1 218
    Points : 1 685
    Points
    1 685
    Par défaut
    Désolé, je ne suis pas sûr de saisir ton problème. Ce dont tu parles découles tout simplement d'un changement de variable permettant de ramener l'intégrale sur une cellule quelconque de maillage à une cellule de référence. Pour rappel, voici les formules de changement de variable dans les intégrales :
    http://fr.wikipedia.org/wiki/Int%C3%...nt_de_variable
    Ce changement est donc déterminé par ta cellule de référence et la cellule de maillage que tu considères, soit encore par le C1-difféomorphisme permettant de passer d'une cellule à l'autre. Lorsque cette transformation est affine, on parle de familles d'éléments finis affine-équivalentes. C'est le cas le plus simple. En particulier, tous les simplexes droits de même dimension sont liés par une transformation affine (segments entre eux, triangles entre eux, tétraèdres entre eux,...). En revanche, ce n'est pas le cas des prismes. C'est pourquoi on a généralisé la notion d'affine-équivalence en celle d'isoparamétrie. Cependant, cela ne change pas grand chose dans les formules. Cela devient un peu plus compliqué en présence de mailles curvilignes mais tout ceci est bien connu pour les cellules de références (simplexes et prismes).

    Bref, si j'ai bien compris ton problème, il n'a rien à voir avec la méthode des éléments finis mais seulement avec les formules de changement de variable dans les intégrales. Contente-toi d'appliquer la formule que tu ais des produits de gradients ou de laplaciens à intégrer.

  11. #11
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    99
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 99
    Points : 77
    Points
    77
    Par défaut
    Salut,
    merci beaucoup, cela repond a ma question
    Merci encore pour ton aide, je m'y mets !
    Yann.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. A propos des elements finis
    Par yann_m dans le forum Mathématiques
    Réponses: 11
    Dernier message: 05/01/2012, 00h55
  2. [Débutant] créer un maillage sans PDETool en elements finis
    Par nykhola42000 dans le forum MATLAB
    Réponses: 3
    Dernier message: 08/07/2010, 15h23
  3. Réponses: 0
    Dernier message: 07/07/2010, 10h20
  4. Ajouts d'élements dans un modèle d'elements finis
    Par matt394 dans le forum Algorithmes et structures de données
    Réponses: 5
    Dernier message: 24/07/2007, 11h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo