1. Trang chủ
  2. » Luận Văn - Báo Cáo

Luận văn thạc sĩ Kỹ thuật công trình biển: Ứng dụng mô hình Xbeach trong đánh giá hiệu quả giảm sóng của rừng ngập mặn ở vùng ven biển Việt Nam

148 0 0
Tài liệu đã được kiểm tra trùng lặp

Đ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

Thông tin cơ bản

Tiêu đề Ứng dụng mô hình Xbeach trong đánh giá hiệu quả giảm sóng của rừng ngập mặn ở vùng ven biển Việt Nam
Tác giả Nguyễn Kiệt
Trường học Đại học Bách khoa Thành phố Hồ Chí Minh
Chuyên ngành Kỹ thuật công trình biển
Thể loại Luận văn thạc sĩ
Năm xuất bản 2020
Thành phố Tp. Hồ Chí Minh
Định dạng
Số trang 148
Dung lượng 4,07 MB

Cấu trúc

  • 2.1.3 NghLrQFӭXWKHRKѭӟQJP{KuQKVӕ (0)
  • 2.2.2 ҦQKKѭӣng cӫa sóng cӵc dài trong lan truyӅn sóng (35)
  • 2.2.4 Các công thӭc tính toán chiӅu cao sóng trong XBeach (37)
  • 3.1.3 HiӋu chӍnh vj kiӇPÿӏnh mô hunh toin (40)
  • 3.2.1 ĈLӅXNLӋQELrQYjÿӏDKuQKQӅQÿi\ (43)
  • 3.2.2 ĈLӅXNLӋQFkQEҵQJFӫDVyQJGjLERXQGORQJZDYHWҥLELrQQJRjLNKѫL (0)
  • C.4.1 Dv ± Hsw ± h (104)

Nội dung

ҦQKKѭӣng cӫa sóng cӵc dài trong lan truyӅn sóng

7KHRQJKLrQFӭXFӫD(Pearson, 2016), sóng dài là sóng có chu kì dài YjVyQJQJҳQ là sóng có FKXNuQJҳQJLiWUӏFӫDchu kì sӁTX\ÿӏQKORҥLVyQJ± ÿѭӧFSKkQORҥLQKѭVDX

&yORҥLVyQJÿѭӧFSKkQORҥLWKHRchu kìVyQJGjLWѭѫQJÿѭѫQJYӟLVyQJFychu kì dài KѫQ25 (sYjVyQJQJҳQWѭѫQJÿѭѫQJYӟLVyQJFychu kì QKӓKѫQ 25 (s)

ViӋF[iFÿӏnh khu vӵc nghiên cӭu có bӏ WiFÿӝng bӣi sóng dài hay không phө thuӝc vào nhiӅu yӃu tӕ 7URQJÿyÿӝ dӕc cӫDÿi\ELӇn là mӝt trong nhӳng yӃu tӕ quan trӑng nhҩt theo nghiên cӭu cӫa (Dongeren, 2007)

7KHRÿӏQKOXұW*UHHQVӵJLDWăQJFKLӅXFDRVyQJGjLH lw NKLVyQJODQWUX\ӅQYjRYQJ QѭӟFQông phө thuӝc vào hàm sӕ sau: ܪ ௟௪ ൌ ܭ ൈ ݄ ି௔ (2.23)

7URQJÿy.OjKҵng sӕ, h là chiӅXVkXQѭӟc, a là hӋ sӕ phө thuӝc vào hӋ sӕ chuҭn hóa ÿӝ dӕFÿi\ELӇn ߚ: ߚ ൌ ݄ ௫ ߱ ට ݃ ݄

7URQJÿyKx Ojÿӝ dӕFÿi\ELӇn, ߱ OjWҫQVӕJyFFӫDVyQJGjL.KLÿyH lw tӍ lӋ nghӏch vӟi a và tӍ lӋ thuұn vӟi ߚ HӋ sӕ ߚ WăQJlên dүQÿӃQÿӝ dӕFÿi\ELӇn sӁ dӕFKѫQYjFKXNǤ sóng FNJQJOӟQKѫQ7KHRQJKLrQFӭu cӫa (Dongeren, 2007) khi hӋ sӕ ࢼ ൏ ૙Ǥ ૜ WKuWiFÿӝQJFӫD VyQJGjLÿӕLYӟi khu vӵc bӡ biӇQOjÿiQJNӇ nhҩt, thích hӧp cho bӡ biӇQFyÿӝ dӕFÿi\WKRҧi tӯ ÿӃQ 1Jѭӧc lҥLÿӕi vӟLFiF WUѭӡng hӧp có ࢼ ൐ ૙Ǥ ૜WKuVӵJLDWăQJFӫD FKLӅXFDRVyQJGjLH lw OjNK{QJÿiQJNӇNKLVyQJODQWUX\ӅQYjREӡ

2.2.3 0{KuQKFk\QJұSPһQWUong XBeach

Mô hình XBHDFKFyWKӇGQJÿӇP{KuQKKyDVӵWiFÿӝQJFӫDUӯQJQJұSPһQÿӕLYӟL NKXYӵFYHQELӇQ;%HDFKP{SKӓQJVӵWKD\ÿәLWKHRSKѭѫQJÿӭQJFӫDFk\QJұSPһQ WѭӧQJWUѭQJFKREDSKҫQFKtQKOjUӉWKkQYjWiQFây (Janssen, 2016)

Hình 2.3 ± Mô hình mô phӓng cây ngұp mһn

XBeach mô phӓng mӛi phҫn cӫa cây ngұp mһQ[HPQKѭOjFiFWKkQKuQKWUө có các thông sӕ QKѭFKLӅu cao cây ngұp mһn ႙ݒÿѭӡng kính thân (ܾݒPұWÿӝ cây (ܰݒ) và hӋ sӕ cҧn (ܥܦFӫDFӫDWӯQJSKҫQVӁWKD\ÿәLWѭѫQJӭQJWKHRORҥLFk\QJұSPһQFҫQP{SKӓQJ

Các công thӭc tính toán chiӅu cao sóng trong XBeach

Trong mô hình XBeach, giá trӏ chiӅu cao sóng xuҩt ra tӯ mô hình ÿѭӧc hiӇu là chiӅu cao sóng ngҳQFyQJKƭD ܪ ௥௠௦ , vì vұy chiӅu cao sóng ngҳn Hsw ÿѭӧc [iFÿӏnh theo công thӭc sau: ܪ ௦௪ ൌ ξʹܪ ௥௠௦ (2.25)

7URQJÿy ܪ ௥௠௦ ± FKLӅXFDRVyQJQJҳQWUXQJEuQKWKHRWKӡLJLDQWҥLYӏWUtWtQKWRiQWѭѫQJӭQJ Công thӭc tính toán sóng dài, ÿѭӧF[iFÿӏQKQKѭVDX: ܪ ௟௪ ൌ Ͷටݒܽݎ൫ߟሺݐሻ൯ (2.26)

7URQJÿy ߟሺݐሻ± giá trӏ mӵFQѭӟc biӇn biӃQÿәi theo thӡi gian

ChiӅu cao sóng tәng hӧp H tot phө thuӝc vào chiӅu cao sóng ngҳn và chiӅu cao sóng dài, ÿѭӧc tính toán theo công thӭc sau: ܪ ௧௢௧ ൌ ටܪ ௦௪ ଶ ൅ ܪ ௟௪ ଶ (2.27)

CKѭѫQJQj\VӁWUuQKEj\FiFKFKӑQFiFWK{QJVӕÿҫXYjRFӫDP{KuQK YjFiFEѭӟFWKLӃW OұSP{KuQKWRiQ;%HDFK&iFWK{QJVӕÿҫXYjRFKӫ\ӃXFӫDP{KuQKOjFiFWK{QJVӕÿӝQJ OӵFKӑFFӫDVyQJYj WKӫ\WULӅXWK{QJVӕFӫDUӯQJQJұSPһQYjWK{QJVӕÿӏDKuQKQӅQÿi\

7URQJQJKLrQFӭXQj\VӕOLӋXÿҫXYjROjPӝWWәKӧSFiFWK{QJVӕ FӫDFiF\ӃXWӕҧQK KѭӣQJÿӃQVӵWѭѫQJWiFJLӳDUӯQJQJұSPһQYjVyQJODQWUX\ӅQYjREӡ&iFWK{QJVӕÿҫX YjRÿѭӧFOҩ\WӯP{KuQKWRiQDelft DashboardÿѭӧFFKLDOjPQKyPFKtQKQKѭVDXÿӏD KuQKÿi\Fk\QJұSPһQYjWKӫ\ ÿӝQJOӵFKӑFVyQJWKӫ\WULӅX

6yQJYjWKͯ\WUL͉X 7KHRQJKLrQFӭXFӫD(Mendez, 2004) VӵWѭѫQJWiFFӫDVyQJYjFk\

WKӵFYұWYHQELӇQSKөWKXӝFFKӫ\ӃXYjRFKLӅXFDRVyQJFKXNǤVyQJYjKѭӟQJVyQJTrong SKҥPYLQJKLrQFӭXP{KuQKFKӍ[HP[pWKѭӟQJVyQJFKtQK± KѭӟQJYX{QJJyFYӟLEӡÿӕL YӟLEjLWRiQ;%HDFK'

Hình 3.1 ± 6ӕOLӋXVyQJYjWKӫ\WULӅXJKLQKұQÿѭӧFWӯFѫQEmR/LQGDWҥLYQJQJRjLNKѫL

9ӅVӕOLӋXFӫDFKLӅXFDRVyQJFKXNǤVyQJYjPӵFQѭӟFGkQJGRWKӫ\WULӅXVӁÿѭӧFOҩ\ theo thông VӕFӫDFѫQEmR/LQGD[ҧ\UDYjRWKiQJYjQăP± FѫQEmRÿѭӧF[HP Oj³WӗLWӋ´QKҩWӣNKXYӵFĈӗQJEҵQJV{QJ&ӱX/RQJ(Takagi H., 2017)ÿһFELӋWOjNKXYӵF WӍQK%ҥF/LrX

&KLӅXFDRVyQJcó QJKƭD+rms OӟQQKҩWÿѭӧFJKLQKұQOrQÿӃQPFKXNǤVyQJOӟQQKҩW

Tp,max OjVYjRNKRҧQJFXӕLWKiQJYjÿҫXWKiQJ QăP7URQJNKLÿyPӵFQѭӟF

GDRÿӝQJGRWKӫ\WULӅXÿѭӧFJKLQKұQOjPWKHRHình 3.1 ± sӕOLӋXVyQJYjWKӫ\WULӅXJKL QKұQÿѭӧFWӯ FѫQEmR/LQGDWҥLYQJQJRjLNKѫL&{Qÿҧo YjRWKiQJYjQăP Tҥi tӑDÿӝ (8°30'N, 106°E) (Nguӗn: ERA ± Interim và Delft Dashboard) tәng hӧp các thông sӕ VyQJÿѭӧc khai báo trong mô hình sӕ

ChiӅu cao sóng gӗPWUѭӡng hӧp ܪ ൌ ሾͳͳǤͷʹʹǤͷ͵ሿ, chu kǤ sóng gӗPWUѭӡng hӧp ܶ ௣ ൌ ሾͶ͸ͺͳͲሿ, mӵF Qѭӟc do thӫy triӅu gӗP WUѭӡng hӧp ܦ ൌ ሾͲǤͷͲǤ͹ͷͳͳǤʹͷͳǤͷͳǤ͹ͷʹʹǤʹͷʹǤͷሿWәKӧSOҥLFiFWUѭӡQJKӧSWUrQWKuWѭѫQJӭQJYӟLPӛL WUѭӡQJKӧSPұWÿӝFk\QJұSPһQPұWÿӝWKѭDPұWÿӝWUXQJEuQKPұWÿӝFDRvà không có UӯQJVӁFyWUѭӡQJKӧSWK{QJVӕÿҫXYjR1Kѭ Yұ\WәQJFӝQJVӁFy[ WUѭӡQJKӧSWK{QJVӕÿҫXYjRFKRFҧWUѭӡQJKӧSPұWÿӝFk\QJұSPһQ

%ҧQJ3.1 ± 7K{QJVӕVyQJYjWKӫ\WULӅXWҥLELrQQJRjLNKѫL± &{QĈҧR

%ӅUӝQJGҧLUӯQJ B 500 750 1000 1250 1500 1750 2000 2250 2500 m 0ӵFQѭӟFGkQJGRWKӫ\WULӅX D 0.5 0.75 1 1.25 1.5 1.75 2 2.25 2.5 m

3.1.2 7K{QJVӕÿӏDKuQKÿi\YjUӯQJQJұSPһQ

7K{QJV͙KuQKK͕FFk\QJ̵SP̿Q WKHRP{KuQKFӫD(Janssen, 2016) Fk\QJұSPһQÿѭӧF

WKjQKSKҫQFKtQKUӉWKkQYjWiQOi0ӛLSKҫQFӫDFk\QJұSPһQVӁFyÿһFWtQKULrQJGүQ ÿӃQPӭFÿӝJLҧPVyQJFӫDWӯQJNKXYӵFFNJQJNKiFELӋWQәLEұWOjPұWÿӝYjPӭFÿӝPD ViWYӟLVyQJWURQJWӯQJSKҫQĈҥLGLӋQFKRPӭFÿӝPDViWFӫDWӯQJSKҫQYӟLVyQJWK{QJ VӕÿҥLGLӋQӣÿk\OjKӋVӕFҧQC D = [0.8 0.6 1.0] ÿѭӧFFKӑQWѭѫQJӭQJYӟLEӝSKұQUӉWKân

YjWiQOi7URQJÿyFKӍUDUҵQJSKҫQWiQOiVӁFҧQÿѭӧFQKLӅXVyQJQKҩWWLӃSÿӃQOjEӝSKұQ UӉYjFXӕLFQJOjEӝSKұQWKkQFk\QJұSPһQ ĈӕLYӟLFiFWK{QJVӕYӅÿѭӡQJNtQKFKLӅXFDRPұWÿӝFӫDFk\QJұSPһQVӁÿѭӧFOҩ\ theo %ҧQJ3.2 ± &ҩXWU~F510NKXYӵFQJKLrQFӭXWѭѫQJӭQJFKRWUѭӡQJKӧSUӯQJFy PұWÿӝNKiFQKDXQҵPWURQJSKҥPYLQJKLrQFӭXQj\

1JRjLUDWKHRQJKLrQFӭXFӫD(Giri C., Ochieng E., 2011) FKӍUDUҵQJUӯQJQJұSPһQFKӫ\ӃXVLQKVӕQJӣNKXYӵFPӵFQѭӟFWULӅXWKѭӡQJ[X\rQOrQ[XӕQJQrQWURQJQJKLrQFӭXQj\FyWKӇ[ҩS[ӍUҵQJEӅUӝQJFӫDUӯQJQJұSPһQOjPӝWKjPVӕSKөWKXӝFYjRPӵc

QѭӟFWULӅXYjÿӝGӕFFӫDÿӏDKuQKÿi\.KLÿyJLiWUӏEӅUӝQJGҧLUӯQJ%VӁÿѭӧFWtQK toán QKѭVDXB = (1 / ÿӝGӕF) x 0ӵFQѭӟFGkQJGRWULӅXWѭѫQJӭQJ[iFÿӏQKÿѭӧFJLiWUӏ% trong %ҧQJ3.1

N v VӕUӉWKkQOiWUrQPpWYX{QJ; b v ÿѭӡQJ kính rӉWKkQOi; a h FKLӅXFDRUӉWKkQOi Ĉ͓DKuQKÿi\: WKHRQJKLrQFӭXFӫD (Albers, 2013) WKuYQJELӇQNKXYӵFĈӗQJEҵQJV{QJ

&ӱX/RQJ± NKXYӵFUӯQJQJұSPһQVLQKVӕQJFyÿӝGӕFUҩWWKRҧLYjRNKRҧQJĈһFELӋWGӳ OLӋXWUtFK[XҩWWӯP{KuQKWRiQDelft DashboardFKRWKҩ\WҥLYQJELӇQWҥL%ҥF/LrX ÿӝGӕF OjSKKӧSFKRP{KuQKWtnh toán.

HiӋu chӍnh vj kiӇPÿӏnh mô hunh toin

6ӕOLӋXFKLӅXFDRVyQJYjFKXNuVyQJÿѭӧFWUtFK[XҩWWӯ'HOIW'DVKERDUGYjWӯ ERA5: https://www.ecmwf.int/en/forecasts/datasets/reanalysis-datasets/era-interim-land

Hình 3.2 ± 9ӏWUtÿLӇP A5 ± biên syQJQJRjLNKѫLYj$± ÿLӇPVRViQK

P{KuQKYӟLVӕOLӋXWKӵFÿӏD

Hình 3.3 ± 9ӏWUӏ$Yj$WKHRPһWFҳWQJDQJEӡ

1JXӗQVyQJÿһWWҥLÿLӇP$ÿLӇPÿӇKLӋXFKӍQKP{KuQKOjÿLӇP$FyWӑDÿӝ1, ả(

Hình 3.4 ± 6ӕOLӋXÿRÿҥFWӯ(5$WҥLÿLӇP$Yj$WURQJWKiQJYjQăP ĈӇKLӋXFKӍQKYjNLӇPFKӭQJP{KuQKVӕFySKKӧSWҥLYQJEҥF/LӋXKD\NK{QJWDFKӍ [pWNKRҧQJWKӡLJLDQEmRÿҥWÿӍQK± FKLӅXFDRVyQJOӟQQKҩW!PWURQJNKRҧQJWKӡLJLDQ WӯQJjy 31/10/1997 ÿӃQKӃWQJj\04/11/1997

Mô huQK;%HDFKEDQÿҫu sӁ ÿѭӧc khai bio vӟi cic thông sӕ mһFÿӏnh Mӝt sӕ thông sӕ ÿLӇn huQKQKѭ

6DXNKLFKҥ\P{KuQKÿҥWÿѭӧFNӃWTXҧVRViQKWURQJKuQKGѭӟLÿk\QKѭVDX

Hình 3.5 ± 6ӕ OLӋXÿRÿҥFWӯ(5$WҥLÿLӇP$tӯ ngj\ÿӃn 04/11/1997 so sinh vӟi kӃt quҧ tӯ mô hunh XBeach

.ӃWTXҧFKRWKҩ\UҵQJP{KuQK;%HDFKPһFÿӏQKFyFKLӅXFDRVyQJVDLNKiFVRYӟLNӃW TXҧÿRÿҥFWURQJNKRҧQJWKӡLJLDQtӯ ngjy 31/10/1997 ÿӃn 04/11/1997QKѭYұ\P{KuQK FҫQÿLӅXFKӍQKÿӇÿҥWÿѭӧFÿӝFKtQK[iFFKҩSQKұQÿѭӧF

3KѭѫQJiQKLӋXFKӍQKWURQJ WUѭӡQJKӧSQj\ÿӇP{KuQKWRiQFyNӃWTXҧSKKӧSFҫQ FKLӅXFDRVyQJ+FҫQJLҧPEӟW%ӣLYu[XKѭӟQJFӫDFKLӅXFDRVyQJWURQJP{KuQKVӕGӵ ÿRiQNKiSKKӧSVRYӟLVӕOLӋXÿRÿҥF0{KuQKWRiQPӟLVӁÿLӅXFKӍQKKӋVӕPDViWVyQg fw theo (Yusuke Uchiyama, 2010):

Hình 3.6 ± ӃWTXҧKLӋXFKӍQKWKDPVӕI w WӯP{KuQKVӕ

1KѭYұ\ ÿӕLYӟLEjLWRiQP{KuQKVӕWҥLYQJ%ҥF/LrXWKDPVӕIZFҫQÿѭӧFWtQKWRiQ OҥLWKHRNKRҧQJJLiWUӏ>0.011 ~ 0.018] ÿӇP{KuQKWRiQÿ~QJKѫQVRYӟLWKӵFWӃWKD\YuVӱ GөQJPһFÿӏQKJLiWUӏOj

3.2 &iFEѭӟFWKLӃWOұSP{KuQKWRiQ

6ѫÿӗP{WҧFiFEѭӟFWKLӃWOұSP{KuQK Vӕ:

Hình 3.7 ± 6ѫÿӗWKLӃWOұSFiFWK{QJVӕFӫDP{KuQKWRiQWUrQ;EHDFK

ĈLӅXNLӋQELrQYjÿӏDKuQKQӅQÿi\

Trong P{KuQKWRiQ;EHDFKÿӏDKuQKQӅQÿi\FҫQWKӓDFiF\rXFҫXFӫDÿLӅXNLӋQELrQ ngoàLNKѫLQKѭVDX

+ 7ӍOӋFKLӅXFDRVyQJFyQJKƭDH YӟLFKLӅXVkXQѭӟFh

+ 7ӍOӋYұQWӕFQKyPFӫDVyQJC g YӟLYұQWӕFWUX\ӅQVyQJC

Hình 3.8 ± ĈLӅXNLӋQFӫDFKLӅXVkXQѭӟFFKLӅXFDRVyQJYjFKXNǤVyQJWURQJPô hình XBeach 9QJ[DQKOiFk\OjYQJWKӓDPmQÿLӅXNLӋQP{KuQK5RHOYLQN

&KLӅXFDRVyQJOӟQQKҩW OjPQrQFKLӅXVkXQѭӟFWӕLWKLӇXWҥLELrQQJRjLNKѫLOjP

&KXNǤVyQJOӟQ QKҩWOj (s) QrQQrQFKLӅXVkXQѭӟFWӕLWKLӇXWҥLELrQQJRjLNKѫLOà 12m

Vì vұ\ÿӇ thӓDPmQKDLÿLӅu kiӋn trên thì chiӅu VkXQѭӟc tҥLELrQQJRjLNKѫLOjh = 12m

Ví dөWURQJWUѭӡng hӧp Tp = 10 (s) thì ܶ ௠ିଵǡ଴ ൌ ் ೛ ଵǡଵൌ ଵ଴ ଵǡଵ ൌ ͻǡͳ (s)KӋVӕQ WKeo

%LrQWUrQEӡ QҵPWҥLYӏWUtFiFKÿLӇPNӃWWK~FFӫDUӯQJQJұSPһQPӝWÿRҥQ1km Các ELrQÿѭӧFNKDLEiRWUrQP{KuQKOj

IURQW DEVBGELrQQJRjLNK˯L left =wall right =wall

7URQJÿyELrQQJRjLNKѫL OjVyQJÿѫQFyFKLӅXFDREDQÿҫXOj+ ÿѭӧFOҩ\Wӯ%ҧQJ3.1 6ӵWiFÿӝQJFӫDWKӫ\WULӅXFKѭDÿѭӧF[pWÿӃQWURQJP{KuQKWҥLELrQQJRjLNKѫLWKD\YjR ÿyP{KuQKFKӍOҩ\PӵFQѭӟFGkQJFӫDWKӫ\WULӅXOjPӵFQѭӟFWƭQKĈӕLYӟLELrQErQWUiL và biên bên phҧLOjELrQNKpSNtQÿѭӧFNKDLEiRPһFÿӏQKWURQJP{KuQK'QJKƭDOjNK{QJ FyOѭXOѭӧQJGzQJFKҧ\UDKDLELrQWUiLYjELrQSKҧLFӫDP{KuQK

7KHRVӕOLӋX QӅQÿi\WӯP{KuQK'HOIW'DVKERDUGYQJELӇQWҥL%ҥF/LrXFyÿӝGӕFNKRҧQJ1/10001KѭYұ\YӟLFKLӅXVkXQѭӟFOjPPLӅQWtQKWRiQFӫDP{KuQKVӁFy

FKLӅXGjL12*1000 = 12km WtQKWӯELrQQJRjLNKѫLÿӃQÿLӇPEҳWÿҫXUӯQJQJұSPһQ Vùng ELrQQJRjLNKѫLFyWӑDÿӝ[ -12000mYjPpSEӡOj[ P

Hình 3.9 ± 0һWFҳWQJDQJFӫDP{KuQKWRiQUӯQJQJұSPһQWUrQ;EHDFK

3.2.2 ĈLӅXNLӋQFkQEҵQJFӫDVyQJGjL (bound long wave) WҥLELrQQJRjLNKѫL

Các NӃW TXҧ FKLӅX FDR VyQJ GjL FKR WKҩ\ H lw WăQJ GҫQ Wӯ ELrQ QJRjL NKѫL WURQJ PӝW NKRҧQJFiFKQKҩWÿӏQKVDXÿyVӁÿҥWÿӝәQÿӏQKYjWUX\ӅQYjREӡ9uYұ\FҫQ[iFÿӏQK NKRҧQJFiFKWӕLWKLӇXD lw,equi ÿӇVyQJGjLÿҥWÿәәQÿӏQKNKLWUX\ӅQYjREӡYӟLÿLӅXNLӋQ VRViQKOjJLiWUӏ+lw WҥLPӛLÿLӇPKѫQNpPJLiWUӏWUXQJEuQKFӫD+lw là +/- 15% ĈӇORҥLWUӯVӵJLDWăQJYӅFKLӅXFDRFӫDVyQJGjLNKLODQWUX\ӅQYjREӡP{KuQKVӁFKҥ\ YӟLPiLGӕFEҵQJYjNK{QJFyVӵKLӋQGLӋQFӫDUӯQJQJұSPһQĈӇ[iFÿӏQKD lw,equi , ba WUѭӡQJKӧSYӟLWK{QJVӕÿҫXYjRÿѭӧF[pWÿӃQOj

.KLÿyWѭѫQJӭQJYӟLPӛLWUѭӡQJKӧSNӃWTXҧFӫDYұQWӕFQKyPVyQJ&JYұQWӕFWUX\ӅQ sóng C YjVӕVyQJQÿѭӧFWtQKQKѭVDX[HPFKLWLӃWWtQKWRiQӣ

%ҧQJ3.3 - VұQWӕFQKyPVyQJ&JYұQWӕFWUX\ӅQVyQJ&YjVӕVyQJQ

9ӟLFK~êUҵQJÿӝSKkQJLҧLô WURQJWUѭӡQJKӧSQj\OjÿӗQJÿӅXYjEҵQJ5m

Hình 3.10 ± 6ӵJLDWăQJPӝWFiFKQKDQKFKyQJFӫD+OZWURQJEDWUѭӡQJKӧS ĈѭӡQJQpWÿӭWWKӇKLӋQJLiWUӏWUXQJEuQKFӫD+lw WӯELrQQJRjLNKѫLÿӃQELrQWURQJEӡ

CyWKӇWKҩ\UҵQJJLiWUӏFӫDH lw FҫQPӝWNKRҧQJFiFKQKҩWÿӏQKD lw,equi ÿӇÿҥWÿѭӧFÿӝ әQÿӏQKWUѭӟFNKLWUX\ӅQYjRWURQJEӡ.KLJLiWUӏQFjQJWăQJWKuNKRҧQJFiFKD lw,equi FNJQJ WăQJWKHR1KѭYұ\NKRҧQJFiFKD lw,equi = 1000m ÿѭӧFFKӑQÿӇVyQJGjLWURQJFiFWUѭӡQJ

KӧSÿҥWÿѭӧFFKLӅXFDRәQÿӏQK9ӟLFK~êUҵQJFiFÿLӇPGQJÿӇTXDQViWKRһFWtQKWRiQ FҫQFiFKELrQQJRjLNKѫLPӝWNKRҧQJtWQKҩWEҵQJD lw,equi = 1000m

3.2.3 &KӑQÿӝSKkQJLҧLWӕLѭXFӫDô tính toán ĈӝSKkQJLҧLFӫDô tính toán VӁWKD\ÿәLWӯELrQQJRjLNKѫLÿӃQEӡÿӇJLҧPWKLӇXWKӡL JLDQFKҥ\ P{KuQKFNJQJQKѭÿҥWÿѭӧFNӃWTXҧÿiQJWLQFұ\.tFKWKѭӟFFӫD{VӁWăQJGҫQ WӯNKXYӵFJҫQEӡÿӃQELrQQJRjLNKѫLĈӇÿҥWÿѭӧFNtFKWKѭӟFô WtQKWRiQWӕLѭXFҫQWKӓD PmQQKӳQJÿLӅXNLӋQsau:

+ KDLEiRVӕ&)/SKKӧSӢÿk\OjP{KuQK'QrQCFL = 0.9 TURQJÿy CFL OjÿLӅXNLӋQәQÿӏQKWURQJSKѭѫQJSKiSWtQKWRiQVӕNKLJLҧLSKѭѫQJWUuQKYLSKkQ Case H (m) Water depth

WӯQJSKҫQ ĈLӅXNLӋQ&RXUDQW-Friedrich-/HZ\QrQ QKӓKѫQÿӇ ÿҧPEҧRUҵQJ SKҫQWӱVyQJWtQKWRiQODQWUX\ӅQVӁQҵPWURQJ{WtQKWRiQ

+ 6ӕQ~Wô WUrQPӛLFRQVyQJ GjLtWQKҩWOj 6X\UDNtFKWKѭӟF{OӟQQKҩWOjG max =

L lw /4 (Hình 3.11) 9ӟLFiFWK{QJVӕÿҫXYjRFӫDP{KuQKVDXNKLFKҥ\FiFWUѭӡQJ

KӧSWKӱQJKLӋPWKuFKLӅXGjLFӫDVyQJGjLWҥLYQJQJRjLNKѫLÿҥWWӯPÿӃQ P.tFKWKѭӟF{ô ÿѭӧFFKӑQQҵPWURQJNKRҧQJPÿӃQP1KѭYұ\FKӑQ

Hình 3.11 ± tFKWKѭӟF{WtQKWRiQOӟQQKҩW

+ ĈӇÿҧPEҧRÿӝPӏQFӫDô WtQKWRiQWKuNtFKWKѭӟFô NKLWăQJKRһFJLҧPWӕLÿDOj

+ KXYӵFJҫQEӡ{tính toán nên cKӑQWӯ1m ÿӃQ5m ĈӇFKӑQUDPұWÿӝô WtQKWRiQWӕLѭXFKRP{KuQKWUѭӡQJKӧSVӁÿѭӧF[pWÿӃQYӟLPұW ÿӝô WăQJGҫQWURQJÿyWUѭӡQJKӧSVӁÿѭӧFWKDPFKLӃXYjVRViQKYӟLWUѭӡQJKӧSFzQ OҥL

%ҧQJ3.4 ± KtFKWKѭӟF{WtQKWRiQWURQJFiFWUѭӡQJKӧS ӢYQJELrQQJRjLNKѫL{WtQKWRiQFyNtFKWKѭӟFOjPVDXÿyJLҧPGҫQÿӃQNKXYӵF QѭӟFQ{QJYjUӯQJQJұSPһQ7ҥLNKXYӵFUӯQJQJұSPһQNtFKWKѭӟF{WtQKWRiQÿѭӧF[pW ÿӃQJӗPPPPPYjPWѭѫQJӭQJYӟLFiFWUѭӡQJKӧSYj

Hình 3.12 ± &iFWUѭӡQJKӧSYӟLNtFKWKѭӟFNKiFQKDXFӫD{WtQKWRiQ

7K{QJVӕÿӇ[iFÿӏQKVӵVDLVӕFӫDWUѭӡQJKӧSYjVRYӟLWUѭӡQJKӧSFy{ô tính toán nhӓQKҩWOjPÿѭӧF[iFÿӏQKWKHRF{QJWKӭFVDX Ψዎ ൌ ሺዅ኷ʹǡ͵ǡͶǡͷ െ ዅ኷ͳሻ ዅ኷ͳ ൈ ͳͲͲΨ (3.1)

Hình 3.13 ± 6DLVӕFӫDOӵFVyQJWURQJWUѭӡQJKӧSYӟLNtFKWKѭӟF ô tính toán 2m, 5m, 8m và 10m

Các kӃt quҧ cҫn so sánh gӗm chiӅu cao sóng ngҳn Hsw, mӵFQѭӟFȘOӵc sóng Fx tҥLÿLӇm V2 và chiӅu cao sóng dài Hlw tӯ ELrQQJRjLNKѫLÿӃn bӡÿѭӧc trình bày trong các hình sau:

Hình 3.14 ± Sai sӕFӫDFKLӅXFDRVyQJGjLWURQJWUѭӡQJKӧSYӟLNtFKWKѭӟF ô tính toán 2m, 5m, 8m và 10m

Hình 3.15 ± 6DLVӕFӫDFKLӅXFDRVyQJQJҳQWURQJWUѭӡQJKӧSYӟLNtFKWKѭӟF ô tính toán 2m, 5m, 8m và 10m

Hình 3.16 ± 6DLVӕFӫDPӵFQѭӟFWURQJWUѭӡQJKӧSYӟLNtFKWKѭӟF ô tính toán 2m, 5m, 8m và 10m

Hình 3.17 ± 6DLVӕWUXQJEuQKFӫDFKLӅXFDRVyQJGjLFKLӅXFDRVyQJQJҳQ YjOӵFVyQJ

.KLNtFKWKѭӟFFӫD{WtQKWRiQWăQJWKuVDLVӕFNJQJWăQJWKHRWѭѫQJӭQJYӟLWUѭӡQJKӧS có ô ô EҵQJPPPYjP7URQJÿyVDLVӕFӫDFKLӅXFDRVyQJGjLFKLӅXFDRVyQJQJҳQYjPӵFQѭӟFNK{QJOӟQYjQKӓKѫQ1KѭQJJLiWUӏFӫDOӵFVyQg F x FyVDLVӕWѭѫQJ ÿӕLOӟQYӟLWUѭӡQJKӧSNtFKWKѭӟF{OjPWKuVDLVӕOrQWӟLKѫQ

%rQFҥQKÿyFyWKӇWKҩ\UҵQJYӟL{FjQJQKӓWKuWKӡLJLDQFKҥ\P{KuQKWURQJWKӵFWӃ FjQJOӟQ9tGөYӟL{WtQKWRiQOjPWKuSKҧLFҫQÿӃQSK~WÿӇFKҥ\[RQJ WUѭӡQJKӧS 9uYұ\ÿӇU~WQJҳQWKӡLJLDQFKҥ\P{KuQKFNJQJQKѭÿҧPEҧRÿӝFKtQK[iFVDLVӕNK{QJ TXiOӟQWUѭӡQJKӧS± {WtQKWRiQEҵQJPVӁÿѭӧFFKӑQÿӇWKLӃWOұSP{KuQKYӟLVDLVӕ WURQJNKRҧQJFKҩSQKұQOjGѭӟL10%

7URQJNKLWKLӃWOұSP{KuQKFҫQNKDLEiRWKӡLJLDQFKҥ\ÿӇÿҧPEҧRUҵQJNӃWTXҧÿҫXUD cӫDP{KuQKVӁÿҥWÿѭӧFWUҥQJWKiLәQÿӏQK7UҥQJWKiLәQÿӏQKӣÿk\ÿѭӧFÿӏQKQJKƭDUҵQJ NӃWTXҧÿҫXUDWҥLPӝWYӏWUtQKҩWÿӏQKVӁNK{QJWKD\ÿәLQKLӅXWKHRWKӡLJLDQ0һFNKiF PLӅQWtQKWRiQFӫDP{KuQKFyFKLӅXGjLNKRҧQJ12km QrQVyQJODQWUX\ӅQWӯEiên ngoài NKѫLVӁFҫQPӝWNKRҧQJWKӡLJLDQQKҩWÿӏQKt spin-up ÿӇODQWUX\ӅQYjREӡFNJQJQKѭÿҥWÿѭӧF ÿӝәQÿӏQK ĈӇ[iFÿӏQKJLiWUӏFӫDt spin-up P{KuQKVӁÿѭӧFNKDLEiRWKӡLJLDQFKҥ\Ojtstop = 300

SK~WWLӃQJ YjNӃWTXҧÿiQKJLiVӁGӵDWUrQFKLӅXFDRVyQJQJҳQH sw (t) YjPӵFQѭӟF

ELӃQÿәLVHWXS¨Ș PӵFQѭӟFOҩ\PӕFOjPӵFQѭӟFWUXQJEuQKFӫDQѭӟFELӇQWKHRWKӡL JLDQWҥLYӏWUt9± YӏWUtEҳWÿҫXFӫDUӯQJQJұSPһQ

Hình 3.18 ± &KLӅXFDRVyQJQJҳQWKHR WKӡLJLDQWҥLÿLӇP9

Hình 3.19 ± 0ӵFQѭӟFELӃQÿәLWKHRWKӡLJLDQWҥLÿLӇP9

&iFNӃWTXҧWӯKDLKuQKWUrQÿѭӡQJPjXÿӓWKӇKLӋQJLiWUӏWUXQJEuQKFӫDFKLӅXFDRVyQJ QJҳQYjPӵFQѭӟFWURQJPӛLSK~WWӯÿyÿӇ[iFÿӏQKÿѭӧFWKӡLJLDQNKDLEiRFҫQWKLӃW ÿӇNӃWTXҧWӯP{KuQKÿҥWÿѭӧFәQÿӏQKĈѭӡQJPjX[DQKWKӇKLӋQJLiWUӏWӭFWKӡLWѭѫQJ ӭQJWKHRWKӡLJLDQ*LiWUӏFKLӅXFDRVyQJQJҳQÿҥWÿѭӧFÿӝ әQÿӏQKVDXNKRҧQJ30 phút và JLiWUӏPӵFQѭӟFÿҥWәQÿӏQKVDXNKRҧQJ60 phút4XDÿyFyWKӇ[iFÿӏQKUҵQJWKӡLJLDQ FҫQWKLӃWÿӇP{KuQKFKҥ\ÿѭӧFәQÿӏQKOjt spin-up = 60 phút

9ӟLFK~ êUҵQJYӟLÿӏDKuQKÿi\FjQJWKRҧLWKuFKLӅXGjLPLӅQWtQKWRiQWӯELrQQJRjL NKѫLÿӃQEӡVӁGjLKѫQYjVyQJVӁPҩWQKLӅXWKӡLJLDQKѫQÿӇODQWUX\ӅQÿӃQEӡĈӗQJQJKƭD NKLÿyJLiWUӏt spin-up VӁOkXKѫQÿӇP{KuQKÿҥWÿѭӧFVӵәQÿӏQKFҫQWKLӃW

1KѭYұ\ WKӡLJLDQNKDLEiRWәQJFӝQJÿӇFKҥ\P{KuQKt stop = t spin-up + t actual model = 60 + SK~W0{KuQKVӁFҫQt spin-up = 60 phút ÿҫXÿӇÿҥWÿӝәQÿӏQKYjODQWUX\ӅQVyQJ t actual model = 120 phút VDXVӁFKҥ\ÿӇ[XҩWUDFiFNӃWTXҧÿҫXUDFҫQWKLӃW

1ӝLGXQJ&+ѬѪ1* QKҵPJLҧLTX\ӃW FiFPөFWLrXQJKLrQFӭXӣ 0өF1.2 ÿѭӧFWKӇ KLӋQWURQJHình 4.1 QKѭVDX

Hình 4.1 ± Các vҩQÿӅTXDQWkPNKLSKkQWtFKNӃWTXҧWӯFiFWUѭӡQJKӧSFKҥ\P{KuQK

+LӋXTXҧ ODQWUX\ӅQVyQJTXDUӯQJQJұSPһQFyWKӇFKLDOjPEӕQ SKҫQFKtQKQKѭVDX

+ 6ӵWLrXWiQQăQJOѭӧQJVyQJWURQJUӯQJQJұSPһQ, QKҵP[iFÿӏQKQJX\ên nhân JLҧPVyQJFKtQKWURQJUӯQJQJұSPһQ

+ &iF\ӃXWӕWiFÿӝQJÿӃQVӵODQWUX\ӅQFӫDVyQJQJҳQ

+ &iF\ӃXWӕWiFÿӝQJÿӃQVӵODQWUX\ӅQFӫDVyQJGjL

+ 6ӵODQWUX\ӅQWәQJKӧSFӫDVyQJQJҳQYjVyQJGjL

4.1 6ӵWLrXWiQQăQJOѭӧQJWURQJUӯQJQJұSPһQ

7KHRQKѭF{QJ WKӭF(2.2), QăQJOѭӧQJVyQJWLrXWiQ NKLVyQJODQWUX\ӅQWӯQJRjLNKѫL YjREӡ - cyVӵKLӋQGLӋQFӫDUӯQJQJұSPһQSKөWKXӝFYjRED\ӃXWӕ

+ Dv QăQJOѭӧQJWLrXWiQGRVӵ[XҩWKLӋQFӫDUӯQJQJұSPһQ

+ Df QăQJOѭӧQJWLrXWiQGRPDViWÿi\ a) 1ăQJOѭӧQJsónJWLrXWiQGRUӯQJQJұSPһQ

Hình 4.2 ± 1ăQJOѭӧQJVyQJJLҧP D v GRUӯQJQJұSPһQ WUѭӡQJKӧSUӯQJFyPұWÿӝFDR

*LiWUӏFӫDQăQJOѭӧQJVyQJWLrXWiQ'v GRUӯQJQJұSPһQSKөWKXӝFYjRVӵKLӋQGLӋQ FӫDUӯQJ7KHR ÿyWURQJHình 4.2, Dv ÿҥWJLiWUӏOӟQQKҩW'v = 427 (W/m 2 WҥLÿLӇP9± ÿLӇPEҳWÿҫXFӫDUӯQJQJұSPһQ6DX ÿy'v OҥLJLҧPUҩWQKDQKYӅ[ҩS[ӍJLiWUӏWURQJ PÿӃQPÿҫXWLrQNKLVyQJODQWUX\ӅQYjRUӯQJ ĈѭӡQJPjX[DQKQѭӟFELӇQWKӇKLӋQJLiWUӏFӫD'v WURQJWUѭӡQJKӧSNK{QJFyUӯQJQJұS PһQ± ÿӗQJQJKƭDUҵQJJLiWUӏ'v = 0 (W/m 2 ) b) 1ăQJOѭӧQJVyQJWLrXWiQGRPDViWÿi\

Hình 4.3 ± 1ăQJOѭӧQJVyQJWLrXWiQ' f GRPDViWÿi\ tURQJWUѭӡQJKӧSUӯQJFyPұWÿӝFDR

1ăQJOѭӧQJVyQJWLrXWiQGRPDViWÿi\ÿҥWJLiWUӏOӟQQKҩWNKLVyQJODQWUX\ӅQYjRYQJ QѭӟFQ{ng ± YQJFKӏXVӵҧQKKѭӣQJFӫDÿӏDKuQKÿi\*LiWUӏOӟQQKҩWFӫD 'f là 0.57 (W/m 2 ) &ѫFKӃJLҧPFӫD'f FNJQJJLӕQJQKѭ'v khLVyQJÿLYjRUӯQJ'f JLҧPUҩWQKDQK WURQJPÿҫXYu'f FNJQJWӍOӋWKXұQYӟLH 3 WKHRF{QJWKӭF(2.6)

Dv ± Hsw ± h

% run ('C:/Users/kietn/OneDrive/KIET/000 Master Degree/001 Thesis/000

Report/Code_Mangrove/Toolbox/oetsettings.m')

%% SPARSE target_folder = '02 Sparse'; basePath = 'C:\Users\kietn\OneDrive\KIET\000 Master Degree\001 Thesis\000

DD = fullfile([basePath,target_folder]);

NN = setdiff({SS([SS.isdir]).name},{'.',' '}); % list of subfolders of D

NNN = sort(str2double(NN)); % convert string to numeric > then sort to get the right order of number 1 >>> 100

NNNN = string(NNN); % convert numeric back to string for ii = 1:numel(NNNN)

TT = dir(fullfile(DD,NNNN{ii},'*')); % improve by specifying the file extension

CC = {TT(4).name}; % files in subfolder for jj = 1:numel(CC) ncFil = fullfile(DD,NNNN{ii},CC{jj},'xboutput.nc')

Dveg = nc_varget(ncFil,'Dveg');

Dveg_V2_all(ii+1)= Dveg_V2; end end

%% MEDIUM target_folder_m = '03 Medium'; basePath_m = 'C:\Users\kietn\OneDrive\KIET\000 Master Degree\001 Thesis\000

DD_m = fullfile([basePath_m,target_folder_m]);

NN_m = setdiff({SS_m([SS_m.isdir]).name},{'.',' '}); % list of subfolders of D NNN_m = sort(str2double(NN_m)); % convert string to numeric > then sort to get the right order of number 1 >>> 100

NNNN_m = string(NNN_m); % convert numeric back to string for ii_m = 1:numel(NNNN_m)

TT_m = dir(fullfile(DD_m,NNNN_m{ii_m},'*')); % improve by specifying the file extension

CC_m = {TT_m(4).name}; % files in subfolder for jj_m = 1:numel(CC_m) ncFil_m = fullfile(DD_m,NNNN_m{ii_m},CC_m{jj_m},'xboutput.nc')

Dveg_m = nc_varget(ncFil_m,'Dveg');

Dveg_V2_all_m(ii_m+1)= Dveg_V2_m; end end

%% DENSE target_folder_d = '04 Dense'; basePath_d = 'C:\Users\kietn\OneDrive\KIET\000 Master Degree\001 Thesis\000

DD_d = fullfile([basePath_d,target_folder_d]);

NN_d = setdiff({SS_d([SS_d.isdir]).name},{'.',' '}); % list of subfolders of D NNN_d = sort(str2double(NN_d)); % convert string to numeric > then sort to get the right order of number 1 >>> 100

NNNN_d = string(NNN_d); % convert numeric back to string for ii_d = 1:numel(NNNN_d)

TT_d = dir(fullfile(DD_d,NNNN_d{ii_d},'*')); % improve by specifying the file extension

CC_d = {TT_d(4).name}; % files in subfolder for jj_d = 1:numel(CC_d) ncFil_d = fullfile(DD_d,NNNN_d{ii_d},CC_d{jj_d},'xboutput.nc')

Dveg_d = nc_varget(ncFil_d,'Dveg');

Dveg_V2_all_d(ii_d+1)= Dveg_V2_d; end end

%% Water depth at offshore boundary zs0 = [0 repmat(0.5,20,1)' repmat(1,20,1)' repmat(1.5,20,1)' repmat(2,20,1)' repmat(2.5,20,1)' repmat(0.75,20,1)' repmat(1.25,20,1)' repmat(1.75,20,1)' repmat(2.25,20,1)'];

%% Plot energy dissipation Dv - Short wave height Hsw - Water depth h fig = figure; s = 200; % size of coloured points

S(1) = scatter(H_sw_V2_all,Dveg_V2_all,s,zs0,'d','filled','MarkerEdgeColor','k'); hold on

S(2) = scatter(H_sw_V2_all_m,Dveg_V2_all_m,s,zs0,'s','filled','MarkerEdgeColor','k'); S(3) = scatter(H_sw_V2_all_d,Dveg_V2_all_d,s,zs0,'filled','MarkerEdgeColor','k'); legend(S,'Sparse vegetation','Medium dense vegetation','Dense vegetation') legendmarkeradjust(14)

% text(1.4,40,txt_sparse,'FontSize',18); ylabel('D_v [W/m^2]') xlabel('H_s_w_ [m]') xticks([0.1:0.1:1.6]) xlim([0.1 1.6]) set(gca,'FontSize',18) caxis([min(zs0),max(zs0)]) mycb = colorbar('eastoutside'); % location of colored bar ylabel(mycb,'Water depth (m)') % title of colored bar grid on colormap(jet(256))

C.4.2 7ӍOӋJLҧPFKLӅXFDRVyQJ clear all; close all;

% run ('C:\Users\kietn\OneDrive\02 Academic study\000 Master Degree/001 Thesis/000 Report/Code_Mangrove/Toolbox/oetsettings.m')

% Wave initial height is equal to 3m, if you want to change please heading

%% SPARSE target_folder = '02 Sparse'; basePath = 'C:\Users\kietn\OneDrive\02 Academic study\000 Master Degree\001 Thesis\000 Report\Code_Mangrove\001\'

DD = fullfile([basePath,target_folder]);

NN = setdiff({SS([SS.isdir]).name},{'.',' '}); % list of subfolders of D

NNN = sort(str2double(NN)); % convert string to numeric > then sort to get the right order of number 1 >>> 100

NNNN = string(NNN); % convert numeric back to string for ii = 1:numel(NNNN)

TT = dir(fullfile(DD,NNNN{ii},'*')); % improve by specifying the file extension

CC = {TT(4).name}; % files in subfolder for jj = 1:numel(CC) ncFil = fullfile(DD,NNNN{ii},CC{jj},'xboutput.nc')

H_sw_100 = H(60:181,1,971)*sqrt(2); % Hsw at V2+100m, after the starting point of vegetation

H_sw_100_mean = mean(H_sw_100); r(ii+1) = (H_sw_V2 - H_sw_100_mean)/(H_sw_V2*100) ; % wave attenuation rate end end

%% MEDIUM target_folder_m = '03 Medium'; basePath_m = 'C:\Users\kietn\OneDrive\02 Academic study\000 Master Degree\001

DD_m = fullfile([basePath_m,target_folder_m]);

NN_m = setdiff({SS_m([SS_m.isdir]).name},{'.',' '}); % list of subfolders of D NNN_m = sort(str2double(NN_m)); % convert string to numeric > then sort to get the right order of number 1 >>> 100

NNNN_m = string(NNN_m); % convert numeric back to string for ii_m = 1:numel(NNNN_m)

TT_m = dir(fullfile(DD_m,NNNN_m{ii_m},'*')); % improve by specifying the file extension

CC_m = {TT_m(4).name}; % files in subfolder for jj_m = 1:numel(CC_m) ncFil_m = fullfile(DD_m,NNNN_m{ii_m},CC_m{jj_m},'xboutput.nc')

H_sw_100_m = H_m(60:181,1,971)*sqrt(2); % Hsw at V2+100m, after the starting point of vegetation

H_sw_100_mean_m = mean(H_sw_100_m); r_m(ii_m+1) = (H_sw_V2_m - H_sw_100_mean_m)/(H_sw_V2_m*100) ; % wave attenuation rate end end

%% DENSE target_folder_d = '04 Dense'; basePath_d = 'C:\Users\kietn\OneDrive\02 Academic study\000 Master Degree\001

DD_d = fullfile([basePath_d,target_folder_d]);

NN_d = setdiff({SS_d([SS_d.isdir]).name},{'.',' '}); % list of subfolders of D NNN_d = sort(str2double(NN_d)); % convert string to numeric > then sort to get the right order of number 1 >>> 100

NNNN_d = string(NNN_d); % convert numeric back to string for ii_d = 1:numel(NNNN_d)

TT_d = dir(fullfile(DD_d,NNNN_d{ii_d},'*')); % improve by specifying the file extension

CC_d = {TT_d(4).name}; % files in subfolder for jj_d = 1:numel(CC_d) ncFil_d = fullfile(DD_d,NNNN_d{ii_d},CC_d{jj_d},'xboutput.nc')

H_sw_100_d = H_d(60:181,1,971)*sqrt(2); % Hsw at V2+100m, after the starting point of vegetation

H_sw_100_mean_d = mean(H_sw_100_d); r_d(ii_d+1) = (H_sw_V2_d - H_sw_100_mean_d)/(H_sw_V2_d*100) ; % wave attenuation rate end end

%% NO VEG target_folder_v = '01 No vegetation'; basePath_v = 'C:\Users\kietn\OneDrive\02 Academic study\000 Master Degree\001

DD_v = fullfile([basePath_v,target_folder_v]);

NN_v = setdiff({SS_v([SS_v.isdir]).name},{'.',' '}); % list of subfolders of D NNN_v = sort(str2double(NN_v)); % convert string to numeric > then sort to get the right order of number 1 >>> 100

NNNN_v = string(NNN_v); % convert numeric back to string for ii_v = 1:numel(NNNN_v)

TT_v = dir(fullfile(DD_v,NNNN_v{ii_v},'*')); % improve by specifying the file extension

CC_v = {TT_v(4).name}; % files in subfolder for jj_v = 1:numel(CC_v) ncFil_v = fullfile(DD_v,NNNN_v{ii_v},CC_v{jj_v},'xboutput.nc')

H_sw_100_v = H_v(60:181,1,971)*sqrt(2); % Hsw at V2+100m, after the starting point of vegetation

H_sw_100_mean_v = mean(H_sw_100_v); r_v(ii_v+1) = (H_sw_V2_v - H_sw_100_mean_v)/(H_sw_V2_v*100) ; % wave attenuation rate end end

%% Water depth at offshore boundary zs0 = [0 repmat(0.5,20,1)' repmat(1,20,1)' repmat(1.5,20,1)' repmat(2,20,1)' repmat(2.5,20,1)' repmat(0.75,20,1)' repmat(1.25,20,1)' repmat(1.75,20,1)' repmat(2.25,20,1)'];

%% Plot energy dissipation Dv - Short wave height Hsw - Water depth h fig = figure; s = 200; % size of coloured points

S(1) = scatter(H_sw_V2_all,r,s,zs0,'d','filled','MarkerEdgeColor','k'); hold on

S(2) = scatter(H_sw_V2_all_m,r_m,s,zs0,'s','filled','MarkerEdgeColor','k');

% scatter(H_sw_V2_all_m,r_m,s,zs0,'*','LineWidth',2);

S(3) = scatter(H_sw_V2_all_d,r_d,s,zs0,'filled','MarkerEdgeColor','k');

S(4) = scatter(H_sw_V2_all_v,r_v,s,zs0,'o','MarkerEdgeColor','k'); legend(S,'Sparse vegetation','Medium dense vegetation','Dense vegetation','No vegetation') legendmarkeradjust(14)

% text(1.2,2*10^(-3),txt_sparse,'FontSize',18); ylabel('Rate of wave attenuation r [m^-^1]') xlabel('H_s_w_ at V2 - the start of vegetation [m]') xlim([0.1 1.6]) ylim([0.5 10]*10^(-3)) xticks([0.1:0.1:1.6]) set(gca,'FontSize',18) caxis([min(zs0),max(zs0)]) mycb = colorbar('eastoutside'); % location of colored bar ylabel(mycb,'Water depth (m)') % title of colored bar grid on colormap(jet(256)) legendmarkeradjust(14)

C.4.3 %ӅUӝQJUӯQJQJұSPһQÿӇVyQJJLҧP clear all; close all;

% run ('g:/My Drive/000 Master Degree/001 Thesis/000

Report/Code_Mangrove/Toolbox/oetsettings.m')

%% SPARSE target_folder = '02 Sparse'; basePath = 'g:\My Drive\000 Master Degree\001 Thesis\000 Report\Code_Mangrove\001\'

DD = fullfile([basePath,target_folder]);

NN = setdiff({SS([SS.isdir]).name},{'.',' '}); % list of subfolders of D

NNN = sort(str2double(NN)); % convert string to numeric > then sort to get the right order of number 1 >>> 100

NNNN = string(NNN); % convert numeric back to string for ii = 1:numel(NNNN)

TT = dir(fullfile(DD,NNNN{ii},'*')); % improve by specifying the file extension

CC = {TT(4).name}; % files in subfolder for jj = 1:numel(CC) ncFil = fullfile(DD,NNNN{ii},CC{jj},'xboutput.nc')

Hsw = nc_varget(ncFil,'H_mean')*sqrt(2);

H_sw_90 = 0.1*H_sw_V2; % 10% of Hsw at V2 xx_xd90 = find(Hsw(:) then sort to get the right order of number 1 >>> 100

NNNN_m = string(NNN_m); % convert numeric back to string for ii_m = 1:numel(NNNN_m)

TT_m = dir(fullfile(DD_m,NNNN_m{ii_m},'*')); % improve by specifying the file extension

CC_m = {TT_m(4).name}; % files in subfolder for jj_m = 1:numel(CC_m) ncFil_m = fullfile(DD_m,NNNN_m{ii_m},CC_m{jj_m},'xboutput.nc')

Hsw_m = nc_varget(ncFil_m,'H_mean')*sqrt(2);

H_sw_90_m = 0.1*H_sw_V2_m; % 10% of Hsw at V2 xx_xd90_m = find(Hsw_m(:) then sort to get the right order of number 1 >>> 100

NNNN_d = string(NNN_d); % convert numeric back to string for ii_d = 1:numel(NNNN_d)

TT_d = dir(fullfile(DD_d,NNNN_d{ii_d},'*')); % improve by specifying the file extension

CC_d = {TT_d(4).name}; % files in subfolder for jj_d = 1:numel(CC_d) ncFil_d = fullfile(DD_d,NNNN_d{ii_d},CC_d{jj_d},'xboutput.nc')

Hsw_d = nc_varget(ncFil_d,'H_mean')*sqrt(2);

H_sw_90_d = 0.1*H_sw_V2_d; % 10% of Hsw at V2 xx_xd90_d = find(Hsw_d(:) then sort to get the right order of number 1 >>> 100

NNNN = string(NNN); % convert numeric back to string

TT = dir(fullfile(DD,NNNN{ii},'*')); % improve by specifying the file extension

CC = {TT(4).name}; % files in subfolder for jj = 1:numel(CC) ncFil = fullfile(DD,NNNN{ii},CC{jj},'xboutput.nc')

% Split wave zs = nc_varget(ncFil,'zs'); u = nc_varget(ncFil,'u'); h = zs - 12; zs_in = 0.5*(zs + u.*sqrt(h/9.81)); zs_in_var = var(zs_in,0,1); zs_in_var = zs_in_var(:)';

Hlw_in = 4*sqrt(zs_in_var);

Hlw_range = Hlw_in(930:990); i_find = find(Hlw_in==max(Hlw_range));

% Water level - from ref y = 0 m - mean water level zs_1 = zs(60:181,1,i_find)-12; zs_V2 = mean(zs_1); zs_V2_all(ii+1) = zs_V2;

% Wave energy poh = 997; % water density (kg/m3)

E_sw_in = 1/8*poh*9.81*((Hlw_in./(sqrt(2)))).^2;

E_range = E_sw_in(930:1001); xx_xd5 = find(E_range(:)

Ngày đăng: 03/08/2024, 13:31

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN