Problème de barre 1D en MEF (méthode par éléments finis) - méthode explicite
Répondre à la discussion
Affichage des résultats 1 à 2 sur 2

Problème de barre 1D en MEF (méthode par éléments finis) - méthode explicite



  1. #1
    invite67c38467

    Problème de barre 1D en MEF (méthode par éléments finis) - méthode explicite


    ------

    Bonjour,

    Avec la méthode des éléments finis, je dois écrire un programme Scilab permettant de résoudre par méthode explicite un problème de barre à 1 dimension. J'ai déjà écris quelque chose mais suis surpris pas les résultats que j'obtiens. Je poste donc ici pour vous demander votre avis, et éventuellement corriger ce qui ne va pas. Je joins ici également le sujet : Task_2.pdf (pour l'instant je cherche juste à écrire le programme, pas répondre aux questions ^^ ).

    Explication du programme

    Je considère que chaque élément de ma barre est un ressort de raideur est le module de Young, la section de la barre, le nombre de nœuds de ma barre (et donc le nombre d'éléments de ma barre), et la longueur totale de ma barre. La matrice de raideur est donc :

    Je pose l'hypothèse que ma barre est fixe à une extrémité, ma matrice devient donc :

    Et donc pour trouver le déplacement de chaque nœud à l'instant je cherche à résoudre l'équation suivante :

    est la matrice des masse (matrice diagonale, ou chaque terme vaut la masse divisé par le nombre de nœuds), la matrices des force extérieures, pour mon problème, pour l'instant, il s'agit juste d'une force constante à l'extrémité.

    Pour résoudre cette équation j'utilise la méthode explicite, comme vous pouvez le voir ci-dessous dans l'extrait de code Scilab :
    Code:
    D = zeros(n, nt); //d : déplacement
    Dp = zeros(n, nt); // d point : vitesse
    Dpp = zeros(n, nt); // d point point : accélération
    //valeurs initiales du déplacement, vitesse, accé
    Dinit = zeros(n,1);
    Dpinit = zeros(n,1);
    Dppinit = zeros(n,1);
    
    Rint= zeros(n, nt);
    Rint(:,1) = K * Dinit;
    D(:, 1) = Dinit + deltat * Dpinit  + 1/2*deltat^2*inv(M)*(P(:,1)-Rint(:,1));
    Dp(:,1) = Dpinit + 1/2*deltat*Dppinit;
    
    for i=1:(nt-1)
        
        Dpp(:,i) = inv(M)*(P(:,i)-Rint(:,i));
        D(:,i+1) = D(:,i) + deltat * Dp(:,i) + deltat^2 * inv(M)*(P(:,i)-Rint(:,i));
        Rint(:,i+1) = K * D(:, i+1);
    
        Dp(:,i+1) = Dp(:,i) + deltat*Dpp(:,i);
    end
    Ci-dessous le code complet commenté :
     Cliquez pour afficher


    Résultat obtenu
    J'affiche donc le résultat sous forme 3D : axe X ce sont les coordonnées de la barre, axe Y le temps, et axe Z le déplacement des nœuds :
    deplcament.png
    Comme vous pouvez le voir, j'obtiens un déplacement des nœuds périodique alors que la force que j'applique est constante. Je trouve cela très bizarre étant donné que si j'applique une force constante c'est "comme si" je faisais un essai de traction... Or lors d'un essai de traction la barre est constamment en extension... Ensuite je me dis que j'ai modélisé tout ça par des ressorts, est-ce une erreur ? Je ne vois pas comment faire autrement et je ne sais pas si je dois croire ce le résultat que j'obtiens... Quel est donc votre avis ? Merci.

    -----

  2. #2
    invite178a8847

    Re : Problème de barre 1D en MEF (méthode par éléments finis) - méthode explicite

    Bonjour,

    C'est un peu tard pour te répondre, mais ça pourra servir aux autres. L'équation que tu résous par la méthode des éléments finis correspond à un système masse plus ressort sans frottements, il n'est donc pas étonnant que tu observes une oscillation. Il faut que tu ajoutes un terme dissipatif si tu veux converger vers l'équilibre statique.

Discussions similaires

  1. Méthode des éléments finis
    Par invited3e84e77 dans le forum Physique
    Réponses: 2
    Dernier message: 02/10/2011, 21h07
  2. méthode des élements finis
    Par invite59bcd03e dans le forum Physique
    Réponses: 1
    Dernier message: 19/02/2011, 20h45
  3. methode des elements finis sur maple
    Par invite15aece8a dans le forum Mathématiques du supérieur
    Réponses: 0
    Dernier message: 15/05/2010, 10h40
  4. Méthode des éléments finis 2D sur matlab
    Par invitef7da45dc dans le forum Mathématiques du supérieur
    Réponses: 0
    Dernier message: 26/04/2009, 15h33
  5. Méthode de modélisation en éléments finis
    Par invite872de53a dans le forum Physique
    Réponses: 4
    Dernier message: 26/02/2009, 09h21