Họ tên SV thực hiện báo cáo:Giảng viên hướng dẫn: PGS.. Tìm đáp ứng chuyển vị và vận tốc bằng phương pháp Newmark và sai phân trung tâm.... sgama = gama*100; str_sgama = int2strsgama; fi
Trang 1TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP HỒ CHÍ
MINHKHOA XÂY DỰNG
-BÁO CÁO PHƯƠNG PHÁP TÍNH ỨNG DỤNG
TRONG XÂY DỰNG
NHÓM THỰC HIỆN: NHÓM 3
LỚP THỨ 3, TIẾT 8-10
GVHD: PGS.TS NGUYỄN HOÀI SƠN
TP HỒ CHÍ MINH – 12/2022
Trang 2Họ tên SV thực hiện báo cáo:
Giảng viên hướng dẫn: PGS TS NGUYỄN HOÀI SƠN
ĐIỂM:
NHẬN XÉT CỦA GV:
1 Nguyễn Phùng Đình Cường 21149298
2 Lê Quốc Cường 21149296
Trang 3PHẦN 1: CƠ SỞ LÝ THUYẾT 1.1 Phương pháp Runge-Kutta (Runge-Kutta method) Vấn đề:
Tính độ dốc ở 4 vị trí ứng với mỗi bước lặp:
Giải thuật:
1.2 Phương pháp sai phân trung tâm (Central Difference Method) Vấn đề:
Tính vận tốc và gia tốc ở thời điểm t:
3
Trang 4Xây dựng giải thuật:
Trang 5(2 (3 (4) (5)
(6)
(7)
(8) (9)
Lưu đồ
(1) Input the boundary and intial conditions {do} and {dḋ } the number of time steps,o
and the size of the time step or increment ∆t
(2) Evaluate the initial acceleration from {d } = [M]∙∙ -1({Fo} –[K]{d }) o
(3) Solve Eq (16.3.8) for (d )-1
(4) Solve Eq (16.3.7) for {d }1
(5) DO i=1, Total number of time steps
(6) Solve Eq (16.3.7) for {d }i+1
(7) Solve Eq (16.3.5) for {d }i∙∙
(8) Solve Eq (16.3.1) for {dḋ }i
(9) Output the displacement {d }, velocities {d }, and accelerations {d } for a giveni i i∙∙
time step i
1.3 Ph ươ ng pháp Newmark
Vấấn đềề: Tìm đ d ch chuy n, gia tốốc, v n tốốc ộ ị ể ậ
Xấy d ng gi i thu t : ự ả ậ
- Cho {d }, {d· }, và {F0 0 i(t)}
- Nếốu khống cho gia tốốc, hãy tìm {··d }0
{··d }=[M]0 -1 ({F0}-[K]{d })0
- Gi i ph ả ươ ng (d) t i t=0 ạ
[K’]{d1}= {F’1}
- Gi i { ả ··d}( ph ươ ng trình Newmark ban đầầu c a {d ủ i+1} đ ượ c viếốt l i cho { ạ ··d }]i+1
5
Trang 6- Gi i { ả ·d }1
t i tr ng di chuy n ả ọ ể
Bài 36
F(t)
3
2
Trang 7Tìm đáp ứng chuyển vị và vận tốc bằng phương pháp Newmark và sai phân trung tâm.
Giải
1.1 Phương pháp sai phân trung tâm
Giải tay:
B1: Tại t=0 {d }=0 {0 ·d }=00
B2: Nếu không cho gia tốc tìm {··d }0
7
Stability condition
Trang 8Áp dụng điều kiện biên u =0 và 1 ··u1=0 và đơn giản hóa chúng:
B3: Giải d tại t=--1 Δt
B4: Giải d tại t= t, sử dụng giá trị d ở bước 31 Δ -1
B5: Với giá trị d0 đã cho và d1 đã tìm được ở bước 4, tìm d2
Trang 9B6: Tìm { d1} ··
B7: Tìm { d1} ·
B8: Lặp lại các bước 5,6 và 7 để thu được độ dời, gia tốc và vận tốc cho các bước thời gian khác
Lặp lại bước 5:
9
Trang 10Lặp lại bước 6 Tìm { d2} ··
Lặp lại bước 7 Tìm { d2} ·
Giải bằng Matlab:
clear all
% Newmark method employed for the integration of
% a two-degree-of-freedom system –
Trang 11tt=0:h:tmax; % time range
xm=[m1 0; 0 m2]; % mass matrix
xk=[k1+k2 -k2; -k2 k2]; % stiffness matrix
% numerical solution
% Newmark method parameters
gama=0.5; beta=0.25;
a1=1/(beta*h*h);
a1d=gama/(beta*h);
ck=0; cm=0; % damping coefficients
xd=ck*xk+cm*xm; % damping matrix
p=[0 0]'; % initial forces
xk=xk+a1*xm+a1d*xd; % effective stiff matrix
acc=xm\p; % initial acceleration
dis=zeros(2,1); % initial displacements
vel=zeros(2,1); % initial velocities
t=0; % initial time
kk=0; % step counter
kmax=round(tmax/h); % how many steps for tmax
% dimensions of arrays to be plotted later
dis1=zeros(kmax,1);
dis2=zeros(kmax,1);
while t<=tmax, % integate while t <= tmax
[disn,veln,accn] =VTRnewmd(beta,gama,dis,vel,acc,xm,xd,xk,p,h); kk=kk+1; % increment step counter
t=t+h; % increment time value
dis1(kk)=dis(1); dis2(kk)=dis(2); % save for plotting
dis=disn; vel=veln; acc=accn; % new values for next step p1=p10*sin(ome*t); p2=p20*sin(ome*t); % excitation forces p=[p1 p2]';
end;
% analytical solution
% amplitudes of steady-state motion according to Eq (5.192) jm=(k1+k2-m1*ome^2).*(k2-m2*ome^2)-k2^2;
am1=(p10*(k2-m2*ome^2)+p20*k2)/jm;
am2=(p20*(k1+k2-m1*ome^2)+p10*k2)/jm;
% calculate steady-state response
% displacements according to (5.182) are
x1=am1*sin(ome*tt);
x2=am2*sin(ome*tt);
dis1t=dis1'; dis2t=dis2';
% compare results - plot it
figure(1)
subplot(211); plot(tt(1:kmax),dis1t(1:kmax),'k:',
tt,x1,'k', 'linewidth', 2);
lab='Steady-state (solid) vs transient + steady-state (dotted)'; title(lab)
ylabel('particle 1')
subplot(212); plot(tt(1:kmax),dis2t(1:kmax),'k:',
tt,x2,'k', 'linewidth', 2);
lab=['gamma for Newmark is ' num2str(gama)];
title(lab); xlabel('time'); ylabel('particle 2')
11
Trang 12sgama = gama*100;
str_sgama = int2str(sgama);
file_name = ['V2Etwodof3a' str_sgama];
print('-deps', file_name); print('-dmeta',file_name);
function [disn,veln,accn] =VTRnewmd(beta,gama,dis,vel,acc,xm,xd,xk,p,h)
% Newmark integration method
%
% beta, gama coefficients
% dis,vel,acc displacements, velocities, accelerations at the begining of time step
% disn,veln,accn corresponding quantities at the end of time step
% xm,xd mass and damping matrices
% xk effective rigidity matrix
% p loading vector at the end of time step
% h time step
% constants
a1=1/(beta*h*h);
a2=1/(beta*h);
a3=1/(2*beta)-1;
a4=(1-gama)*h;
a5=gama*h;
a1d=gama/(beta*h);
a2d=gama/beta-1;
a3d=0.5*h*(gama/beta-2);
% effective loading vector
r = p + xm*(a1*dis+a2*vel+a3*acc)+xd*(a1d*dis+a2d*vel+a3d*acc);
% solve system of equations for displacements xk
disn=xk\r;
% new velocities and accelerations
accn=a1*(disn-dis)-a2*vel-a3*acc;
veln=vel+a4*acc+a5*accn;
% end of VTRnewmd