Author
http://meslab.org/mes/picture.php?albumid=119&pictureid=590http://meslab.org/mes/picture.php?albumid=119&pictureid=590
Chương trình Matlab:
clear all; clc;
qs=0; qt=3; b=5; h=10; P=10;
A=0.4; E=1.e+5; I=b*h^3/12;
nut=[1 0 0;2 20 0;3 0 5;4 0 10;5 20 10;6 26 10];
pt=[1 1 3 A E 2.5*I;2 2 5 A E 2.5*I;3 3 4 A E 2.5*I;4 4 5 A E I;5 5 6 A E I];
dk=[1 0;2 0;3 0;4 0;5 0];
luc=[7 P];
lucpb=[1 0 0;2 0 0;3 0 0;4 0 -qt;5 0 -qt];
%--------------------------------------------------------------------------
K=zeros(size(nut,1)*3);
F=zeros(size(nut,1)*3,1);
F(luc,1))=luc,2);
%--------------------------------------------------------------------------
for i=1:size(pt,1)
[K,F]=lap_ghep(i,nut,pt,E,A,I,qs,qt,K,F,lucpb)
end
btd=[1:size(nut,1)*3];
btd(dk,1))=[];
u=(F(btd)-K(btd,dk,1))*dk,2))'/K(btd,btd)
cv=zeros(size(nut,1)*3,1);
cv(dk,1))=dk,2);
cv(btd)=u;
pl=K*cv-F
cv
%---------------------
-------------------------------------------------
%----------Ve luc doc truc-------------------------------------------------
figure('name','Bieu do luc doc','menubar','none','numbertitle','off')
axis([-10 30 -10 20]);
for i=1:size(pt,1)
f=0;
[cvl,L,x1,x2,y1,y2]=cv_diaphuong(i,nut,pt,cv);
x=0:0.5:L;
for j=1:size(x,2)
s=x(j);
f(j)=pt(i,4)*pt(i,5)*[-1/L 1/L]*cvl([1 4]);
end
ve_bieu_do(f,x,x1,x2,y1,y2,L);
end
%----------Ve moment-------------------------------------------------------
figure('name','Bieu do moment','menubar','none','numbertitle','off')
axis([-10 30 -10 20]);
for i=1:size(pt,1)
f=0;
[cvl,L,x1,x2,y1,y2]=cv_diaphuong(i,nut,pt,cv);
x=0:0.5:L;
for j=1:size(x,2)
s=x(j);
f(j)=pt(i,5)*pt(i,6)*[12*s/L^3-6/L^2 6*s/L^2-4/L 6/L^2-12*s/L^3 6*s/L^2-2/L]*cvl([2 3 5 6]);
f(j)=f(j)-1/12*lucpb(i,3)*(L^2-6*s*L+6*s^2);
end
ve_bieu_do(f,x,x1,x2,y1,y2,L);
end
%----------Ve luc cat------------------------------------------------------
figure('name','Bieu do luc cat','menubar','none','numbertitle','off')
axis([-10 30 -10 20]);
for i=1:size(pt,1)
f=0;
[cvl,L,x1,x2,y1,y2]=cv_diaphuong(i,nut,pt,cv);
x=0:0.5:L;
for j=1:size(x,2)
s=x(j);
f(j)=pt(i,5)*pt(i,6)*[12/L^3 6/L^2 -12/L^3 6/L^2]*cvl([2 3 5 6]);
f(j)=f(j)-lucpb(i,3)*(L-2*s)/2;
end
ve_bieu_do(f,x,x1,x2,y1,y2,L);
end
Chương trình Matlab:
clear all; clc;
qs=0; qt=3; b=5; h=10; P=10;
A=0.4; E=1.e+5; I=b*h^3/12;
nut=[1 0 0;2 20 0;3 0 5;4 0 10;5 20 10;6 26 10];
pt=[1 1 3 A E 2.5*I;2 2 5 A E 2.5*I;3 3 4 A E 2.5*I;4 4 5 A E I;5 5 6 A E I];
dk=[1 0;2 0;3 0;4 0;5 0];
luc=[7 P];
lucpb=[1 0 0;2 0 0;3 0 0;4 0 -qt;5 0 -qt];
%--------------------------------------------------------------------------
K=zeros(size(nut,1)*3);
F=zeros(size(nut,1)*3,1);
F(luc,1))=luc,2);
%--------------------------------------------------------------------------
for i=1:size(pt,1)
[K,F]=lap_ghep(i,nut,pt,E,A,I,qs,qt,K,F,lucpb)
end
btd=[1:size(nut,1)*3];
btd(dk,1))=[];
u=(F(btd)-K(btd,dk,1))*dk,2))'/K(btd,btd)
cv=zeros(size(nut,1)*3,1);
cv(dk,1))=dk,2);
cv(btd)=u;
pl=K*cv-F
cv
%---------------------
%----------Ve luc doc truc-------------------------------------------------
figure('name','Bieu do luc doc','menubar','none','numbertitle','off')
axis([-10 30 -10 20]);
for i=1:size(pt,1)
f=0;
[cvl,L,x1,x2,y1,y2]=cv_diaphuong(i,nut,pt,cv);
x=0:0.5:L;
for j=1:size(x,2)
s=x(j);
f(j)=pt(i,4)*pt(i,5)*[-1/L 1/L]*cvl([1 4]);
end
ve_bieu_do(f,x,x1,x2,y1,y2,L);
end
%----------Ve moment-------------------------------------------------------
figure('name','Bieu do moment','menubar','none','numbertitle','off')
axis([-10 30 -10 20]);
for i=1:size(pt,1)
f=0;
[cvl,L,x1,x2,y1,y2]=cv_diaphuong(i,nut,pt,cv);
x=0:0.5:L;
for j=1:size(x,2)
s=x(j);
f(j)=pt(i,5)*pt(i,6)*[12*s/L^3-6/L^2 6*s/L^2-4/L 6/L^2-12*s/L^3 6*s/L^2-2/L]*cvl([2 3 5 6]);
f(j)=f(j)-1/12*lucpb(i,3)*(L^2-6*s*L+6*s^2);
end
ve_bieu_do(f,x,x1,x2,y1,y2,L);
end
%----------Ve luc cat------------------------------------------------------
figure('name','Bieu do luc cat','menubar','none','numbertitle','off')
axis([-10 30 -10 20]);
for i=1:size(pt,1)
f=0;
[cvl,L,x1,x2,y1,y2]=cv_diaphuong(i,nut,pt,cv);
x=0:0.5:L;
for j=1:size(x,2)
s=x(j);
f(j)=pt(i,5)*pt(i,6)*[12/L^3 6/L^2 -12/L^3 6/L^2]*cvl([2 3 5 6]);
f(j)=f(j)-lucpb(i,3)*(L-2*s)/2;
end
ve_bieu_do(f,x,x1,x2,y1,y2,L);
end