Phân tích phi tuyến khung thép phẳng chịu tác dụng động đất

158 16 0
Phân tích phi tuyến khung thép phẳng chịu tác dụng động đất

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

ðẠI HỌC QUỐC GIA TP HỒ CHÍ MINH TRƯỜNG ðẠI HỌC BÁCH KHOA ðỒN NGỌC TỊNH NGHIÊM PHÂN TÍCH PHI TUYẾN KHUNG THÉP PHẲNG CHỊU TÁC DỤNG ðỘNG ðẤT CHUYÊN NGÀNH : XÂY DỰNG CƠNG TRÌNH DÂN DỤNG VÀ CƠNG NGHIỆP Mà SỐ NGÀNH : 605820 LUẬN VĂN THẠC SĨ TP HỒ CHÍ MINH, tháng 07 năm 2010 CƠNG TRÌNH ðƯỢC HOÀN THÀNH TẠI TRƯỜNG ðẠI HỌC BÁCH KHOA ðẠI HỌC QUỐC GIA TP HỒ CHÍ MINH Cán hướng dẫn khoa học: TS Ngô Hữu Cường Cán chấm nhận xét 1: TS ðỗ ðại Thắng Cán chấm nhận xét 2: TS Lê Văn Phước Nhân Luận văn thạc sĩ ñược bảo vệ tại: HỘI ðỒNG CHẤM BẢO VỆ LUẬN VĂN THẠC SĨ TRƯỜNG ðẠI HỌC BÁCH KHOA, ngày 25 tháng 09 năm 2010 TRƯỜNG ðẠI HỌC BÁCH KHOA TP.HCM CỘNG HÒA Xà HỘI CHỦ NGHĨA VIỆT NAM PHÒNG ðÀO TẠO SðH ðỘC LẬP – TỰ DO – HẠNH PHÚC NHIỆM VỤ LUẬN VĂN THẠC SĨ Họ tên học viên: ðOÀN NGỌC TỊNH NGHIÊM Phái: Nam Ngày, tháng, năm sinh: 24.08.1981 Nơi sinh: Thừa Thiên – Huế Chuyên ngành: Xây dựng cơng trình DD & CN MSHV: 02106538 I- TÊN ðỀ TÀI: Phân tích phi tuyến khung thép phẳng chịu tác dụng ñộng ñất II- NHIỆM VỤ VÀ NỘI DUNG: Thiết lập phần tử hữu hạn không đàn hồi có khả mơ phỏng: lan truyền dẻo qua mặt cắt ngang dọc theo chiều dài cấu kiện; ứng suất dư; phi tuyến hình học Sử dụng thuật tốn Newmark – β để giải hệ phương trình động học cho hệ khung thép phẳng chịu tác dụng lực ñộng ñộng ñất Xây dựng chương trình ứng dụng ngơn ngữ lập trình C++ Thẩm ñịnh kết nhận ñược với kết ñã nghiên cứu trước ñể chứng minh khả thi phương pháp tính đắn chương trình III- NGÀY GIAO NHIỆM VỤ: 30/11/2009 IV- NGÀY HOÀN THÀNH NHIỆM VỤ: 02/07/2010 V- CÁN BỘ HƯỚNG DẪN: TS NGÔ HỮU CƯỜNG CÁN BỘ HƯỚNG DẪN CN BỘ MÔN QL CHUN NGÀNH TS Ngơ Hữu Cường Nội dung đề cương luận văn thạc sĩ ñã ñược Hội ñồng chuyên ngành thơng qua Ngày TRƯỞNG PHỊNG ðT – SðH tháng năm 2010 TRƯỞNG KHOA QL NGÀNH LỜI CẢM ƠN Lời ñầu tiên luận văn này, muốn gởi lời cảm ơn biết ơn chân thành ñến tất người hỗ trợ, giúp đỡ tơi chun mơn, vật chất tinh thần suốt q trình thực luận văn Trước hết, xin bày tỏ lịng biết ơn sâu sắc đến TS Ngơ Hữu Cường, Phó Chủ nhiệm Bộ Mơn Cơng trình, Khoa Kỹ thuật Xây dựng, Trường ðH Bách Khoa TP HCM, người ñã trực tiếp hướng dẫn, tận tình bảo giúp đỡ tơi suốt q trình nghiên cứu thực luận văn Tôi xin chân thành cảm ơn Thầy, Cô khoa Kỹ thuật Xây dựng, Trường ðH Bách Khoa, truyền đạt cho tơi kiến thức quý báu trình học tập trường; Thầy, Cô khoa Xây dựng Cơ học Ứng dụng, Trường ðH Sư phạm Kỹ thuật TP HCM, ñã hỗ trợ tạo ñiều kiện thuận lợi để tơi hồn thành luận văn Cuối cùng, xin chân thành cảm ơn gia đình người bạn động viên, khuyến khích giúp đỡ tơi suốt q trình học tập nghiên cứu Tơi xin chân thành cảm ơn! TĨM TẮT LUẬN VĂN Trong phân tích tuyến tính hình học, chuyển vị hình học kết cấu chịu tải giả thuyết có giá trị nhỏ, phương trình cân quan hệ ñộng học ñược viết tương ứng với cấu hình khơng chuyển vị Tuy nhiên, thực tế, chuyển vị lớn xảy ra, kết cấu thể ứng xử phi tuyến rõ rệt, làm cho ñộ cứng kết cấu thay ñổi, ma trận ñộ cứng nhận ñược khác hẳn so với ma trận độ cứng thơng thường có thêm ẩn số chuyển vị Phân tích phi tuyến hình học phân tích có kể đến ảnh hưởng biến đổi hình học ứng suất khởi tạo cấu kiện Do vậy, việc kể đến phi tuyến hình học phân tích kết cấu điều cần thiết Ứng xử khơng đàn hồi kết cấu khung thép ñã ñược nghiên cứu sâu rộng thời gian qua Có hai phương pháp phân tích phương pháp khớp dẻo phương pháp vùng dẻo Phương pháp vùng dẻo mơ tác ñộng phi tuyến hình học lan truyền dẻo gần giống tượng xảy thực kết cấu Việc kết hợp phương pháp vùng dẻo vào phân tích động học hệ khung thép cho phép phân tích chất tốn khơng đàn hồi tác dụng theo thời gian tải ñộng, ñặc biệt ñộng ñất, thực tế gặp phải số khó khăn khối lượng tốc độ tính tốn Với phát triển cơng nghệ máy tính ngày nay, phương pháp tính cần phát huy để khai thác khả phán đốn xác ứng xử phi tuyến hệ kết cấu ðề tài trình bày nội dung sau: Thứ nhất, phát triển phần tử hữu hạn có khả mơ lan truyền dẻo, phi tuyến hình học, ứng suất dư; Thứ hai, xây dựng thuật toán lặp phi tuyến; Thứ ba, xây dựng phương trình ñộng học cho hệ kết cấu, viết dạng tích phân bước, sử dụng phương pháp Newmark – β ñể giải hệ phương trình ñộng học; Thứ tư, thiết lập thuật tốn, xây dựng chương trình ứng dụng ngơn ngữ lập trình C++ để phân tích khung thép phẳng liên kết cứng chịu tải ñộng theo phương pháp trình bày; Cuối cùng, thẩm định tính đắn kết ñạt ñược sở so sánh với kết nghiên cứu trước M ỤC L ỤC MỤC LỤC DANH MỤC CÁC HÌNH DANH MỤC CÁC BẢNG BIỂU DANH MỤC CÁC KÝ HIỆU CHƯƠNG I TỔNG QUAN 10 I.1 GIỚI THIỆU CHUNG 10 I.1.1 Phân tích phi tuyến 10 I.1.2 Tải trọng ñộng 12 I.2 TÌNH HÌNH NGHIÊN CỨU 17 I.2.1 Các nghiên cứu giới 17 I.2.2 Các nghiên cứu nước 20 I.3 MỤC TIÊU CỦA LUẬN VĂN 21 CHƯƠNG II MƠ HÌNH PHẦN TỬ HỮU HẠN 23 II.1 GIỚI THIỆU 23 II.2 MƠ HÌNH PHẦN TỬ HỮU HẠN 23 II.2.1 Các giả thiết 23 II.2.2 Phương pháp Rayleigh – Ritz 24 II.2.3 Ma trận ñộ cứng cát tuyến phần tử 24 II.2.4 Ma trận ñộ cứng tiếp tuyến phần tử 38 II.2.5 Ma trận khối lượng phần tử 39 II.3 KẾT LUẬN 40 CHƯƠNG III THUẬT TOÁN GIẢI PHI TUYẾN 41 III.1 GIỚI THIỆU 41 III.1.1 Các phương pháp giải phi tuyến 41 III.1.2 Thuật toán Euler với kỹ thuật điều chỉnh cơng 42 III.2 KẾT LUẬN 44 CHƯƠNG IV IV.1 PHƯƠNG TRÌNH ðỘNG LỰC HỌC 45 GIỚI THIỆU 45 IV.1.1 Phương trình động học 45 IV.1.2 Ma trận khối lượng tổng thể ma trận cản tổng thể Rayleigh 45 IV.1.3 Phương pháp tích phân bước 46 IV.1.4 Phương pháp gia tốc khơng đổi 46 IV.1.5 Phương pháp gia tốc tuyến tính 47 IV.2 PHƯƠNG PHÁP NEWMARK - β 47 IV.3 KẾT LUẬN 49 CHƯƠNG V CHƯƠNG TRÌNH ỨNG DỤNG 50 V.1 GIỚI THIỆU 50 V.2 CHI TIẾT QUÁ TRÌNH PHÂN TÍCH 50 V.2.1 Mơ hình phần tử hữu hạn 50 V.2.2 Chuyển từ tọa độ địa phương sang tồn cục 51 V.2.3 Cập nhật trạng thái phần tử thớ 52 V.2.4 Giải phương trình ñộng học 52 V.3 LƯU ðỒ THUẬT TỐN CỦA CHƯƠNG TRÌNH 54 V.4 KẾT LUẬN 56 CHƯƠNG VI CÁC VÍ DỤ MINH HỌA 57 VI.1 GIỚI THIỆU 57 VI.2 CÁC VÍ DỤ 59 VI.2.1 Ví dụ 59 VI.2.2 Ví dụ 63 VI.2.3 Ví dụ 66 VI.2.4 Ví dụ 68 VI.2.5 Ví dụ 72 VI.2.6 Ví dụ 75 VI.2.7 Ví dụ 82 VI.3 KẾT LUẬN 87 CHƯƠNG VII VII.1 TỔNG KẾT 88 TÓM TẮT LUẬN VĂN 88 VII.2 KẾT LUẬN 89 VII.3 HƯỚNG PHÁT TRIỂN CỦA ðỀ TÀI 90 TÀI LIỆU THAM KHẢO 91 PHỤ LỤC – Mà NGUỒN CHƯƠNG TRÌNH 96 DANH MỤC CÁC HÌNH Hình Tên hình Hình 2.1 Phần tử dầm – cột điển hình 23 Hình 2.2 Biểu đồ ứng suất – biến dạng phần tử thép 24 Hình 2.3 Mơ hình vật liệu đàn – dẻo tái bền tuyến tính 25 Hình 2.4 Phần tử hữu hạn dầm – cột điển hình dùng để phân tích khung 28 Hình 3.1 Sơ đồ minh họa thuật tốn điều chỉnh cơng khơng đổi 43 Hình 5.1 Mơ hình phần tử hữu hạn 51 Hình 5.2 Giản đồ phân tích 55 Hình 6.1 Sơ đồ khung thép phẳng Ví dụ 59 Hình 6.2 Chuyển vị đỉnh ∆ theo thời gian trường hợp khơng kể đến ảnh hưởng tải trọng ñứng 61 Chuyển vị ñỉnh ∆ theo thời gian trường hợp có xét đến ảnh hưởng tải trọng ñứng 61 Chuyển vị ñỉnh ∆ theo thời gian trường hợp có khơng có xét đến ảnh hưởng tải trọng đứng 62 Hình 6.5 Sơ đồ khung thép phẳng Ví dụ 63 Hình 6.6 Chuyển vị đỉnh ∆ theo thời gian 65 Hình 6.7 Sơ đồ khung thép phẳng Ví dụ 66 Hình 6.8 Chuyển vị ñỉnh ∆ theo thời gian trường hợp có khơng có xét đến ảnh hưởng tải trọng đứng 67 Sơ đồ khung thép phẳng Ví dụ 68 Hình 6.3 Hình 6.4 Hình 6.9 Trang Hình 6.10 Mơ hình ứng suất dư cho tiết diện chữ I (ECCS, 1983) 69 Hình 6.11 Chuyển vị đỉnh ∆ theo thời gian σy = 235 MPa 70 Hình 6.12 Chuyển vị đỉnh ∆ theo thời gian σy = 260 MPa 70 Hình 6.13 Chuyển vị đỉnh ∆ theo số lượng phần tử (σy = 260 MPa) 71 Hình 6.14 Sơ đồ khung thép phẳng Ví dụ 72 Hình 6.15 Chuyển vị đỉnh ∆ theo số lượng phần tử 73 Hình 6.16 Chuyển vị đỉnh ∆ theo thời gian 74 Hình 6.17 Sơ đồ khung thép phẳng Ví dụ 75 Hình 6.18 Sơ đồ nút, phần tử hệ khung Ví dụ 76 Hình 6.19 Chuyển vị đỉnh ∆ theo thời gian, ω = 1.00 rad/s 77 Hình 6.20 Chuyển vị ñỉnh ∆ theo thời gian, ω = 1.66 rad/s 78 Hình 6.21 Chuyển vị đỉnh ∆ theo thời gian, ω = 2.41 rad/s 78 Hình 6.22 Chuyển vị đỉnh ∆ theo thời gian, ω = 3.33 rad/s 79 Hình 6.23 Chuyển vị ñỉnh ∆ với ứng suất chảy dẻo khác 80 Hình 6.24 Sự chảy dẻo khung thời ñiểm phá hoại (t = 9.876 s) 81 Hình 6.25 Sơ đồ khung thép phẳng Ví dụ 82 Hình 6.26 Gia tốc trận động đất El – Centro (1994) 83 Hình 6.27 Sơ đồ nút, phần tử hệ khung Ví dụ 84 Hình 6.28 Chuyển vị đỉnh ∆ theo thời gian 84 Hình 6.29 Chuyển vị ñỉnh ∆ theo số lượng phần tử 85 Hình 6.30 Sự chảy dẻo khung thời ñiểm phá hoại theo số lượng phần tử 86 amu = asin(delta/sel); theta_1 = d3 - amu; theta_2 = d6 - amu; curv_avg = (theta_2 - theta_1)/sel; for (j = 0; j < N_AREA; j++) { str_inc = strain - y_ele[i][j]*curv_avg; sig_inc = E*str_inc; sig[i*N_AREA + j + N_ELE*N_AREA*k] = sig[i*N_AREA + j + N_ELE*N_AREA*k] + sig_inc; str[i*N_AREA + j + N_ELE*N_AREA*k] = str[i*N_AREA + j + N_ELE*N_AREA*k] + str_inc; if (sig[i*N_AREA + j + N_ELE*N_AREA*k] >= sig_y[i]) sig[i*N_AREA + j + N_ELE*N_AREA*k] = sig_y[i]; if (sig[i*N_AREA + j + N_ELE*N_AREA*k] = sig_y[i]) N_p[i*N_SELE + k] = N_p[i*N_SELE + k] + A_ele[i][j]*sig[i*N_AREA + j + N_ELE*N_AREA*k]; } } } /***********************************************************************/ /* CON_STIFF */ /***********************************************************************/ void con_stiff(double del_d[N_DIS]) { int i; double del_thetL, del_thetR, prod_L, prod_R; double theta0, n, theta, Mu, Rki; for (i = 0; i < n_ele; i++) { if (mt_flg[i] == 1) { del_thetL = del_d_be[i][2] - del_d[3*icon[0][i]-1]; del_thetR = del_d_be[i][5] - del_d[3*icon[1][i]-1]; thet_cumL[i] = ctheta_L[i] + del_thetL; thet_cumR[i] = ctheta_R[i] + del_thetR; prod_L = del_thetL*ctheta_L[i]; prod_R = del_thetR*ctheta_R[i]; if (prod_L >= 0) { ctheta_L[i] = ctheta_L[i] + del_thetL; if (con_type[i] == 1) { if (fabs(ctheta_L[i]) theta_L[i][0]) 140 && (fabs(ctheta_L[i]) theta_L[i][1]) && (fabs(ctheta_L[i]) theta_L[i][2]) R_k1[i] = 0.001; } if (con_type[i] == 2) { theta = fabs(ctheta_L[i]); Rki = stif_L[i][0]; Mu = stif_L[i][1]; n = stif_L[i][2]; if ((Mu == 0) || (n == 0)) R_k1[i] = Rki; else { theta0 = Mu/Rki; R_k1[i] = Rki/pow(1 + pow(theta/theta0,n),1+1/n); } } } else { ctheta_L[i] = 0; R_k1[i] = stif_L[i][0]; } if (prod_R >= 0) { ctheta_R[i] = ctheta_R[i] + del_thetR; if (con_type[i] == 1) { if (fabs(ctheta_R[i]) theta_R[i][0]) && (fabs(ctheta_R[i]) theta_R[i][1]) && (fabs(ctheta_R[i]) theta_R[i][2]) R_k2[i] = 0.001; } if (con_type[i] == 2) { theta = fabs(ctheta_R[i]); Rki = stif_R[i][0]; Mu = stif_R[i][1]; 141 n = stif_R[i][2]; if ((Mu == 0) || (n == 0)) R_k2[i] = Rki; else { theta0 = Mu/Rki; R_k2[i] = Rki/pow(1 + pow(theta/theta0,n),1+1/n); } } } else { ctheta_R[i] = 0; R_k2[i] = stif_R[i][0]; } } } } /***********************************************************************/ /* INT_FORCES */ /***********************************************************************/ void int_forces(double del_d[N_DIS], double del_d_be[N_ELE][6], double del_d_al[N_ELE][N_DIM]) { int i, j, k, ik, jk; double dj_e1, dj_e2, dj_e3, dj_e4, dj_e5, dj_e6; double d1, d2, d3, d4, d5, d6; double sel, delta, amu, theta_1, theta_2; double denom1, denom2; double *N_p = new double[N_ELE*N_SELE]; double *N_e = new double[N_ELE*N_SELE]; double *M_1 = new double[N_ELE*N_SELE]; double *M_2 = new double[N_ELE*N_SELE]; double *P_1 = new double[N_ELE*N_SELE]; double *P_2 = new double[N_ELE*N_SELE]; double *V_1 = new double[N_ELE*N_SELE]; double *V_2 = new double[N_ELE*N_SELE]; for (i = 0; i < N_ELE; i++) for (j = 0; j < N_SELE; { M [i*N_SELE + j] M_1[i*N_SELE + j] M_2[i*N_SELE + j] N [i*N_SELE + j] N_e[i*N_SELE + j] N_p[i*N_SELE + j] P_1[i*N_SELE + j] P_2[i*N_SELE + j] V_1[i*N_SELE + j] V_2[i*N_SELE + j] } for (i = 0; i < n_ele; i++) j++) = = = = = = = = = = 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 142 { for (k = 0; k < ni_ele[i]; k++) { for (j = 0; j < N_AREA; j++) { if (fabs(sig[i*N_AREA + j + N_ELE*N_AREA*k]) < sig_y[i]) N_e[i*N_SELE + k] = N_e[i*N_SELE + k] + A_ele[i][j]*sig[i*N_AREA + j + N_ELE*N_AREA*k]; N[i*N_SELE + k] = N[i*N_SELE + k] + A_ele[i][j]*sig[i*N_AREA + j + N_ELE*N_AREA*k]; M[i*N_SELE + k] = M[i*N_SELE + k] + A_ele[i][j]*sig[i*N_AREA + j + N_ELE*N_AREA*k]*y_ele[i][j]; } N_p[i*N_SELE + k] = N[i*N_SELE + k] - N_e[i*N_SELE + k]; } if (mt_flg[i] == 0) { dj_e1 = cx[i]*del_d[3*icon[0][i]-3] + cy[i]*del_d[3*icon[0][i]-2]; dj_e2 = - cy[i]*del_d[3*icon[0][i]-3] + cx[i]*del_d[3*icon[0][i]-2]; dj_e3 = del_d[3*icon[0][i]-1]; dj_e4 = cx[i]*del_d[3*icon[1][i]-3] + cy[i]*del_d[3*icon[1][i]-2]; dj_e5 = - cy[i]*del_d[3*icon[1][i]-3] + cx[i]*del_d[3*icon[1][i]-2]; dj_e6 = del_d[3*icon[1][i]-1]; } else { dj_e1 = del_d_be[i][0]; dj_e2 = del_d_be[i][1]; dj_e3 = del_d_be[i][2]; dj_e4 = del_d_be[i][3]; dj_e5 = del_d_be[i][4]; dj_e6 = del_d_be[i][5]; } for (k = 0; k < ni_ele[i]; k++) { if (k == 0) { ik = 1; jk = 3; d1 = dj_e1; d2 = dj_e2; d3 = dj_e3; d4 = del_d_al[i][0]; d5 = del_d_al[i][1]; d6 = del_d_al[i][2]; 143 } else { if (k >= { ik jk d1 d2 d3 d4 d5 d6 } else { ik jk d1 d2 d3 d4 d5 d6 } && k = && k = 0; l= l - 1) { sum = 0; for (j = l + 1; j < n; j++) sum = sum + aug[l*(N_DIS+1) + j]*X[j]; X[l] = aug[l*(N_DIS+1) + n] - sum; } for (j = 1; j

Ngày đăng: 13/02/2021, 08:45

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan