Poutre
romeo
-
JulienJust Messages postés 164 Statut Membre -
JulienJust Messages postés 164 Statut Membre -
Bonjour,
Je vous sollicite car je suis bloqué dans un programme matlab.
Actuellement je suis entrain d'étudier une une poutre en flexion et je n'ai pas réussi a programmer le matrice d'assemblage de raideur
voici le code et je n'arrive pas a trouver ....
Merci d'avance
Cdlt
Je vous sollicite car je suis bloqué dans un programme matlab.
Actuellement je suis entrain d'étudier une une poutre en flexion et je n'ai pas réussi a programmer le matrice d'assemblage de raideur
voici le code et je n'arrive pas a trouver ....
Merci d'avance
Cdlt
close all;
clear all;
clc;
% Caractéristique géométriques et matérielles
l =90;
e =10;
h = 30;
Iz = e*h*h*h/12;
E = 210000;
A =e*h;
P = -100;
nu = 0.3;
alpha = 3/2;
G = E/(2+2*nu);
coeff = E*Iz/(l^3);
nbreElements = 3
coordNoeuds=linspace(0,l,nbreElements+1)';
x=coordNoeuds;
nbreNoeuds=size(coordNoeuds,1);
x=coordNoeuds(:,1);
Ddl=2*nbreNoeuds % deux degres de liberté par noeuds
force=zeros(Ddl,1);
force(Ddl)= P;
deplacement=zeros(Ddl,1);
Ke=[12,6*l,-12,6*l;6*l,4*l^2,-6*l,2*l^2;-12,-6*l,12,-6*l;6*l,2*l^2,-6*l,4*l^2] %la matrice de raideur pour un element
Ne = 2;
nnodes = (Ne-1)*nbreElements+1 %nombre totale de noeuds
coords = zeros(1,nnodes);
for i= 1 : nnodes
coords(i) = l*(i-1)/(nnodes-1);
end;
connect = zeros(Ne,nbreElements);
for lmn=1:nbreElements
connect(1,lmn) = lmn;
connect(2,lmn) = lmn+1;
end;
for lmn = 1 : nbreElements
lmncoords = zeros(Ne);
for a = 1 : Ne
lmncoords(a) = coords(connect(a,lmn));
end
end
K = zeros(nnodes*2,nnodes*2);
for i=1 : 4
for j =1 :4
K(i,j) = Ke(i,j);
end
end
for a = 1 : Ne
rw = connect(a,lmn);
for b = 1 : Ne
cl = connect(b,lmn);
K(rw,cl) = K(rw,cl)+Ke(a,b);
end
end
A voir également:
- Poutre
- Logiciel calcul poutre acier gratuit - Télécharger - Architecture & Déco