Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 93 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
93
Dung lượng
5,32 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 HVTH: Nguyễn Huỳnh Anh Tuấn GVHD: PGS.TS.Nguyễn Hoài Sơn ii 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 Hồi Sơn v TĨM TẮT Cơ học phá hủy (Fracture Mechanics) môn khoa học chuyên nghiên cứu độ bền tuổi thọ vật liệu, chi tiết máy cấu kiện có vết nứt Cho phép định lƣợng mối quan hệ tính chất vật liệu, ứng suất, diện vết nứt gây phá hủy kết cấu chế lan truyền vết nứt Phƣơng pháp phần tử hữu hạn mở rộng (XFEM) T Belytschko đề xuất vào năm 1999 đƣợc coi cách xử lý đặc biệt cho vấn đề vết nứt Trong nội dung luận văn tác giả trình bày phƣơng pháp xác định vết nứt dựa phân tích dự đốn phát triển vết nứt qua việc tính tham số học nứt nhƣ hệ số cƣờng độ ứng suất, dự dốn đƣờng vết nứt có tƣợng lan truyền ABSTRACT Fracture Mechanics, which is a science subject, is majorly studied about the durable longevity of material, mechanical component or building components when they had a crack Allow to quantify the relation between the material’s nature, tension, the presence of the crack which can destruct the structure and propagation mechanism of the cracks The extended finite element method (XFEM) proposed by T Belytschko in 1999 is regarded as a special cure to crack problems In this thesis presents identify cracks in the plates based on the analysis and prediction of crack growth by calculating the parameters of mechanical cracking as the stress intensity factor, predicted path of the crack when the phenomenon spread appeared HVTH: Nguyễn Huỳnh Anh Tuấn GVHD: PGS.TS.Nguyễn Hoài Sơn vi 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 toà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 DANH SÁCH CÁC HÌNH Hình 2.1 Các mẫu thử có khơng có vết nứt Hình 2.2 Biểu đồ ứng suất – chuyển vị thí nghiệm kéo đứt mẫu thử kim loại Hình 2.3 Quá trình hình thành vết nứt .8 Hình 2.4 Sự nứt chẻ thớ vật liệu .9 Hình 2.5 Sự nứt hạt Hình 2.6 Sự nứt hạt có xuất lỗ trống .10 Hình 2.7 Sự nứt hạt có xuất lỗ trống .10 Hình 2.8 Cơ chế phá hủy 11 Hình 2.9 Tấm phẳng với vết nứt biên chịu ứng suất kéo đơn trục 15 Hình 2.10 Tấm phẳng với vết nứt biên chịu ứng suất kéo đơn trục 15 Hình 2.11 Tấm phẳng với vết nứt bên chịu ứng suất kéo đơn trục 16 Hình 2.12 Tấm phẳng với vết nứt bên chịu ứng suất kéo đơn trục 16 Hình 2.13 Hệ trục tọa độ địa phƣơng vết nứt 17 Hình 2.14 Quan hệ góc xoay mặt phẳng trung hịa đạo hàm độ võng 25 Hình 2.15 Góc xoay pháp tuyến biến dạng trƣợt mặt cắt ngang 26 Hình 3.1 Trạng thái cân vật có vết nứt 30 Hình 3.2 Sự lựa chọn nút làm giàu cho vấn đề vết nứt 2D 32 Hình 3.3 Phần tử tứ giác hệ tọa độ toàn cục hệ tọa độ địa phƣơng .34 Hình 3.4 Phân chia nút phần tử .38 Hình 3.5 Tiêu chuẩn vùng cho lựa chọn nút làm giàu H(x) 39 Hình 3.6 Hệ trục tọa độ toàn cục hệ trục tọa độ địa phƣơng đỉnh vết nứt 40 Hình 3.7 Mơ hình tính tốn 42 Hình 4.1 Miền hình học rời rạc lƣới nút phần tử 12x12 cho kết cấu 46 Hình 4.2 Miền hình học rời rạc .47 Hình 4.3 Mơ hình 2D với vết nứt cạnh 48 Hình 4.4 Đồ thị đánh giá mức độ sai số KI so với lý thuyết theo Lƣới phần tử .49 Hình 4.5 Trƣờng phân bố Ứng Suất theo Y 50 Hình 4.6 Mơ hình 2D với vết nứt 51 Hình 4.7 Đồ thị đánh giá mức độ sai số KI so với lý thuyết theo Lƣới phần tử .52 Hình 4.8 Trƣờng Phân bố Ứng Suất theo y 54 Hình 4.9 So sánh phân tích Paris XFEM tính tốn độ dãn dài vết nứt định luật Paris 55 Hình 4.10 Mơ vết nứt cạnh 56 Hình 4.11 So sánh phát triển vết nứt XFEM Bordas 57 Hình 4.12 So sánh phát triển vết nứt XFEM Bordas…………………….58 DANH SÁCH CÁC BẢNG Bảng 4.1 Hệ số mật độ ứng suất KI 49 Bảng 4.2 Hệ số mật độ ứng suất KI 52 Bảng 4.3 Sự phát triển vết nứt 10 phần tử 57 Bảng 4.4 Sự phát triển vết nứt 10 phần tử 58 HVTH: Nguyễn Huỳnh Anh Tuấn GVHD: PGS.TS.Nguyễn Hoài Sơn ix 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Ự ĐỐ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. .. vấn đề vết nứt Trong nội dung luận văn tác giả trình bày phƣơng pháp xác định vết nứt dựa phân tích dự đoán phát triển vết nứt qua việc tính tham số học nứt nhƣ hệ số cƣờng độ ứng suất, dự doán