Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 125 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
125
Dung lượng
2,36 MB
Nội dung
B GIÁO D C VÀ ÀO T O B NÔNG NGHI P & PTNT TR NGă IăH CăTH YăL I NGUY NăV NăTHỊN NGHIểN C U SịNG TRÀN QUA ể BI N CÓ T B CB LU NăỄNăTI NăS ăK ăTHU T HĨăN I, N Măβ014 NG NH B GIÁO D C VÀ ÀO T O B NÔNG NGHI P & PTNT TR NGă IăH CăTH YăL I NGUY NăV NăTHỊN NGHIểN C U SịNG TRÀN QUA ể BI N Cị T B CB NG Chun ngành: Xơyăd ngăcơngătrìnhăth y Mưăs : 62-58-40-01 NG IăH NGăD NăKHOAăH C: PGS.TS Nguy n Bá Qu GS.TS Ngơ Trí Vi ng HĨăN I,ăN Măβ014 NH L I CAM OAN Tácăgi ăxinăcamăđoanăđơyălƠăcơngătrìnhănghiênăc uăc aăb năthơn tácăgi ăCácăk tăqu ă nghiênăc uăvƠ cácăk tălu n trongălu năánălƠătrungăth c, khôngăsaoăchépăt ăb tăk ăm tă ngu nănƠoăvƠăd đ iăb tăk ăhìnhăth cănƠo Vi căthamăkh oăcácăngu nătƠiăli uă(n uăcó) căth căhi nătríchăd năvƠăghiăngu nătƠiăli uăthamăkh oătheo đúngăquyăđ nh Tácăgi ălu năán Nguy n V n Thìn i L IC M N Cóăđ căk tăqu ănghiênăc uănh ăhômănayăngoƠiăs ăc ngăg ngăc aăb năthơn,ătácăgi ăxină bƠyăt ăs ătrơnătr ng,ălịngăbi tă năsơuăs căđ n:ăGS.TS.ăNgơăTríăVi ng,ăPGS.TS.ăNguy nă BáăQu ,ăđưăh ngăd năt nătìnhătrongăth iăgianătácăgi th căhi nălu năánν Tácăgi ăxinătrơnătr ngăc mă năGS.TS.ăNguy năQuangăKimăậ Hi uătr ngănhƠătr ngăđưă luônăđ ngăviênăvƠăt oăm iăđi uăki năđ ătácăgi ăhoƠnăthƠnhălu năánν Tácăgi ăxinăchơnăthƠnhăc mă năPGS.TS.ăThi uăQuangăTu n,ăPGS.TS.ăTr nhăMinhăTh ,ă PGS.TS.ăNguy năTrungăVi tălƠănh ngăng iăth y,ăng iăanhăđưăt nătìnhăh ngăd n,ă giúpăđ ,ăđóngăgópănh ngăỦăki năquỦăbáuăđ ătácăgi ăhoƠnăthi nălu năánν Tácăgi ăxinăbƠyăt ălòngăbi tă năsơuăs căđ năcácăcácănhƠăkhoaăh cătrongăvƠăngoƠiătr ngă đưăcóăgópăỦăchơnătình, th ngăth năv ălu năánăc aătácăgi Tácăgi ăxinătrơnătr ngăc mă nă GS.TS.ăNguy năChi năvƠăcácănhƠăKhoaăh cătrongăH iăđ ngăđánhăgiáăLATSăc păc ăs νă Tácă gi ă xină bƠyă t ă lòngă bi tă nă đ nă GS.ă Oumaracie,ă Tr ngă Hă TUă Braushweigh,ă CHLBă cνăCácăGSă ătr ngă iăh căKyushu,ăNh tăb năđưăgiúpăđ ătácăgi ătrongăth iă gianătácăgi ăth căt păvƠătraoăđ iănghiênăc uă ăn căngoƠiν Tácă gi ă xină bƠyă t ă lòngă bi tă nă đ nă Qu phát tri n khoa h c cơng ngh qu c gia (NAFOSTED); Ch ngătrìnhăNCKHCNăph căv ăphịngătránhăthiênătaiăb oăv ămơiă tr ngăvƠăs ăd ngăh pălỦătƠiăngunăthiênănhiên (KC08) c a B Khoa h c Cơng ngh đưăđ uăt ăkinhăphíăchoătácăgi th c hi n thí nghi m lu n án; Tác gi xin bày t lòng bi tă năđ n Phịng thí nghi m tr ngăđi m qu c gia ậ Vi n KHTL Vi t Nam; Phòng thí nghi m th y l c t ng h p,ăTr ngă i h c Th y l iăđưăt oăđi u ki n v c ăs v t ch t th i gian tác gi th c hi n thí nghi m; Tác gi ăxinăđ căc mă năV ăGiáoăd că iăh că - B ăGiáoăd că&ă Ơoăt o,ăB ăNơngă nghi păvƠăPTNTăđưăt oăđi uăki năchoătácăgi ătrongăqătrìnhăth căhi nălu năánν Tácăgi ăxinăbƠyă t ălòngăbi tă năvƠă trơnătr ngăđ năcácăth yătrongăBanăGiámăhi uă nhƠă tr ng,ăt păth ăgi ng viênăkhoaăCơngătrình,ăt păth ăgi ngăviênăkhoaăK ăthu tăbi n,ăphịngă Khoaăh căcơngăngh ăvƠăcácăth yăgiáo,ăcơăgiáoătrongătoƠnătr ngăđưăgiúpălnăđ ,ăđ ngă viênătácăgi ăv tăquaăm iăkhóăkh năđ ăth căhi nălu năánănƠyν Tácăgi ăxinăbƠyăt ălòngăbi tă năđ năcácăc ngăs ăkhoaăh c:ăă TS.ăLêăB oăTrungνăThs.ă Nguy năQuangăL ngνăThs.ăBùiăDoưnăQuy tνăThS.ăNguy năV năNg cν Tácă gi ă xină bƠyă t ă lòngă bi tă nă đ nă cácă đ ngă nghi pă c aă tácă gi ă t iă Phịngă Ơoă t oă H&S HνăB ămơnăTh yăcơngăđưăch uăkhóăgánhăvácăcácăcơngăvi căđ ătácăgi cóăđ că th iăgianăth căhi nălu năánν Tácăgi ăxinăbƠyăt ălòngăbi tă năsơuăs căđ năGS.TS.ăNGND.ăPh măNg căNg căQuỦăăvƠă toƠnăth ăcácăth yătrongăH iăđ ngăđánhăgiáăLATSăc pătr ngăđưăkhôngăqu iăv tăvưă đưăđ căvƠăcóănh ngăđánhăgiáăxácăđángăv ălu năánăc aătácăgi ν VƠăm tăđi uăkhơngăqun, tácăgi ăxinăbƠyăt ălịngăbi tă năt iăgiaăđìnhălnăsátăcánh,ă đ ngăviênătácăgi ăv tăquaăm iăkhóăkh năkhiăth căhi nălu năánălu năánănƠy ii M CL C DANHăM CăCỄCăHỊNHă NH vi DANHăM CăCỄCăB NGăBI U viii DANHăM CăCỄCăT ăVI TăT TăVĨăTHU TăNG M ă ix U 1 Tínhăc păthi tăc aăđ ătƠi M cătiêuănghiênăc u iăt ngăvƠăph măviănghiênăc u Cáchăti păc năvƠăph ngăphápănghiênăc u ụăngh aăkhoaăh căvƠăth căti n C uătrúcăc aălu năán CH NGă1 T NGăQUANăNGHIểNăC UăSịNGăTRĨNăQUAă ểăBI NăCịă T NGă NHăTH P T ngăquanăv ănghiênăc uăsóngătrƠnăquaăđêăbi n .4 T ngăquanănghiênăc uăsóngătrƠn trênăth ăgi i T ngăquanănghiênăc uăsóngătrƠnă ăVi tăNam .5 Nguyênănhơn,ăc ăch ăpháăho iăđêăbi năvƠăgi iăphápăgi măthi u Nguyênănhơnăh ăh ngăđêăbi n C ăch ăpháăho iăđêăbi nădoăsóngătrƠn Gi iăphápăgi măthi uăsóngătrƠnăchoăđêăbi năB căb 10 T ngăquanăv ăđêăbi năcóăt ngăđ nhăth pă ăMi năB c 11 Khái quát chung 11 êăbi năcóăt ngăđ nhăth pă ăHƠăT nh 12 êăbi năcóăt ngăđ nhăth pă ăThanhăHóa 14 êăbi năcóăt ngăđ nhăth pă ăNamă êăbi năcóăt ngăđ nhăth pă ăH iăPhịng 16 nh 15 T ngăquanănghiênăc uăsóngătrƠnăquaăđêăbi năcóăt ngăđ nhăth p 17 ătrênăth ăgi i 17 ăVi tăNam 19 K tălu năch ngă1 25 iii CH NGăβ MỌăHỊNHăV TăLụăMỄNGăSịNGăNGHIểNăC Uă NHăH NGă C AăT NGă NHăTH Pă NăSịNGăTRĨNăQUAă ểăBI N 27 M căđíchănghiênăc u 27 LỦăthuy tăv ăt ngăt .27 T ngăt ăv ăhìnhăh c 27 T ngăt ăv ăđ ngăh c .28 T ngăt ăv ăđ ngăl căh c 28 Mơăt ăthíănghi măsóngăđ u .28 Máng sóng 28 Mô hìnhăđêăvƠăcácăthamăs ăthíănghi m .30 Ch ngătrìnhăthíănghi m 32 Trình t thí nghi m tham s đoăđ c .33 Phơnătíchăk tăqu ăthíănghi m 35 nhăh ngăc aăt ngăđ nhăđ năl uăl nhăh ngăc aăt ngăđ năchi uăcaoăsóngăb n 39 K tălu năch ngăsóngătrƠnătrungăbình .35 ngăβ 41 CH NGăγ T NGăTỄCăSịNGăậ T NGăVĨăDọNGăCH YăSịNGăTRĨNă QUAă ểăBI NăCịăT NGă NHăTH P 42 tăv năđ 42 MơăhìnhăNLSWă(Tu năvƠăOumeraci,ăβ010) 45 H ăph ngătrìnhăc ăb n 45 SóngătrƠnăđ iăv iăsóngăng uănhiên 46 Mơ hình RANS-VOF (COBRAS-UC,ămángăsóngăs ) 51 Gi iăthi uămángăsóngăs 51 H ăph ngătrìnhăc ăb n 53 SóngătrƠnăđ iăv iăsóngăng uănhiên 54 SóngătrƠnăđ iăv iăsóngăđ u 56 K tălu năch ngăγ 71 CH NGă4 ỄPăD NGăK TăQU ăNGHIểNăC UăTệNHăTOỄNăSịNGăTRĨNă QUAă ểăBI NăGIAOăTH Y,ăT NHăNAMă NH 73 Gi iăthi uăcơngătrình 73 Tính tốn sóng tràn 74 iv Cácăcôngăth căc ăb n 74 Thi tăl păb ngătínhătốnăsóngătrƠn 74 Xơyăd ngăph năm mătínhătốnăsóngătrƠn 78 K tăqu ătínhătốnăsóngătrƠnăvƠăđ ăxu tăm tăc tăngangăđêăbi n 80 K tăqu ătínhăsóngătrƠnăquaăđêăbi năGiaoăTh y,ăt nhăNamă nh .80 ăxu tăm tăc tăngangăđêăbi n 82 Ph măviăápăd ng 82 K tălu năch ngă4 84 K T LU N VÀ KI N NGH .85 I K t qu đ tăđ II Nh ngăđóngăgópăm i c a lu n án 87 c c a lu n án 85 III T n t iăvƠăh IV Ki n ngh .88 ng phát tri n 88 DANH M CăCỌNGăTRỊNHă ẩăCỌNGăB 89 TĨIăLI UăTHAMăKH O 90 PH L C 98 v DANH M C CÁC HÌNH NH Hình 1.1 êăbi n v nh Isahaya, Nagasaki, Nh t b n Hình 1.2 Sóng tràn gây phá ho iăđêăbi năNamă nh [1] Hìnhă1.γăSóngătrƠnăquaăđêăbi năNamă nh bão s 7/2005[1] Hình 1.4 Thí nghi m CHLBă c Hình 1.5 Thí nghi m Vi n KHTL Vi t Nam Hìnhă1.6ă êăbi n H u L c,ăThanhăHóaăsauăc năbưoăs 7/2005 10 Hình 1.7 Cây s c h ăh ngăđêăbi n [1] 10 Hình 1.8 Cơng trình gi măsóngătr căđêăGiaoăTh y,ăNamă nh (3/2014) 11 Hình 1.9 M t s hình d ngăt ngăđ nh th p Vi t Nam 12 Hìnhă1.10ă êăbi n H i Th ng,ăNghiăXuơn,ăHƠăT nhă[γ] 14 Hìnhă1.11ă êăbi năPhúcăLongăNh ng, C măXuyên,ăHƠăT nhă[γ] 14 Hìnhă1.1βă êăbi n H u L c, Thanh Hóa [7] 15 Hìnhă1.1γă êăbi n Giao Th y,ăNamă nh 16 Hìnhă1.14ă êăbi n Qu tăLơm,ăNamă nh 16 Hìnhă1.15ă êăbi n Cát H i, H i Phòng 17 Hìnhă1.16ăXácăđ nhăđ d cămáiăđêăquyăđ iăkhiăcóăt ngăđ nh th p [9] 18 Hình 1.17 nhăh ng c aăt ngăđ nh th pătrênăđêăvƠăcácăthamăs chi ph i [56] 20 Hình 1.18 Thí nghi măsóngătrƠnăquaăđêăbi n nghiên c u [56] 20 Hình 1.19 Chi t gi măsóngătrƠnădoăt ngăđ nh th p: sóng v [56] 21 Hình 1.20 Chi t gi măsóngătrƠnădoăt ngăđ nh th p: sóng khơng v [56] 21 Hìnhă1.β1ăS ăđ thí nghi măsóngătrƠnăquaăđêăbi năcóăt ngăđ nh th p [58][10] 22 Hình 1.22 Các tham s đêăvƠăt ng tính tốn sóng tràn [58][10] 23 Hình 1.23 H s nhăh ng c a chi uăcaoăt ng w [58][10] .24 Hình 1.24 H s nhăh ng c a chi u r ng th mătr căt ng s [58][10] 24 Hình 2.1 Tồn c nh máng sóng s d ng thí nghi m .29 Hình 2.2 Máy t o sóng 29 Hình 2.3 Máng sóng 30 Hình 2.4 Khu v căđi u n máy t o sóng 30 Hình 2.5 Mơ hình thí nghi măsóngăđ u 31 Hình 2.6 X lý ch ng th măquaăđêătrongăthíănghi m 31 Hình 2.7 Máy tính, thi t b nh năvƠăl uătr tín hi u 32 Hình 2.8 Ki mătraăcácăđ uăđoăsóngăt iăchơnăđê 34 Hìnhăβ.9ăMơăhìnhăxácăđ nhăl uăl ng sóng tràn 34 Hìnhăβ.10ăMơăhìnhăxácăđ nh chi u cao sóng b n 35 Hình 2.11 Mơ hìnhăxácăđ nh chi u sâu dịng ch y tràn 35 Hình 2.12 H s nhăh ng t ng h p c aăt ngăđ nh th p v (đoăđ c - tính tốn) .37 Hình 2.13 Bi uăđ quan h gi a (Hb/H) v i (S.H/g.W.T2) 39 Hình 3.1 Mơ t t ng th ngăđ ng qua mái nghiêng (TAW-2002) ậ PA1 47 vi Hình 3.2 Mơ t t ng b ng chi uăcaoăl uăkhơngăt ngăđ ngăậ PA2 48 Hình 3.3 K t qu tính tốn sóng tràn b ng mơ hình NLSW (PA1) 50 Hình 3.4 K t qu tính tốn sóng tràn b ng mơ hình NLSW (PA2) 51 Hìnhăγ.5ăSóngătrƠnăquaăđêătrongă(MHăv t lý) 52 Hìnhăγ.6ăSóngătrƠnăquaăđêă(MHămángăsóngăs ) 52 Hìnhăγ.7ăL uăl ng sóng tràn trung bình (Sóng ng u nhiên, COBRAS-UC) 56 Hìnhăγ.8ăL uăl ngăsóngătrƠnătrungăbìnhă(Sóngăđ u, COBRAS-UC) 58 Hình 3.9 Sóng b năkhiăsóngăvaăvƠoăt ng (MH V t lý) .60 Hìnhăγ.10ăSóngăđ lênăđ nhăt ng m tăđêă(MHăV t lý) 60 Hình 3.11 Sóng ch y thành dòng (MH V t lý) 61 Hình 3.12 Sóng rút (MH V t lý) 61 Hình 3.13 Sóng b năkhiăsóngăvaăvƠoăt ng t= 27.1s ( MH v t lý) 62 Hình 3.14 Sóng đ lênăđ nhăt ng m tăđêăt=β7.γsă( MH v t lý) 62 Hình 3.15 Sóng ch y thành dịng t = 27.5s ( MH v t lý) .63 Hình 3.16 Sóng rút t=27.8s ( MH v t lý) .63 Hình 3.17 Chi u cao sóng b n l n nh tă(đ c MH toán, r ng MH v t lý) .64 Hình 3.18 Chi u sâu ch y tràn l n nh tătrênăđ nhăt ng 66 Hình 3.19 nhăh ng c a chi u r ng th măđ n chi u cao sóng b n 69 Hình 3.20 Phân b áp l căsóngălênăt ng xung quanh th iăđi m t* 70 Hình 3.21 L c sóng tác d ngălênăt ng 70 Hìnhă4.1ă êăbi n Giao Th y t nhăNamă nh 73 Hình 4.2 Giao di n ph m m m 78 Hình 4.3 Giao di n nh p tham s thi t k 79 Hình 4.4 Giao di n tính tốn tham s sóng thi t k 79 Hình 4.5 Giao di nătínhătốnăsóngătrƠnăquaăđê 80 Hình 4.6 K t qu tính tốn sóng tràn cho k ch b n (W,S) khác 82 Hình 4.7 M t c tăngangăđêăbi n theo d th o TCVN 9901: 2013 [4] 83 Hình 4.8 M t c tăngangăđêăbi năcóăt ngăđ nh th p th mătr c 83 vii DANH M C CÁC B NG BI U B ng 1.1 T ng h păđêăcóăt ngăđ nh th p HƠăT nhă[γ] .13 B ng 1.2 T ng h păch ngătrìnhăthíănghi m sóng ng u nhiên [58][10] .22 B ng 2.1 T ng h păch ngătrìnhăthíănghi măsóngăđ u 33 B ng 2.2 K t qu thí nghi măxácăđ nh h s nhăh ng t ng h p c aăt ng 38 B ng 2.3 K t qu thí nghi măxácăđ nh chi u cao sóng b n 40 B ng 3.1 K t qu đoăđ căvƠătínhătốnăsóngătrƠnăchoăcácătr ng h păđi n hình sóng ng u nhiên 55 B ng 3.2 K t qu đoăđ c tính tốnăl uăl ng sóng tràn trung bình c aăsóngăđ u 57 B ng 3.3 K t qu đoăđ c tính tốn chi u cao sóng b n l n nh t 65 B ng 3.4 K t qu đoăđ c tính tốn chi u sâu dịng ch y tràn l n nh t 67 B ng 4.1 Thi t l p thông s đ u vào .74 B ng 4.2 Tính tốn tham s sóng thi t k 76 B ngă4.γăTínhătốnăl uăl ng sóng tràn trung bình 76 B ngă4.4ăL uăl ng sóng tràn trung bình chi u cao sóng b năchoăđêăbi n Giao Th y, t nhăNamă nh v i k ch b n (W,S) khác .81 viii } private void Update_E34() { try { tmpValue = double.Parse(E5.Text) / double.Parse(E31.Text); tmpValue = Math.Round(tmpValue, 6); E34.Text = string.Format("{0}", tmpValue); } catch { E34.Text = string.Format("{0}", 0); } } private void Update_E37() { try { //=$E$6/E36 tmpValue = double.Parse(E6.Text) / double.Parse(E36.Text); tmpValue = Math.Round(tmpValue, 6); E37.Text = string.Format("{0}", tmpValue); } catch { E37.Text = string.Format("{0}", 0); } } private void Update_E35() { try { //=E30/1.1 tmpValue = double.Parse(E30.Text) / 1.1; tmpValue = Math.Round(tmpValue, 6); E35.Text = string.Format("{0}", tmpValue); } catch { E35.Text = string.Format("{0}", 0); } } private void Update_E36() { try { //=(9.81*E35*E35)/(2*3.14) tmpValue = (9.81 * double.Parse(E35.Text) * double.Parse(E35.Text)) / (2 * 3.14); tmpValue = Math.Round(tmpValue, 6); E36.Text = string.Format("{0}", tmpValue); } catch { E36.Text = string.Format("{0}", 0); } } 100 private void Update_J4() { try { J4.Text = string.Format("{0}", double.Parse(E16.Text) double.Parse(E4.Text)); } catch { J4.Text = string.Format("{0}", 0); } } private void Update_J6() { try { if (E18.Text == "-999") return; tmpValue = - 0.0033 * double.Parse(E18.Text); tmpValue = Math.Round(tmpValue, 6); J6.Text = string.Format("{0}", tmpValue); } catch { J6.Text = string.Format("{0}", 0); } } private void Update_J7() { //IF($E$23=0,1-$E$22/J13,1-($E$22*(0.5+0.5*COS(3.14*$E$23/J18))/J13)) try { if (double.Parse(E23.Text) == 0) { tmpValue = - double.Parse(E22.Text) / double.Parse(J13.Text); tmpValue = Math.Round(tmpValue, 6); J7.Text = string.Format("{0}", tmpValue); } else { tmpValue = - (double.Parse(E22.Text) * (0.5 + 0.5 * Math.Cos(3.14 * double.Parse(E23.Text) / double.Parse(J18.Text))) / double.Parse(J13.Text)); tmpValue = Math.Round(tmpValue, 6); J7.Text = string.Format("{0}", tmpValue); } } catch { J7.Text = string.Format("{0}", 0); } } private void Update_J9() { //=1+J8*E13/((J4-E13)*J16) try { 101 tmpValue = + double.Parse(J8.Text) * double.Parse(E13.Text) / ((double.Parse(J4.Text) - double.Parse(E13.Text)) * double.Parse(J16.Text)); tmpValue = Math.Round(tmpValue, 6); J9.Text = string.Format("{0}", tmpValue); } catch { J9.Text = string.Format("{0}", 0); } } private void Update_J11() { //=1+J10*E14/(E6*J16) try { if (J10.Text == "-999" || E14.Text == "-999" || E6.Text == "-999" || J16.Text == "-999") return; tmpValue = + double.Parse(J10.Text) * double.Parse(E14.Text) / (double.Parse(E6.Text)) * double.Parse(J16.Text); tmpValue = Math.Round(tmpValue, 6); J11.Text = string.Format("{0}", tmpValue); } catch { J11.Text = string.Format("{0}", 0); } } private void Update_J12() { //=1/(J9*J11) try { if (J9.Text == "-999" || J11.Text == "-999" ) return; tmpValue = / (double.Parse(J9.Text) * double.Parse(J11.Text)); tmpValue = Math.Round(tmpValue, 6); J12.Text = string.Format("{0}",tmpValue); } catch { J12.Text = string.Format("{0}", 0); } } private void Update_J13() { //=$E$6*$E$20+$E$22+$E$6*$E$21 try { if (E6.Text == "-999" || E20.Text == "-999" || E22.Text == "-999" || E21.Text == "-999") return; tmpValue double.Parse(E22.Text) + tmpValue J13.Text =double.Parse(E6.Text) * double.Parse(E20.Text) + double.Parse(E6.Text) * double.Parse(E21.Text); = Math.Round(tmpValue, 6); = string.Format("{0}", tmpValue); 102 } catch { J13.Text = string.Format("{0}", 0); } } private void Update_J14() { //=(1.5*$E$6-$E$23)*$E$20+$E$22+(J4-$E$13+$E$23)*$E$21+$E$13+E14 try { if (E6.Text == "-999" || E20.Text == "-999" || E21.Text == "-999" || E22.Text == "-999" || E23.Text == "-999" || J4.Text == "-999" || E13.Text == "-999" || E14.Text == "-999") return; tmpValue double.Parse(E20.Text) + double.Parse(E13.Text) + double.Parse(E13.Text) + tmpValue J14.Text } catch { J14.Text } } = (1.5 * double.Parse(E6.Text) - double.Parse(E23.Text)) * double.Parse(E22.Text) + (double.Parse(J4.Text) double.Parse(E23.Text)) * double.Parse(E21.Text) + double.Parse(E14.Text); = Math.Round(tmpValue, 6); = string.Format("{0}", tmpValue); = string.Format("{0}", 0); private void Update_J15() { //=(J4+1.5*$E$6)/(J14-$E$22) try { if (J4.Text == "-999" || E6.Text == "-999" || J14.Text == "-999" || E22.Text == "-999") return; tmpValue = (double.Parse(J4.Text) + 1.5 * double.Parse(E6.Text)) / (double.Parse(J14.Text) - double.Parse(E22.Text)); tmpValue = Math.Round(tmpValue, 6); J15.Text = string.Format("{0}", tmpValue); } catch { J15.Text = string.Format("{0}", 0); } } private void Update_J16() { //=J15/SQRT($E$37) try { //Sai khac cua functions Sqrt???? //C# Math.Sqrt(double.Parse(E37.Text)) 0.18439088914585774 double //Excel =SQRT($E$37) 0.183616279 if (J15.Text == "-999" || E37.Text == "-999") return; tmpValue = double.Parse(J15.Text) / Math.Sqrt(double.Parse(E37.Text)); 103 tmpValue = Math.Round(tmpValue, 6); J16.Text = string.Format("{0}", tmpValue); } catch { J16.Text = string.Format("{0}", 0); } } private void Update_J17() { //=J16*J7 try { tmpValue = double.Parse(J16.Text) * double.Parse(J7.Text); tmpValue = Math.Round(tmpValue, 6); J17.Text = string.Format("{0}", tmpValue); } catch { J17.Text = string.Format("{0}", 0); } } private void Update_J18() { //=IF($E$23>0,2*$E$6,J4) try { if (E6.Text == "-999" || J4.Text == "-999") return; if (double.Parse(E23.Text) > 0) { J18.Text = string.Format("{0}", * double.Parse(E6.Text)); } else { J18.Text = string.Format("{0}", double.Parse(J4.Text)); } } catch { J18.Text = string.Format("{0}", 0); } } private void Update_J20() { //=IF(J17>2,100*SQRT(9.81*E6^3)*0.2*EXP(-2.6*(J4E13)/(E6*J16*J12)),(10*SQRT(9.81*E6^3)*0.067*J16*EXP(-4.75*(J4E13)/(E6*J16*J12)))/SQRT(J15)) try { if (E6.Text == "-999" || E13.Text == "-999") return; if (double.Parse(J17.Text) > 2) { tmpValue = 100 * Math.Sqrt(9.81 * Math.Pow(double.Parse(E6.Text), 3)) * 0.2 * Math.Exp(-2.6 * (double.Parse(J4.Text) - double.Parse(E13.Text)) / (double.Parse(E6.Text) * double.Parse(J16.Text) * double.Parse(J12.Text))); tmpValue = Math.Round(tmpValue, 6); J20.Text = string.Format("{0}", tmpValue); 104 } else { tmpValue = (10 * Math.Sqrt(9.81 * Math.Pow(double.Parse(E6.Text), 3)) * 0.067 * double.Parse(J16.Text) * Math.Exp(-4.75 * (double.Parse(J4.Text) double.Parse(E13.Text)) / (double.Parse(E6.Text) * double.Parse(J16.Text) * double.Parse(J12.Text)))) / Math.Sqrt(double.Parse(J15.Text)); tmpValue = Math.Round(tmpValue, 6); J20.Text = string.Format("{0}", tmpValue); } } catch { J20.Text = string.Format("{0}", 0); } } private void Update_J21() { //==J20*1000 try { J21.Text = string.Format("{0}", double.Parse(J20.Text) * 1000); } catch { J21.Text = string.Format("{0}", 0); } } private void Update_J24() { //=(E14*E6/(9.81*E13*E35^2)) try { if (E6.Text == "-999" || E13.Text == "-999" || E14.Text == "-999" || E35.Text == "-999") return; tmpValue double.Parse(E13.Text) * tmpValue J24.Text } catch { J24.Text } } = (double.Parse(E14.Text) * double.Parse(E6.Text) / (9.81 * Math.Pow(double.Parse(E35.Text), 2))); = Math.Round(tmpValue, 6); = string.Format("{0}", tmpValue); = string.Format("{0}", 0); private void Update_J25() { //=SQRT(1.544*EXP(-23.36*J24)) try { tmpValue = Math.Sqrt(1.544 * Math.Exp(-23.36 * double.Parse(J24.Text))); tmpValue = Math.Round(tmpValue, 6); J25.Text = string.Format("{0}", tmpValue); } catch { J25.Text = string.Format("{0}", 0); 105 } } private void Update_J26() { // =J25*E6 try { if (E6.Text == "-999" ) return; tmpValue =double.Parse(J25.Text) * double.Parse(E6.Text); tmpValue = Math.Round(tmpValue, 6); J26.Text = string.Format("{0}", tmpValue); } catch { J26.Text = string.Format("{0}", 0); } } #endregion private void cmdAdd_Click(object sender, EventArgs e) { AddPoints(); } private void AddPoints() { //(E13/E14) J26 J21 //String.Format("{0}\t{1}", FirstName,Count) if (txtResult.Text == "") { txtResult.Text = String.Format("{0}\t\t", "(W,S)") + String.Format("{0}\t\t", "Hb") + String.Format("{0}\t\t", "q(l/s/m)"); } txtResult.Text = txtResult.Text + System.Environment.NewLine + String.Format("{0}\t\t", "(" + E13.Text + "/" + E14.Text + ")") + String.Format("{0}\t\t", J26.Text) + String.Format("{0}\t\t", J21.Text); } private void btnReset_Click(object sender, EventArgs e) { txtResult.Text = ""; } private void frmDr_Load(object sender, EventArgs e) { LoadToolTip(); InitValue(); InitValue(true); } private void InitValue(bool bDefault=false) { if (bDefault) { E4.Text = "2.29"; E6.Text = "1.51"; E7.Text = "0.3"; E9.Text = "1.03"; E10.Text = "2.3"; 106 E13.Text = "0.9"; E14.Text = "1"; E15.Text = "90"; E18.Text = "0"; E20.Text = "4"; E21.Text = "4"; E22.Text = "0"; E23.Text = "0"; E24.Text = "0.3"; E25.Text = "0.85"; E30.Text = "5.89"; E32.Text = "3.56"; E33.Text = "37.76"; J8.Text = "0.99"; J10.Text = "0.72"; } else { E4.Text = "-999"; E6.Text = "-999"; E7.Text = "-999"; E9.Text = "-999"; E10.Text = "-999"; E13.Text = "-999"; E14.Text = "-999"; E15.Text = "-999"; E18.Text = "-999"; E20.Text = "-999"; E21.Text = "-999"; E22.Text = "-999"; E23.Text = "-999"; E24.Text = "-999"; E25.Text = "-999"; E30.Text = "-999"; E32.Text = "-999"; E33.Text = "-999"; J8.Text = "-999"; J10.Text = "-999"; } } private void LoadToolTip() { string tmp; System.Windows.Forms.ToolTip ToolTip1 = new System.Windows.Forms.ToolTip(); ToolTip1.ShowAlways = true; Cao đ đáy bi n t i v trí tính sóng thi t k th ng t i chân cơng trình ToolTip1.SetToolTip(E7, tmp); tmp = at n u b m t t ng phía bi n có d ng th ng đ ng ; ToolTip1.SetToolTip(E15, tmp); tmp = Gi thi t tr ng h p nguy hi m nh t sóng ti n t i chân cơng trình theo ph ng vng góc v i tr c đê b = 00"; ToolTip1.SetToolTip(E18, tmp); tmp = 107 ; dh n u c n m MNTK dh n u c n m ngang MNTK dh n u c n m d i MNTK c ToolTip1.SetToolTip(E23, tmp); tmp = ng p n Thông s xác đ nh h s chi t gi m c * x = Rslp dh < * x = 2.Hs dh > 0"; ToolTip1.SetToolTip(J18, tmp); tmp = c ; đê } private void btnReport_Click(object sender, EventArgs e) { frmPlot frm = new frmPlot(); frm.PlotData(txtResult.Text, true); frm.ShowDialog(); } private void E9_TextChanged(object sender, EventArgs e) { Update_E11(); } private void E10_TextChanged(object sender, EventArgs e) { Update_E11(); } private void E13_TextChanged(object sender, EventArgs e) { Update_E16(); Update_J9(); Update_J14(); Update_J20(); Update_J24(); } private void E16_TextChanged(object sender, EventArgs e) { Update_E17(); Update_J4(); Update_J6(); } private void E30_TextChanged(object sender, EventArgs e) { Update_E31(); Update_E35(); } private void E31_TextChanged(object sender, EventArgs e) { Update_E34(); } private void E5_TextChanged(object sender, EventArgs e) { Update_E34(); } private void E4_TextChanged(object sender, EventArgs e) 108 x { Update_J4(); } private void E23_TextChanged(object sender, EventArgs e) { Update_J7(); Update_J14(); Update_J18(); } private void E22_TextChanged(object sender, EventArgs e) { Update_J7(); Update_J13(); Update_J14(); Update_J15(); } private void J13_TextChanged(object sender, EventArgs e) { Update_J7(); } private void J18_TextChanged(object sender, EventArgs e) { Update_J7(); } private void J8_TextChanged(object sender, EventArgs e) { Update_J9(); } private void J4_TextChanged(object sender, EventArgs e) { Update_J9(); Update_J14(); Update_J15(); Update_J18(); Update_J20(); } private void J16_TextChanged(object sender, EventArgs e) { Update_J9(); Update_J11(); Update_J17(); Update_J20(); } private void J10_TextChanged(object sender, EventArgs e) { Update_J11(); } private void E14_TextChanged(object sender, EventArgs e) { Update_J11(); Update_J14(); Update_J24(); 109 } private void E6_TextChanged(object sender, EventArgs e) { Update_E37(); Update_J11(); Update_J13(); Update_J14(); Update_J15(); Update_J18(); Update_J20(); Update_J24(); Update_J26(); } private void J9_TextChanged(object sender, EventArgs e) { Update_J12(); } private void J11_TextChanged(object sender, EventArgs e) { Update_J12(); } private void E20_TextChanged(object sender, EventArgs e) { Update_J13(); Update_J14(); } private void E21_TextChanged(object sender, EventArgs e) { Update_J13(); Update_J14(); } private void J14_TextChanged(object sender, EventArgs e) { Update_J15(); } private void J15_TextChanged(object sender, EventArgs e) { Update_J16(); Update_J20(); } private void E37_TextChanged(object sender, EventArgs e) { Update_J16(); } private void J7_TextChanged(object sender, EventArgs e) { Update_J17(); } private void J17_TextChanged(object sender, EventArgs e) { Update_J20(); 110 } private void J12_TextChanged(object sender, EventArgs e) { Update_J20(); } private void J20_TextChanged(object sender, EventArgs e) { Update_J21(); } private void E35_TextChanged(object sender, EventArgs e) { Update_J24(); Update_E36(); } private void J24_TextChanged(object sender, EventArgs e) { Update_J25(); } private void J25_TextChanged(object sender, EventArgs e) { Update_J26(); } private void btnDefaultValue_Click(object sender, EventArgs e) { InitValue(true); } private void E36_TextChanged(object sender, EventArgs e) { Update_E37(); } private void btnAboutUs_Click(object sender, EventArgs e) { frmAbout frm = new frmAbout(); frm.ShowDialog(); } private void btnSave_Click(object sender, EventArgs e) { try { if (txtResult.Text.Trim() == "") { MessageBox.Show( Ch a có d li u ,"Thông báo"); return; } SaveFileDialog saveFileDialog1 = new SaveFileDialog(); saveFileDialog1.InitialDirectory = @"C:\"; saveFileDialog1.Title = "Save text Files"; //saveFileDialog1.CheckFileExists = true; saveFileDialog1.CheckPathExists = true; saveFileDialog1.DefaultExt = "txt"; saveFileDialog1.Filter = "Text files (*.txt)|*.txt|All files (*.*)|*.*"; 111 saveFileDialog1.FilterIndex = 2; saveFileDialog1.RestoreDirectory = true; if (saveFileDialog1.ShowDialog() == DialogResult.OK) { File.WriteAllText(saveFileDialog1.FileName, txtResult.Text); } } catch (Exception ex) { MessageBox.Show(ex.Message); } } private void btnLoad_Click(object sender, EventArgs e) { string fileName = ""; bool bHeader = true; OpenFileDialog theDialog = new OpenFileDialog(); theDialog.Title = Load file t h p ; theDialog.Filter = "TXT files|*.txt"; theDialog.InitialDirectory = @"C:\"; if (theDialog.ShowDialog() == DialogResult.OK) { fileName= theDialog.FileName.ToString(); System.Collections.Generic.IEnumerable lines = File.ReadLines(fileName); // Read in lines from file foreach (string line in File.ReadLines(fileName)) { try { // skip header file if (bHeader) { bHeader = false; } else { string[] cols = line.Split('\t'); E13.Text = cols[1].Trim(); //W E14.Text = cols[0].Trim(); //S AddPoints(); } } catch { } } } } } } using System; using System.Collections.Generic; 112 using using using using using using using System.ComponentModel; System.Data; System.Drawing; System.Linq; System.Text; System.Windows.Forms; ZedGraph; namespace ImageGPS { public partial class frmPlot : Form { public List mySeries= new List(); public List myLines = new List(); public frmPlot() { InitializeComponent(); } public void PlotData(string strContent, bool skipHeader) { try { this.Cursor = Cursors.WaitCursor; this.Text = Báo cáo th ng kê ; ImportData(strContent, skipHeader); CreateGraph(ZedGraphControl1); this.Cursor = Cursors.Default; } catch (Exception ex) { MessageBox.Show(ex.Message); } } private void ImportData(string strContent, bool skipHeader) { int rowIndex=0; double tmpValue=0; string strData; string strTag; DataSeries seriHb = new DataSeries(); DataSeries seriQ = new DataSeries(); if (strContent.Trim() =="") { return; } try { string[] lines = strContent.Split(new string[] { "\r\n", "\n" }, StringSplitOptions.None); seriHb.Name = "Hb"; seriHb.LineColor = Color.Blue; seriHb.Symbol.Type = SymbolType.Circle; seriQ.Name = "Q"; seriHb.LineColor = Color.Red; 113 seriHb.Symbol.Type = SymbolType.Circle; for (int i = 0; i < lines.Length; i++) { if (!(skipHeader && i == 0)) { strData = lines[i]; string[] cols = strData.Split(new string[] { "\t\t", "\t\t" }, StringSplitOptions.None); rowIndex++; tmpValue = Double.Parse(cols[1]); strTag = cols[0].Trim() + "\t" + tmpValue.ToString(); seriHb.Data.Add(rowIndex, tmpValue,strTag); tmpValue = Double.Parse(cols[2]); seriQ.Data.Add(rowIndex, tmpValue, strTag); } } mySeries.Add(seriHb); mySeries.Add(seriQ); } catch (Exception ex) { MessageBox.Show(ex.Message); } } private void CreateGraph(ZedGraph.ZedGraphControl zgc) { GraphPane grf = zgc.GraphPane; grf.Title.Text = K t qu mơ hình ; grf.YAxis.Title.Text = Giá tr ; grf.XAxis.Title.Text = L n th ; grf.XAxis.Type = AxisType.Ordinal; //grf.XAxis.Scale.MajorUnit = DateUnit.Month; //grf.XAxis.Scale.MinorUnit = DateUnit.Day; grf.Legend.Position = LegendPos.InsideTopRight; grf.Legend.Gap = 20; grf.Legend.IsHStack = false; grf.XAxis.MajorGrid.IsVisible = true; grf.XAxis.MajorGrid.DashOff = 0; grf.XAxis.MajorGrid.Color = Color.Gray; grf.YAxis.MajorGrid.IsVisible = true; grf.YAxis.MajorGrid.DashOff = 0; grf.YAxis.MajorGrid.Color = Color.Gray; grf.CurveList.Clear(); for (int i = 0; i