Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

R21B in IC4 #1176

Merged
merged 6 commits into from
Jan 23, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 15 additions & 1 deletion manual/eqs/ICE4.tex
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,20 @@ \subsubsection{~$S_{ice}$: Empirical/parametric damping by sea ice} \label{sec:I

{\code IC4M7}: This is a formula for dissipation from \cite{art:Dob15}, developed for a mixture of pancake and frazil ice, using data collected in the Weddell Sea (Antarctica). The formula depends on wave frequency and ice thickness:
\begin{equation}\label{eq:ice7}
{\alpha=0.2T^{-2.13}h} \:\:\: .
{\alpha=2k_i=0.2h^1f^{2.13}} \:\:\: .
\end{equation}
This method is described in \cite{rep:RPLA18}.

{\code IC4M8}: Like {\code IC4M7}, this method is in the general form of
\begin{equation}\label{eq:ice8}
{k_i=C_{hf}h^mf^n} \:\:\: .
\end{equation}
The formula is taken from \cite{Meylan2018}, where it is described as a ``Model with Order 3 Power Law''. It is applied by \cite{Liu2020}, where it is referred to as the ``M2'' model. The model specifies $m=1$ and $n=3$, and $C_{hf}$ is a user-specified calibration coefficient. \cite{Liu2020} provide calibration to two field cases and \cite{rep:RYW2021} provides a calibration to a third field case, \cite{art:RMK2021}. The third calibration is set as the default for {\code IC4M8}, $C_{hf}=0.059$, but can be changed in using the namelist parameter (constant and uniform) {\code IC4CN}, or using the spatially and/or temporally variable parameter ${C_{ice,2}}$ . Further details on the calibrations are available in the inline documentation in {\file w3sic4md.F90}. This method is functionally the same as the ``{\code M2}'' model in {\code IC5} (i.e., {\code IC5} with {\code IC5VEMOD=3}) and is redundantly included here as {\code IC4M8} because it is in the same ``family'' as {\code IC4M7} and {\code IC4M9}, being in the form of Eq. (\ref{eq:ice8}).

For an example of setting the namelist parameter, see {\file /regtests/ww3\_tic1.1/input\_IC4\_M8}.

{\code IC4M9}: This formula is taken from the ``monomial power fit'' given in section 2.2.3 of \cite{rep:RYW2021}. Like {\code IC4M7} and {\code IC4M8}, it is a specific case of the general form of Eq. (\ref{eq:ice8}). The specificity is the constraint that $m=n/2-1$. This constraint is derived by \cite{rep:RYW2021} by invoking the scaling from \cite{art:YRW2019}, which is based on Reynolds number with ice thickness as the relevant length scale. This is also given as equation 2 in \cite{art:YRW2022}. The default namelist settings are $C_{hf}=2.9$ and $n=4.5$, from calibration by \cite{rep:RYW2021} to \cite{art:RMK2021}. Further details, including alternative calibrations such as \cite{art:Yu2022}, are available in the inline documentation in {\file w3sic4md.F90}. Constant values can be set using namelist parameters, where $C_{hf}$ and $n$ are {\code IC4CN(1)} and {\code IC4CN(2)}, respectively. Spatially and/or temporally versions of the same can be specified as ${C_{ice,2}}$ and ${C_{ice,3}}$, respectively.

The namelist default $C_{hf}$ values in {\code IC4M8} and {\code IC4M9} are consistent with those of identical formulae implemented in \cite{man:SWAN4145A}.


4 changes: 2 additions & 2 deletions manual/eqs/ICE5.tex
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ \subsubsection{~$S_{ice}$: Damping by sea ice (effective medium models)} \label{
\begin{align}
k_i^{EFS} &\propto \eta h_i^3 \sigma^{11},\label{eq:fspw}\\ k_i^{RP} &\propto \frac{\eta}{\rho_w g^2} \sigma^3,\label{eq:rppw}
\end{align}
whereas previous field measurements \citep[e.g.,][]{Meylan2018, Rogers2021} support a power law $k_i \propto \sigma^n$, with $n$ between 2 and 4. Eqs.~(\ref{eq:fspw}) and (\ref{eq:rppw}) indicate at certain regimes (i.e., $k_r \approx k_0$ and low $k_i$), $k_i$ of the EFS model is too sensitive to wave frequency and $k_i$ of the RP model shows no dependence on ice thickness.
whereas previous field measurements \citep[e.g.,][]{Meylan2018, RMK21} support a power law $k_i \propto \sigma^n$, with $n$ between 2 and 4. Eqs.~(\ref{eq:fspw}) and (\ref{eq:rppw}) indicate at certain regimes (i.e., $k_r \approx k_0$ and low $k_i$), $k_i$ of the EFS model is too sensitive to wave frequency and $k_i$ of the RP model shows no dependence on ice thickness.

The third model included in the {\code IC5} module is based on the ``Model with Order 3 Power Law'' proposed by \citet[][their section 6.2; hereafter the M2 model]{Meylan2018}, which assumes the loss of wave energy is proportional to the horizontal ice velocity squared times the ice thickness. The attenuation rate is given by
\begin{equation}
Expand All @@ -52,4 +52,4 @@ \subsubsection{~$S_{ice}$: Damping by sea ice (effective medium models)} \label{
%
\cit{IC5VEMOD} {the sea ice model to be selected: 1 - {\code EFS}, 2 - {\code RP}, 3 - {\code M2}; Default=3 (i.e., \textbf{the {\code M2} model is chosen}).}
\end{clist}
The first 6 parameters were introduced to improve the stability of the numerical solver for the EFS model \citep[the solver may fail for small wave periods in some rare cases, particularly for shallow water depth $d$ and low $G$; see][]{Liu2020}. Nonetheless, since version 7.12, the M2 model becomes the default option and these limiters are therefore not used by default.
The first 6 parameters were introduced to improve the stability of the numerical solver for the EFS model \citep[the solver may fail for small wave periods in some rare cases, particularly for shallow water depth $d$ and low $G$; see][]{Liu2020}. Nonetheless, since version 7.12, the M2 model becomes the default option and these limiters are therefore not used by default.
81 changes: 73 additions & 8 deletions manual/manual.bib
Original file line number Diff line number Diff line change
Expand Up @@ -524,7 +524,7 @@ @TECHREPORT{rep:CR17
INSTITUTION = "{N}aval {R}esearch {L}aboratory, {S}tennis {S}pace {C}enter, {MS}",
TYPE = "NRL Memorandum Report",
NUMBER = "NRL/MR/7320--17-9726",
NOTE = "25 pp., www7320.nrlssc.navy.mil/pubs.php" }
NOTE = "25 pp., www7320.nrlssc.navy.mil/pubs" }

% item art:CRT17

Expand Down Expand Up @@ -1764,7 +1764,7 @@ @INPROCEEDINGS{pro:RZ14
TITLE = "New wave-ice interaction physics in {WAVEWATCH III}",
BOOKTITLE = Ice14,
PUBLISHER = "IAHR",
NOTE = "8 pp., www7320.nrlssc.navy.mil/pubs.php" }
NOTE = "8 pp., www7320.nrlssc.navy.mil/pubs" }

% item rep:RPLA18

Expand All @@ -1775,7 +1775,18 @@ @TECHREPORT{rep:RPLA18
INSTITUTION = "{N}aval {R}esearch {L}aboratory, {S}tennis {S}pace {C}enter, {MS}",
TYPE = "NRL Memorandum Report",
NUMBER = "NRL/MR/7320--18-9786",
NOTE = "179 pp., www7320.nrlssc.navy.mil/pubs.php" }
NOTE = "179 pp., www7320.nrlssc.navy.mil/pubs" }

