Changeset 11598 for NEMO/trunk/doc/latex/NEMO/subfiles/chap_SBC.tex
- Timestamp:
- 2019-09-25T22:00:42+02:00 (5 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/trunk/doc/latex/NEMO/subfiles/chap_SBC.tex
r11597 r11598 6 6 \label{chap:SBC} 7 7 8 \thispagestyle{plain} 9 8 10 \chaptertoc 9 11 12 \paragraph{Changes record} ~\\ 13 14 {\footnotesize 15 \begin{tabularx}{\textwidth}{l||X|X} 16 Release & Author(s) & Modifications \\ 17 \hline 18 {\em 4.0} & {\em ...} & {\em ...} \\ 19 {\em 3.6} & {\em ...} & {\em ...} \\ 20 {\em 3.4} & {\em ...} & {\em ...} \\ 21 {\em <=3.4} & {\em ...} & {\em ...} 22 \end{tabularx} 23 } 24 25 \clearpage 10 26 11 27 \begin{listing} … … 212 228 where 213 229 \begin{description} 214 \item [File name]: 215 the stem name of the NetCDF file to be opened. 230 \item [File name]: the stem name of the NetCDF file to be opened. 216 231 This stem will be completed automatically by the model, with the addition of a '.nc' at its end and 217 232 by date information and possibly a prefix (when using AGRIF). 218 233 \autoref{tab:SBC_fldread} provides the resulting file name in all possible cases according to 219 234 whether it is a climatological file or not, and to the open/close frequency (see below for definition). 220 221 235 \begin{table}[htbp] 222 236 \centering … … 245 259 \label{tab:SBC_fldread} 246 260 \end{table} 247 248 \item [Record frequency]: 249 the frequency of the records contained in the input file. 261 \item [Record frequency]: the frequency of the records contained in the input file. 250 262 Its unit is in hours if it is positive (for example 24 for daily forcing) or in months if negative 251 263 (for example -1 for monthly forcing or -12 for annual forcing). 252 264 Note that this frequency must REALLY be an integer and not a real. 253 265 On some computers, setting it to '24.' can be interpreted as 240! 254 255 \item [Variable name]: 256 the name of the variable to be read in the input NetCDF file. 257 258 \item [Time interpolation]: 259 a logical to activate, or not, the time interpolation. 266 \item [Variable name]: the name of the variable to be read in the input NetCDF file. 267 \item [Time interpolation]: a logical to activate, or not, the time interpolation. 260 268 If set to 'false', the forcing will have a steplike shape remaining constant during each forcing period. 261 269 For example, when using a daily forcing without time interpolation, the forcing remaining constant from … … 265 273 For example, when using a daily forcing with time interpolation, 266 274 linear interpolation will be performed between mid-day of two consecutive days. 267 268 \item [Climatological forcing]: 269 a logical to specify if a input file contains climatological forcing which can be cycle in time, 275 \item [Climatological forcing]: a logical to specify if a input file contains climatological forcing which can be cycle in time, 270 276 or an interannual forcing which will requires additional files if 271 277 the period covered by the simulation exceeds the one of the file. 272 278 See the above file naming strategy which impacts the expected name of the file to be opened. 273 274 \item [Open/close frequency]: 275 the frequency at which forcing files must be opened/closed. 279 \item [Open/close frequency]: the frequency at which forcing files must be opened/closed. 276 280 Four cases are coded: 277 281 'daily', 'weekLLL' (with 'LLL' the first 3 letters of the first day of the week), 'monthly' and 'yearly' which … … 280 284 For example, the first record of a yearly file containing daily data is Jan 1st even if 281 285 the experiment is not starting at the beginning of the year. 282 283 \item [Others]: 284 'weights filename', 'pairing rotation' and 'land/sea mask' are associated with 286 \item [Others]: 'weights filename', 'pairing rotation' and 'land/sea mask' are associated with 285 287 on-the-fly interpolation which is described in \autoref{subsec:SBC_iof}. 286 287 288 \end{description} 288 289 … … 449 450 \label{subsec:SBC_SAS} 450 451 451 452 452 \begin{listing} 453 453 \nlst{namsbc_sas} … … 477 477 478 478 \begin{itemize} 479 \item \mdl{nemogcm}: 480 This routine initialises the rest of the model and repeatedly calls the stp time stepping routine (\mdl{step}). 479 \item \mdl{nemogcm}: This routine initialises the rest of the model and repeatedly calls the stp time stepping routine (\mdl{step}). 481 480 Since the ocean state is not calculated all associated initialisations have been removed. 482 \item \mdl{step}: 483 The main time stepping routine now only needs to call the sbc routine (and a few utility functions). 484 \item \mdl{sbcmod}: 485 This has been cut down and now only calculates surface forcing and the ice model required. 481 \item \mdl{step}: The main time stepping routine now only needs to call the sbc routine (and a few utility functions). 482 \item \mdl{sbcmod}: This has been cut down and now only calculates surface forcing and the ice model required. 486 483 New surface modules that can function when only the surface level of the ocean state is defined can also be added 487 484 (\eg\ icebergs). 488 \item \mdl{daymod}: 489 No ocean restarts are read or written (though the ice model restarts are retained), 485 \item \mdl{daymod}: No ocean restarts are read or written (though the ice model restarts are retained), 490 486 so calls to restart functions have been removed. 491 487 This also means that the calendar cannot be controlled by time in a restart file, 492 488 so the user must check that nn\_date0 in the model namelist is correct for his or her purposes. 493 \item \mdl{stpctl}: 494 Since there is no free surface solver, references to it have been removed from \rou{stp\_ctl} module. 495 \item \mdl{diawri}: 496 All 3D data have been removed from the output. 489 \item \mdl{stpctl}: Since there is no free surface solver, references to it have been removed from \rou{stp\_ctl} module. 490 \item \mdl{diawri}: All 3D data have been removed from the output. 497 491 The surface temperature, salinity and velocity components (which have been read in) are written along with 498 492 relevant forcing and ice data. … … 502 496 503 497 \begin{itemize} 504 \item \mdl{sbcsas}: 505 This module initialises the input files needed for reading temperature, salinity and 498 \item \mdl{sbcsas}: This module initialises the input files needed for reading temperature, salinity and 506 499 velocity arrays at the surface. 507 500 These filenames are supplied in namelist namsbc\_sas. … … 621 614 their neutral transfer coefficients relationships with neutral wind. 622 615 \begin{itemize} 623 \item NCAR (\np[=.true.]{ln_NCAR}{ln\_NCAR}): 624 The NCAR bulk formulae have been developed by \citet{large.yeager_rpt04}. 616 \item NCAR (\np[=.true.]{ln_NCAR}{ln\_NCAR}): The NCAR bulk formulae have been developed by \citet{large.yeager_rpt04}. 625 617 They have been designed to handle the NCAR forcing, a mixture of NCEP reanalysis and satellite data. 626 618 They use an inertial dissipative method to compute the turbulent transfer coefficients … … 630 622 Note that substituting ERA40 to NCEP reanalysis fields does not require changes in the bulk formulea themself. 631 623 This is the so-called DRAKKAR Forcing Set (DFS) \citep{brodeau.barnier.ea_OM10}. 632 \item COARE 3.0 (\np[=.true.]{ln_COARE_3p0}{ln\_COARE\_3p0}): 633 See \citet{fairall.bradley.ea_JC03} for more details 634 \item COARE 3.5 (\np[=.true.]{ln_COARE_3p5}{ln\_COARE\_3p5}): 635 See \citet{edson.jampana.ea_JPO13} for more details 636 \item ECMWF (\np[=.true.]{ln_ECMWF}{ln\_ECMWF}): 637 Based on \href{https://www.ecmwf.int/node/9221}{IFS (Cy31)} implementation and documentation. 624 \item COARE 3.0 (\np[=.true.]{ln_COARE_3p0}{ln\_COARE\_3p0}): See \citet{fairall.bradley.ea_JC03} for more details 625 \item COARE 3.5 (\np[=.true.]{ln_COARE_3p5}{ln\_COARE\_3p5}): See \citet{edson.jampana.ea_JPO13} for more details 626 \item ECMWF (\np[=.true.]{ln_ECMWF}{ln\_ECMWF}): Based on \href{https://www.ecmwf.int/node/9221}{IFS (Cy31)} implementation and documentation. 638 627 Surface roughness lengths needed for the Obukhov length are computed following \citet{beljaars_QJRMS95}. 639 628 \end{itemize} … … 741 730 \label{sec:SBC_tide} 742 731 743 744 732 \begin{listing} 745 733 \nlst{nam_tide} … … 924 912 925 913 \begin{description} 926 927 \item [{\np[=1]{nn_isf}{nn\_isf}}]: 928 The ice shelf cavity is represented (\np[=.true.]{ln_isfcav}{ln\_isfcav} needed). 914 \item [{\np[=1]{nn_isf}{nn\_isf}}]: The ice shelf cavity is represented (\np[=.true.]{ln_isfcav}{ln\_isfcav} needed). 929 915 The fwf and heat flux are depending of the local water properties. 930 916 … … 932 918 933 919 \begin{description} 934 \item [{\np[=1]{nn_isfblk}{nn\_isfblk}}]: 935 The melt rate is based on a balance between the upward ocean heat flux and 920 \item [{\np[=1]{nn_isfblk}{nn\_isfblk}}]: The melt rate is based on a balance between the upward ocean heat flux and 936 921 the latent heat flux at the ice shelf base. A complete description is available in \citet{hunter_rpt06}. 937 \item [{\np[=2]{nn_isfblk}{nn\_isfblk}}]: 938 The melt rate and the heat flux are based on a 3 equations formulation 922 \item [{\np[=2]{nn_isfblk}{nn\_isfblk}}]: The melt rate and the heat flux are based on a 3 equations formulation 939 923 (a heat flux budget at the ice base, a salt flux budget at the ice base and a linearised freezing point temperature equation). 940 924 A complete description is available in \citet{jenkins_JGR91}. … … 952 936 There are 3 different ways to compute the exchange coeficient: 953 937 \begin{description} 954 \item [{\np[=0]{nn_gammablk}{nn\_gammablk}}]: 955 The salt and heat exchange coefficients are constant and defined by \np{rn_gammas0}{rn\_gammas0} and \np{rn_gammat0}{rn\_gammat0}. 938 \item [{\np[=0]{nn_gammablk}{nn\_gammablk}}]: The salt and heat exchange coefficients are constant and defined by \np{rn_gammas0}{rn\_gammas0} and \np{rn_gammat0}{rn\_gammat0}. 956 939 \begin{gather*} 957 940 % \label{eq:SBC_isf_gamma_iso} … … 960 943 \end{gather*} 961 944 This is the recommended formulation for ISOMIP. 962 \item [{\np[=1]{nn_gammablk}{nn\_gammablk}}]: 963 The salt and heat exchange coefficients are velocity dependent and defined as 945 \item [{\np[=1]{nn_gammablk}{nn\_gammablk}}]: The salt and heat exchange coefficients are velocity dependent and defined as 964 946 \begin{gather*} 965 947 \gamma^{T} = rn\_gammat0 \times u_{*} \\ … … 968 950 where $u_{*}$ is the friction velocity in the top boundary layer (ie first \np{rn_hisf_tbl}{rn\_hisf\_tbl} meters). 969 951 See \citet{jenkins.nicholls.ea_JPO10} for all the details on this formulation. It is the recommended formulation for realistic application. 970 \item [{\np[=2]{nn_gammablk}{nn\_gammablk}}]: 971 The salt and heat exchange coefficients are velocity and stability dependent and defined as: 952 \item [{\np[=2]{nn_gammablk}{nn\_gammablk}}]: The salt and heat exchange coefficients are velocity and stability dependent and defined as: 972 953 \[ 973 954 \gamma^{T,S} = \frac{u_{*}}{\Gamma_{Turb} + \Gamma^{T,S}_{Mole}} … … 979 960 This formulation has not been extensively tested in \NEMO\ (not recommended). 980 961 \end{description} 981 \item [{\np[=2]{nn_isf}{nn\_isf}}]: 982 The ice shelf cavity is not represented. 962 \item [{\np[=2]{nn_isf}{nn\_isf}}]: The ice shelf cavity is not represented. 983 963 The fwf and heat flux are computed using the \citet{beckmann.goosse_OM03} parameterisation of isf melting. 984 964 The fluxes are distributed along the ice shelf edge between the depth of the average grounding line (GL) … … 986 966 (\np{sn_depmin_isf}{sn\_depmin\_isf}) as in (\np[=3]{nn_isf}{nn\_isf}). 987 967 The effective melting length (\np{sn_Leff_isf}{sn\_Leff\_isf}) is read from a file. 988 \item [{\np[=3]{nn_isf}{nn\_isf}}]: 989 The ice shelf cavity is not represented. 968 \item [{\np[=3]{nn_isf}{nn\_isf}}]: The ice shelf cavity is not represented. 990 969 The fwf (\np{sn_rnfisf}{sn\_rnfisf}) is prescribed and distributed along the ice shelf edge between 991 970 the depth of the average grounding line (GL) (\np{sn_depmax_isf}{sn\_depmax\_isf}) and 992 971 the base of the ice shelf along the calving front (\np{sn_depmin_isf}{sn\_depmin\_isf}). 993 972 The heat flux ($Q_h$) is computed as $Q_h = fwf \times L_f$. 994 \item [{\np[=4]{nn_isf}{nn\_isf}}]: 995 The ice shelf cavity is opened (\np[=.true.]{ln_isfcav}{ln\_isfcav} needed). 973 \item [{\np[=4]{nn_isf}{nn\_isf}}]: The ice shelf cavity is opened (\np[=.true.]{ln_isfcav}{ln\_isfcav} needed). 996 974 However, the fwf is not computed but specified from file \np{sn_fwfisf}{sn\_fwfisf}). 997 975 The heat flux ($Q_h$) is computed as $Q_h = fwf \times L_f$. … … 1037 1015 At each restart step: 1038 1016 1039 \begin{ description}1040 \item [Step 1]:the ice sheet model send a new bathymetry and ice shelf draft netcdf file.1041 \item [Step 2]:a new domcfg.nc file is built using the DOMAINcfg tools.1042 \item [Step 3]:\NEMO\ run for a specific period and output the average melt rate over the period.1043 \item [Step 4]:the ice sheet model run using the melt rate outputed in step 4.1044 \item [Step 5]:go back to 1.1045 \end{ description}1017 \begin{enumerate} 1018 \item the ice sheet model send a new bathymetry and ice shelf draft netcdf file. 1019 \item a new domcfg.nc file is built using the DOMAINcfg tools. 1020 \item \NEMO\ run for a specific period and output the average melt rate over the period. 1021 \item the ice sheet model run using the melt rate outputed in step 4. 1022 \item go back to 1. 1023 \end{enumerate} 1046 1024 1047 1025 If \np[=.true.]{ln_iscpl}{ln\_iscpl}, the isf draft is assume to be different at each restart step with … … 1050 1028 1051 1029 \begin{description} 1052 \item [Thin a cell down]: 1053 T/S/ssh are unchanged and U/V in the top cell are corrected to keep the barotropic transport (bt) constant 1030 \item [Thin a cell down]: T/S/ssh are unchanged and U/V in the top cell are corrected to keep the barotropic transport (bt) constant 1054 1031 ($bt_b=bt_n$). 1055 \item [Enlarge a cell]: 1056 See case "Thin a cell down" 1057 \item [Dry a cell]: 1058 mask, T/S, U/V and ssh are set to 0. 1032 \item [Enlarge a cell]: See case "Thin a cell down" 1033 \item [Dry a cell]: mask, T/S, U/V and ssh are set to 0. 1059 1034 Furthermore, U/V into the water column are modified to satisfy ($bt_b=bt_n$). 1060 \item [Wet a cell]: 1061 mask is set to 1, T/S is extrapolated from neighbours, $ssh_n = ssh_b$ and U/V set to 0. 1035 \item [Wet a cell]: mask is set to 1, T/S is extrapolated from neighbours, $ssh_n = ssh_b$ and U/V set to 0. 1062 1036 If no neighbours, T/S is extrapolated from old top cell value. 1063 1037 If no neighbours along i,j and k (both previous test failed), T/S/U/V/ssh and mask are set to 0. 1064 \item [Dry a column]: 1065 mask, T/S, U/V are set to 0 everywhere in the column and ssh set to 0. 1066 \item [Wet a column]: 1067 set mask to 1, T/S is extrapolated from neighbours, ssh is extrapolated from neighbours and U/V set to 0. 1038 \item [Dry a column]: mask, T/S, U/V are set to 0 everywhere in the column and ssh set to 0. 1039 \item [Wet a column]: set mask to 1, T/S is extrapolated from neighbours, ssh is extrapolated from neighbours and U/V set to 0. 1068 1040 If no neighbour, T/S/U/V and mask set to 0. 1069 1041 \end{description} … … 1109 1081 Two initialisation schemes are possible. 1110 1082 \begin{description} 1111 \item [{\np{nn_test_icebergs}{nn\_test\_icebergs}~$>$~0}] 1112 In this scheme, the value of \np{nn_test_icebergs}{nn\_test\_icebergs} represents the class of iceberg to generate 1083 \item [{\np{nn_test_icebergs}{nn\_test\_icebergs}~$>$~0}] In this scheme, the value of \np{nn_test_icebergs}{nn\_test\_icebergs} represents the class of iceberg to generate 1113 1084 (so between 1 and 10), and \np{nn_test_icebergs}{nn\_test\_icebergs} provides a lon/lat box in the domain at each grid point of 1114 1085 which an iceberg is generated at the beginning of the run. … … 1116 1087 \np{nn_test_icebergs}{nn\_test\_icebergs} is defined by four numbers in \np{nn_test_box}{nn\_test\_box} representing the corners of 1117 1088 the geographical box: lonmin,lonmax,latmin,latmax 1118 \item [{\np[=-1]{nn_test_icebergs}{nn\_test\_icebergs}}] 1119 In this scheme, the model reads a calving file supplied in the \np{sn_icb}{sn\_icb} parameter. 1089 \item [{\np[=-1]{nn_test_icebergs}{nn\_test\_icebergs}}] In this scheme, the model reads a calving file supplied in the \np{sn_icb}{sn\_icb} parameter. 1120 1090 This should be a file with a field on the configuration grid (typically ORCA) 1121 1091 representing ice accumulation rate at each model point. … … 1184 1154 \end{description} 1185 1155 1186 % ----------------------------------------------------------------1187 % Neutral drag coefficient from wave model (ln_cdgw)1188 1189 % ----------------------------------------------------------------1190 1156 %% ================================================================================================= 1191 1157 \subsection[Neutral drag coefficient from wave model (\forcode{ln_cdgw})]{Neutral drag coefficient from wave model (\protect\np{ln_cdgw}{ln\_cdgw})} … … 1198 1164 air-sea interface following \citet{large.yeager_rpt04}. 1199 1165 1200 % ----------------------------------------------------------------1201 % 3D Stokes Drift (ln_sdw, nn_sdrift)1202 % ----------------------------------------------------------------1203 1166 %% ================================================================================================= 1204 1167 \subsection[3D Stokes Drift (\forcode{ln_sdw} \& \forcode{nn_sdrift})]{3D Stokes Drift (\protect\np{ln_sdw}{ln\_sdw} \& \np{nn_sdrift}{nn\_sdrift})} … … 1294 1257 \] 1295 1258 1296 % ----------------------------------------------------------------1297 % Stokes-Coriolis term (ln_stcor)1298 % ----------------------------------------------------------------1299 1259 %% ================================================================================================= 1300 1260 \subsection[Stokes-Coriolis term (\forcode{ln_stcor})]{Stokes-Coriolis term (\protect\np{ln_stcor}{ln\_stcor})} … … 1308 1268 \np[=.true.]{ln_stcor}{ln\_stcor} has to be set. 1309 1269 1310 % ----------------------------------------------------------------1311 % Waves modified stress (ln_tauwoc, ln_tauw)1312 % ----------------------------------------------------------------1313 1270 %% ================================================================================================= 1314 1271 \subsection[Wave modified stress (\forcode{ln_tauwoc} \& \forcode{ln_tauw})]{Wave modified sress (\protect\np{ln_tauwoc}{ln\_tauwoc} \& \np{ln_tauw}{ln\_tauw})} … … 1357 1314 \label{subsec:SBC_dcy} 1358 1315 % 1359 1360 1316 1361 1317 \begin{figure}[!t] … … 1475 1431 the value of the \np{nn_ice}{nn\_ice} namelist parameter found in \nam{sbc}{sbc} namelist. 1476 1432 \begin{description} 1477 \item [nn\_ice = 0] 1478 there will never be sea-ice in the computational domain. 1433 \item [nn\_ice = 0] there will never be sea-ice in the computational domain. 1479 1434 This is a typical namelist value used for tropical ocean domain. 1480 1435 The surface fluxes are simply specified for an ice-free ocean. 1481 1436 No specific things is done for sea-ice. 1482 \item [nn\_ice = 1] 1483 sea-ice can exist in the computational domain, but no sea-ice model is used. 1437 \item [nn\_ice = 1] sea-ice can exist in the computational domain, but no sea-ice model is used. 1484 1438 An observed ice covered area is read in a file. 1485 1439 Below this area, the SST is restored to the freezing point and … … 1492 1446 is usually referred as the \textit{ice-if} model. 1493 1447 It can be found in the \mdl{sbcice\_if} module. 1494 \item [nn\_ice = 2 or more] 1495 A full sea ice model is used. 1448 \item [nn\_ice = 2 or more] A full sea ice model is used. 1496 1449 This model computes the ice-ocean fluxes, 1497 1450 that are combined with the air-sea fluxes using the ice fraction of each model cell to … … 1545 1498 1546 1499 \begin{description} 1547 \item [{\np[=0]{nn_fwb}{nn\_fwb}}] 1548 no control at all. 1500 \item [{\np[=0]{nn_fwb}{nn\_fwb}}] no control at all. 1549 1501 The mean sea level is free to drift, and will certainly do so. 1550 \item [{\np[=1]{nn_fwb}{nn\_fwb}}] 1551 global mean \textit{emp} set to zero at each model time step. 1502 \item [{\np[=1]{nn_fwb}{nn\_fwb}}] global mean \textit{emp} set to zero at each model time step. 1552 1503 %GS: comment below still relevant ? 1553 1504 %Note that with a sea-ice model, this technique only controls the mean sea level with linear free surface and no mass flux between ocean and ice (as it is implemented in the current ice-ocean coupling). 1554 \item [{\np[=2]{nn_fwb}{nn\_fwb}}] 1555 freshwater budget is adjusted from the previous year annual mean budget which 1505 \item [{\np[=2]{nn_fwb}{nn\_fwb}}] freshwater budget is adjusted from the previous year annual mean budget which 1556 1506 is read in the \textit{EMPave\_old.dat} file. 1557 1507 As the model uses the Boussinesq approximation, the annual mean fresh water budget is simply evaluated from
Note: See TracChangeset
for help on using the changeset viewer.