Vous êtes sur la page 1sur 14

Mthode des lments finis Travaux pratiques Etude d'une poutre en arc par lments finis TRIM3

Analyse lments finis de la poutre en arc

Objectif : tude des contraintes et des dformations pour une poutre en arc du March Central de Phnom Penh Hypothses :
- structure en deux dimensions - forces dans le plan de la structure (membrane) - tat plan de contraintes

Mthode utilise : lments finis TRIM3 (programmation en MATLAB ou SCILAB)

Architecture du programme : 1. donnes du problme 2. calcul des matrices de rigidit et des forces pour chaque lment [ ke ], { fe } 3. assemblage [K] {q} = {F} et prise en compte des conditions aux limites 4. rsolution : q = K-1 F 5. calcul des ractions de liaison 6. calcul des dformations et contraintes

En pratique :

programme_principal.m

donnees%(1)nomdufichierdedonnees fori=1:numel%(2)bouclesurchaquelment ...%calculdekeetfe end [K,F]=...%(3)assemblageetconditions %auxlimites q=K\F;%(4)rsolutiondusystme R=...%(5)calculdesractions fori=1:numel%(6)bouclesurchaquelment ...%calculdesdformationset end%descontraintes

Exemples de fichier de donnes (1) :


exemple_carre.m 3 4

F=5kN

2 1
1 2

Remarque : convention de numrotation des noeuds par lment dans le sens trigonomtrique

Exemples de fichier de donnes (2) :


exemple_marche_central.m(uniquementles coordonnesdesnoeudsetlesdfinitionsdes lments[=connectivits])

Prise en compte des conditions aux limites (mthode directe) :

Quelques commandes utiles en MATLAB :


A=[112.06];%crationd'unvecteur1x3 B=[4.23127]';%crationd'unvecteur4x1 C=[35; 30];%crationd'unematrice2x2 D=zeros(3,2);%matricenulledetaille3x2 E=ones(4,5);%matricede1detaille4x5 size(A);%tailledelamatriceA size(A,1);%nombredelignesdeA size(A,2);%nombredecolonnesdeA

Quelques commandes utiles en MATLAB :


A(1,:);%1relignedelamatriceA A(:,3);%3mecolonnedelamatriceA A(2:4,:);%lignes24delamatriceA C=A*B;%produitdematrices D=A';%D=transposedelamatriceA q=K\F;%calculeqsolutiondeKq=F

Exemple de fonction MATLAB :


calcul_de_a_et_b.m

function[a,b]=calcul_de_a_et_b(x,y); a=x+y; b=x*y; return end

Paramtresde sortiedela fonction

Passagedes paramtres d'entredela fonction