Está en la página 1de 1

clear;

clc;
format short
ne=input('ingrese numero de elementos=');
nn=input('ingrese numero de nodos=');
K=zeros(nn*2,nn*2);
KK=zeros(nn*2,nn*2);
for i=1:ne
m=input('Del nodo =');
n=input('Al nodo =');
p1=input('coordenadas del nudo inicial en vector [xi yi]=')
p2=input('coordenadas del nudo final en vector [xj yj]=')
x1=p1(1,1);y1=p1(1,2);
x2=p2(1,1);y2=p2(1,2);
l=((x1-x2)^2+(y1-y2)^2)^.5
if (x2-x1)==0
if(y2>y1)

theta=2*atan(1);
else
theta=-2*atan(1);
end
else
theta=atan((y2-y1)/(x2-x1));
end
C=[cos(theta) sin(theta) 0 0;...
0 0 cos(theta) sin(theta)];
C
a=input('area de elemento=');
e=input('modulo de elasticidad del elemento=');
kk(1,1)=e*a/l*1;
kk(1,2)=e*a/l*-1;
kk(2,1)=kk(1,2);
kk(2,2)=kk(1,1);
kk
r=C'*kk*C

kk=zeros(2,2);
KK(2*m-1,2*m-1)=r(1,1); KK(2*m-1,2*m)=r(1,2); KK(2*m-1,2*n-1)=r(1,3);
KK(2*m-1,2*n)=r(1,4);
KK(2*m,2*m-1)=r(2,1); KK(2*m,2*m)=r(2,2); KK(2*m,2*n-1)=r(2,3);
KK(2*m,2*n)=r(2,4);
KK(2*n-1,2*m-1)=r(3,1); KK(2*n-1,2*m)=r(3,2); KK(2*n-1,2*n-1)=r(3,3);
KK(2*n-1,2*n)=r(3,4);
KK(2*n,2*m-1)=r(4,1); KK(2*n,2*m)=r(4,2); KK(2*n,2*n-1)=r(4,3);
KK(2*n,2*n)=r(4,4);
Kg=r
K=K+KK
KK=zeros(nn*2,nn*2);
Kg=0;

end
disp('la matriz global es=')
disp(K)

También podría gustarte