TRƯỜNG ĐẠI HỌC BÁCH KHOA TP.HCM
KHOA KHOA HỌC ỨNG DỤNG
BÁO CÁO BÀI TẬP LỚN
LÝ THUYẾT ĐÀN HỒI
ĐỀ TÀI: GIẢI BÀI TOÁN LÝ THUYẾT BIẾN DẠNG BẰNG
MATLAP
Giáo viên hướng dẫn:
Lớp:
Thực hiện:
Sinh viên thực hiện:
Vũ Công Hòa
CKT16
Nhóm 2
Lài Anh Tuấn
Lê Minh Thuận
Nguyễn Bá Hưng
Chiếng Quang Phước
1613882
1613442
1611431
1612724
Viết code
Năm học: 2017-2018
Ngày 25 tháng 5 năm 2018
BÀI TẬP LỚN LÝ THUYẾT ĐÀN HỒI – NHÓM 2
1
Nội dung
1. Đề tài: Giải bài toán liên quan đến Lý Thuyết Biến Dạng
2. Ý tưởng của nhóm: Dùng matlap để tính toán các biến dạng chính,Tenso biến
dạng lệch,vẽ đường tròn Morh,…
3. Thiết kế: Matlap
Mục lục
Mục lục …………………………………………………………………… 2
I.CODE ………………………………………………………………….. 3
II.VÍ DỤ MINH HỌA …………………………………………………… 8
BÀI TẬP LỚN LÝ THUYẾT ĐÀN HỒI – NHÓM 2
2
I.CODE
function BTLltdhnhom2
T=input('nhap ma tran tenso bien dang T= ');
% kiem tra ma tran T co la ma tran doi xung hay khong !!
for i=1:size(T,1)
for j = 1:size(T,2)
while T(i,j) ~= T(j,i)
T= input(' xin loi day khong phai la ma tran doi xung!! \n
vui long nhap lai ma tra T= ');
break
end
end
end
j1=T(1,1)+T(2,2)+T(3,3);
j2=T(1,1)*T(2,2)+T(2,2)*T(3,3)+T(3,3)*T(1,1)-T(1,2)*T(2,1)T(2,3)*T(3,2)-T(1,3)*T(3,1);
j3=det(T);
%giai phuong trinh bien dang
p=[1 -j1 j2 -j3];
a=roots(p);
% dung vong lap de tao lai a=[e1;e2;e3] voi e1
n = length(a);
for i = 1:n-1
for j = i+1:n
if a(i) < a(j)
tep = a(i);
a(i) = a(j);
a(j) = tep;
end
end
end
e3=a(1);
e2=a(2);
e1=a(3);
e4=1/3*(e1+e2+e3);
y=2/3*sqrt((e1-e2)^2+(e2-e3)^2+(e3-e1)^2);
disp(['Cac bien dang chinh e1= ' num2str(e1) ', e2= ' num2str(e2) ',
e3= ' num2str(e3) ]);
disp(['bien dang duong theo phuong vuong goc Ebd = ' num2str(e4) ]);
disp(['goc truot tren bat dien : y= ' num2str(y) ' rad ' ]);
disp('Tenso bien dang cau la')
T0 =[ e4 0 0 ;0 e4 0;0 0 e4]
disp('Tenso bien dang lech la')
De= T - T0
mm=[0.001 0.0002/2 0.0003/2;0.0002/2 0.0005 -0.0001/2;0.0003/2
-0.0001/2 -0.0001] ;
%phuong trinh cosin chi phuong chinh
syms m n l
q1=l^2+m^2+n^2-1;
w1=(T(1,1)-e1)*l+T(1,2)*m+T(1,3)*n;
r1=T(1,2)*l+(T(2,2)-e1)*m+T(2,3)*n;
y1=T(1,3)*l+T(2,3)*m+(T(3,3)-e1);
S1=solve(q1,w1,r1);
BÀI TẬP LỚN LÝ THUYẾT ĐÀN HỒI – NHÓM 2
3
w2=(T(1,1)-e2)*l+T(1,2)*m+T(1,3)*n;
r2=T(1,2)*l+(T(2,2)-e2)*m+T(2,3)*n;
y2=T(1,3)*l+T(2,3)*m+(T(3,3)-e2);
S2=solve(q1,w2,r2);
w3=(T(1,1)-e3)*l+T(1,2)*m+T(1,3)*n;
r3=T(1,2)*l+(T(2,2)-e3)*m+T(2,3)*n;
y3=T(1,3)*l+T(2,3)*m+(T(3,3)-e3);
S3=solve(q1,w3,r3);
disp('ma tran cosin chi phuong cua he truc chinh [l,m,n] là: ')
I=[double(S1.l(1,1)) double(S1.m(1,1)) double(S1.n(1,1)) ;
double(S2.l(1,1)) double(S2.m(1,1))
double(S2.n(1,1));double(S3.l(1,1)) double(S3.m(1,1))
double(S3.n(1,1)) ]
%ve duong tron Mohr
hold on
clf
hold on
grid on
xlabel('Truc Ox')
ylabel('Truc Oy')
zlabel('Truc Oz')
title('Duong tron Morh')
t=[0:0.001:2*pi];
%duong tron e1 va e3
k1=(e1+e3)/2;
r1=abs(e1-e3)/2;
x1=k1+r1*cos(t);
y1=r1*sin(t);
plot(x1,y1,'LineWidth',2);
%duong tron e2 va e3
k2=(e2+e3)/2;
r2=abs(e2-e3)/2;
x2=k2+r2*cos(t);
y2=r2*sin(t);
plot(x2,y2,'LineWidth',2);
%duong tron e2 va e1
k3=(e2+e1)/2;
r3=abs(e2-e1)/2;
x3=k3+r3*cos(t);
y3=r3*sin(t);
plot(x3,y3,'LineWidth',2)
%danh dau diem
plot(k1,0,'*')
text(k1,-1/10*r3,'O1')
plot(k2,0,'*')
text(k2,-1/10*r3,'O2')
plot(k3,0,'*')
text(k3,-1/10*r3,'O3')
b=[0:0.000001:(y/2)];
a=e4+0*b;
plot(a,b,'LineWidth',2);
a1=[0:0.000001:(y/2)];
b1=-(k2-e4)/(y/2-0)*a1+k2;
BÀI TẬP LỚN LÝ THUYẾT ĐÀN HỒI – NHÓM 2
4
plot(b1,a1,'blue');
a2=[0:0.000001:(y/2)];
b2=-(k3-e4)/(y/2-0)*a2+k3;
plot(b2,a2,'blue');
%%%%%%%%%%%
r4=sqrt((e4-k2)^2+(y/2)^2);
syms X
mm=solve(r1^2-(X-k1)^2==r4^2-(X-k2)^2);
xt=double(mm);
a3=[e4:0.00001:xt];
b3=sqrt(r4^2-(a3-k2).^2);
plot(a3,b3,'LineWidth',2)
yt=double(sqrt(r4^2-(xt-k2)^2));
if k2>xt
a4=[xt:0.0000001:k2];
b4=(yt/(xt-k2))*a4-k2*yt/(xt-k2);
plot(a4,b4,'blue')
else
a4=[k2:0.0000001:xt];
b4=(yt/(xt-k2))*a4-k2*yt/(xt-k2);
plot(a4,b4,'blue')
end
a5=[e1:0.000001:xt];
b5=(yt/(xt-e1))*a5-e1*yt/(xt-e1);
plot(a5,b5,'LineWidth',2)
%%%%%%%%%
r5=sqrt((e4-k3)^2+(y/2)^2);
syms X
mm=solve(r1^2-(X-k1)^2==r5^2-(X-k3)^2);
xt1=double(mm);
a3=[xt1:0.00001:e4];
b3=sqrt(r5^2-(a3-k3).^2);
plot(a3,b3,'LineWidth',2)
yt1=double(sqrt(r5^2-(xt1-k3)^2));
if k3
a5=[k3:0.000001:xt1];
b5=(yt1/(xt1-k3))*a5-k3*yt1/(xt1-k3);
plot(a5,b5,'blue')
else
a5=[xt1:0.000001:k3];
b5=(yt1/(xt1-k3))*a5-k3*yt1/(xt1-k3);
plot(a5,b5,'blue')
end
BÀI TẬP LỚN LÝ THUYẾT ĐÀN HỒI – NHÓM 2
5
a5=[xt1:0.000001:e3];
b5=(yt1/(xt1-e3))*a5-e3*(yt1/(xt1-e3));
plot(a5,b5,'LineWidth',2)
%%%%% ve cac ky hieu e1
a6=[1.1/3*(-r1-2.5/10*r1):0.000001:0];
b6=e1+0*a6;
plot(b6,a6,'black')
a6=[-r1-3/10*r1:0.000001:0];
b6=0+0*a6;
plot(b6,a6,'black')
text(e1/2,1/3*(-r1-2.5/10*r1)-0.5/10*r1,'e1')
if e1<0
a6=[e1:0.000001:0];
b6=1/3*(-r1-2.5/10*r1)+0*a6;
plot(a6,b6,'black')
else
a6=[0:0.000001:e1];
b6=1/3*(-r1-2.5/10*r1)+0*a6;
plot(a6,b6,'black')
end
%%% ve ky hieu e2
a6=[2.1/3*(-r1-2.5/10*r1):0.000001:0];
b6=e2+0*a6;
plot(b6,a6,'black')
text(e2/2,2/3*(-r1-2.5/10*r1)-0.5/10*r1,'e2')
if e2<0
a6=[e2:0.000001:0];
b6=2/3*(-r1-2.5/10*r1)+0*a6;
plot(a6,b6,'black')
else
a6=[0:0.000001:e2];
b6=2/3*(-r1-2.5/10*r1)+0*a6;
plot(a6,b6,'black')
end
%%%% e3
a6=[-r1-3.3/10*r1:0.000001:0];
b6=e3+0*a6;
plot(b6,a6,'black')
text(e3/2,(-r1-2.5/10*r1)-0.5/10*r1,'e3')
if e3<0
a6=[e3:0.000001:0];
b6=(-r1-2.5/10*r1)+0*a6;
plot(a6,b6,'black')
else
a6=[0:0.000001:e3];
b6=(-r1-2.5/10*r1)+0*a6;
plot(a6,b6,'black')
end
%% ve truc ox oy
a7=[e1-1/10*2*r1:0.000001:e3+1/10*2*r1];
b7=0+0*a7;
plot(a7,b7,'black')
b8=[-r1-1/10*2*r1:0.000001:r1+1/10*2*r1];
BÀI TẬP LỚN LÝ THUYẾT ĐÀN HỒI – NHÓM 2
6
a8=0+0*b8;
plot(a8,b8,'black')
text(r1/40,r1/15,'O')
plot(0,0,'.','LineWidth',4,'MarkerEdgeColor','black')
end
II.VÍ DỤ MINH HỌA
BÀI TẬP LỚN LÝ THUYẾT ĐÀN HỒI – NHÓM 2
7
1. Cho tenso biến dạng:
INPUT:
OUTPUT:
BÀI TẬP LỚN LÝ THUYẾT ĐÀN HỒI – NHÓM 2
8
OUTPUT:
BÀI TẬP LỚN LÝ THUYẾT ĐÀN HỒI – NHÓM 2
9
2. Cho tenso bien dang
INPUT:
OUTPUT:
BÀI TẬP LỚN LÝ THUYẾT ĐÀN HỒI – NHÓM 2
10
OUTPUT:
BÀI TẬP LỚN LÝ THUYẾT ĐÀN HỒI – NHÓM 2
11