
function rama()
%   
%  
%        2 vvvvvvvvvv 3
%    -----o----------o -------->x 
%    |   .             |
%    |  .              4
%    | .
%    |.                |
%    | 1               -
%    |
%    |-3 -|-   4   -|
%    |
%    |
%    V y

Le=2; Lw=3; Lssu=Lw*3;

% stale materialowe
E= 2e7;  I=0.001066;  A=0.08;   

% parametry elementu 
ep=[E, A, I];

% wspolrzedne wezlow
%         x   y    wez
Coord=[  0.0 4.0  % 1
         3.0 0.0  % 2
         7.0 0.0  % 3
        ];

% macierz stopni swobody wezlow
%       u  v fi  wez
Dof =[  1  2  3  % 1
        4  5  6  % 2
        7  8  9  % 3
    ];

% macierz stopni swobody ES
%      elem   p      k
Edof= [ 1   1 2 3  4 5 6
        2   4 5 6  7 8 9
       ];


% intensywnosc obciazenia ciaglego
%       x  y  elem
Eq= [   0  0  % 1
        0  3  % 2
      ];


% Wektory wspolrzednych wezlow elementow
[Ex, Ey]= coordxtr( Edof, Coord, Dof, 2 );

%  rysunek ramy
figure(1)
eldraw2(Ex, Ey, [1,1,0]); hold on;  grid on;
axis([-1 8 -1 5]);
axis ij

% Zerowanie macierzy 
K=zeros(Lssu,Lssu); p= zeros(Lssu,1); z= zeros(Lssu,1);

% sily wezlowe   
p(4)= 5; 

% macierze sztywnosci elementow i agregacja macierzy 
for i=1:Le
    [Ke,ze]= beam2e( Ex(i,:), Ey(i,:), ep, Eq(i,:) );
    [K, z]= assem( Edof(i,:), K, Ke,  z, ze );
end

%-- wektor prawej strony
f= p+z;

% warunki brzegowe
bc= [1 0;
     2 0;
     3 0;
     8 0;
     ];

% obliczenie wektora przemieszczen i reakcji
[d, r]= solveq( K, f, bc );
% wydruki wektora przemieszczeñ i rekcji
d_i_r=[d, r]


% przemieszczenia wezlow dla poszczegolnych elementow
de= extract( Edof, d );

% powrot do elementu
for i=1:Le
  fe(:, :, i)=beam2s( Ex(i,:), Ey(i,:), ep, de(i,:), Eq(i,:), 12);
end

% rysunek odksztalconej ramy
figure(1)
eldisp2( Ex, Ey, de, [1,4,1] );
axis([-1 8 -1 5]);
axis ij
title('Przemieszczenia');
hold off


% Wykresy sil przekrojowych
plotpar=[2  1];

% Sily podluzne
figure(2)
scal=1;
for i=1:Le
     eldia2(Ex(i,:), Ey(i,:), fe(:,1,i), plotpar, scal);
     hold on
end
axis([-1 8 -1 5]);   axis ij; grid on;
title('Sily podluzne')

N=fe(:,1,:)

% Sily poprzeczne
figure(3)
scal=0.1;
for i=1:Le
     eldia2(Ex(i,:), Ey(i,:), fe(:,2,i), plotpar, scal);
     hold on
end
axis([-1 8 -1 5]);   axis ij; grid on;
title('Sily poprzeczne')
T=fe(:,2,:)

% Momenty
figure(4)
scal=0.1;
for i=1:Le
     eldia2(Ex(i,:), Ey(i,:), fe(:,3,i), plotpar, scal);
     hold on
end
%axis([-1 8 -5 1]);
axis([-2 8 -1 5]);    axis ij; grid on;
title('Momenty zginajace')
M=fe(:,3,:)

 