% item rep:RYW2021

@TECHREPORT{rep:RYW2021,
AUTHOR = "W. E. Rogers and J. Yu and D. W. Wang",
YEAR = "2021",
TITLE = "Incorporating dependencies on ice thickness in empirical parameterizations of wave dissipation by sea ice",
INSTITUTION = "{N}aval {R}esearch {L}aboratory, {S}tennis {S}pace {C}enter, {MS}",
TYPE = "NRL Technical Report",
NUMBER = "NRL/OT/7320-21-5145",
NOTE = "35 pp., https://arxiv.org/abs/2104.01246" }

% item rep:RMK18

Expand All @@ -1786,7 +1797,7 @@ @TECHREPORT{rep:RMK18
INSTITUTION = "{N}aval {R}esearch {L}aboratory, {S}tennis {S}pace {C}enter, {MS}",
TYPE = "NRL Memorandum Report",
NUMBER = "NRL/MR/7320--18-9801",
NOTE = "25 pp., www7320.nrlssc.navy.mil/pubs.php" }
NOTE = "25 pp., www7320.nrlssc.navy.mil/pubs" }

% item art:RH09

Expand All @@ -1811,6 +1822,33 @@ @ARTICLE{art:RTS16
doi = "doi:10.1002/2016JC012251"
}

% item art:YRW2019

