Ҧ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(:)