Está en la página 1de 3

-------------------------------------------------------------------------

-------------------------------------------------------------------------
ARMADURA 3D CON BARRAS DE ÁREA CONSTANTE (TORRE DE ALTA TENSION)
-------------------------------------------------------------------------
-------------------------------------------------------------------------
% Armadura espacial
% Modulo de elasticidad:
E=35*1e3;
% Area:
A=2.823;
% Coordenadas de los nodos:
XYZ=[-37.5 0 200; 37.5 0 200;...
-37.5 37.5 100; 37.5 37.5 100;...
37.5 -37.5 100; -37.5 -37.5 100;...
-100 100 0; 100 100 0; 100 -100 0; -100 -100 0];
x=XYZ(:,1);
y=XYZ(:,2);
z=XYZ(:,3);
% Topologia:
IJ=[1 2; 1 4; 2 3; 1 5; 2 6; 2 4;2 5;1 3;1 6;3 6;4 5;3 4;5 6;...
3 10;6 7;4 9;5 8;4 7;3 8;5 10;6 9;6 10;3 7;5 9;4 8];
numberElements=size(IJ,1);
% Dibujo de la estructura:
figure
for e=1:numberElements;
Q=[XYZ(IJ(e,1),1) XYZ(IJ(e,1),2) XYZ(IJ(e,1),3);...
XYZ(IJ(e,2),1) XYZ(IJ(e,2),2) XYZ(IJ(e,2),3)];
plot3(Q(:,1),Q(:,2),Q(:,3),'-b')
hold on
end
xlabel('x')
ylabel('y')
zlabel('z')
axis equal
% Longitudes de las barras
l=zeros(numberElements,1);
for e=1:numberElements;
l(e)=sqrt((x(IJ(e,2))-x(IJ(e,1)))^2 +(y(IJ(e,2))-
y(IJ(e,1)))^2+(z(IJ(e,2))-z(IJ(e,1)))^2);
end
% Matriz de rigidez:
K=zeros(30,30);
for e=1:numberElements
eta=(x(IJ(e,2))-x(IJ(e,1)))/l(e);
mu=(y(IJ(e,2))-y(IJ(e,1)))/l(e);
nu=(z(IJ(e,2))-z(IJ(e,1)))/l(e);
K_e=E*A/l(e)*[eta^2 eta*mu eta*nu -eta^2 -eta*mu -eta*nu;...
eta*mu mu^2 mu*nu -eta*mu -mu^2 -mu*nu;...
eta*nu mu*nu nu^2 -eta*nu -mu*nu -nu^2;...
-eta^2 -eta*mu -eta*nu eta^2 eta*mu eta*nu;...
-eta*mu -mu^2 -mu*nu eta*mu mu^2 mu*nu;...
-eta*nu -mu*nu -nu^2 eta*nu mu*nu nu^2];
g_e=[3*IJ(e,1)-2 3*IJ(e,1)-1 3*IJ(e,1) 3*IJ(e,2)-2 3*IJ(e,2)-1
3*IJ(e,2)];
DeltaK_e=zeros(30,30);
DeltaK_e(g_e,g_e)=K_e;
K=K+DeltaK_e;
end
% Calculo de desplazamientos y reacciones:
a=(19:30)'; b=(1:18)';
K_aa=K(a,a);
K_ab=K(a,b);
K_ba=K(b,a);
K_bb=K(b,b);
P=zeros(30,1);
P(3)=-60;
P(6)=-30;
P(9)=-30;
P(12)=-30;
P(15)=-30;
P(18)=-30;
P(21)=-30;
P_b=P(b);
D_b=K_bb\P_b;
P_a=K_ab*D_b;
D=zeros(30,1);
D(b)=D_b;
display(D)
% Tensiones en las barras:
sigma=zeros(25,1);
for e=1:25
eta=(x(IJ(e,2))-x(IJ(e,1)))/l(e);
mu=(y(IJ(e,2))-y(IJ(e,1)))/l(e);
nu=(z(IJ(e,2))-z(IJ(e,1)))/l(e);
g_e=[3*IJ(e,1)-2 3*IJ(e,1)-1 3*IJ(e,1) 3*IJ(e,2)-2 3*IJ(e,2)-1
3*IJ(e,2)];
D_e=D(g_e);
sigma(e)=E*A*[-eta -mu -nu eta mu nu]*D_e/l(e);
end
% Dibujo de la armadura y su posicion deformada
XYZdef=zeros(size(XYZ));
fac=150;
k=0;
for e=1:10
k=k+1;
XYZdef(e,1)=XYZ(e,1)+fac*D(k);
k=k+1;
XYZdef(e,2)=XYZ(e,2)+fac*D(k);
k=k+1;
XYZdef(e,3)=XYZ(e,3)+fac*D(k);
end
figure
for e=1:25
Q=[XYZ(IJ(e,1),1) XYZ(IJ(e,1),2) XYZ(IJ(e,1),3);...
XYZ(IJ(e,2),1) XYZ(IJ(e,2),2) XYZ(IJ(e,2),3)];
Qdef=[XYZdef(IJ(e,1),1) XYZdef(IJ(e,1),2) XYZdef(IJ(e,1),3);...
XYZdef(IJ(e,2),1) XYZdef(IJ(e,2),2) XYZdef(IJ(e,2),3)];
plot3(Q(:,1),Q(:,2),Q(:,3),':b',Qdef(:,1),Qdef(:,2),Qdef(:,3),'-r')
hold on
end
xlabel('x')
ylabel('y')
zlabel('z')
axis equal

También podría gustarte