Phân tích độ nhạy của phản ứng động đất với độ lệch tâm khối lượng trong hệ khung thép đặc biệt ba tầng Phân tích độ nhạy của phản ứng động đất với độ lệch tâm khối lượng trong hệ khung thép đặc biệt ba tầng luận văn tốt nghiệp thạc sĩ
BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƢỜNG ĐẠI HỌC CÔNG NGHỆ TP.HCM NGUYỄN THU THIÊN PHÂN TÍCH ĐỘ NHẠY CỦA PHẢN ỨNG ĐỘNG ĐẤT VỚI ĐỘ LỆCH TÂM KHỐI LƢỢNG TRONG HỆ KHUNG THÉP ĐẶC BIỆT BA TẦNG LUẬN VĂN THẠC SĨ Chun ngành: KTXD Cơng trình Dân dụng Công nghiệp Mã ngành: 60 58 02 08 TP Hồ Chí Minh, tháng 09 năm 2015 BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƢỜNG ĐẠI HỌC CÔNG NGHỆ TP.HCM NGUYỄN THU THIÊN PHÂN TÍCH ĐỘ NHẠY CỦA PHẢN ỨNG ĐỘNG ĐẤT VỚI ĐỘ LỆCH TÂM KHỐI LƢỢNG TRONG HỆ KHUNG THÉP ĐẶC BIỆT BA TẦNG LUẬN VĂN THẠC SĨ Chun ngành: KTXD Cơng trình Dân dụng Cơng nghiệp Mã ngành: 60 58 02 08 CÁN BỘ HDKH: TS ĐÀO ĐÌNH NHÂN TP Hồ Chí Minh, tháng 09 năm 2015 -i- CƠNG TRÌNH ĐƯỢC HỒN THÀNH TẠI TRƢỜNG ĐẠI HỌC CÔNG NGHỆ TP.HCM Cán hƣớng dẫn khoa học: TS ĐÀO ĐÌNH NHÂN Luận văn Thạc sĩ bảo vệ Trường Đại học Kỹ thuật Công nghệ TP.HCM ngày … tháng … năm 2015 Thành phần Hội đồng đánh giá Luận văn Thạc sĩ gồm: TT Họ tên Chức danh Hội đồng Chủ tịch Phản biện Phản biện Ủy viên Ủy viên, Thư ký Xác nhận Chủ tịch Hội đồng đánh giá Luận sau Luận văn sửa chữa (nếu có) Chủ tịch Hội đồng đánh giá Luận văn - ii - TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TP HỒ CHÍ MINH CỘNG HỊA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập – Tự – Hạnh phúc PHÒNG QLKH – ĐTSĐH NHIỆM VỤ LUẬN VĂN THẠC SĨ Họ tên học viên: NGUYỄN THU THIÊN Giới tính: nam Ngày, tháng, năm sinh: 01/02/1975 Nơi sinh: Quảng Ngãi Chuyên ngành: Kỹ thuật xây dựng cơng trình dân dụng cơng nghiệp MSHV: 1341870051 I Tên đề tài Phân tích độ nhạy phản ứng động đất với độ lệch tâm khối lượng hệ khung thép đặc biệt ba tầng II Nhiệm vụ nội dung Nhiệm vụ Nhiệm vụ đề tài “Phân tích độ nhạy phản ứng động đất với độ lệch tâm khối lượng hệ khung thép đặc biệt ba tầng” tìm hiểu phản ứng tịa nhà tầng nhà có khung thép đặc biệt (Special Moment Resisting Frame - SMRF), dầm có mặt cắt giảm yếu (Reduced Beam Section – RBS) với độ lệch tâm e khác theo phương X Y, chịu tác động cấp độ địa chấn khác theo hai phương X Y Luận văn đánh giá phản ứng hệ khảo sát hai trường hợp vật liệu làm việc đàn hồi phi tuyến chịu động đất Bên cạnh viết cịn trình bày việc thực phân tích ứng xử hệ theo độ lệch tâm khối lượng, đồng thời tính tốn độ nhạy phản ứng động đất với độ lệch tâm khối lượng hệ kết cấu Các phân tích đánh giá phạm vi luận văn gồm: Phân tích phản ứng gia tốc, chuyển vị ngang, xoắn lực cắt tầng hệ kết cấu chịu cấp độ động đất, xét trường hợp vật liệu hệ làm việc tuyến tính - iii - Phân tích phản ứng gia tốc trung bình, chuyển vị ngang, xoắn lực cắt tầng hệ kết cấu chịu cấp độ động đất, xét trường hợp vật liệu hệ làm việc phi tuyến Đánh giá phản ứng gia tốc, chuyển vị ngang, xoắn lực cắt tầng theo độ lệch tâm khối lượng hệ kết cấu chịu động đất Phân tích độ nhạy gia tốc, chuyển vị ngang, xoắn lực cắt tầng theo độ lệch tâm khối lượng hệ kết cấu chịu động đất Nội dung Để đạt mục tiêu nghiên cứu, tác giả thực khảo sát mơ hình gồm: (1) khảo sát tuyến tính mơ hình khung moment đặc biệt với độ lệch tâm ngẫu nhiên 5% (theo tiêu chuẩn); (2) khảo sát phi tuyến mơ hình với độ lệch tâm ngẫu nhiên 5%; (3) khảo sát phi tuyến hệ kết cấu với độ lệch tâm khối lượng theo hai phương tuân theo luật phân phối chuẩn với 60 giá trị tạo ngẫu nhiên từ máy tính giá trị tâm Tất khảo sát thực ba cấp độ động đất, cấp độ đại diện 20 băng gia tốc Các liệu phản ứng thu từ khảo sát phương pháp tích phân số miền thời gian, phân tích phương pháp tốn học, mơ tả thống kê, phân tích độ nhạy giá trị biến đầu vào độ lệch tâm e Từ rút kết luận cần thiết (nếu có) phản ứng cơng trình chịu động đất phạm vi nghiên cứu Các công việc cụ thể đề tài gồm: - Xác định vấn đề: mục đích, đối tượng phạm vi nghiên cứu đề tài - Tổng thuật tài liệu: Phân tích, đánh giá cơng trình nghiên cứu có tác giả nước liên quan đến đề tài; nêu vấn đề tồn tại; vấn đề mà đề tài cần tập trung nghiên cứu, giải - Cơ sở lý thuyết xây dựng mơ hình kết cấu: Trình bày giả thiết xây dựng mơ hình kết cấu, phương pháp giải, xác định liệu đầu vào - Phân tích ứng xử hệ khung thép đặc biệt chịu động đất có xét đến làm việc phi tuyến vật liệu: so sánh phản ứng, quy luật gia tốc, chuyển vị tầng lực cắt tầng nhà chịu động đất trường hợp giả thiết hệ làm việc tuyến tính phi tuyến - iv - - Phân tích ảnh hƣởng độ lệch tâm khối lƣợng hệ khung thép đặc biệt ba tầng đến phản ứng nó: phân tích phản ứng gia tốc, chuyển vị tầng lực cắt tầng độ nhạy phản ứng với độ lệch tâm hệ kết cấu chịu động đất - Kết luận: Trình bày kết Luận văn III Ngày giao nhiệm vụ: 17/3/2015 IV Ngày hoàn thành nhiệm vụ: 17/9/2015 V Cán hƣớng dẫn: Tiến sĩ Đào Đình Nhân CÁN BỘ HƢỚNG DẪN Tiến sĩ Đào Đình Nhân KHOA QUẢN LÝ CHUYÊN NGÀNH -v- LỜI CAM ĐOAN Tơi cam đoan cơng trình nghiên cứu riêng Các số liệu, kết nêu Luận văn trung thực chưa cơng bố cơng trình khác Đồng thời, thơng tin trích dẫn Luận văn tôn trọng rõ nguồn gốc Tác giả NGUYỄN THU THIÊN - vi - LỜI CẢM ƠN Đề tài thực năm qua Trong trình xây dựng, khảo sát mơ hình phân tích liệu, khơng có giúp đỡ trực tiếp gián tiếp thầy, bạn trường khơng thể có kết Xin chân thành gửi lời cảm ơn đến thầy dạy môn lớp 13SXD21, nhờ thầy trang bị cho kiến thức giúp em thuận lợi cho việc thực đề tài Thạc sĩ Rất cảm ơn bạn lớp chia sẻ, trao đổi, phản biện trình làm bài, nhờ giúp cho nội dung phân tích tốt Đặc biệt, luận văn khơng thể thực thiếu hướng dẫn trực tiếp Tiến sĩ Đào Đình Nhân Cảm ơn thầy với lịng nhiệt tình, truyền đạt kiến thức kinh nghiệm bổ ích để em hồn thành luận Tác giả mong góp ý chân thành thành viên Hội đồng khoa học để Luận văn hiệu chỉnh hồn thiện NGUYỄN THU THIÊN - vii - TÓM TẮT NỘI DUNG LUẬN VĂN * Tên đề tài: Phân tích độ nhạy phản ứng động đất với độ lệch tâm khối lượng hệ khung thép đặc biệt ba tầng * Từ khoá: Khung moment đặc biệt, phản ứng động đất, phân tích phi tuyến, phân tích lịch sử thời gian, độ nhạy, độ lệch tâm khối lượng * Tóm tắt: Đề tài phân tích ứng xử mơ hình tồ nhà khung moment đặc biệt ba tầng chịu động đất Có hai nội dung Thứ nhất, đánh giá ứng xử hệ khung thép đặc biệt chịu động đất có xét đến làm việc phi tuyến vật liệu Nội dung khảo sát mơ hình làm việc tuyến tính phi tuyến khung thép đặc biệt có độ lệch tâm khối lượng 5% (theo yêu cầu xoắn ngẫu nhiên Tiêu chuẩn) Thứ hai, phân tích độ nhạy phản ứng động đất với độ lệch tâm khối lượng hệ khung thép đặc biệt ba tầng Phần phân tích 61 mơ hình tương ứng với 60 độ lệch tâm khối lượng giả định tuân theo phân phối chuẩn mơ hình tâm Phản ứng hệ phân tích bao gồm gia tốc, chuyển vị tầng tương đối, chuyển vị xoắn, lực cắt tầng lực qn tính Mơ hình tịa nhà ba tầng, xây dựng phần mềm máy tính OpenSees Phản ứng với động đất mơ hình phân tích phương pháp tích phân số trực tiếp miền thời gian, thuật tốn Newmark Mơ hình phân tích với ba cấp độ động đất khác Mỗi cấp độ động đất đại diện 20 băng gia tốc Kết khảo sát cho thấy rằng, thứ nhất, trường hợp phân tích phi tuyến tuyến tính, phản ứng gia tốc, chuyển vị tầng, xoắn lực tĩnh tăng theo chiều cao tầng theo cấp độ động đất Trong đó, lực cắt tăng tỷ lệ thuận với độ mạnh địa chấn tỷ lệ nghịch với chiều cao hệ Thứ hai, với cấp độ động đất 50/50, ứng xử hệ trường hợp tuyến tính phi tuyến khơng khác biệt Tuy nhiên, phản ứng hệ trường hợp vật liệu làm việc đàn hồi lớn so với phi tuyến chịu động đất chu kỳ 475 năm 2.745 năm Thứ ba, độ lệch chuẩn - viii - tập liệu phản ứng trường hợp phi tuyến nhỏ so với tuyến tính Kết nói lên tập liệu phản ứng trường hợp phi tuyến hội tụ trường hợp đàn hồi, có nghĩa phản ứng thu trường hợp phi tuyến tác động băng chuyển động có tương đồng cao biến động nhỏ; ngược lại, có phân tán lớn, rải rác biến động lớn không gian giá trị trường hợp tuyến tính Điều rằng, để có độ xác cao hơn, nên chọn số mẫu gia tốc lớn xác định phổ phản ứng trung bình để thiết kế theo lý thuyết đàn hồi Thứ tư, độ nhạy phản ứng hệ kết cấu độ lệch tâm khối lượng không phụ thuộc vào cấp độ động đất, mà thay đổi theo chuyển động Thứ năm, dù chịu cấp độ động đất nào, gia tốc đỉnh trung bình sàn chuyển vị ngang khơng tăng đơn điệu, mà biến thiên miền độ lệch tâm khối lượng tòa nhà khảo sát Trong khảo sát này, gia tốc chuyển vị ngang tăng lên độ lệch tâm khối lượng đạt mức khoảng 15% Sau đại lượng gần không thay đổi từ từ giảm xuống giá trị lệch tâm khối lượng lớn 25% Thứ sáu, độ lệch tâm khối lượng nhỏ 10%, chuyển vị ngang gia tốc sàn trở nên nhạy với độ lệch tâm khối lượng hệ chịu động đất mạnh Độ nhạy chuyển vị ngang với độ lệch tâm khối lượng nhỏ so với gia tốc sàn Thứ bảy, chuyển vị xoắn phân tích đồng biến độ lệch tâm khối lượng khoảng từ - 30%, nhạy khoảng 15% Ngoài khoảng này, chuyển vị xoắn không thay đổi Thứ tám, lực cắt tầng tất trường hợp động đất không tăng theo độ tăng độ lệch tâm khối lượng Ngược lại, giá trị giảm nhẹ suốt miền giá trị độ lệch tâm khảo sát Trong đó, lực qn tính tăng theo chiều cao cơng trình, có xu hướng với lực cắt xét tương tác với độ lệch tâm Điều cho thấy lực cắt tầng lực quán tính nhạy so với độ lệch tâm khối lượng - XXVIII - %print('-depsc',Print_DE); %% Plot Z figure hold on plot(BetaE,ED_Mean(:,10)','b-+','linewidth',1.2), grid, ; plot(BetaE,ED_Mean(:,9)','m-o','linewidth',1.4); plot(BetaE,ED_Mean(:,8)','g-*','linewidth',1.6); title(sprintf('Quan he Xoan trung binh - lech tam o cap dong dat %d nam',YearNum)); xlabel('Eccen'); ylabel('Torque (%)'); legend('Z-Tang 3','Z-Tang 2','Z-Tang 1','Location','SouthEast'); hold off %Print_TorE = ['B',num2str(B),'_TorE.eps']; %print('-depsc',Print_TorE); %% ABS Plot X Y sortXY = [abs(BetaE)', ED_Mean(:,2), ED_Mean(:,3), ED_Mean(:,4), ED_Mean(:,5), ED_Mean(:,6), ED_Mean(:,7)]; sortXY = sortrows(sortXY,1); sortXY = sortXY'; figure hold on plot(sortXY(1,:),sortXY(4,:),'b-o','linewidth',1.5), grid, ; plot(sortXY(1,:),sortXY(3,:),'m-o','linewidth',1.5); plot(sortXY(1,:),sortXY(2,:),'g-o','linewidth',1.5); plot(sortXY(1,:),sortXY(7,:),'b *','linewidth',1.2); plot(sortXY(1,:),sortXY(6,:),'m *','linewidth',1.2); plot(sortXY(1,:),sortXY(5,:),'g *','linewidth',1.2); title(sprintf('Quan he chuyen vi trung binh - lech tam o cap dong dat %d nam',YearNum)); xlabel('ABS Eccen'); ylabel('Drift (in)'); legend('X-Tang 3','X-Tang 2','X-Tang 1','Y-Tang 3','Y-Tang 2','Y-Tang 1','Location','SouthEast'); hold off %Print_DE_ABS = ['B',num2str(B),'_DE_ABS.eps']; %print('-depsc',Print_DE_ABS); %% Plot ABS Z sortZ = [abs(BetaE)', ED_Mean(:,8), ED_Mean(:,9), ED_Mean(:,10)]; sortZ = sortrows(sortZ,1); sortZ = sortZ'; figure hold on plot(sortZ(1,:),sortZ(4,:),'b-+','linewidth',1.2), grid, ; plot(sortZ(1,:),sortZ(3,:),'m-o','linewidth',1.4); plot(sortZ(1,:),sortZ(2,:),'g-*','linewidth',1.6); title(sprintf('Quan he chuyen vi trung binh - lech tam o cap dong dat %d nam',YearNum)); xlabel('ABS Eccen'); ylabel('Torque (%)'); legend('Z-Tang 3','Z-Tang 2','Z-Tang 1','Location','SouthEast'); hold off %Print_TorE_ABS = ['B',num2str(B),'_TorE_ABS.eps']; %print('-depsc',Print_TorE_ABS); %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% PL2.3 Mã chƣơng trình xử lý số liệu lực cắt clear all; %% Cac cap dong dat B = 3; % Nhap cap dong dat = [1 3] if B == YearNum = 72; elseif B ==2 YearNum = 475; - XXIX - else YearNum = 2475; end %% Nhap thong tin GM = {'BO1516', 'NGA1045', 'BO0910', 'NGA0884', 'NGA1084', 'NGA1054', 'NGA1063', 'NGA0173', 'NGA1116', 'NGA1752', 'NGA0728', 'NGA0169', 'NGA1044', 'NGA0721', 'NGA0313', 'NGA1082', 'NGA0367', 'NGA0322', 'NGA0368', 'NGA0558'; 'NGA1084','NGA1106','NGA0723','NGA1054','NGA0569','NGA0721','NGA1054','NGA0821','NGA1141','NGA1116','la01','l a02','la03','la04','la05','la06','la07','la08','la09','la10'; 'NGA1084','NGA0527','NGA1106','NGA1054','NGA1044','NGA1120','NGA0821','NGA1605','NGA1141','bo31','se01','se02 ','se03','se04','se05','se06','se07','se08','se09','se10'}; GM = GM(B,:); Bline = (Beta-1)/2+1; BetaE = [-0.488 -0.485 -0.443 -0.427 -0.408 -0.379 -0.358 -0.356 -0.338 -0.337 -0.321 -0.317 -0.316 -0.315 -0.303 -0.292 -0.285 -0.256 -0.226 -0.225 -0.219 -0.198 -0.19 -0.177 -0.173 -0.158 -0.102 -0.081 -0.081 -0.059 -0.049 0.045 -0.042 -0.029 -0.025 -0.025 0.034 0.042 0.112 0.127 0.152 0.165 0.168 0.175 0.183 0.197 0.255 0.267 0.29 0.293 0.295 0.298 0.327 0.344 0.348 0.405 0.409 0.422 0.473 0.486; -0.402 -0.346 -0.322 0.302 -0.294 -0.283 -0.238 -0.179 -0.175 -0.172 -0.171 -0.161 -0.154 -0.136 -0.131 -0.126 -0.113 -0.112 -0.111 0.066 -0.066 -0.038 -0.029 -0.022 -0.019 -0.018 -0.017 -0.016 -0.015 -0.014 -0.002 0.001 0.008 0.008 0.01 0.04 0.058 0.071 0.087 0.093 0.102 0.132 0.138 0.142 0.16 0.167 0.17 0.18 0.182 0.215 0.217 0.228 0.239 0.255 0.26 0.288 0.322 0.39 0.427 0.451; -0.287 -0.286 -0.28 -0.263 -0.231 -0.205 -0.19 -0.177 0.176 -0.167 -0.152 -0.131 -0.107 -0.103 -0.091 -0.076 -0.065 -0.064 -0.046 -0.041 -0.031 -0.029 -0.027 -0.024 0.021 -0.02 -0.017 0.002 0.004 0.005 0.014 0.031 0.031 0.035 0.038 0.047 0.067 0.073 0.077 0.081 0.091 0.092 0.092 0.097 0.104 0.105 0.107 0.123 0.133 0.137 0.151 0.162 0.163 0.208 0.208 0.237 0.262 0.264 0.297 0.308; -0.253 -0.173 -0.17 -0.167 -0.151 -0.145 -0.145 -0.124 -0.123 -0.121 -0.106 -0.102 0.099 -0.091 -0.091 -0.081 -0.059 -0.05 -0.048 -0.042 -0.037 -0.034 -0.033 -0.031 -0.02 -0.019 -0.016 -0.006 0.004 0.003 0.008 0.019 0.022 0.025 0.036 0.04 0.049 0.064 0.072 0.078 0.085 0.094 0.1 0.114 0.115 0.118 0.132 0.134 0.141 0.146 0.149 0.152 0.157 0.172 0.175 0.21 0.216 0.248 0.268 0.33; 0.272 -0.224 -0.202 -0.185 -0.183 -0.168 -0.155 -0.138 -0.135 -0.133 -0.12 -0.114 -0.092 -0.09 -0.077 -0.076 0.065 -0.064 -0.059 -0.055 -0.053 -0.045 -0.039 -0.035 -0.032 -0.027 -0.024 -0.019 -0.018 -0.013 -0.007 -0.004 0.021 0.04 0.052 0.053 0.061 0.067 0.068 0.069 0.077 0.079 0.086 0.09 0.095 0.096 0.103 0.106 0.109 0.109 0.116 0.126 0.151 0.181 0.187 0.191 0.196 0.247 0.262 0.315]; BetaE = BetaE(Bline,:); root1 = ['C:\EarthquakeData\InputData\Beta',num2str(Beta),'\LocalForce\Beta',num2str(Beta),'_B',num2str(B)]; root2 = ['C:\EarthquakeData\Data']; %% Tao ma tran quan he lech tam ~ luc cat tang, gom E hang lech tam, va co 121 %% cot, gom: cot lech tam E; cot BaseShear max va luc cat L2 L3 tuong %% ung * 20 GM * phuong X Y SE_Matrix = zeros(length(BetaE),1+length(GM)*3*2); for i=1:1:length(BetaE) for j=1:1:length(GM) % Load files luc truong hop dan hoi cd (root1); FileMFC11 = ['B',num2str(B),'_',GM{j},'_e',num2str(BetaE(i)),'_Local-MFC11.out']; FileMFC12 = ['B',num2str(B),'_',GM{j},'_e',num2str(BetaE(i)),'_Local-MFC12.out']; FileMFC21 = ['B',num2str(B),'_',GM{j},'_e',num2str(BetaE(i)),'_Local-MFC21.out']; FileMFC22 = ['B',num2str(B),'_',GM{j},'_e',num2str(BetaE(i)),'_Local-MFC22.out']; FileMFC31 = ['B',num2str(B),'_',GM{j},'_e',num2str(BetaE(i)),'_Local-MFC31.out']; FileMFC32 = ['B',num2str(B),'_',GM{j},'_e',num2str(BetaE(i)),'_Local-MFC32.out']; MFC11= load(FileMFC11); MFC12= load(FileMFC12); MFC21= load(FileMFC21); MFC22= load(FileMFC22); MFC31= load(FileMFC31); MFC32= load(FileMFC32); StShear = zeros(length(MFC11(:,1)),7); - XXX - StShear(:,1)= MFC11(:,1); % Phuong X for iSt = 1:1:3 for iCol = 1:1:6 StShear(:,iSt+1) = StShear(:,iSt+1) + MFC11(:,1+24*(iCol-1)+3 + (iSt-1)*6*24); StShear(:,iSt+1) = StShear(:,iSt+1) + MFC12(:,1+24*(iCol-1)+3 + (iSt-1)*6*24); end end for iSt = 1:1:3 for iCol = 1:1:4 StShear(:,iSt+1) = StShear(:,iSt+1) + MFC21(:,1+24*(iCol-1)+2 + (iSt-1)*4*24); StShear(:,iSt+1) = StShear(:,iSt+1) + MFC22(:,1+24*(iCol-1)+2 + (iSt-1)*4*24); end end for iSt = 1:1:3 for iCol = 1:1:3 StShear(:,iSt+1) = StShear(:,iSt+1) + MFC31(:,1+24*(iCol-1)+2 + (iSt-1)*3*24); StShear(:,iSt+1) = StShear(:,iSt+1) + MFC32(:,1+24*(iCol-1)+2 + (iSt-1)*3*24); end end % Phuong Y for iSt = 1:1:3 for iCol = 1:1:6 StShear(:,iSt+4) = StShear(:,iSt+4) - MFC11(:,1+24*(iCol-1)+2 + (iSt-1)*6*24); StShear(:,iSt+4) = StShear(:,iSt+4) - MFC12(:,1+24*(iCol-1)+2 + (iSt-1)*6*24); end end for iSt = 1:1:3 for iCol = 1:1:4 StShear(:,iSt+4) = StShear(:,iSt+4) + MFC21(:,1+24*(iCol-1)+3 + (iSt-1)*4*24); StShear(:,iSt+4) = StShear(:,iSt+4) + MFC22(:,1+24*(iCol-1)+3 + (iSt-1)*4*24); end end for iSt = 1:1:3 for iCol = 1:1:3 StShear(:,iSt+4) = StShear(:,iSt+4) + MFC31(:,1+24*(iCol-1)+3 + (iSt-1)*3*24); StShear(:,iSt+4) = StShear(:,iSt+4) + MFC32(:,1+24*(iCol-1)+3 + (iSt-1)*3*24); end end ShearL1X = StShear(:,2); ShearL2X = StShear(:,3); ShearL3X = StShear(:,4); L1X = max(abs(ShearL1X)); ShearL1Y = StShear(:,5); ShearL2Y = StShear(:,6); ShearL3Y = StShear(:,7); L1Y = max(abs(ShearL1Y)); nStep = length(MFC11); for k = 1:1:nStep if abs(ShearL1X(k)) == L1X StepX = k; SE_Matrix(i,3*(j-1)+2)= L1X; SE_Matrix(i,3*(j-1)+3)= abs(ShearL2X(StepX)); SE_Matrix(i,3*(j-1)+4)= abs(ShearL3X(StepX)); - XXXI - end end for m = 1:1:nStep if abs(ShearL1Y(m)) == L1Y StepY = m; SE_Matrix(i,length(GM)*3 + 3*(j-1)+2)= L1Y; SE_Matrix(i,length(GM)*3 + 3*(j-1)+3)=abs(ShearL2Y(StepY)); SE_Matrix(i,length(GM)*3 + 3*(j-1)+4)=abs(ShearL3Y(StepY)); end end end end cd (root2); SE_Matrix(:,1)= BetaE; PrintSE_Matrix= SE_Matrix'; FileName = ['Beta',num2str(Beta),'_B',num2str(B),'_SE_Matrix.out']; fid=fopen(FileName,'w'); fprintf(fid,'%4.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g\n',PrintSE_Matrix); fclose(fid); SE_Mean = zeros(length(BetaE),1+3*2); SE_Mean(:,1)= BetaE; for iSt=1:1:3 SE_Mean(:,1+iSt) = mean(SE_Matrix(:,1+iSt:3:1+length(GM)*3),2); SE_Mean(:,1+3+iSt) = mean(SE_Matrix(:,(3*length(GM)+1+iSt):3:1+length(GM)*3*2),2); end PrintSE_Mean = SE_Mean'; FileName = ['Beta',num2str(Beta),'_B',num2str(B),'_SE_Mean.out']; fid=fopen(FileName,'w'); fprintf(fid,'%4.4g %8.4g %8.4g %8.4g %8.4g %8.4g %8.4g\n',PrintSE_Mean); fclose(fid); %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - XXXII - PHỤ LỤC MÃ LẬP TRÌNH MATLAB: VẼ BIỂU ĐỒ GIA TỐC, CHUYỂN VỊ, LỰC CẮT PL3.1 Mã chƣơng trình vẽ biểu đồ gia tốc trung bình độ lệch chuẩn %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% clear all; clc; %% Cac cap dong dat B = ; % Nhap cap dong dat = [1 3] if B == YearNum = 72; elseif B ==2 YearNum = 475; else YearNum = 2475; end %% Nhap thong tin GM = {'NGA1295','NGA1045','NGA1629','NGA0884','NGA1084','NGA1054','NGA1063','NGA0173','NGA1116','NGA1752','NGA0 728','NGA0169','NGA1044','NGA0721','NGA0313','NGA1082','NGA0367','NGA0322','NGA0368','NGA0558'; 'NGA1084','NGA1106','NGA0723','NGA1054','NGA0569','NGA0721','NGA1054','NGA0821','NGA1141','NGA1116','la01','l a02','la03','la04','la05','la06','la07','la08','la09','la10'; 'NGA1084','NGA0527','NGA1106','NGA1054','NGA1044','NGA1120','NGA0821','NGA1605','NGA1141','bo31','se01','se02 ','se03','se04','se05','se06','se07','se08','se09','se10'}; GM = GM(B,:); BetaE = [0.05]; g = 386.22; %Gia toc truong Level = [0 3]; cd C:\BackupThesis\Paper\Paper1_AccDriftResponse; for i=1:1:length(GM) for j=1:1:length(BetaE) eFAFile = ['Output\Beta0.05Ela\B',num2str(B),'_',GM{i},'_e',num2str(BetaE(j)),'_Accl.out']; % Files gia toc truong hop dan hoi iFAFile = ['Output\Beta0.05Ine\B',num2str(B),'_',GM{i},'_e',num2str(BetaE(j)),'_Accl.out']; % Files gia toc truong hop phi tuyen GMFileX = ['ATH\B',num2str(B),'_',GM{i},'_x.ath']; % Load bang gia toc nen GMFileY = ['ATH\B',num2str(B),'_',GM{i},'_y.ath']; aGMX = load(GMFileX); aGMX(1)=[]; aGMX=[aGMX;0] aGMY = load(GMFileY); aGMY(1)=[]; aGMY=[aGMY;0]; eaFL = load(eFAFile); iaFL = load(iFAFile); eAbsAcc = eaFL; eAbsAcc(:,1) = []; iAbsAcc = iaFL; iAbsAcc(:,1) = []; for k=1:1:18 eAbsAcc(:,2*k-1)=aGMX+eaFL(:,2*k-1); eAbsAcc(:,2*k)=aGMY+eaFL(:,2*k); - XXXIII - iAbsAcc(:,2*k-1)=aGMX+iaFL(:,2*k-1); iAbsAcc(:,2*k)=aGMY+iaFL(:,2*k); for nStep = 1:1:length(aGMX) % Acceleration matrix at level L0 eAccL0(nStep,1)= sqrt(aGMX(nStep,1)^2 + aGMY(nStep,1)^2); iAccL0 = eAccL0; % Acceleration matrix at level L1 L2 L3 eAcc(nStep,k)= sqrt(eAbsAcc(nStep,2*k-1)^2 + eAbsAcc(nStep,2*k)^2)/g; iAcc(nStep,k)= sqrt(iAbsAcc(nStep,2*k-1)^2 + iAbsAcc(nStep,2*k)^2)/g; end end ePeakAccL0(i,j)= max(eAccL0); ePeakAccL1(i,j)= max(max(eAcc(:,1:1:6))); ePeakAccL2(i,j)= max(max(eAcc(:,7:1:12))); ePeakAccL3(i,j)= max(max(eAcc(:,13:1:18))); ePeakAcc = [ePeakAccL0, ePeakAccL1, ePeakAccL2, ePeakAccL3]; iPeakAccL0(i,j)= max(iAccL0); iPeakAccL1(i,j)= max(max(iAcc(:,1:1:6))); iPeakAccL2(i,j)= max(max(iAcc(:,7:1:12))); iPeakAccL3(i,j)= max(max(iAcc(:,13:1:18))); iPeakAcc = [iPeakAccL0, iPeakAccL1, iPeakAccL2, iPeakAccL3]; %% Statictics analysis eMeanAccL0 = mean(ePeakAccL0); eMeanAccL1 = mean(ePeakAccL1); eMeanAccL2 = mean(ePeakAccL2); eMeanAccL3 = mean(ePeakAccL3); eMeanAcc = [eMeanAccL0, eMeanAccL1, eMeanAccL2, eMeanAccL3]; eStdAccL0 = std(ePeakAccL0); eStdAccL1 = std(ePeakAccL1); eStdAccL2 = std(ePeakAccL2); eStdAccL3 = std(ePeakAccL3); eStdAcc = [eStdAccL0, eStdAccL1, eStdAccL2, eStdAccL3]; eSigMeanAcc = eStdAcc + eMeanAcc; iMeanAccL0 = mean(iPeakAccL0); iMeanAccL1 = mean(iPeakAccL1); iMeanAccL2 = mean(iPeakAccL2); iMeanAccL3 = mean(iPeakAccL3); iMeanAcc = [iMeanAccL0, iMeanAccL1, iMeanAccL2, iMeanAccL3]; iStdAccL0 = std(iPeakAccL0); iStdAccL1 = std(iPeakAccL1); iStdAccL2 = std(iPeakAccL2); iStdAccL3 = std(iPeakAccL3); iStdAcc = [iStdAccL0, iStdAccL1, iStdAccL2, iStdAccL3]; iSigMeanAcc = iStdAcc + iMeanAcc; end end %% Plot LineColorDash = {'r-','g-','b-','c-','m-','y-','k-','r ','g ','b ','c ','m ','y ','k ','r-o','g-o','b-o','c-o','m-o','y-o','k-o'}; LineWidth = [0.8 1.0 1.2 1.4 1.6 1.8 2.0 0.8 1.0 1.2 1.4 1.6 1.8 2.0 0.8 1.0 1.2 1.4 1.6 1.8 2.0]; %% Plot elastic responses figure hold on for nGM = 1:1:max(length(ePeakAcc)) plot(ePeakAcc(nGM,:),Level,LineColorDash{nGM},'linewidth',LineWidth(nGM)); end - XXXIV - title(sprintf('Elastic acceleration responses corresponding to the set of %d-year-event 20 earthquarke records',YearNum)); xlabel('Acceleration (g)'); ylabel('Story Level'); legend(GM,'Location','SouthEast'); hold off Print_eAccl = ['B',num2str(B),'_eAccl.eps']; print('-depsc',Print_eAccl) %% Plot inelastic responses figure hold on for nGM = 1:1:max(length(iPeakAcc)) plot(iPeakAcc(nGM,:),Level,LineColorDash{nGM},'linewidth',LineWidth(nGM)); end title(sprintf('Inelastic acceleration responses corresponding to the set of %d-year-event earthquarke records',YearNum)); xlabel('Acceleration (g)'); ylabel('Story Level'); legend(GM,'Location','SouthEast'); hold off Print_iAccl = ['B',num2str(B),'_iAccl.eps']; print('-depsc',Print_iAccl) %% Plot the average value of acceleration figure hold on plot(eMeanAcc,Level,'r-','linewidth',1.6), grid, ; plot(eSigMeanAcc,Level,'r ','linewidth',1.6); plot(iMeanAcc,Level,'g-o','linewidth',1.3); plot(iSigMeanAcc,Level,'g o','linewidth',1.3); xlabel('Acceleration (g)'); ylabel('Story Level'); title(sprintf('Elastic mean acceleration responses to the set of %d-year-event earthquarke records ',YearNum)); legend('Elastic mean value','Elastic mean value, including standard deviation','Inelastic mean value','Inelastic mean value, including standard deviation','Location','SouthEast'); hold off Print_MeanAccl = ['B',num2str(B),'_MeanAccl.eps']; print('-depsc',Print_MeanAccl) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% PL3.2 Mã chƣơng trình vẽ biểu đồ chuyển vị trung bình độ lệch chuẩn clear all; clc; %% Cac cap dong dat B = ; % Nhap cap dong dat = [1 3] if B == YearNum = 72; elseif B ==2 YearNum = 475; else YearNum = 2475; end %% Nhap thong tin GM = {'NGA1295','NGA1045','NGA1629','NGA0884','NGA1084','NGA1054','NGA1063','NGA0173','NGA1116','NGA1752','NGA0 728','NGA0169','NGA1044','NGA0721','NGA0313','NGA1082','NGA0367','NGA0322','NGA0368','NGA0558'; 'NGA1084','NGA1106','NGA0723','NGA1054','NGA0569','NGA0721','NGA1054','NGA0821','NGA1141','NGA1116','la01','l a02','la03','la04','la05','la06','la07','la08','la09','la10'; 'NGA1084','NGA0527','NGA1106','NGA1054','NGA1044','NGA1120','NGA0821','NGA1605','NGA1141','bo31','se01','se02 ','se03','se04','se05','se06','se07','se08','se09','se10'}; GM = GM(B,:); - XXXV - BetaE = [0.05]; percent = 100; Level = [0 3]; cd C:\BackupThesis\Paper\Paper1_AccDriftResponse; for i=1:1:length(GM) for j=1:1:length(BetaE) eFDFile = ['Output\Beta0.05Ela\B',num2str(B),'_',GM{i},'_e',num2str(BetaE(j)),'_Disp.out']; % Files chuyen vi tang truong hop dan hoi iFDFile = ['Output\Beta0.05Ine\B',num2str(B),'_',GM{i},'_e',num2str(BetaE(j)),'_Disp.out']; % Files chuyen vi tang truong hop phi tuyen edFL = load(eFDFile); idFL = load(iFDFile); eRelDisp = edFL; iRelDisp = idFL; eRelDisp(:,1)=[]; iRelDisp(:,1)=[]; %% Create matrix of drift along x global axis at every story ePeakDriftL1_x(i,j)= max(max(abs(eRelDisp(:,1:3:18)))); ePeakDriftL2_x(i,j)= max(max(abs(eRelDisp(:,19:3:36)- eRelDisp(:,1:3:18)))); ePeakDriftL3_x(i,j)= max(max(abs(eRelDisp(:,37:3:54)- eRelDisp(:,19:3:36)))); iPeakDriftL1_x(i,j)= max(max(abs(iRelDisp(:,1:3:18)))); iPeakDriftL2_x(i,j)= max(max(abs(iRelDisp(:,19:3:36)- iRelDisp(:,1:3:18)))); iPeakDriftL3_x(i,j)= max(max(abs(iRelDisp(:,37:3:54)- iRelDisp(:,19:3:36)))); %% Create matrix of drift along y global axis at every story ePeakDriftL1_y(i,j)= max(max(abs(eRelDisp(:,2:3:18)))); ePeakDriftL2_y(i,j)= max(max(abs(eRelDisp(:,20:3:36)- eRelDisp(:,2:3:18)))); ePeakDriftL3_y(i,j)= max(max(abs(eRelDisp(:,38:3:54)- eRelDisp(:,20:3:36)))); iPeakDriftL1_y(i,j)= max(max(abs(iRelDisp(:,2:3:18)))); iPeakDriftL2_y(i,j)= max(max(abs(iRelDisp(:,20:3:36)- iRelDisp(:,2:3:18)))); iPeakDriftL3_y(i,j)= max(max(abs(iRelDisp(:,38:3:54)- iRelDisp(:,20:3:36)))); %% Create matrix of torque about z global axis at every story ePeakTorL1_z(i,j)= max(max(abs(eRelDisp(:,3:3:18))))*percent; ePeakTorL2_z(i,j)= max(max(abs(eRelDisp(:,21:3:36)- eRelDisp(:,3:3:18))))*percent; ePeakTorL3_z(i,j)= max(max(abs(eRelDisp(:,39:3:54)- eRelDisp(:,21:3:36))))*percent; iPeakTorL1_z(i,j)= max(max(abs(iRelDisp(:,3:3:18))))*percent; iPeakTorL2_z(i,j)= max(max(abs(iRelDisp(:,21:3:36)- iRelDisp(:,3:3:18))))*percent; iPeakTorL3_z(i,j)= max(max(abs(iRelDisp(:,39:3:54)- iRelDisp(:,21:3:36))))*percent; end end %% Creat matrix of displacement ePeakDrift_x = [ePeakDriftL1_x*0, ePeakDriftL1_x, ePeakDriftL2_x, ePeakDriftL3_x]; ePeakDrift_y = [ePeakDriftL1_y*0, ePeakDriftL1_y, ePeakDriftL2_y, ePeakDriftL3_y]; iPeakDrift_x = [iPeakDriftL1_x*0, iPeakDriftL1_x, iPeakDriftL2_x, iPeakDriftL3_x]; iPeakDrift_y = [iPeakDriftL1_y*0, iPeakDriftL1_y, iPeakDriftL2_y, iPeakDriftL3_y]; ePeakTor_z = [ePeakTorL1_z*0, ePeakTorL1_z, ePeakTorL2_z, ePeakTorL3_z]; iPeakTor_z = [iPeakTorL1_z*0, iPeakTorL1_z, iPeakTorL2_z, iPeakTorL3_z]; %% Statictics analysis eMeanDriftL1_x = mean(ePeakDriftL1_x); % Gia tri trung binh eMeanDriftL2_x = mean(ePeakDriftL2_x); eMeanDriftL3_x = mean(ePeakDriftL3_x); eMeanDrift_x = [0, eMeanDriftL1_x, eMeanDriftL2_x, eMeanDriftL3_x]; eStdDriftL1_x = std(ePeakDriftL1_x); % Dolech chuan eStdDriftL2_x = std(ePeakDriftL2_x); eStdDriftL3_x = std(ePeakDriftL3_x); eStdDrift_x = [0, eStdDriftL1_x, eStdDriftL2_x, eStdDriftL3_x]; eSigMeanDrift_x = eStdDrift_x + eMeanDrift_x; %Gia tri trung binh + lech chuan iMeanDriftL1_x = mean(iPeakDriftL1_x); % Gia tri trung binh - XXXVI - iMeanDriftL2_x = mean(iPeakDriftL2_x); iMeanDriftL3_x = mean(iPeakDriftL3_x); iMeanDrift_x = [0, iMeanDriftL1_x, iMeanDriftL2_x, iMeanDriftL3_x]; iStdDriftL1_x = std(iPeakDriftL1_x); % Do lech chuan iStdDriftL2_x = std(iPeakDriftL2_x); iStdDriftL3_x = std(iPeakDriftL3_x); iStdDrift_x = [0, iStdDriftL1_x, iStdDriftL2_x, iStdDriftL3_x]; iSigMeanDrift_x = iStdDrift_x + iMeanDrift_x; %Gia tri trung binh + lech chuan eMeanDriftL1_y = mean(ePeakDriftL1_y); % Gia tri trung binh eMeanDriftL2_y = mean(ePeakDriftL2_y); eMeanDriftL3_y = mean(ePeakDriftL3_y); eMeanDrift_y = [0, eMeanDriftL1_y, eMeanDriftL2_y, eMeanDriftL3_y]; eStdDriftL1_y = std(ePeakDriftL1_y); % Dolech chuan eStdDriftL2_y = std(ePeakDriftL2_y); eStdDriftL3_y = std(ePeakDriftL3_y); eStdDrift_y = [0, eStdDriftL1_y, eStdDriftL2_y, eStdDriftL3_y]; eSigMeanDrift_y = eStdDrift_y + eMeanDrift_y; %Gia tri trung binh + lech chuan iMeanDriftL1_y = mean(iPeakDriftL1_y); % Gia tri trung binh iMeanDriftL2_y = mean(iPeakDriftL2_y); iMeanDriftL3_y = mean(iPeakDriftL3_y); iMeanDrift_y = [0, iMeanDriftL1_y, iMeanDriftL2_y, iMeanDriftL3_y]; iStdDriftL1_y = std(iPeakDriftL1_y); % Do lech chuan iStdDriftL2_y = std(iPeakDriftL2_y); iStdDriftL3_y = std(iPeakDriftL3_y); iStdDrift_y = [0, iStdDriftL1_y, iStdDriftL2_y, iStdDriftL3_y]; iSigMeanDrift_y = iStdDrift_y + iMeanDrift_y; %Gia tri trung binh + lech chuan eMeanTorL1_z = mean(ePeakTorL1_z); % Gia tri trung binh eMeanTorL2_z = mean(ePeakTorL2_z); eMeanTorL3_z = mean(ePeakTorL3_z); eMeanTor_z = [0, eMeanTorL1_z, eMeanTorL2_z, eMeanTorL3_z]; eStdTorL1_z = std(ePeakTorL1_z); % Dolech chuan eStdTorL2_z = std(ePeakTorL2_z); eStdTorL3_z = std(ePeakTorL3_z); eStdTor_z = [0, eStdTorL1_z, eStdTorL2_z, eStdTorL3_z]; eSigMeanTor_z = eStdTor_z + eMeanTor_z; %Gia tri trung binh + lech chuan iMeanTorL1_z = mean(iPeakTorL1_z); % Gia tri trung binh iMeanTorL2_z = mean(iPeakTorL2_z); iMeanTorL3_z = mean(iPeakTorL3_z); iMeanTor_z = [0, iMeanTorL1_z, iMeanTorL2_z, iMeanTorL3_z]; iStdTorL1_z = std(iPeakTorL1_z); % Do lech chuan iStdTorL2_z = std(iPeakTorL2_z); iStdTorL3_z = std(iPeakTorL3_z); iStdTor_z = [0, iStdTorL1_z, iStdTorL2_z, iStdTorL3_z]; iSigMeanTor_z = iStdTor_z + iMeanTor_z; %Gia tri trung binh + lech chuan %% Plot LineColorDash = {'r-','g-','b-','c-','m-','y-','k-','r ','g ','b ','c ','m ','y ','k ','r-o','g-o','b-o','c-o','m-o','y-o','k-o'}; LineWidth = [0.8 1.0 1.2 1.4 1.6 1.8 2.0 0.8 1.0 1.2 1.4 1.6 1.8 2.0 0.8 1.0 1.2 1.4 1.6 1.8 2.0]; figure hold on for nGM = 1:1:max(length(ePeakDrift_x)) plot(ePeakDrift_x(nGM,:),Level,LineColorDash{nGM},'linewidth',LineWidth(nGM)); end title(sprintf('Elastic drift responses along x global axis corresponding to the set of 20 %d-year-event earthquarke records',YearNum)); xlabel('Story Drift (in)'); ylabel('Story Level'); - XXXVII - legend(GM,'Location','SouthEast'); hold off Print_eDrift_x = ['B',num2str(B),'_eDrift_x.eps']; print('-depsc',Print_eDrift_x) %% Plot inelastic responses along x global axis figure hold on for nGM = 1:1:max(length(iPeakDrift_x)) plot(iPeakDrift_x(nGM,:),Level,LineColorDash{nGM},'linewidth',LineWidth(nGM)); end title(sprintf('Inelastic Drift responses along x global axis corresponding to the set of 20 %d-year-event earthquarke records',YearNum)); xlabel('Story Drift (in)'); ylabel('Story Level'); legend(GM,'Location','SouthEast'); hold off Print_iDrift_x = ['B',num2str(B),'_iDrift_x.eps']; print('-depsc',Print_iDrift_x) %% Plot elastic responses along y global axis figure hold on for nGM = 1:1:max(length(ePeakDrift_y)) plot(ePeakDrift_y(nGM,:),Level,LineColorDash{nGM},'linewidth',LineWidth(nGM)); end title(sprintf('Elastic drift responses along y global axis corresponding to the set of 20 %d-year-event earthquarke records',YearNum)); xlabel('Story Drift (in)'); ylabel('Story Level'); legend(GM,'Location','SouthEast'); hold off Print_eDrift_y = ['B',num2str(B),'_eDrift_y.eps']; print('-depsc',Print_eDrift_y) %% Plot inelastic responses along y global axis figure hold on for nGM = 1:1:max(length(iPeakDrift_y)) plot(iPeakDrift_y(nGM,:),Level,LineColorDash{nGM},'linewidth',LineWidth(nGM)); end title(sprintf('Inelastic Drift responses along y global axis corresponding to the set of 20 %d-year-event earthquarke records',YearNum)); xlabel('Story Drift (in)'); ylabel('Story Level'); legend(GM,'Location','SouthEast'); hold off Print_iDrift_y = ['B',num2str(B),'_iDrift_y.eps']; print('-depsc2', Print_iDrift_y) figure hold on for nGM = 1:1:max(length(ePeakTor_z)) plot(ePeakTor_z(nGM,:),Level,LineColorDash{nGM},'linewidth',LineWidth(nGM)); end title(sprintf('Elastic torque responses about z global axis corresponding to the set of 20 %d-year-event earthquarke records',YearNum)); xlabel('Story Torque (percent)'); ylabel('Story Level'); legend(GM,'Location','SouthEast'); hold off Print_eTor_z = ['B',num2str(B),'_eTor_z.eps']; print('-depsc2',Print_eTor_z) - XXXVIII - %% Plot inelastic responses figure hold on for nGM = 1:1:max(length(iPeakTor_z)) plot(iPeakTor_z(nGM,:),Level,LineColorDash{nGM},'linewidth',LineWidth(nGM)); end title(sprintf('Inelastic torque responses about z global axis corresponding to the set of 20 %d-year-event earthquarke records',YearNum)); xlabel('Story Torque (percent)'); ylabel('Story Level'); legend(GM,'Location','SouthEast'); hold off Print_iTor_z = ['B',num2str(B),'_iTor_z.eps']; print('-depsc2',Print_iTor_z) %% Plot the average value of responses - x global axis figure hold on plot(eMeanDrift_x,Level,'r-','linewidth',1.6), grid, ; plot(eSigMeanDrift_x,Level,'r ','linewidth',1.6); plot(iMeanDrift_x,Level,'g-o','linewidth',1.3); plot(iSigMeanDrift_x,Level,'g o','linewidth',1.3); xlabel('Story Drift (in)'); ylabel('Story Level'); title(sprintf('Average drift responses along x global axis to the set of 20 %d-year-event earthquarke records',YearNum)); legend('Elastic mean value','Elastic mean value, including standard deviation','Inelastic mean value','Inelastic mean value, including standard deviation','Location','SouthEast'); hold off Print_MeanDrift_x = ['B',num2str(B),'_MeanDrift_x.eps']; print('-depsc2',Print_MeanDrift_x) %% Plot the average value of responses - y global axis figure hold on plot(eMeanDrift_y,Level,'r-','linewidth',1.6), grid, ; plot(eSigMeanDrift_y,Level,'r ','linewidth',1.6); plot(iMeanDrift_y,Level,'g-o','linewidth',1.3); plot(iSigMeanDrift_y,Level,'g o','linewidth',1.3); xlabel('Story Drift (in)'); ylabel('Story Level'); title(sprintf('Average drift responses along y global axis to the set of 20 %d-year-event earthquarke records',YearNum)); legend('Elastic mean value','Elastic mean value, including standard deviation','Inelastic mean value','Inelastic mean value, including standard deviation','Location','SouthEast'); hold off Print_MeanDrift_y = ['B',num2str(B),'_MeanDrift_y.eps']; print('-depsc2', Print_MeanDrift_y) %% Plot the average value of responses - x & y global axis figure hold on plot(eMeanDrift_x,Level,'m-','linewidth',1.0), grid, ; plot(eSigMeanDrift_x,Level,'m ','linewidth',1.0); plot(iMeanDrift_x,Level,'c-o','linewidth',0.8); plot(iSigMeanDrift_x,Level,'c o','linewidth',0.8); plot(eMeanDrift_y,Level,'r-*','linewidth',1.2), grid; plot(eSigMeanDrift_y,Level,'r *','linewidth',1.2); plot(iMeanDrift_y,Level,'g-+','linewidth',1.4); plot(iSigMeanDrift_y,Level,'g +','linewidth',1.4); xlabel('Story Drift (in)'); ylabel('Story Level'); title(sprintf('Average drift responses along x and y global axis to the set of 20 %d-year-event earthquarke records',YearNum)); - XXXIX - legend('Chuyển vị đàn hồi theo phương x','Chuyển vị đàn hồi theo phương x + độ lệch chuẩn','Chuyển vị phi tuyến theo phương x','Chuyển vị phi tuyến theo phương x + độ lệch chuẩn','Chuyển vị đàn hồi theo phương y','Chuyển vị đàn hồi theo phương y + độ lệch chuẩn','Chuyển vị phi tuyến theo phương y','Chuyển vị phi tuyến theo phương y + độ lệch chuẩn','Location','SouthEast'); hold off Print_MeanDrift_xy = ['B',num2str(B),'_MeanDrift_xy.eps']; print('-depsc2',Print_MeanDrift_xy) %% Plot the average value of responses - about z global axis figure figure hold on plot(eMeanTor_z,Level,'r-','linewidth',1.6), grid, ; plot(eSigMeanTor_z,Level,'r ','linewidth',1.6); plot(iMeanTor_z,Level,'g-o','linewidth',1.3); plot(iSigMeanTor_z,Level,'g o','linewidth',1.3); xlabel('Story Torque (percent)'); ylabel('Story Level'); title(sprintf('Average torque response about z global axis to the set of 20 %d-year-event earthquarke records',YearNum)); legend('Elastic mean value','Elastic mean value, including standard deviation','Inelastic mean value','Inelastic mean value, including standard deviation','Location','SouthEast'); hold off Print_MeanTor_z = ['B',num2str(B),'_MeanTor_z.eps']; print('-depsc2', Print_MeanTor_z) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% PL3.3 Mã chƣơng trình vẽ biểu đồ lực cắt lực tĩnh clear all; %format short e; cd 'C:\ZD\Paper\Output\Beta0.05Ine'; Khung1X = load('B1_NGA0169_e0.05_Local-MFC11.out'); Khung5X = load('B1_NGA0169_e0.05_Local-MFC12.out'); Khung1Y = load('B1_NGA0169_e0.05_Local-MFC21.out'); Khung7Y = load('B1_NGA0169_e0.05_Local-MFC22.out'); Khung3Y = load('B1_NGA0169_e0.05_Local-MFC31.out'); Khung5Y = load('B1_NGA0169_e0.05_Local-MFC32.out'); StShear = zeros(length(Khung1X(:,1)),4); StShear(:,1)=Khung1X(:,1); for iSt = 1:1:3 for iCol = 1:1:6 StShear(:,iSt+1) = StShear(:,iSt+1) + Khung1X(:,1+24*(iCol-1)+3 + (iSt-1)*6*24); StShear(:,iSt+1) = StShear(:,iSt+1) + Khung5X(:,1+24*(iCol-1)+3 + (iSt-1)*6*24); end end for iSt = 1:1:3 for iCol = 1:1:4 StShear(:,iSt+1) = StShear(:,iSt+1) + Khung1Y(:,1+24*(iCol-1)+2 + (iSt-1)*4*24); StShear(:,iSt+1) = StShear(:,iSt+1) + Khung7Y(:,1+24*(iCol-1)+2 + (iSt-1)*4*24); end end for iSt = 1:1:3 for iCol = 1:1:3 StShear(:,iSt+1) = StShear(:,iSt+1) + Khung3Y(:,1+24*(iCol-1)+2 + (iSt-1)*3*24); StShear(:,iSt+1) = StShear(:,iSt+1) + Khung5Y(:,1+24*(iCol-1)+2 + (iSt-1)*3*24); end end figure; plot(StShear(:,1),StShear(:,2:4)); legend('Tang 1','Tang 2', 'Tang 3') %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - XL - PL3.4 Mã chƣơng trình vẽ quan hệ gia tốc độ lệch tâm khối lƣợng % Plot Acceleration clear all Beta = [5]; Event= 1:1:3; Floor = [0 3]; CurrentDir = cd; NBar=20; MaxMinRat = zeros(length(Event),length(Floor)); %The maximum to minimum ratio for iBeta = 1:1:length(Beta) DatDir = ['Beta',num2str(Beta(iBeta))]; cd(DatDir) for iEvent = Event DatFile = ['Beta',num2str(Beta(iBeta)),'_B',num2str(iEvent),'_AE_Matrix.out']; Dat = load(DatFile); sort_Dat = abs(Dat); sort_Dat = sortrows(sort_Dat,1); MeanFile = ['Beta',num2str(Beta(iBeta)),'_B',num2str(iEvent),'_AE_Mean.out']; Mean = load(MeanFile); sort_Mean = abs(Mean); sort_Mean = sortrows(sort_Mean,1); %% Create The maximum to minimum ratio for iFloor = Floor MaxMinRat(iEvent,iFloor+1) = max(Mean(:,iFloor+2))/min(Mean(:,iFloor+2)); end %% Plot ABS Mean Acceleration figure color = {'b-+' 'r-+' 'm-+' 'g-+' 'b-' 'r-' 'm-' 'g-' }; hold on plot(sort_Mean(:,1)',sort_Mean(:,5)','m-+','linewidth',1.8) plot(sort_Mean(:,1)',sort_Mean(:,4)','b-x','linewidth',1.8) plot(sort_Mean(:,1)',sort_Mean(:,3)','r-o','linewidth',1.8) plot(sort_Mean(:,1)',sort_Mean(:,2)','k-*','linewidth',1.8) title(sprintf('ABS-Gia tốc trung bình tương ứng 20 chuyển động nền, cấp độ động đất = %d, beta = %d',iEvent,Beta(iBeta))); xlabel('Độ lệch tâm khối lượng'); ylabel('Gia tốc, (g)'); legend('Tầng 3','Tầng 2','Tầng 1','Gia tốc nền','Location','SouthEast'); hold off end cd(CurrentDir) end %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% PL3.5 Mã chƣơng trình vẽ quan hệ chuyển vị độ lệch tâm khối lƣợng % Plot Acceleration clear all Beta = [1]; Event= 1:1:3; Floor = [1 3]; CurrentDir = cd; NBar=20; Direct = [1 3]; MaxMinRat = zeros(length(Event),length(Floor)*length(Direct)); %The maximum to minimum ratio for iBeta = 1:1:length(Beta) DatDir = ['Beta',num2str(Beta(iBeta))]; cd(DatDir) for iEvent = Event - XLI - DatFile = ['Beta',num2str(Beta(iBeta)),'_B',num2str(iEvent),'_DE_Matrix.out']; Dat = load(DatFile); sort_Dat = abs(Dat); sort_Dat = sortrows(sort_Dat,1); MeanFile = ['Beta',num2str(Beta(iBeta)),'_B',num2str(iEvent),'_DE_Mean.out']; Mean = load(MeanFile); sort_Mean = abs(Mean); sort_Mean = sortrows(sort_Mean,1); %% Create The maximum to minimum ratio for iDirect = Direct for iFloor = Floor MaxMinRat(iEvent,(iDirect-1)*length(Floor)+iFloor) = max(sort_Mean(:,(iDirect1)*length(Floor)+iFloor+1))/min(sort_Mean(:,(iDirect-1)*length(Floor)+iFloor+1)); end end %% Plot ABS Drift Color = {'r-+','b-o','m-*','r +','b o','m *'}; Line = [2.0 2.0 2.0 1.6 1.6 1.6 1.4 1.6 1.8 2.0 1.4 1.6 1.8 2.0]; figure hold on plot(sort_Mean(:,1)',sort_Mean(:,2)',Color{1},'linewidth',Line(1)), grid, ; plot(sort_Mean(:,1)',sort_Mean(:,3)',Color{2},'linewidth',Line(2)); plot(sort_Mean(:,1)',sort_Mean(:,4)',Color{3},'linewidth',Line(3)); plot(sort_Mean(:,1)',sort_Mean(:,5)',Color{4},'linewidth',Line(4)); plot(sort_Mean(:,1)',sort_Mean(:,6)',Color{5},'linewidth',Line(5)); plot(sort_Mean(:,1)',sort_Mean(:,7)',Color{6},'linewidth',Line(6)); title(sprintf('ABS-Chuyen vi tầng theo phương ngang, cấp độ động đất = %d, beta = %d',iEvent,Beta(iBeta))); xlabel('Độ lệch tâm'); ylabel('Chuyển vị tầng (inch)'); legend('Tầng phương X','Tầng phương X','Tầng phương X','Tầng phương Y','Tầng phương Y','Tầng phương Y','Location','SouthEast'); hold off % Plot torque figure hold on plot(sort_Mean(:,1)',sort_Mean(:,8)',Color{1},'linewidth',Line(1)), grid, ; plot(sort_Mean(:,1)',sort_Mean(:,9)',Color{2},'linewidth',Line(2)); plot(sort_Mean(:,1)',sort_Mean(:,10)',Color{3},'linewidth',Line(3)); title(sprintf('ABS-Chuyen vi xoaén phương Z, cấp độ động đất = %d, beta = %d',iEvent,Beta(iBeta))); xlabel('Độ lệch tâm'); ylabel('Chuyển vị xoắn (%)'); legend('Tầng 1','Tầng 2','Taàng 3','Location','SouthEast'); hold off end cd(CurrentDir) end %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% PL3.6 Mã chƣơng trình vẽ quan hệ lực cắt độ lệch tâm khối lƣợng % Plot Acceleration clear all Beta = [5]; Event= 1:1:3; Floor = [1 2]; CurrentDir = cd; NBar=20; Direct = [1 2]; MaxMinRat = zeros(length(Event),length(Floor)*length(Direct)); %The maximum to minimum ratio - XLII - for iBeta = 1:1:length(Beta) DatDir = ['Beta',num2str(Beta(iBeta))]; cd(DatDir) for iEvent = Event DataFile = ['Beta',num2str(Beta(iBeta)),'_B',num2str(iEvent),'_SE_Matrix.out']; Data = load(DataFile); SE_Mean = zeros(length(Data(:,1)),1+3*2); SE_Mean(:,1)= Data(:,1); for iSt=1:1:3 SE_Mean(:,1+iSt) = mean(Data(:,1+iSt:3:(1+20*3)),2); SE_Mean(:,1+3+iSt) = mean(Data(:,(3*20+1+iSt):3:1+20*3*2),2); end Mean = SE_Mean; sort_Mean = abs(Mean); sort_Mean = sortrows(sort_Mean,1); %% Create The maximum to minimum ratio for iDirect = Direct for iFloor = Floor MaxMinRat(iEvent,(iDirect-1)*length(Floor)+iFloor) = max(sort_Mean(:,(iDirect1)*length(Floor)+iFloor+1))/min(sort_Mean(:,(iDirect-1)*length(Floor)+iFloor+1)); end end Color = {'r-+','g-o','b-*','r +','g o','b *','c x'}; Line = [1.8 1.8 1.8 1.4 1.4 1.4]; %% Plot Story Shears figure hold on plot(sort_Mean(:,1)',sort_Mean(:,2)',Color{1},'linewidth',Line(1)), grid, ; plot(sort_Mean(:,1)',sort_Mean(:,3)',Color{2},'linewidth',Line(2)); plot(sort_Mean(:,1)',sort_Mean(:,4)',Color{3},'linewidth',Line(3)); plot(sort_Mean(:,1)',sort_Mean(:,5)',Color{4},'linewidth',Line(4)); plot(sort_Mean(:,1)',sort_Mean(:,6)',Color{5},'linewidth',Line(5)); plot(sort_Mean(:,1)',sort_Mean(:,7)',Color{6},'linewidth',Line(6)); title(sprintf('ABS-Lực cắt tầng theo phương ngang, cấp độ động đất = %d, beta = %d',iEvent,Beta(iBeta))); xlabel('Độ lệch tâm'); ylabel('Lực cắt tầng (kips)'); legend('Tầng phương X','Tầng phương X','Tầng phương X','Tầng phương Y','Tầng phương Y','Tầng phương Y','Location','SouthEast'); hold off %% Plot inertial Forces figure hold on plot(sort_Mean(:,1)',(sort_Mean(:,2)-sort_Mean(:,3))',Color{1},'linewidth',Line(1)), grid, ; plot(sort_Mean(:,1)',(sort_Mean(:,3)-sort_Mean(:,4))',Color{2},'linewidth',Line(2)); plot(sort_Mean(:,1)',sort_Mean(:,4)',Color{3},'linewidth',Line(3)); plot(sort_Mean(:,1)',(sort_Mean(:,5)-sort_Mean(:,6))',Color{4},'linewidth',Line(4)); plot(sort_Mean(:,1)',(sort_Mean(:,6)-sort_Mean(:,7))',Color{5},'linewidth',Line(5)); plot(sort_Mean(:,1)',sort_Mean(:,7)',Color{6},'linewidth',Line(6)); title(sprintf('ABS-Lực quán tính, cấp độ động đất = %d, beta = %d',iEvent,Beta(iBeta))); xlabel('Độ lệch tâm'); ylabel('Lực quán tính tầng (kips)'); legend('Tầng phương X','Tầng phương X','Tầng phương X','Tầng phương Y','Tầng phương Y','Tầng phương Y','Location','SouthEast'); hold off end cd(CurrentDir) end %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ... tài Phân tích độ nhạy phản ứng động đất với độ lệch tâm khối lượng hệ khung thép đặc biệt ba tầng II Nhiệm vụ nội dung Nhiệm vụ Nhiệm vụ đề tài ? ?Phân tích độ nhạy phản ứng động đất với độ lệch tâm. .. Tên đề tài: Phân tích độ nhạy phản ứng động đất với độ lệch tâm khối lượng hệ khung thép đặc biệt ba tầng * Từ khoá: Khung moment đặc biệt, phản ứng động đất, phân tích phi tuyến, phân tích lịch... Thứ hai, phân tích độ nhạy phản ứng động đất với độ lệch tâm khối lượng hệ khung thép đặc biệt ba tầng Phần phân tích 61 mơ hình tương ứng với 60 độ lệch tâm khối lượng giả định tuân theo phân phối