@ARTICLE{art:YRW2019,
AUTHOR = "J. Yu and W. E. Rogers and D. W. Wang",
YEAR = 2019,
TITLE = "A Scaling for Wave Dispersion Relationships in Ice-Covered Waters",
JOURNAL = JGR,
VOLUME = "124",
PAGES = "8429--8438" ,
doi = "doi:10.1029/2018JC014870"
}

% item art:Yu2022

@Article{art:Yu2022,
AUTHOR = {Yu, Jie},
TITLE = {Wave Boundary Layer at the Ice-Water Interface},
JOURNAL = {Journal of Marine Science and Engineering},
VOLUME = {10},
YEAR = {2022},
NUMBER = {10},
ARTICLE-NUMBER = {1472},
URL = {https://www.mdpi.com/2077-1312/10/10/1472},
ISSN = {2077-1312},
DOI = {10.3390/jmse10101472}
}

% item art:CFSRR10

@ARTICLE{art:CFSRR10,
Expand Down Expand Up @@ -2346,7 +2384,7 @@ @TECHREPORT{rep:RC09
INSTITUTION = "{N}aval {R}esearch {L}aboratory, {S}tennis {S}pace {C}enter, {MS}",
TYPE = "NRL Memorandum Report",
NUMBER = "NRL/MR/7320--09-9193",
NOTE = "42 pp., www7320.nrlssc.navy.mil/pubs.php" }
NOTE = "42 pp., www7320.nrlssc.navy.mil/pubs" }

% item rep:RO13

Expand All @@ -2357,7 +2395,7 @@ @TECHREPORT{rep:RO13
INSTITUTION = "{N}aval {R}esearch {L}aboratory, {S}tennis {S}pace {C}enter, {MS}",
TYPE = "NRL Memorandum Report",
NUMBER = "NRL/MR/7320--13-9462",
NOTE = "31 pp., www7320.nrlssc.navy.mil/pubs.php" }
NOTE = "31 pp., www7320.nrlssc.navy.mil/pubs" }

% item rep:Roland2008

Expand Down Expand Up @@ -2606,6 +2644,17 @@ @MANUAL{man:SWAN3
ADDRESS = "P.O. Box 5048, 2600 GA Delft, The Netherlands",
NOTE = "see http:https://swan.ct.tudelft.nl" }

% item man:SWAN4145A

@MANUAL{man:SWAN4145A,
AUTHOR = "{SWAN team}",
YEAR = "2023",
TITLE = "{SWAN Cycle III} version 41.45A User Manual",
ORGANIZATION = "Delft University of Technology,
Faculty of Civil Engineering and Geosciences",
ADDRESS = "P.O. Box 5048, 2600 GA Delft, The Netherlands",
NOTE = "see https://swanmodel.sourceforge.io/" }

% item man:Jones98

