REPUBLIQUE DU SENEGAL
MINISTERE DE L’ENSEIGNEMENT SUPERIEUR ET DE LA RECHERCHE
UNIVERSITE IBA DER THIAM DE THIES
UFR SCIENCES DE L’INGENIEUR
MASTER 1 GENIE CIVIL
Devoir Algorithm
EXERCICE 1 :
Résoudre le problème de la figure 1 avec un programme Matlab. Adapter votre
programme pour que même problème puisse être résolu en augmentant le
nombre d’éléments de la barre.
Vérifier la bonne marche de votre programme avec une barre de 4 éléments de
même longueur, puis en 8 éléments et tracer les courbes des déplacements.
RESOLUTION :
paramètres du problème
longueur d'une barre L=2;
Nombre de barre N barre=8;
Nombre d'éléments N éléments=n barre+1;
Module d'Young E= 70;
Section transversale A= 200;
Charge appliquée au nœud 2 P=8;
Assemblage de la matrice de rigidité globale
KG = zeros (n elements + 1, n elements + 1);
k =[7000,7000,7000,7000,7000,7000,7000,7000,2000];
Rigidités des barres
for i = 1:n éléments
KG (i, i) = KG (i, i) + k(i);
KG (i+1, i+1) = KG (i+1, i+1) + k(i);
KG (i, i+1) = KG (i, i+1) - k(i);
KG (i+1, i) = KG (i+1, i) - k(i);
end
Vecteur des forces
F = zéros(n éléments + 1, 1);
F(2) = p;
la force horizontale appliquée au nœud 9
Vecteur déplacements U=KG (2: n éléments, :)\F (2: n éléments);
déplacements aux nœuds F=KG*U;
Affichage des déplacements figure;
Calcul des coordonnées des nœuds x = linspace(0,16, n elements+1);
plot(x,U);
xlabel('Position');
ylabel('Déplacement');
title('Courbe déplacement de la barre');
Courbe 3 éléments :
Courbe 4 éléments :
Courbe 8 éléments :
EXERCICE 2 :
Résoudre le problème de la figure 2 avec un programme Matlab . Tracer la courbe
des déplacement
RESOLUTION:
ASSEMBLAGE
function y=assemblage (K, k, i, j, a, b)
K (i, i) =K (i, i) + k (1,1);
K (i, i) = K (i, i) +k (1,2);
K (i, i) = K (i, i) +k (1,3);
K (i, i) =K (i, i) +k (1,4);
K (i, i) =K (i, i) +k (2,1);
K (j, j) =K (j, j) +k (2,2);
K (j, a) =K (j, a) +k (2,3);
K (j, b) =K (j, b) +k (2,4);
K (a, i) =K (a, i) +k (3,1);
K (a, i) =K (a, i) +k (3,2);
K (a, a) =K (a, a) +k (3,3);
K (a, b) =K (a, b) +k (3,4);
K (b, i) =K (b, i) +k (4,1);
K (b, j) =K (b, j) +k (4,2);
K (b, a) =K (b, a) +k (4,3);
K (b, b) =K (b, b) +k (4,4);
y=K;
RESOLUTION
E= 70; A=310; P2=-50; P4=-100; P6=-50; L=3;
v0= [1 0 1 0]; v1= [0 0 0]; v2= [-1 0]; v3= (0);
v4= [1/2 1/2 1/2 1/2]; v5= [1/2 -1/2 1/2]; v6= [-1/2 -1/2]; v7= (-1/2);
v8= [0 1 0 1]; v9= [0 0 0]; v10= [0 -1]; v11= (0);
v12= [1/2 1/2 1/2 1/2]; v13= [-1/2 1/2 -1/2]; v14= [-1/2 -1/2]; v15= (1/2);
ke1=(E*A/L) *(zeros (4,4) +diag(v8,0) +diag(v9,1) +diag (v9, -1) +diag(v10,2) +diag
(v10, -2) +diag(v11,3) +diag (v11, -3));
ke2=(E*A/L) *(zeros (4,4) +diag(v0,0) +diag(v1,1) +diag (v1, -1) +diag(v2,2) +diag
(v2, -2) +diag(v3,3) +diag (v3, -3));
ke3=((E*A)/ ((2^0.5) *L)) *(zeros (4,4) +diag(v12,0) +diag(v13,1) +diag (v13, -1)
+diag(v14,2) +diag (v14, -2) +diag(v15,3) +diag (v15, -3));
ke4=(E*A/L) *(zeros (4,4) +diag(v0,0) +diag(v1,1) +diag (v1, -1) +diag(v2,2) +diag
(v2, -2) +diag(v3,3) +diag (v3, -3));
ke5=((E*A)/ ((2^0.5) *L)) *(zeros (4,4) +diag(v4,0) +diag(v5,1) +diag (v5, -1)
+diag(v6,2) +diag (v6, -2) +diag(v7,3) +diag (v7, -3));
ke6=(E*A/L) *(zeros (4,4) +diag(v8,0) +diag(v9,1) +diag (v9, -1) +diag(v10,2) +diag
(v10, -2) +diag(v11,3) +diag (v11, -3));
ke7=((E*A)/ ((2^0.5) *L)) *(zeros (4,4) +diag(v4,0) +diag(v5,1) +diag (v5, -1)
+diag(v6,2) +diag (v6, -2) +diag(v7,3) +diag (v7, -3));
ke8=((E*A)/ ((2^0.5) *L)) *(zeros (4,4) +diag(v12,0) +diag(v13,1) +diag (v13, -1)
+diag(v14,2) +diag (v14, -2) +diag(v15,3) +diag (v15, -3));
ke9=(E*A/L) *(zeros (4,4) +diag(v0,0) +diag(v1,1) +diag (v1, -1) +diag(v2,2) +diag
(v2, -2) +diag(v3,3) +diag (v3, -3));
ke10=(E*A/L) *(zeros (4,4) +diag(v0,0) +diag(v1,1) +diag (v1, -1) +diag(v2,2) +diag
(v2, -2) +diag(v3,3) +diag (v3, -3));
ke11=(E*A/L) *(zeros (4,4) +diag(v8,0) +diag(v9,1) +diag (v9, -1) +diag(v10,2) +diag
(v10, -2) +diag(v11,3) +diag (v11, -3));
KG=zeros (12,1);
KG=assemblage (KG, ke1,1,2,3,4);
KG=assemblage (KG, ke2,1,2,5,6);
KG=assemblage (KG, ke3,3,4,5,6);
KG=assemblage (KG, ke4,3,4,7,8);
KG=assemblage (KG, ke5,1,2,7,8);
KG=assemblage (KG, ke6,5,6,7,8);
KG=assemblage (KG, ke7,5,6,11,12);
KG=assemblage (KG, ke8,7,8,9,10);
KG=assemblage (KG, ke9,7,8,11,12);
KG=assemblage (KG, ke10,5,6,9,10);
KG=assemblage (KG, ke11,9,10,11,12);
KG1=KG (3:8,3:8);
KG2=KG (3:8,11:12);
KG3=KG (11:12,3:8);
KG4=KG (11:12,11:12);
KG5= [KG1; KG3];
KG6= [KG2; KG4];
KG7= [KG5, KG6];
Fnod= [0; P2;0;0;0; P4;0; P6];
U=(KG7) \Fnod;
X=[0.0013,-0.0000,-0.0000,-0.0013];
Y=[-0.0082,-0.0132,-0.0158,-0.0082] ;
plot(X,Y);
xlabel('déplacements horizontale');
ylabel('déplacements verticale');
title('Courbe des déplacements');
Courbe :