Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 87 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
87
Dung lượng
4,54 MB
Nội dung
BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINH LUẬN VĂN THẠC SĨ NGUYỄN HUỲNH ANH TUẤN PHÂN TÍCH VÀ DỰ ĐOÁN SỰ PHÁT TRIỂN CỦA VẾT NỨT TRONG TẤM SỬ DỤNG PHƯƠNG PHÁP XFEM NGÀNH: KỸ THUẬT CƠ KHÍ - 1520429 S K C0 Tp Hồ Chí Minh, tháng 04/2017 BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƢỜNG ĐẠI HỌC SƢ PHẠM KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINH LUẬN VĂN THẠC SĨ NGUYỄN HUỲNH ANH TUẤN PHÂN TÍCH VÀ DỰ ĐỐN SỰ PHÁT TRIỂN CỦA VẾT NỨT TRONG TẤM SỬ DỤNG PHƢƠNG PHÁP XFEM NGÀNH: KỸ THUẬT CƠ KHÍ - 1520429 Hƣớng dẫn khoa học: PGS.TS.NGUYỄN HỒI SƠN Tp Hồ Chí Minh, tháng 04/2017 HVTH: Nguyễn Huỳnh Anh Tuấn GVHD: PGS.TS.Nguyễn Hoài Sơn i LÝ LỊCH KHOA HỌC I LÝ LỊCH SƠ LƢỢC: Họ & tên: Nguyễn Huỳnh Anh Tuấn Giới tính: Nam Ngày, tháng, năm sinh: 28/10/1989 Nơi sinh: Tp.Hồ Chí Minh Quê quán: Tp.Hồ Chí Minh Dân tộc: Kinh Chỗ riêng địa liên lạc: 148-Đƣờng số 9-Khu phố 1-Phƣờng Linh Tây- Quận Thủ Đức-Tp.Hồ Chí Minh Điện thoại cá nhân: 093.311.9094 Điện thoại nhà riêng: 083.7200254 Fax: E-mail: tuannguyen0429@gmail.com II QUÁ TRÌNH ĐÀO TẠO: Đại học: Hệ đào tạo: Chính quy Thời gian đào tạo: từ 9/2007 đến 5/2012 Nơi học (trƣờng, thành phố): Trƣờng Đại Học Sƣ Phạm Kỹ Thuật Thành Phố Hồ Chí Minh Ngành học: Thiết Kế Máy Tên đồ án, luận án môn thi tốt nghiệp: Thiết kế Máy Xay Cà Phê Dạng Đĩa Ngày & nơi bảo vệ đồ án, luận án thi tốt nghiệp: Tháng 1/2012 Trƣờng Đại Học Sƣ Phạm Kỹ Thuật Thành Phố Hồ Chí Minh Ngƣời hƣớng dẫn: TS.Văn Hữu Thịnh Thạc sĩ: Hệ đào tạo: Chính quy Thời gian đào tạo: từ 5/2015 đến 5/2017 Nơi học (trƣờng, thành phố): Trƣờng Đại Học Sƣ Phạm Kỹ Thuật Thành Phố Hồ Chí Minh Ngành học: Kỹ thuật Cơ khí Tên đồ án, luận án mơn thi tốt nghiệp: Phân tích dự đốn phát triển vết nứt sử dụng phƣơng pháp XFEM Ngày & nơi bảo vệ đồ án, luận án thi tốt nghiệp: Ngày 22/04/2017 Trƣờng Đại Học Sƣ Phạm Kỹ Thuật Thành Phố Hồ Chí Minh HVTH: Nguyễn Huỳnh Anh Tuấn GVHD: PGS.TS.Nguyễn Hoài Sơn iii Ngƣời hƣớng dẫn: PGS.TS.Nguyễn Hồi Sơn III Q TRÌNH CƠNG TÁC CHUN MƠN KỂ TỪ KHI TỐT NGHIỆP ĐẠI HỌC: Thời gian Nơi công tác Công việc đảm nhiệm 5/2013 đến Công ty Cổ Phần Cơng Nghiệp Kỹ Sƣ Cơ Khí Cao Su Miền Nam - Casumina LỜI CAM ĐOAN Tôi cam đoan cơng trình nghiên cứu tơi Các số liệu, kết nêu luận văn trung thực chƣa đƣợc công bố cơng trình khác Tp Hồ Chí Minh, ngày … tháng … năm 2017 (Ký tên ghi rõ họ tên) HVTH: Nguyễn Huỳnh Anh Tuấn GVHD: PGS.TS.Nguyễn Hoài Sơn iv LỜI CẢM ƠN Trong suốt trình học tập nghiên cứu luận văn Trƣờng Đại Học Sƣ Phạm Kỹ Thuật, em gặp nhiều khó khăn Tuy nhiên đƣợc giúp đỡ nhiệt tình từ q thầy cơ, gia đình bạn bè giúp em hoàn thành luận văn Đặc biệt Em xin gửi lời cảm ơn sâu sắc tới thầy PGS.TS Nguyễn Hồi Sơn tận tình hƣớng dẫn, giúp đỡ theo sát trình làm luận án Đây điều quan trọng giúp em hoàn thành luận án Em xin cảm ơn anh Nghiên cứu sinh Trƣờng nhiệt tình chia sẻ kiến thức giúp đỡ em trình học tập làm luận văn Quý thầy khoa Cơ Khí Chế Tạo Máy tồn thể quý thầy cô Trƣờng Đại Học Sƣ Phạm Kỹ Thuật giảng dạy tận tình để giúp em có đủ kiến thức hồn thành tốt luận văn.Vì em xin gởi lời cảm ơn sâu sắc đến quý thầy cô Rất cám ơn bạn bè chia sẻ kiến thức liên quan đến luận án Cảm ơn động viên nhiệt tình bạn, điều giúp tơi vƣợt qua đƣợc khó khăn q trình hoàn thành luận án Cuối cùng, em xin chân thành cảm ơn gia đình ủng hộ, giúp đỡ em suốt thời gian học tập Em xin đƣợc gởi lời chúc sức khỏe chân thành đến Thầy PGS.TS Nguyễn Hoài Sơn, quý thầy cô, bạn bè học tập công tác Trƣờng Đại Học Sƣ Phạm Kỹ Thuật Em xin chân thành cảm ơn ! HVTH: Nguyễn Huỳnh Anh Tuấn GVHD: PGS.TS.Nguyễn Hoài Sơn v MỤC LỤC ii LÝ LỊCH KHOA HỌC iii LỜI CAM ĐOAN iv LỜI CẢM ƠN v TÓM TẮT .vi MỤC LỤC vii CHƢƠNG 1: TỔNG QUAN 1.1 GIỚI THIỆU CHUNG 1.2 TÌNH HÌNH NGHIÊN CỨU ĐỀ TÀI 1.2.1 Quốc Tế [25] 1.2.2 Trong Nƣớc [20] [21] [22] [23] [24] [25] 1.3 ĐẶT VẤN ĐỀ 1.4 TÍNH CẤP THIẾT, Ý NGHĨA KHOA HỌC VÀ THỰC TIỄN CỦA ĐỀ TÀI LUẬN VĂN 1.5 MỤC TIÊU CỦA LUẬN VĂN 1.6 PHƢƠNG PHÁP NGHIÊN CỨU .4 1.7 GIỚI HẠN CỦA LUẬN VĂN CHƢƠNG 2: CƠ SỞ LÝ THUYẾT 2.1 LÝ THUYẾT CƠ HỌC PHÁ HỦY [20][21][22] .6 2.1.1 Giới thiệu học phá hủy (Fracture Mechanics) 2.1.2 Các chế phá hủy (Fracture modes) 11 2.1.3 Hệ số cƣờng độ ứng suất K (Stress intensity factor) [25] 11 2.1.4 Trƣờng ứng suất va chuyển vị gần dỉnh vết nứt 12 2.1.5 Sự phụ thuộc hệ số cƣờng độ ứng suất vào cấu trúc vết nứt phụ tải [1][2] 14 2.1.6 Sự phát triển vết nứt chất rắn đàn hồi tuyến tính 17 2.1.7 Tích phân J (J-Integral) – Tỷ lệ lƣợng giải phóng phi tuyến [6] 19 2.1.8 Luật Gauss tồn phƣơng (Gauss quadrature): [24] 20 2.2 LÝ THUYẾT TẤM [20][21][22] 23 HVTH: Nguyễn Huỳnh Anh Tuấn GVHD: PGS.TS.Nguyễn Hoài Sơn vii 2.2.1 Lý thuyết đàn hồi: 23 2.2.2 Lý thyết Kirchhoff: 24 2.2.3 Lý thuyết Reissner – Mindlin: 28 CHƢƠNG 3: PHƢƠNG PHÁP PHẦN TỬ HỮU HẠN MỞ RỘNG ( XFEM ) 30 3.1 PHƢƠNG PHÁP PHẦN TỬ HỮU HẠN MỞ RỘNG (XFEM ) [5] [6] [7] [8] 30 3.1.1 Phƣơng trình 30 3.1.2 Hàm xấp xỉ phƣơng pháp phần tử hữu hạn mở rộng 31 3.1.3 Rời rạc hóa miền phƣơng pháp phần tử hữu hạn 36 3.2 MỘT SỐ HÀM MỞ RỘNG THƢỜNG DÙNG 39 3.2.1 Hàm Heaviside 39 3.2.2 Hàm dốc 40 3.2.3 Hàm mở rộng gần đỉnh vết nứt 40 3.3 MƠ HÌNH TÍNH TỐN TẤM: 42 CHƢƠNG 4:CÁC KẾT QUẢ SỐ 46 4.1 GIỚI THIỆU: 46 4.2 PHƢƠNG PHÁP XFEM TRONG PHÂN TÍCH NỨT: [16][24] 46 4.2.1 Mơ hình chia lƣới đơn giản: 46 4.2.2 Lựa chọn phần tử, node làm giàu : .46 4.3 BÀÌ TỐN PHÂN TÍCH NỨT: 47 4.3.1 Mơ hình 2D với vết nứt cạnh : 47 4.3.2 Mơ hình 2D với vết nứt : 50 4.4 SỰ PHÁT TRIỂN CỦA VẾT NỨT [2] [6] [7] .53 4.5 MƠ HÌNH SỰ PHÁT TRIỂN CỦA VẾT NỨT : 56 CHƢƠNG 5: KẾT QUẢ VÀ ĐỀ XUẤT HƢỚNG PHÁT TRIỂN 59 5.1 TÓM TẮT CÁC KẾT QUẢ ĐÃ ĐẠT ĐƢỢC : .59 5.2 ĐỀ XUẤT VÀ HƢỚNG PHÁT TRIỂN : 59 PHỤ LỤC 64 HVTH: Nguyễn Huỳnh Anh Tuấn GVHD: PGS.TS.Nguyễn Hoài Sơn viii CHƢƠNG 1: TỔNG QUAN 1.1 GIỚI THIỆU CHUNG Trong hoc phá hủy, việc tìm vết nứt vấn đề quan trọng nhƣng việc tìm vết nứt điều không dễ dàng, ngƣời ta tìm vết nứt máy dị tìm siêu âm, phƣơng pháp đo nhiễu xạ… Khi kết cấu có chứa vết nứt đặc tính nhƣ tần số dao động tự nhiên, hình dạng dao động tự do… bị thay đổi Với phƣơng pháp phần tử hữu hạn, việc tính tốn tốn học nhƣ: phân tích trạng thái ứng suất, biến dạng kết cấu khí, chi tiết ô tô, máy bay, tàu thủy, khung nhà cao tầng, dầm cầu, toán lý thuyết trƣờng nhƣ: lý thuyết truyền nhiệt, học chất lỏng, thủy đàn hồi, khí đàn hồi, điện từ trƣờng Tuy nhiên số trƣờng hợp FEM trở nên phức tạp nhƣ miền tính tốn miền khơng liên tục, bị chia cắt vết nứt dẫn đến việc phải chia lại lƣới phần tử Do Phƣơng pháp phần tử hữu hạn mở rộng (XFEM) đời phƣơng pháp mới, phát triển dựa sở FEM, so với FEM XFEM tạo thuận lợi việc mô lan truyền vết nứt 1.2 TÌNH HÌNH NGHIÊN CỨU ĐỀ TÀI 1.2.1 Quốc Tế [25] - Những khái niệm học rạn nứt đƣợc đƣa vào cuối kỉ mƣời chín năm đầu kỉ hai mƣơi Sự quan sát thực nghiệm cộng với lý thuyế t đàn hồi tạo khía cạnh học rạn nứt - Griffith (1921, 1924) ngƣời nhận hiện diện vết nứt bên hƣ hỏng vật liệu có vai trị quan trọng dẫn đến vết nứt phát triển - Trong năm 1957, 1958 1960 Irwin đồng nghiệp mở rộng lý thuyết Griffith để bao gồm chảy dẻo đỉnh vết nứt giới thiệu khái niệm hệ số mật độ ứng suất (SIF) suất lƣợng giải phóng(G) - Khái niệm chuyển vị vết nứt mở đƣợc sử dụng Wells (1963) nhƣ tham số chiều dài vết nứt phân tích đàn hồi - Sau năm (1968, 1988) Rice cộng Rosengren (1968) Levy (1972) đƣa khái niệm tích phân J , điều mở hƣớng cho cách giải phần tử hữu hạn nói chung vấn đề phức tạp học rạn nứt thập kỉ - Phƣơng pháp XFEM [11] Phƣơng pháp phần tử hữu hạn mở rộng (XFEM) eXtended Finite Element Method đƣợc giới thiệu vào năm 1999 Moes, Dolbow, Belytschko Phƣơng pháp thành công việc giải vấn đề học vật rắn (vết nứt, tiếp xúc, cấu trúc) 1.2.2 Trong Nƣớc [20] [21] [22] [23] [24] [25] Có thể kể đến nhƣ Nguyễn Xuân Hùng, Nguyễn Thời Trung, Trần Vĩnh Lộc phƣơng pháp phần tử hữu hạn mở rộng dựa cạnh trơn nhóm tác giả cơng bố (Analysis of functionally graded plates using an edgebased smoothed finite element method) - Các cơng trình nghiên cứu trƣờng ĐH Sƣ Phạm Kỹ Thuật, bắt đầu với luận văn tác giả Nguyễn Quận nghiên cứu phát triển vết nứt chi tiết khí - PGS.TS Nguyễn Hồi Sơn , Nguyễn Thị Bích Liễu, Đại Học SPKT TP.HCM, “Phân tích động lực học có vết nứt phƣơng pháp FEM – WAVLET - PGS.TS Nguyễn Hoài Sơn , Lâm Phát Thuận , Đại Học SPKT TP.HCM “ Some development of the XFEM for crack 2D solid “, 2011 HVTH: Nguyễn Huỳnh Anh Tuấn GVHD: PGS.TS.Nguyễn Hoài Sơn 1.3 ĐẶT VẤN ĐỀ - Từ khái niện ban đầu lý thuyết học nứt phƣơng pháp phần tử hữu hạn đến giới ngày có nhiều lĩnh vực ứng dụng nghiên cứu cho thấy tính tốn phân tích mơ hình tốn thực tế xác hiệu - Ở Việt Nam lý thuyết học nứt phƣơng pháp phần tử hữu hạn đƣợc nghiên cứu giảng dạy số trƣờng Đại học ngày có nhiều cơng trình nghiên cứu sử dụng phƣơng pháp cho mơ hình tốn thực tế Điều giúp giảm chi phí thiết kế kiểm nghiệm - Đƣợc ứng dụng vào vào cơng cụ hỗ trợ tính tốn mà mơ nhƣ : Matlab, Ansys, Abaqus giúp cho việc sử dụng ngày đơn giản mà hiệu 1.4 TÍNH CẤP THIẾT, Ý NGHĨA KHOA HỌC VÀ THỰC TIỄN CỦA ĐỀ TÀI LUẬN VĂN Trong trình chế tạo sau khoảng thời gian làm việc bên vật liệu xuất sai hỏng nhƣ : lỗ khí, rổ xỉ vết nứt gây ảnh hƣởng tới cấu trúc vật liệu , điều làm giảm khả tính vật liệu gây phá hủy hồn tồn Vì phát sai hỏng vật liệu, từ ta tính tốn sức bền định chi tiết sử dụng đƣợc hay khơng? Hoặc dự đốn trƣớc sai hỏng để phòng ngừa vấn đề quan trọng cần đƣợc nghiên cứu Hiện thực tế để xác định vết nứt vật liệu phức tạp cần phải sử dụng công cụ hỗ trợ nhƣ máy dò siêu âm, máy đo nhiễu xạ X Quang…nhƣng để tiếp cận công cụ hỗ trợ khó khăn tốn nhiều chi phí Vì dựa phân tích dao động tần số riêng chi tiết có vết nứt nhằm nhận biết thay đổi dao động tự tần số riêng ta dị HVTH: Nguyễn Huỳnh Anh Tuấn GVHD: PGS.TS.Nguyễn Hoài Sơn else globalK = updateStiffness(globalK,omega,DOF,updElem,pHDOF); end % Update the global stiffness matrix globalF = forceVector(DOF,i); freeDOF = boundaryCond(DOF); % Construct global force vector % Solve for the degrees of freedom DISP(freeDOF,:) = globalK(freeDOF,freeDOF)\globalF(freeDOF,:); % Find the nodal displacement values %%% Post-Processing %%%%% if i == iter plotMain(omega,DISP); end % Make plots if isempty(CRACK) == pHDOF = 2*max(NODES(:,2)); [KI,KII] = JIntegral(omega,DISP); exit = growCrack(KI,KII,omega); % Maximum constant DOF at current iteration % Calculate the stress intensity factors % Advance crack for quasi-static growth if strcmp(exit,'YES') == disp('WARNING: No crack growth, iterations exited early.') plotMain(omega,DISP); break end end disp(['Iteration ',num2str(i),' completed Elapsed time is ',num2str(toc,'%0.4f'),'.']) end HVTH: Nguyễn Huỳnh Anh Tuấn GVHD: PGS.TS.Nguyễn Hồi Sơn 66 Thơng số chung global BC CRACK DOMAIN FORCE GROW INC MAT PLOT VOID % DOMAIN(1,2) = number of elements in x,y-direction % DOMAIN(3,4) = elemental length in x,y-direction % MAT(1,3) = Young's modulus for domain, inclusion % MAT(2,4) = Poisson's ratio for domain, inclusion % MAT(5) = plane stress (1) or plane strain (2) % MAT(6) = plane stress thickness % MAT(7) = critical stress intensity factor for domain % CRACK(i,1) = x-coordinate of 1st point of ith segment % CRACK(i,2) = y-coordinate of 1st point of ith segment % CRACK(i,3) = x-coordinate of 2nd point of ith segment/1st point (i+1)th segment % CRACK(i,4) = y-coordinate of 2nd point of ith segment/1st point (i+1)th segment % INC(i,:) = x-coordinate of center(1), y-coordinate of center(2), radius(3) % INC(1,:) = [x0 y0 x1 y1] defining linear material interface % VOID(i,:) = x-coordinate of center(1), y-coordinate of center(2), radius(3) % GROW(1,:) = Fixed dNumber of iterations(1), crack growth increment(2) % GROW(1,:) = Paris Law: Number of cycles(1), Cycles per iteration(2), C(3), m(4), % FORCE(i,1) = Edge of ith distribued force: Uniaxial Tension Y(1),Uniaxial Tension X(2) % FORCE(i,2) = Magnitude of ith distributed force in x-direction % FORCE(i,3) = Magnitude of ith distributed force in y-direction % BC(i,1) = Boundary condition: Bottom Rollers(1),Edge Crack(2),Half Center Crack(3),Full Center Crack(4),First Quadrant(5) % PLOT(i,j) = YES = 1, NO = HVTH: Nguyễn Huỳnh Anh Tuấn GVHD: PGS.TS.Nguyễn Hoài Sơn 67 % PLOT(1,j) = Plot Level Set(1), PHI(2), PSI(3), ZETA(4), CHI(5), Discontinuities(6), Narrow Band Radius(7) level set function % PLOT(2,j) = Plot Mesh(1), Node Numbers(2), Element Numbers(3), Enriched % Nodes(4), Discontinuities(5), J-Domain Radius(6) % PLOT(3,j) = Plot Deformation(1), Node Number(2), Element Numbers(3), % Enriched Nodes(4), Deformed Crack (Inner Element Only)(5), Deformation Scaling Factor(6) % PLOT(4,j) = Plot Stress(1), Average Nodal Stress(2) % PLOT(5,j) = Plot Stress Contour(1), Filled Contour(2), Von Mises Only(3) %%%%%%%%%%%%%%%%%%%%%%%%%%% GEOMETRY PARAMETERS %%%%%%%%%%%%%%%%%%%%%%%%%%% Height = 10; Width = 6; LElem = 1/10; % Domain Height % Domain Width % Element Length DOMAIN = [Width/LElem,Height/LElem,LElem,LElem]; MAT = [10E6,0.3,10E6,0.3,2,0,Inf]; CRACK = [2 Height/2;4 Height/2]; INC = []; VOID = []; GROW = [1 0]; FORCE = [1 1]; BC = 4; PLOT = zeros(5,7); %PLOT = ones(5,7); PLOT(2,1) = 1;% plot mesh PLOT(3,1) = 1;% plot deformation HVTH: Nguyễn Huỳnh Anh Tuấn GVHD: PGS.TS.Nguyễn Hoài Sơn 68 PLOT(5,:) = 1;% plot stress contour %PLOT(1,7)=10;% plot Narrow Band Radius Sự phát triển vết nứt function exit = growCrack(KI,KII,omega) % This function will grow the crack in the direction determined by the % maximum circumferential stress criterion by a magnitude determined by % the input file global CRACK MAT GROW Kc = MAT(7); % Critical stress intensity factor exit = 'NO'; nCT = length(omega); % Number of crack tips in domain for iCT = 1:nCT K1 = KI(iCT); % Mode I stress intensity factor for ith tip K2 = KII(iCT); % Mode II stress intensity factor for ith tip thetaC = 2*atan(1/4*((K1/K2-sign(K2)*sqrt((K1/K2)^2+8))))+omega(iCT); % Angle of future crack growth (local coordinates) % dK = sqrt(K1^2+K2^2); dK = (K1^4+8*K2^4)^(1/4); % Effective deltaK by Rhee (1987) % Effective deltaK by Tanaka (1974) % dK = 1/2*cos(thetaC/2)*(K1*(1+cos(thetaC))-3*K2*sin(thetaC)); deltaK by Yan % Effective (1992) if dK < Kc nSeg = size(CRACK,1); if length(GROW) == da = GROW(2); elseif length(GROW) == % Constant deltaA used to grow crack % User-defined crack growth increment % Paris Law used to grow crack dN = GROW(2); % User-defined cycle increment C = GROW(3); % User-defined Paris Law constant m = GROW(4); % User-defined Paris Law exponent HVTH: Nguyễn Huỳnh Anh Tuấn GVHD: PGS.TS.Nguyễn Hoài Sơn 69 da = C*dN*(dK/1E6)^m; % Crack growth increment from Paris Law end dx = da*cos(thetaC); % Increment of growth in the x-direction dy = da*sin(thetaC); % Increment of growth in the y-direction % Add new crack portion to exisiting portion if iCT == CRACK(nSeg+1,:) = [CRACK(nSeg,1)+dx,CRACK(nSeg,2)+dy]; elseif iCT == newCR = zeros(nSeg+1,2); newCR(2:nSeg+1,:) = CRACK; newCR(1,:) = [CRACK(1,1)+dx,CRACK(1,2)+dy]; CRACK = newCR; end else exit = 'YES'; end end Hàm hình vẽ vết nứt phát triển % Crack length predicted by Paris Law aP = (N*C*(1-m/2)*(p*r*sqrt(pi)/t).^m+ai^(1-m/2)).^(1/(1-m/2)); % Crack length predicted using XFEM with Paris Law to determine length of % growth increment and maximum circumferential stress to determine direction aX = [0.0100 0.0102 0.0103 0.0105 0.0107 0.0109 0.0111 0.0113 0.0115 0.0117 0.0119 0.0122 0.0124 0.0127 0.0129 0.0132 0.0135 0.0138 0.0141 0.0144 0.0148 0.0151 0.0155 0.0159 0.0163 0.0167 0.0172 0.0177 0.0182 0.0187 0.0193 0.0199 0.0205 0.0212 0.0219 0.0227 HVTH: Nguyễn Huỳnh Anh Tuấn GVHD: PGS.TS.Nguyễn Hoài Sơn 70 0.0235 0.0244 0.0254 0.0264 0.0275 0.0288 0.0301 0.0316 0.0333 0.0351 0.0371 0.0394 0.0421 0.0451]; figure; hold on; grid on plot(N,aP*1000,'.-k',N,aX*1000,'.-r') xlabel('So vong'); ylabel('Chieu dai nut [mm]') title('So sanh giua dinh luat Paris va XFEM ') legend('Paris Law','XFEM','Location','NorthWest'); HÀM CHIA LƢỚI function [omega] = levelSet(iter) % This function creates the ZETA level set function representing the % materials within the domain This function creates the CHI level set % function representing voids within the domain This function creates the % PHI and PSI level set functions needed to represent the discontinuity % created by the crack The elements with Heaviside and crack tip % enrichments are determined and node numbers are assigned to the nodes % which have enriched degrees of freedom global CHI CONNEC CRACK DOMAIN INC NODES PHI PLOT PSI XYZ VOID ZETA nXElem = DOMAIN(1); nYElem = DOMAIN(2); HVTH: Nguyễn Huỳnh Anh Tuấn GVHD: PGS.TS.Nguyễn Hoài Sơn % Number of elements in the x-direction % Number of elements in the y-direction 71 lXElem = DOMAIN(3); nElem = nXElem*nYElem; % Length of elements in the x-direction % Number of elements in domain nNode = (nXElem+1)*(nYElem+1); nPt = size(CRACK,1); % Number of nodes in domain % Number of data points defining crack if nnz(PLOT(1,7)) == nBand = (sqrt(2)+0.005)*lXElem; % Radius of narrow band about crack else nBand = PLOT(1,7)*lXElem; % User-defined narrow band radius end if iter == 1, incNode = 1; else incNode = 1+max(NODES(:,2))-nNode; end if iter == % Create the material level set function (ZETA) if isempty(INC) == if size(INC,2) == % Circular inclusions nInc = size(INC,1); % Number of inclusions ZETA = zeros(nInc,nNode); for iInc = 1:nInc xc = INC(iInc,1); % x-coordinate of fiber center yc = INC(iInc,2); % y-coordinate of fiber center rc = INC(iInc,3); % radius of fiber % Define the level set for the inclusion HVTH: Nguyễn Huỳnh Anh Tuấn GVHD: PGS.TS.Nguyễn Hoài Sơn 72 for iNode = 1:nNode xi = XYZ(iNode,2); % X-coordinate of current node yi = XYZ(iNode,3); % Y-coordinate of current node Z = sqrt((xi-xc)^2+(yi-yc)^2)-rc; % Level set value corresponding to current inclusion if abs(Z) < 1e-6 ZETA(iInc,iNode) = 0; else ZETA(iInc,iNode) = Z; end end end else % Linear inclusion x0 = INC(1,1); % x-coordinate of first defining point y0 = INC(1,2); % y-coordinate of first defining point x1 = INC(1,3); % x-coordinate of second defining point y1 = INC(1,4); % y-coordinate of second defining point l = sqrt((x1-x0)^2+(y1-y0)^2); for iNode = 1:nNode x = XYZ(iNode,2); y = XYZ(iNode,3); % Length of defining segment % Build zeta level set function at each node % X-coordinate of current node % Y-coordinate of current node c = (y0-y1)*x+(x1-x0)*y+(x0*y1-x1*y0); % Distance from node to zero level set of zeta ZETA(iNode) = c/l; % Zeta level set value end % Combine separate level set functions into a single global function HVTH: Nguyễn Huỳnh Anh Tuấn GVHD: PGS.TS.Nguyễn Hoài Sơn 73 ZETA = min(ZETA,[],1); % Find the elements which need the inclusion enrichment for iElem = 1:nElem Z1 = ZETA(CONNEC(iElem,2)); Z2 = ZETA(CONNEC(iElem,3)); Z3 = ZETA(CONNEC(iElem,4)); Z4 = ZETA(CONNEC(iElem,5)); Z = [Z1 Z2 Z3 Z4]; if max(Z)*min(Z) < for iNode = 2:5 if NODES(CONNEC(iElem,iNode),30) == NODES(CONNEC(iElem,iNode),30) = nNode+incNode; NODES(CONNEC(iElem,iNode),31) = Z(iNode-1); incNode = incNode+1; end end end end else ZETA = ones(1,nNode); end % Create the level set function defining the voids HVTH: Nguyễn Huỳnh Anh Tuấn GVHD: PGS.TS.Nguyễn Hoài Sơn 74 if isempty(VOID) == nVoid = size(VOID,1); CHI = zeros(nVoid,nNode); for iVoid = 1:nVoid xc = VOID(iVoid,1); % x-coordinate of fiber center yc = VOID(iVoid,2); % y-coordinate of fiber center rc = VOID(iVoid,3); % radius of fiber % Define the level set for the inclusion for iNode = 1:nNode xi = XYZ(iNode,2); yi = XYZ(iNode,3); % X-coordinate of current node % Y-coordinate of current node C = sqrt((xi-xc)^2+(yi-yc)^2)-rc % Level set value corresponding to current inclusion if abs(C) < 1e-6 CHI(iVoid,iNode) = 0; else CHI(iVoid,iNode) = C; end end end % Combine separate level set functions into a single global function CHI = min(CHI,[],1); else CHI = zeros(1,nNode); end HVTH: Nguyễn Huỳnh Anh Tuấn GVHD: PGS.TS.Nguyễn Hoài Sơn 75 % Create the level set functions (PHI and PSI) defining the crack if isempty(CRACK) == nCT = 2; if (CRACK(1,1) % Default number of crack tips == 0) || (CRACK(1,1) == nXElem*lXElem) % Check for edge crack nCT = nCT-1; elseif (CRACK(nPt,1) == 0) || (CRACK(nPt,1) == nXElem*lXElem) nCT = nCT-1; elseif (CRACK(1,2) == 0) || (CRACK(1,2) == nYElem*lXElem) nCT = nCT-1; elseif (CRACK(nPt,2) == 0) || (CRACK(nPt,2) == nYElem*lXElem) nCT = nCT-1; end if nCT == disc = CRACK(nPt,:)-CRACK(nPt-1,:); % Horizontal and vertical distances for current crack segment omega = atan2(disc(2),disc(1)); % Crack angle with respect to horizontal disc = CRACK(1,:)-CRACK(2,:); % Horizontal and vertical distances for current crack segment omega(2) = atan2(disc(2),disc(1)% Crack angle with respect to horizontal elseif nCT == disc = CRACK(nPt,:)-CRACK(nPt-1,:); % Horizontal and vertical distances for current crack segment omega = atan2(disc(2),disc(1)); % Crack angle with respect to horizontal end HVTH: Nguyễn Huỳnh Anh Tuấn GVHD: PGS.TS.Nguyễn Hoài Sơn 76 % Find the elements to search for new level set values PHI = sparse(nNode,nCT); % Initialize phi if iter == 1, PSI = sparse(nNode,1); end % Initialize psi for iCT = 1:nCT if iCT == dFSeg = sqrt((CRACK(nPt-1,1)-CRACK(nPt,1))^2+(CRACK(nPt-1,2)- CRACK(nPt,2))^2); radius = dFSeg+nB % Define radius of nodal search for defining level set xCT = CRACK(nPt,1); yCT = CRACK(nPt,2); CCS % X-coordinate of crack tip % Y-coordinate of crack tip = [cos(omega(1)) sin(omega(1));-sin(omega(1)) cos(omega(1))];% Convert from global to crack tip coordinate system elseif iCT == dFSeg = sqrt((CRACK(1,1)-CRACK(2,1))^2+(CRACK(1,2)- CRACK(2,2))^2); radius = dFSeg+nBand; % Define radius of nodal search for defining level set xCT = CRACK(1,1); yCT = CRACK(1,2); CCS % X-coordinate of crack tip % Y-coordinate of crack tip = [cos(omega(2)) sin(omega(2));-sin(omega(2)) cos(omega(2))];% Convert from global to crack tip coordinate system end HVTH: Nguyễn Huỳnh Anh Tuấn GVHD: PGS.TS.Nguyễn Hoài Sơn 77 dist = zeros(1,nNode); % Initialize distance vector for iN = 1:nNode Xn = XYZ(iN,2); % X-coordinate for the current node Yn = XYZ(iN,3); % Y-coordinate for the current node X = Xn-xCT; % Horizontal distance from crack tip to current node Y = Yn-yCT; % Vertical distance from crack tip to current node XYloc r = CCS*[X Y]'; % Change to crack tip coordinates = sqrt(XYloc(1)^2+XYloc(2)^2); % Radius from crack tip to current gauss point dist(iN) = r; % Store radius value end temp = dist-radius; % Determine whether or not the node is outside the search radius domain = find(temp abs(phi(2)) PHI(cNode,1) = phi(2); PSI(cNode,1) = psi; end else PHI(cNode,1) = phi(2); PSI(cNode,1) = psi; end end HVTH: Nguyễn Huỳnh Anh Tuấn GVHD: PGS.TS.Nguyễn Hoài Sơn 79 ... hữu hạn nhƣ: FEM, XFEM … phát triển chƣơng trình số công cụ hỗ trợ đắt lực cho phân tích Luận văn “PHÂN TÍCH VÀ DỰ ĐOÁN SỰ PHÁT TRIỂN CỦA VẾT NỨT TRONG TẤM SỬ DỤNG PHƢƠNG PHÁP XFEM? ?? cung cấp thêm... GIÁO DỤC VÀ ĐÀO TẠO TRƢỜNG ĐẠI HỌC SƢ PHẠM KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINH LUẬN VĂN THẠC SĨ NGUYỄN HUỲNH ANH TUẤN PHÂN TÍCH VÀ DỰ ĐOÁN SỰ PHÁT TRIỂN CỦA VẾT NỨT TRONG TẤM SỬ DỤNG PHƢƠNG PHÁP XFEM. .. PHÂN TÍCH NỨT: 47 4.3.1 Mơ hình 2D với vết nứt cạnh : 47 4.3.2 Mơ hình 2D với vết nứt : 50 4.4 SỰ PHÁT TRIỂN CỦA VẾT NỨT [2] [6] [7] .53 4.5 MƠ HÌNH SỰ PHÁT TRIỂN CỦA