@MANUAL{man:Jones98,
Expand Down Expand Up @@ -3485,10 +3534,14 @@ @article{Liu2021
title={{Global Wave Hindcasts Using the Observation-based Source Terms: Description and Validation}},
author={Liu, Qingxiang and Babanin, Alexander and Rogers, W Erick and Zieger, Stefan and Young, Ian and Bidlot, Jean-Raymond and Durrant, Tom and Ewans, Kevin and Guan, Changlong and Kirezci, Cagil and Lemos, Gil and MacHutchon, Keith and Moon, Il-Ju and Rapizo, Henrique and Ribal, Agustinus and Semedo, Alvaro and Wang, Juanjuan},
journal={Journal of Advances in Modeling Earth Systems (JAMES)},
year={submitted}
year = {2021},
volume = {13},
number = {8},
pages = {e2021MS002493},
doi = {https://doi.org/10.1029/2021MS002493},
}

@article{Rogers2021,
@article{art:RMK2021,
title = {Estimates of spectral wave attenuation in Antarctic sea ice, using model/data inversion},
journal = {Cold Regions Science and Technology},
volume = {182},
Expand All @@ -3499,6 +3552,18 @@ @article{Rogers2021
author = {W. Erick Rogers and Michael H. Meylan and Alison L. Kohout}
}

@article{art:YRW2022,
title = {A new method for parameterization of wave dissipation by sea ice},
journal = {Cold Regions Science and Technology},
volume = {199},
pages = {103582},
year = {2022},
issn = {0165-232X},
doi = {https://doi.org/10.1016/j.coldregions.2022.103582},
url = {https://www.sciencedirect.com/science/article/pii/S0165232X2200101X},
author = {Jie Yu and W. Erick Rogers and David W. Wang},
}

@article{Forristall1981,
author = {Forristall, George Z.},
doi = {10.1029/JC086iC09p08075},
Expand Down
4 changes: 2 additions & 2 deletions model/nml/ww3_shel.nml
Original file line number Diff line number Diff line change
Expand Up @@ -319,9 +319,9 @@
! * the number of each homogeneous input is defined by HOMOG_COUNT
! * the total number of homogeneous input is automatically calculated
! * the homogeneous input must start from index 1 to N
! * if VALUE1 is equal 0, then the homogeneous input is desactivated
! * if VALUE1 is equal 0, then the homogeneous input is deactivated
! * NAME can be IC1, IC2, IC3, IC4, IC5, MDN, MTH, MVS, LEV, CUR, WND, ICE, MOV
! * each homogeneous input is defined over a maximum of 3 values detailled below :
! * each homogeneous input is defined over a maximum of 3 values detailed below :
! - IC1 is defined by thickness
! - IC2 is defined by viscosity
! - IC3 is defined by density
Expand Down
21 changes: 17 additions & 4 deletions model/src/w3gdatmd.F90
Original file line number Diff line number Diff line change
Expand Up @@ -199,10 +199,14 @@ MODULE W3GDATMD
! Default is 1.0, meaning that 100% ice
! concentration result in zero source term
! If set to 0.0, then ice has no direct impact on Sln / Sin / Snl / Sds
! IC3PARS R.A. Public various parameters for use in IC4, handled as
! IC3PARS R.A. Public various parameters for use in IC3, handled as
! an array for simplicity
! IC4_KI R.A. Public KI (dissipation rate) values for use in IC4
! IC4_FC R.A. Public FC (frequency bin separators) for use in IC4
! IC4_KI R.A. Public KI (dissipation rate) values for use in IC4M6
! IC4_FC R.A. Public FC (frequency bin separators) for use in IC4M6
! IC4_CN R.A. Public Coefficients for use in IC4M2
! IC4_FMIN Real Public Minimum frequency below which ki is set to
! some background level dissipation (for S_ice)
! IC4_KIBK Real Public Low, background level dissipation (for S_ice)
! PFMOVE Real Public Tunable parameter in GSE correction
! for moving grids.
! GRIDSHIFT Real Public Grid offset for multi-grid w/SCRIP
Expand Down Expand Up @@ -615,7 +619,7 @@ MODULE W3GDATMD
IPARS = -1, NAUXGR
!
#ifdef W3_IC4
INTEGER, PARAMETER :: NIC4=10
INTEGER, PARAMETER :: NIC4=16 , NIC42=5
#endif
INTEGER, PARAMETER :: RLGTYPE = 1
INTEGER, PARAMETER :: CLGTYPE = 2
Expand Down Expand Up @@ -732,6 +736,8 @@ MODULE W3GDATMD
INTEGER, POINTER :: IC4PARS(:)
REAL, POINTER :: IC4_KI(:)
REAL, POINTER :: IC4_FC(:)
REAL, POINTER :: IC4_CN(:)
REAL :: IC4_FMIN, IC4_KIBK
#endif
#ifdef W3_IC5
REAL, POINTER :: IC5PARS(:)
Expand Down Expand Up @@ -1144,6 +1150,8 @@ MODULE W3GDATMD
INTEGER, POINTER :: IC4PARS(:)
REAL, POINTER :: IC4_KI(:)
REAL, POINTER :: IC4_FC(:)
REAL, POINTER :: IC4_CN(:)
REAL, POINTER :: IC4_FMIN, IC4_KIBK
#endif
#ifdef W3_IC5
REAL, POINTER :: IC5PARS(:)
Expand Down Expand Up @@ -1840,6 +1848,8 @@ SUBROUTINE W3DIMX ( IMOD, MX, MY, MSEA, NDSE, NDST &
CHECK_ALLOC_STATUS ( ISTAT )
ALLOCATE ( GRIDS(IMOD)%IC4_FC(NIC4), STAT=ISTAT )
CHECK_ALLOC_STATUS ( ISTAT )
ALLOCATE ( GRIDS(IMOD)%IC4_CN(NIC42), STAT=ISTAT )
CHECK_ALLOC_STATUS ( ISTAT )
#endif
#ifdef W3_IC5
ALLOCATE ( GRIDS(IMOD)%IC5PARS(9), STAT=ISTAT )
Expand Down Expand Up @@ -2314,6 +2324,9 @@ SUBROUTINE W3SETG ( IMOD, NDSE, NDST )
IC4PARS => GRIDS(IMOD)%IC4PARS
IC4_KI => GRIDS(IMOD)%IC4_KI
IC4_FC => GRIDS(IMOD)%IC4_FC
IC4_CN => GRIDS(IMOD)%IC4_CN
IC4_FMIN => GRIDS(IMOD)%IC4_FMIN
IC4_KIBK => GRIDS(IMOD)%IC4_KIBK
#endif
#ifdef W3_IC5
IC5PARS => GRIDS(IMOD)%IC5PARS
Expand Down
15 changes: 12 additions & 3 deletions model/src/w3gridmd.F90
Original file line number Diff line number Diff line change
Expand Up @@ -114,6 +114,7 @@ MODULE W3GRIDMD
!/ 07-Jun-2021 : S_{nl} GKE NL5 (Q. Liu) ( version 7.13 )
!/ 19-Jul-2021 : Momentum and air density support ( version 7.14 )
!/ 28-Feb-2023 : GQM as an alternative for NL1 ( version 7.15 )
!/ 11-Jan-2024 : New namelist parameters for IC4 ( version 7.15 )
!/
!/ Copyright 2009-2013 National Weather Service (NWS),
!/ National Oceanic and Atmospheric Administration. All rights
Expand Down Expand Up @@ -764,9 +765,10 @@ MODULE W3GRIDMD

#ifdef W3_IC4
INTEGER :: IC4METHOD
REAL :: IC4KI(NIC4), IC4FC(NIC4)
REAL :: IC4KI(NIC4), IC4FC(NIC4), &
IC4CN(NIC42), IC4FMIN, IC4KIBK
#endif
!

#ifdef W3_IC5
REAL :: IC5MINIG, IC5MINWT, &
IC5MAXKRATIO, IC5MAXKI, IC5MINHW, &
Expand Down Expand Up @@ -970,7 +972,8 @@ MODULE W3GRIDMD
IC3VISC, IC3ELAS, IC3DENS, IC3HICE
#endif
#ifdef W3_IC4
NAMELIST /SIC4/ IC4METHOD, IC4KI, IC4FC
NAMELIST /SIC4/ IC4METHOD, IC4KI, IC4FC, IC4CN, IC4FMIN, &
IC4KIBK
#endif
#ifdef W3_IC5
NAMELIST /SIC5/ IC5MINIG, IC5MINWT, IC5MAXKRATIO, &
Expand Down Expand Up @@ -2891,6 +2894,9 @@ SUBROUTINE W3GRID()
IC4METHOD = 1 !switch for methods within IC4
IC4KI=0.0
IC4FC=0.0
IC4CN=0.0
IC4FMIN=0.0
IC4KIBK=0.0
#endif
!
#ifdef W3_IC5
Expand Down Expand Up @@ -5313,6 +5319,9 @@ SUBROUTINE W3GRID()
IC4PARS(1)=IC4METHOD
IC4_KI=IC4KI
IC4_FC=IC4FC
IC4_CN=IC4CN
IC4_FMIN=IC4FMIN
IC4_KIBK=IC4KIBK
#endif
!
#ifdef W3_IC5
Expand Down
8 changes: 4 additions & 4 deletions model/src/w3iogrmd.F90
Original file line number Diff line number Diff line change
Expand Up @@ -1292,11 +1292,11 @@ SUBROUTINE W3IOGR ( INXOUT, NDSM, IMOD, FEXT &
#endif
#ifdef W3_IC4
WRITE (NDSM) &
IC4PARS,IC4_KI,IC4_FC
IC4PARS,IC4_KI,IC4_FC,IC4_CN,IC4_FMIN,IC4_KIBK
#ifdef W3_ASCII
WRITE (NDSA,*) &
'IC4PARS,IC4_KI,IC4_FC:', &
IC4PARS,IC4_KI,IC4_FC
'IC4PARS,IC4_KI,IC4_FC,IC4_CN,IC4_FMIN,IC4_KIBK:', &
IC4PARS,IC4_KI,IC4_FC,IC4_CN,IC4_FMIN,IC4_KIBK
#endif
#endif
#ifdef W3_IC5
Expand Down Expand Up @@ -1338,7 +1338,7 @@ SUBROUTINE W3IOGR ( INXOUT, NDSM, IMOD, FEXT &
#endif
#ifdef W3_IC4
READ (NDSM,END=801,ERR=802,IOSTAT=IERR) &
IC4PARS,IC4_KI,IC4_FC
IC4PARS,IC4_KI,IC4_FC,IC4_CN,IC4_FMIN,IC4_KIBK
#endif
#ifdef W3_IC5
READ (NDSM,END=801,ERR=802,IOSTAT=IERR) &
Expand Down
Loading