Nghiên cứu áp dụng mô hình funwave tính toán truyền sóng nước cạn

187 16 0
Nghiên cứu áp dụng mô hình funwave tính toán truyền sóng nước cạn

Đ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 o0o - NGUYỄN PHƯƠNG THẢO NGHIÊN CỨU ÁP DỤNG MƠ HÌNH FUNWAVE TÍNH TỐN TRUYỀN SĨNG NƯỚC CẠN Chun ngành: Xây dựng Cơng trình biển LUẬN VĂN THẠC SĨ TP.HỒ CHÍ MINH, tháng 01 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: GVC TS TRẦN THU TÂM Ký tên …………………………………………… Cán chấm nhận xét 1: Ký tên …………………………………………… Cán chấm nhận xét 2: Ký tên …………………………………………… Luận văn thạc sĩ bảo vệ 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………tháng…… năm……… Đại học Quốc Gia Tp Hồ Chí Minh TRƯỜNG ĐẠI HỌC BÁCH KHOA o0o - NGUYỄN PHƯƠNG THẢO PHỤ LỤC TÍNH TỐN NGHIÊN CỨU ÁP DỤNG MƠ HÌNH FUNWAVE TÍNH TỐN TRUYỀN SĨNG NƯỚC CẠN Chun ngành: Xây dựng Cơng trình biển LUẬN VĂN THẠC SĨ TP.HỒ CHÍ MINH, tháng 01 năm 2010 ĐẠI HỌC QUỐC GIA TP HCM TRƯỜNG ĐẠI HỌC BÁCH KHOA CỘNG HOÀ XÃ HỘI CHỦ NGHIÃ VIỆT NAM Độc Lập - Tự Do - Hạnh Phúc -oOo Tp HCM, ngày tháng năm NHIỆM VỤ LUẬN VĂN THẠC SĨ Họ tên học viên: NGUYỄN PHƯƠNG THẢO Gii tớnh: Nam / N ỵ Ngy, thỏng, nm sinh: 12.06.1983 Nơi sinh: Tp Hải Phòng Chuyên ngành: Xây dựng Cơng trình biển Khố (Năm trúng tuyển): 2007 1- TÊN ĐỀ TÀI: NGHIÊN CỨU ÁP DỤNG MƠ HÌNH FUNWAVE TÍNH TỐN TRUYỀN SĨNG NƯỚC CẠN 2- NHIỆM VỤ LUẬN VĂN: - Khảo sát tổng quan mơ hình truyền sóng - Giới thiệu hệ phương trình Boussinesq mơ hình FUNWAVE - Khảo sát, điều chỉnh để đưa mơ hình FUNWAVE vào hoạt động Kiểm tra vận hành mơ hình thơng qua ví dụ áp dụng - Áp dụng tính tốn cho trường hợp thực tế vùng cửa sông Phú Hải- Phan Thiết - Đánh giá, nhận xét kết nghiên cứu, khả triển khai áp dụng thực tế kiến nghị 3- NGÀY GIAO NHIỆM VỤ: 02/02/2009 4- NGÀY HOÀN THÀNH NHIỆM VỤ: 30/11/2009 5- HỌ VÀ TÊN CÁN BỘ HƯỚNG DẪN (Ghi đầy đủ học hàm, học vị ): GVC TS TRẦN THU TÂM Nội dung đề cương Luận văn thạc sĩ Hội Đồng Chuyên Ngành thông qua CÁN BỘ HƯỚNG DẪN CHỦ NHIỆM BỘ MÔN (Họ tên chữ ký) QUẢN LÝ CHUYÊN NGÀNH (Họ tên chữ ký) KHOA QL CHUYÊN NGÀNH (Họ tên chữ ký) L ỜI CÁM ƠN -š › Luận văn hoàn thành dựa kiến thức mà Thầy Cô khoa Xây dựng cung cấp đặc biệt có hướng dẫn tận tình Thầy Trần Thu Tâm GVC.TS Trần Thu Tâm hỗ trợ nhiều tạo tảng cho hướng phát triển luận văn Song hành tơi, cịn có khích lệ cổ vũ từ gia đình Các thành viên gia đình niềm động viên để việc học luận văn hoàn thành tốt Cuối lời cảm ơn đến bạn, đồng nghiệp tạo điều kiện thuận lợi cho thời gian học làm luận văn tốt nghiệp Chân thành cảm ơn giúp đỡ tất người Tp Hồ Chí Minh, tháng 01 / 2010 Học viên thực Nguyễn Phương Thảo TÓM TẮT LUẬN VĂN THẠC SĨ -š › - Khảo sát tổng quan mơ hình truyền sóng Giới thiệu hệ phương trình Boussinesq mơ hình FUNWAVE Khảo sát, điều chỉnh để đưa mơ hình FUNWAVE vào hoạt động Kiểm tra vận hành mơ hình thơng qua ví dụ áp dụng Áp dụng tính tốn cho trường hợp thực tế vùng cửa sông Phú Hải- Phan Thiết Đánh giá, nhận xét kết nghiên cứu, khả triển khai áp dụng thực tế kiến nghị GVHD: TS TRẦN THU TÂM NGHIÊN CỨU ÁP DỤNG MƠ HÌNH FUNWAVE TÍNH TỐN TRUYỀN SĨNG NƯỚC CẠN MỤC LỤC MỞ ĐẦU .9 CHƯƠNG .11 GIỚI THIỆU 11 1.1 MỤC ĐÍCH NGHIÊN CỨU 11 1.2 NỘI DUNG LUẬN VĂN 12 CHƯƠNG .13 TỔNG QUAN CÁC MÔ HÌNH SĨNG 13 2.1 TỒNG QUAN CÁC MƠ HÌNH SĨNG 13 2.1.1 Mơ hình theo nguyên lý khúc xạ 13 2.1.2 Mơ hình truyền sóng kết hợp khúc xạ nhiễu xạ 16 2.1.3 Mơ hình sóng nước cạn 19 2.1.4 Mơ hình tính sóng theo phương pháp phổ 22 2.1.5 So sánh mơ hình sóng 27 2.2 LỰA CHỌN MƠ HÌNH TÍNH SĨNG 40 CHƯƠNG .41 CƠ SỞ LÝ THUYẾT CỦA MƠ HÌNH FUNWAVE .41 3.1 HỆ PHƯƠNG TRÌNH BOUSSINESQ 41 3.2 MƠ HÌNH FUNWAVE 45 3.2.1 Giới thiệu chung 45 3.2.2 Phương trình 47 3.2.3 Mơ hình số 49 3.2.4 Các tượng vật lý 50 3.2.5 Điều kiện biên 54 CHƯƠNG .55 CẤU TẠO VÀ CÁCH VẬN HÀNH 55 MƠ HÌNH FUNWAVE .55 HVTH: NGUYỄN PHƯƠNG THẢO NGHIÊN CỨU ÁP DỤNG MƠ HÌNH FUNWAVE TÍNH TỐN TRUYỀN SĨNG NƯỚC CẠN 4.1 GVHD: TS TRẦN THU TÂM CÁCH VẬN HÀNH MƠ HÌNH FUNWAVE 2D PHIÊN BẢN 2.0 55 4.1.1 Sơ đồ giải thuật lập trình FUNWAVE 2D 55 4.1.2 Các file số liệu đầu vào 57 4.1.3 Các file số liệu xuất 72 4.2 VÍ DỤ TÍNH TỐN ĐỂ KIỂM TRA CHƯƠNG TRÌNH FUNWAVE77 4.2.1 Ví dụ Berkhoff (1982) 77 4.2.2 Thí nghiệm Dalrymple (1982) 82 4.2.2 Thí nghiệm Watanabe (1986) 87 4.3 NHẬN XÉT 93 CHƯƠNG .94 CÁC LƯU Ý ĐỂ TẠO SỐ LIỆU ĐẦU VÀO VÀ 94 SỐ LIỆU XUẤT RA CỦA MƠ HÌNH FUNWAVE 2.0 94 5.1 TẠO LƯỚI TỌA ĐỘ 94 5.2 TẠO ĐỊA HÌNH ĐÁY 96 5.3 TẠO FILE KIỂU NÚT LƯỚI (GRIDTYPE) 96 5.4 TẠO LỚP ĐỆM GIẢM SÓNG (SPONGE LAYER) 97 5.5 TẠO FILE VẬN TỐC VÀ BỀ MẶT NƯỚC BAN ĐẦU UV_0 VÀ ZETA_0 97 5.6 VẼ ĐỒ THỊ CÁC FILE XUẤT KẾT QUẢ 97 CHƯƠNG .99 ÁP DỤNG TÍNH TỐN TRUYỀN SĨNG CHO VÙNG BIỂN PHÚ HẢI_ PHAN THIẾT 99 6.1 ĐIỀU KIỆN TỰ NHIÊN KHU VỰC XÂY DỰNG 99 6.1.1 Đặc điểm vị trí 99 6.1.2 Đặc điểm địa hình 100 6.1.3 Khí tượng thủy văn 100 6.2 SỐ LIỆU DẦU VÀO: 104 6.2.1 Mực nước tính tốn 104 HVTH: NGUYỄN PHƯƠNG THẢO -2- NGHIÊN CỨU ÁP DỤNG MÔ HÌNH FUNWAVE TÍNH TỐN TRUYỀN SĨNG NƯỚC CẠN GVHD: TS TRẦN THU TÂM 6.2.2 Các giá trị tính tốn sóng 104 6.2.3 Lưới tọa độ địa hình đáy khu vực Phú Hải 105 6.2.4 Kiểu nút lưới (Gridtype) 110 6.2.5 Lớp đệm giảm sóng (Sponge) 110 6.2.6 File vận tốc bề mặt bước ban đầu tính tốn uv0 zeta0: 111 6.3 CÁC TRƯỜNG HỢP TÍNH TỐN 111 6.3.1 Trường hợp sóng tới hướng Nam theo trục x 111 6.3.2 Trường hợp khơng tính sóng vỡ 120 6.3.3 Trường hợp sóng tới xiên góc 30 o 121 6.3.4 Trường hợp tính tốn lưới tọa độ cong 127 6.4 NHẬN XÉT KẾT QUẢ 135 CHƯƠNG .136 KẾT LUẬN VÀ KIẾN NGHỊ 136 7.1 NHẬN XÉT CHUNG 136 7.2 ĐÁNH GIÁ KHẢ NĂNG ỨNG DỤNG THỰC TẾ VÀ KIẾN NGHỊ136 TÀI LIỆU THAM KHẢO .138 HVTH: NGUYỄN PHƯƠNG THẢO -3- NGHIÊN CỨU ÁP DỤNG MƠ HÌNH FUNWAVE TÍNH TỐN TRUYỀN SĨNG NƯỚC CẠN GVHD: TS TRẦN THU TÂM MỤC LỤC HÌNH VẼ Hình 3.1- Phạm vi áp dụng loại mơ hình sóng khu vực ven bờ 45 Hình 3.2- Tọa độ vng góc Cartersian (x,y) tọa độ cong (x , x ) 47 Hình 3.3- Lưới so le hệ tọa độ giả định (X điểm η, điểm U, điểm V) .49 Hình 3.4- Định nghĩa hàm nguồn miền tính tốn 53 Hình 4.1- Sơ đồ tính tốn mơ hình FUNWAVE 2.0 56 Hình 4.2- Ví dụ thuộc tính lưới (Physical Grid Type) 65 Hình 3- Ví dụ loại cấu trúc lưới (Structuaral Grid Type) 69 Hình 4- Địa hình đặc trưng đáy thực nghiệm Berkhoff (1982) (đã vẽ lại) 78 Hình 5- Độ sâu theo khơng gian mơ hình Berkhoff (1982) (đã vẽ lại) 78 Hình 4.6- Cao độ mặt thoáng (tác giả đưa ra) 79 Hình 4.7- Cao độ mặt thoáng thời điểm t=57s (đã chạy lại) .80 Hình 4.8- Biên độ sóng j = 10, j= 80 j=100 thời điểm 57s 80 Hình 4.9- So sánh chiều cao sóng mơ hình tác giả đưa ra, chiều cao sóng chạy lại chiều cao sóng thực tế 81 Hình 4.10- Hệ thống lưới tọa độ cong cho thí nghiệm lan truyền sóng bể trịn (tác giả đưa ra) 83 Hình 4.11- Hệ thống lưới tọa độ cong cho thí nghiệm lan truyền sóng bể tròn (đã vẽ lại) 84 Hình 4.12- Bề mặt sóng thời điểm khác (tác giả đưa ra) 84 Hình 4.13- Bề mặt sóng thời điểm khác (được vẽ lại) 86 Hình 4.14- Địa hình đáy khu vực đê chắn sóng thí nghiệm Watanabe (1986) 88 Hình 15- Địa hình đáy vẽ lại Matlab (lấy từ file độ sâu đáy_ depth.dat) 88 HVTH: NGUYỄN PHƯƠNG THẢO -4- NGHIÊN CỨU ÁP DỤNG MƠ HÌNH FUNWAVE TÍNH TỐN TRUYỀN SĨNG NƯỚC CẠN 1000 GVHD: TS TRẦN THU TÂM format(1000(i5)) open(1,file='gridtype.dat') j=1,ny i=1,mx write(1,2000)Nphysical_type(i,j), Nstruct_type(i,j) enddo enddo close(1) 2000 format(2(i5)) c Output Sponge Layer File - 16/9/09 open(1,file='sponge.dat') j=1,ny write(1,3000) (jSponge_xi(j,k), k=1,4) enddo i=1,mx write(1,3000) (iSponge_eta(i,k), k=1,4) enddo close(1) 3000 format(4(i5)) write(*,*)'The gridfile for funwave2D2 is in: gridtype.dat' write(*,*)'The spongÌile for funwave2D2 is in: sponge.dat' write(*,*)'The structure grid type is in:',struct_typefile write(*,*)'The physical grid type is in:',physical_typefile read(*,*) end !end of the program HVTH: NGUYỄN PHƯƠNG THẢO - 27 - NGHIÊN CỨU ÁP DỤNG MƠ HÌNH FUNWAVE TÍNH TỐN TRUYỀN SĨNG NƯỚC CẠN GVHD: TS TRẦN THU TÂM FILE ĐIỀU KHIỂN FUNWAVE2D.DATA 2.1 Trường hợp sóng tới hướng Nam $EquationChoices EquationID = $end $IncidentWave Ts = 10.0 Hs = 4.8 Theta_0 = Depth_at_Incidence = 7.5 $end $GridInfo mx ny it_begin itmax dt typical_grid_size RunID $end = = = = = = = $InputFiles DepthFile CoordinateFile GridTypeFile ZetaInitFile U_InitFile V_InitFile SpongeLayerFile FreqSpectrumFile DirectSpectrumFile $end 201 201 ! Chi so buoc thoi gian ban dau 30001 ! Chi so buoc thoi gian cuoi 0.01 ! buoc thoi gian 5.0 ! buoc luoi trung binh = = = = = = = = = 'depth.dat' 'coord.dat' 'gridtype.dat' 'zeta0.dat' 'uv0.dat' 'uv0.dat' 'sponge.dat' 'freqspect.dat' 'directspect.dat' $Gauges SpatialGaugeNum = TimeGaugeNum = 20 SpatialGauge = 30 70 46 62 65 90 87 112 117 80 150 80 160 80 TimeGauge 18000 20000 = 2000 4000 6000 8000 10000 12000 14000 16000 21000 22000 23000 24000 25000 26000 27000 28000 29000 30000 $end HVTH: NGUYỄN PHƯƠNG THẢO - 28 - GVHD: TS TRẦN THU TÂM NGHIÊN CỨU ÁP DỤNG MÔ HÌNH FUNWAVE TÍNH TỐN TRUYỀN SĨNG NƯỚC CẠN $OutputFiles WaveHeightFile SetupFile SpatialGaugeFile TimeGaugeZetaFile TimeGaugeVelocityFile TimeGaugeVorticityFile AnimationZetaFile AnimationVelocityFile AnimationVorticityFile $end = = = = = = = = = $OutputControl ItSgOutputStart ItSgOutputEnd ItSgOutputDel = 28001 = 30001 = 200 ItAniOutputStart ItAniOutputEnd ItAniOutputDel ItScreenDel 'waveheight.dat' 'setup.dat' 'sg' 'tgzeta' 'tgvelo' 'tgvort' 'anizeta.dat' 'anivelo.dat' 'anivort.dat' = 20001 = 30001 = 50 = TimeGaugeZeta_Xi_Start = TimeGaugeZeta_Xi_End = TimeGaugeZeta_XiDel = TimeGaugeZeta_Eta_Start= TimeGaugeZeta_Eta_End = TimeGaugeZeta_etaDel = 200 1 200 TimeGaugeVelo_xi_start = TimeGaugeVelo_xi_end = TimeGaugeVelo_XiDel = TimeGaugeVelo_eta_start= TimeGaugeVelo_eta_end = TimeGaugeVelo_etaDel = 200 200 TimeGaugeVort_xi_start = TimeGaugeVort_xi_end = TimeGaugeVort_XiDel = TimeGaugeVort_eta_start= TimeGaugeVort_eta_end = TimeGaugeVort_EtaDel = 200 200 Ani_zeta_xi_start Ani_zeta_xi_end Ani_zeta_xi_Del Ani_zeta_eta_start Ani_zeta_eta_end Ani_zeta_eta_Del = = = = = = 200 1 200 Ani_velo_xi_start Ani_velo_xi_end Ani_velo_xi_Del Ani_velo_eta_start Ani_velo_eta_end = = = = = 200 200 HVTH: NGUYỄN PHƯƠNG THẢO - 29 - GVHD: TS TRẦN THU TÂM NGHIÊN CỨU ÁP DỤNG MÔ HÌNH FUNWAVE TÍNH TỐN TRUYỀN SĨNG NƯỚC CẠN Ani_velo_eta_Del = Ani_vort_xi_start Ani_vort_xi_end Ani_vort_xi_Del Ani_vort_eta_start Ani_vort_eta_end Ani_vort_eta_Del = = = = = = Num_Z_Level WaveheightID $end 200 200 = = !chieu cao song lon nhat $WaveMaker WaveTypeID = isource = 20 Gamma_r = 2.0 $end $WaveSpectrum FreqNum = DirectNum = $end $FrictionBreakingMixing FrictCoef = 0.00001 Cbkv = 0.35 Delta_b = 1.0 Cm = 0.2 $end $SlotConstants delta_slot = 0.02 h0_slot = 0.1 lambda_slot = 30.0 $end $SpongeLayer Csponge1 Csponge2 Csponge3 $end = 20.0 = 0.0 = 0.0 $ErrorControl Maxerror $end = 0.00001 $FilterControls ItFilter_Del = 30005 $end $WetDryParam Roughness = 0.001 $end HVTH: NGUYỄN PHƯƠNG THẢO - 30 - NGHIÊN CỨU ÁP DỤNG MƠ HÌNH FUNWAVE TÍNH TỐN TRUYỀN SĨNG NƯỚC CẠN 2.2 GVHD: TS TRẦN THU TÂM Trường hợp hướng sóng xiên góc 30o $EquationChoices EquationID = $end $IncidentWave Ts = 10.0 Hs = 4.8 Theta_0 = 35 Depth_at_Incidence = 7.82 toi $end $GridInfo mx ny it_begin itmax dt RunID $end = = = = = = $InputFiles DepthFile CoordinateFile GridTypeFile ZetaInitFile U_InitFile V_InitFile SpongeLayerFile FreqSpectrumFile DirectSpectrumFile $end 201 201 30001 0.01 = = = = = = = = = 'depth.dat' 'coord.dat' 'gridtype.dat' 'zeta0.dat' 'uv0.dat' 'uv0.dat' 'sponge.dat' 'freqspect.dat' 'directspect.dat' $Gauges SpatialGaugeNum = TimeGaugeNum = 20 SpatialGauge = 30 70 46 62 65 90 87 112 117 80 150 80 160 80 TimeGauge 18000 20000 = 2000 4000 6000 8000 10000 12000 14000 16000 1000 22000 23000 24000 25000 26000 27000 28000 29000 30000 $end $OutputFiles WaveHeightFile SetupFile SpatialGaugeFile HVTH: NGUYỄN PHƯƠNG THẢO = 'waveheight.dat' = 'setup.dat' = 'sg' - 31 - GVHD: TS TRẦN THU TÂM NGHIÊN CỨU ÁP DỤNG MƠ HÌNH FUNWAVE TÍNH TỐN TRUYỀN SĨNG NƯỚC CẠN TimeGaugeZetaFile TimeGaugeVelocityFile TimeGaugeVorticityFile AnimationZetaFile AnimationVelocityFile AnimationVorticityFile $end = = = = = = $OutputControl ItSgOutputStart ItSgOutputEnd ItSgOutputDel = 29001 = 30001 = 200 ItAniOutputStart ItAniOutputEnd ItAniOutputDel ItScreenDel 'tgzeta' 'tgvelo' 'tgvort' 'anizeta.dat' 'anivelo.dat' 'anivort.dat' = 28001 = 30001 = 50 = TimeGaugeZeta_Xi_Start = TimeGaugeZeta_Xi_End = TimeGaugeZeta_XiDel = TimeGaugeZeta_Eta_Start= TimeGaugeZeta_Eta_End = TimeGaugeZeta_etaDel = 200 1 200 TimeGaugeVelo_xi_start = TimeGaugeVelo_xi_end = TimeGaugeVelo_XiDel = TimeGaugeVelo_eta_start= TimeGaugeVelo_eta_end = TimeGaugeVelo_etaDel = 200 200 TimeGaugeVort_xi_start = TimeGaugeVort_xi_end = TimeGaugeVort_XiDel = TimeGaugeVort_eta_start= TimeGaugeVort_eta_end = TimeGaugeVort_EtaDel = 200 200 Ani_zeta_xi_start Ani_zeta_xi_end Ani_zeta_xi_Del Ani_zeta_eta_start Ani_zeta_eta_end Ani_zeta_eta_Del = = = = = = 200 1 200 Ani_velo_xi_start Ani_velo_xi_end Ani_velo_xi_Del Ani_velo_eta_start Ani_velo_eta_end Ani_velo_eta_Del = = = = = = 200 200 Ani_vort_xi_start Ani_vort_xi_end = = 200 HVTH: NGUYỄN PHƯƠNG THẢO - 32 - GVHD: TS TRẦN THU TÂM NGHIÊN CỨU ÁP DỤNG MƠ HÌNH FUNWAVE TÍNH TỐN TRUYỀN SÓNG NƯỚC CẠN Ani_vort_xi_Del Ani_vort_eta_start Ani_vort_eta_end Ani_vort_eta_Del Num_Z_Level WaveheightID $end = = = = 200 = = !chieu cao song lon nhat $WaveMaker WaveTypeID = isource = 20 Gamma_r = 3.0 $end $WaveSpectrum FreqNum = DirectNum = $end $FrictionBreakingMixing FrictCoef = 0.0 Cbkv = 0.35 Delta_b = 1.0 Cm = 0.2 $end $SlotConstants delta_slot = 0.02 h0_slot = 0.1 lambda_slot = 20.0 $end $SpongeLayer Csponge1 Csponge2 Csponge3 $end = 20.0 = 0.0 = 0.0 $ErrorControl Maxerror $end = 0.00001 $FilterControls ItFilter_Del = 30005 $end $WetDryParam Roughness = 0.001 $end HVTH: NGUYỄN PHƯƠNG THẢO - 33 - NGHIÊN CỨU ÁP DỤNG MÔ HÌNH FUNWAVE TÍNH TỐN TRUYỀN SĨNG NƯỚC CẠN 2.3 GVHD: TS TRẦN THU TÂM Trường hợp tính tốn lưới tọa độ cong $EquationChoices EquationID = $end $IncidentWave Ts = 10.0 Hs = 4.8 Theta_0 = Depth_at_Incidence =7.0 $end $GridInfo mx ny it_begin itmax dt typical_grid_size RunID $end = = = = = = = $InputFiles DepthFile CoordinateFile GridTypeFile ZetaInitFile U_InitFile V_InitFile SpongeLayerFile FreqSpectrumFile DirectSpectrumFile $end 129 129 ! Chi so buoc thoi gian ban dau 20001 ! Chi so buoc thoi gian cuoi 0.01 ! buoc thoi gian 7.8! buoc luoi trung binh = = = = = = = = = 'depth.dat' 'coord.dat' 'gridtype.dat' 'zeta0.dat' 'uv0.dat' 'uv0.dat' 'sponge.dat' 'freqspect.dat' ! Not used 'directspect.dat' ! Not used $Gauges SpatialGaugeNum = TimeGaugeNum = 20 SpatialGauge = 20 65 40 65 60 65 80 65 100 65 115 65 120 120 TimeGauge 10000 = 1000 2000 2500 4000 5000 6000 7000 8000 8500 12000 13000 15000 17000 17500 18000 18500 19000 19500 20000 $end $OutputFiles WaveHeightFile SetupFile HVTH: NGUYỄN PHƯƠNG THẢO = 'waveheight.dat' = 'setup.dat' - 34 - GVHD: TS TRẦN THU TÂM NGHIÊN CỨU ÁP DỤNG MƠ HÌNH FUNWAVE TÍNH TỐN TRUYỀN SĨNG NƯỚC CẠN SpatialGaugeFile TimeGaugeZetaFile TimeGaugeVelocityFile TimeGaugeVorticityFile AnimationZetaFile AnimationVelocityFile AnimationVorticityFile $end = = = = = = = $OutputControl ItSgOutputStart ItSgOutputEnd ItSgOutputDel = 19001 = 20001 = 100 ItAniOutputStart ItAniOutputEnd ItAniOutputDel ItScreenDel 'sg' 'tgzeta' 'tgvelo' 'tgvort' 'anizeta.dat' 'anivelo.dat' 'anivort.dat' = 19001 = 20001 = 50 = TimeGaugeZeta_Xi_Start = TimeGaugeZeta_Xi_End = TimeGaugeZeta_XiDel = TimeGaugeZeta_Eta_Start= TimeGaugeZeta_Eta_End = TimeGaugeZeta_etaDel = 128 1 128 TimeGaugeVelo_xi_start = TimeGaugeVelo_xi_end = TimeGaugeVelo_XiDel = TimeGaugeVelo_eta_start= TimeGaugeVelo_eta_end = TimeGaugeVelo_etaDel = 128 128 TimeGaugeVort_xi_start = TimeGaugeVort_xi_end = TimeGaugeVort_XiDel = TimeGaugeVort_eta_start= TimeGaugeVort_eta_end = TimeGaugeVort_EtaDel = 128 128 Ani_zeta_xi_start Ani_zeta_xi_end Ani_zeta_xi_Del Ani_zeta_eta_start Ani_zeta_eta_end Ani_zeta_eta_Del = = = = = = 128 1 128 Ani_velo_xi_start Ani_velo_xi_end Ani_velo_xi_Del Ani_velo_eta_start Ani_velo_eta_end Ani_velo_eta_Del = = = = = = 128 128 Ani_vort_xi_start = HVTH: NGUYỄN PHƯƠNG THẢO - 35 - GVHD: TS TRẦN THU TÂM NGHIÊN CỨU ÁP DỤNG MƠ HÌNH FUNWAVE TÍNH TỐN TRUYỀN SĨNG NƯỚC CẠN Ani_vort_xi_end Ani_vort_xi_Del Ani_vort_eta_start Ani_vort_eta_end Ani_vort_eta_Del = = = = = Num_Z_Level WaveheightID $end 128 128 = = $WaveMaker WaveTypeID = isource = 25 Gamma_r = 1.7 $end !chieu cao song lon nhat ! song hinh sin ! $WaveSpectrum FreqNum = DirectNum = $end $FrictionBreakingMixing FrictCoef = 0.00000 Cbkv = 0.3 Delta_b = 1.2 Cm = 0.1 $end $SlotConstants delta_slot = 0.02 !0.01 h0_slot = 0.1 lambda_slot = 20.0 $end $SpongeLayer Csponge1 Csponge2 Csponge3 $end = 20.0 !5-20 = 0.0 = 0.0 $ErrorControl Maxerror $end = 0.00001 $FilterControls ItFilter_Del=30020 $end $WetDryParam Roughness = 0.001 $end HVTH: NGUYỄN PHƯƠNG THẢO - 36 - NGHIÊN CỨU ÁP DỤNG MƠ HÌNH FUNWAVE TÍNH TỐN TRUYỀN SĨNG NƯỚC CẠN GVHD: TS TRẦN THU TÂM LẬP TRÌNH TẠO HÌNH ẢNH XUẤT RA 3.1 Chương trình Maplap để thể chiều cao sóng load wh.dat; wh=wh'; A = wh(56,1:1:200); % tai Y=280m A=A'; B=wh(80,1:1:200); % tai Y=400m B=B'; C=wh(110,1:1:200);% tai Y=550 C=C'; Q=[A B C]; xlswrite('waveheight.xls',Q); M=xlsread('waveheight.xls'); y(1:1:201)=(0:0.05:10); x(1:1:201)=(0:5.0:1000); subplot(3,1,1); plot(x(1:1:200),M(:,1)); axis([0.0 1000 6]); title('Chieu cao song tai Y=280m'); grid xlabel('x(m)'); ylabel('H(m)'); subplot(3,1,2); plot(x(1:1:200),M(:,2)); axis([0.0 1000 6]); title('Chieu cao song tai Y=400m'); grid xlabel('x(m)'); ylabel('H(m)'); subplot(3,1,3); plot(x(1:1:200),M(:,3)); axis([0.0 1000 6]); title('Chieu cao song tai Y=550m'); grid xlabel('x(m)'); ylabel('H(m)'); HVTH: NGUYỄN PHƯƠNG THẢO - 37 - NGHIÊN CỨU ÁP DỤNG MƠ HÌNH FUNWAVE TÍNH TỐN TRUYỀN SĨNG NƯỚC CẠN 3.2 GVHD: TS TRẦN THU TÂM Chương trình Maplap để đọc thể file anizeta.dat chứa cao độ mặt thoáng thời điểm khác Kết xuất có file chứa liệu hình ảnh động, để kiểm tra kết file hình ảnh động lập trình qua Matlab % Doc file anizeta.dat cua funwave clear all; anizetafile = 'anizeta.dat'; %% ItAniOutputStart = 20001 ; ItAniOutputEnd = 30001 ; ItAniOutputDel = 50 ; %% Ani_zeta_xi_start = ; Ani_zeta_xi_end = 128 ; Ani_zeta_xi_Del = ; %% Ani_zeta_eta_start = ; Ani_zeta_eta_end = 128 ; Ani_zeta_eta_Del = ; %% %mx = floor((Ani_zeta_xi_end Ani_zeta_xi_start)/Ani_zeta_xi_Del); %ny = floor((Ani_zeta_eta_end Ani_zeta_eta_start)/Ani_zeta_eta_Del); %nt = floor((ItAniOutputEnd ItAniOutputStart)/ItAniOutputDel); mxo = 0;nyo=0;nto=0; for i=Ani_zeta_xi_start:Ani_zeta_xi_Del:Ani_zeta_xi_end mxo=mxo+1; end for j=Ani_zeta_eta_start:Ani_zeta_eta_Del:Ani_zeta_eta_end nyo = nyo+1; end for it=ItAniOutputStart:ItAniOutputEnd if mod(it,ItAniOutputDel)==0 nto=nto+1; if nto ==1 ItStart=it; end end end mxnyo=mxo*nyo; zeta=zeros(mxnyo,nto); %% [fid, messag] = fopen(anizetafile,'r'); for it = 1:nto zetamat=cell2mat(ijzeta(1,3)); zeta(:,it)=zetamat; end imat=cell2mat(ijzeta(1,1)); jmat=cell2mat(ijzeta(1,2)); HVTH: NGUYỄN PHƯƠNG THẢO - 38 - NGHIÊN CỨU ÁP DỤNG MƠ HÌNH FUNWAVE TÍNH TỐN TRUYỀN SĨNG NƯỚC CẠN GVHD: TS TRẦN THU TÂM imat=reshape(imat,mxo,nyo); jmat=reshape(jmat,mxo,nyo); iout = zeros(mxo); iout = imat(:,1); jout = zeros(nyo); jout = jmat(1,:); fclose(fid); clear ijzeta; clear zetamat; %% %% Lay toa tu file goc coord.dat mx = 129; %input('So nut luoi theo x, mx=?'); ny = 129; %input('So nut luoi theo y, nx=?'); %% coord = load(['coord.dat']); X3=coord(:,1); Y3=coord(:,2); X3=reshape(X3,mx,ny); Y3=reshape(Y3,mx,ny); xmin = min(min(X3)); xmax = max(max(X3)); ymin = min(min(Y3)); ymax = max(max(Y3)); %% Zd = -load('depth.dat'); Zd = Zd'; zdmin = min(min(Zd)); zdmax = max(max(Zd)); v1= [10:-1:-10]; %% zmin = min(min(zeta)); zmax = max(max(zeta)); %% % Tach toa cac diem co so lieu output for io = 1:mxo i = iout(io); for jo = 1:nyo j = jout(jo); Xo(io,jo)= X3(i,j); Yo(io,jo)= Y3(i,j); Zdo(io,jo)=Zd(i,j); end end %% % Tach cac thoi diem co output figure(1);clf; %hold on; % Ve Zeta axis([xmin xmax ymin ymax]); xtext = xmin + (xmax-xmin)/10; ytext = ymin + (ymax-ymin)/10; % set(gca,'fontname','times','fontsize',[12],'DataAspectRatio',[ 1,1,1]) set(gca,'nextplot','replacechildren'); ifram =0; for it = 1:nto Zo = zeta(:,it); Zo = reshape(Zo,mxo,nyo); h=pcolor(Xo,Yo,Zo); shading interp; HVTH: NGUYỄN PHƯƠNG THẢO - 39 - NGHIÊN CỨU ÁP DỤNG MƠ HÌNH FUNWAVE TÍNH TỐN TRUYỀN SĨNG NƯỚC CẠN GVHD: TS TRẦN THU TÂM caxis([zmin zmax]); colorbar; axis([xmin xmax ymin ymax]); axis equal; hold on % Chong dia hinh len de dinh vi [cs,h]=contour(Xo,Yo,Zdo,v1); ylabel('Y( m )','fontname','times','fontsize',12,'fontweight','bold'); xlabel('X( m )','fontname','times','fontsize',12,'fontweight','bold'); itout = ItStart + ItAniOutputDel*(it-1); title('Zeta ( m )'); text(xtext,ytext, ['Zeta luc it= ' int2str(itout)]); ifram = ifram+1; M(:,ifram) = getframe; hold off; end movie(M); %%%%%%%%%%%%%% Ve mat cat doc figure(2);clf; %hold on; axis([xmin xmax zdmin zmax]); ztext = zdmin + (zmax-zdmin)/10; set(gca,'nextplot','replacechildren'); ifram = 0; j = 51; for it = 1:nto Zo = zeta(:,it); Zo = reshape(Zo,mxo,nyo); plot(Xo(:,j),Zo(:,j),'-b'); hold on; plot(Xo(:,j),Zdo(:,j),'-r'); axis([xmin xmax zdmin zmax]); %toa ylabel('Z( m )','fontname','times','fontsize',12,'fontweight','bold'); xlabel('X( m )','fontname','times','fontsize',12,'fontweight','bold'); itout = ItStart + ItAniOutputDel*(it-1); title('Zeta ( m )'); text(xtext,ztext, ['Zeta tai j= ' int2str(j) ' luc it= ' int2str(itout)]); ifram = ifram +1; tenfilehinh=['hinh' int2str(ifram)]; FF(:,ifram) = getframe; saveas(gcf,tenfilehinh,'fig'); hold off; end %hold on movie(FF,10,12); %% Luu ket qua de trinh dien lai save('test.mat','xmin','xmax','ymin','ymax','zdmin', 'zmax','zmin','M','FF'); HVTH: NGUYỄN PHƯƠNG THẢO - 40 - - Lý lịch trích ngang: Họ tên: NGUYỄN PHƯƠNG THẢO Ngày, tháng năm sinh: 12/06/1983 Nơi sinh: Tp Hải Phịng Địa liên lạc: 184/34/16 Lý Chính Thắng, P.9, Q.3, Tp HCM QUÁ TRÌNH ĐÀO TẠO ü Từ năm 2001- 2006: Sinh viên trường Đại học Giao Thông Vận Tải Tp.HCM- Khoa Cơng trình ü Từ năm 2007- 2009: Học viên Cao học khóa 2007 trường Đại học Bách Khoa Tp.HCM- Khoa Xây dựng Cơng Trình Biển Q TRÌNH CƠNG TÁC ü Từ năm 2007- 2009: Cơng tác trường Đại học Giao Thông Vận Tải Tp.HCM- Khoa Cơng trình Cơng ty TOA CORPORATION (Dự án Cải thiện Môi trường nước) ... vào việc nghiên cứu ứng dụng Mơ hình FUNWAVE 2D tính tốn truyền sóng nước cạn Sử dụng mơ hình Funwave để tính truyền sóng vùng biển Phú Hải- Phan Thiết Qua đánh giá khả ứng dụng mơ hình HVTH:... -9- NGHIÊN CỨU ÁP DỤNG MƠ HÌNH FUNWAVE TÍNH TỐN TRUYỀN SĨNG NƯỚC CẠN GVHD: TS TRẦN THU TÂM nghiên cứu viết chương trình tính tốn sóng nước cạn dựa phương trình Boussinesq phi tuyến với tên gọi FUNWAVE. .. mơ hình mơ Và sau dùng mơ hình FUNWAVE để tính tốn truyền sóng nước cạn khu vực biển Phú Hải trình bày Chương Cuối chương đưa số nhận xét khả áp dụng mơ hình Funwave tính tốn truyền sóng nước cạn

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

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

Tài liệu liên quan