Changeset 13966
- Timestamp:
- 2020-12-02T10:30:33+01:00 (4 years ago)
- Location:
- NEMO/branches/2020/dev_r13923_Tiling_Cleanup_MPI3_LoopFusion
- Files:
-
- 8 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/2020/dev_r13923_Tiling_Cleanup_MPI3_LoopFusion
- Property svn:externals
-
old new 8 8 9 9 # SETTE 10 ^/utils/CI/sette@13 559sette10 ^/utils/CI/sette@13795 sette
-
- Property svn:externals
-
NEMO/branches/2020/dev_r13923_Tiling_Cleanup_MPI3_LoopFusion/doc/latex/NEMO/main/bibliography.bib
r12377 r13966 1906 1906 } 1907 1907 1908 @Article{ love_PRSLA1909, 1909 author = "A. E. H. Love", 1910 title = "The Yielding of the Earth to Disturbing Forces", 1911 journal = "Proc. R. Soc. Lond. A", 1912 year = "1909", 1913 volume = "82", 1914 pages = "73-88", 1915 doi = "10.1098/rspa.1909.0008" 1916 } 1917 1908 1918 @article{ losch_JGR08, 1909 1919 title = "Modeling ice shelf cavities in a z coordinate Ocean -
NEMO/branches/2020/dev_r13923_Tiling_Cleanup_MPI3_LoopFusion/doc/latex/NEMO/subfiles/chap_DYN.tex
r11693 r13966 1245 1245 the atmospheric pressure is taken into account when computing the surface pressure gradient. 1246 1246 1247 (2) When \np[=.true.]{ln_tide_pot}{ln\_tide\_pot} and \np[=.true.]{ln_tide}{ln\_tide} (see \autoref{sec:SBC_ tide}),1247 (2) When \np[=.true.]{ln_tide_pot}{ln\_tide\_pot} and \np[=.true.]{ln_tide}{ln\_tide} (see \autoref{sec:SBC_TDE}), 1248 1248 the tidal potential is taken into account when computing the surface pressure gradient. 1249 1249 -
NEMO/branches/2020/dev_r13923_Tiling_Cleanup_MPI3_LoopFusion/doc/latex/NEMO/subfiles/chap_LBC.tex
r11693 r13966 16 16 Release & Author(s) & Modifications \\ 17 17 \hline 18 {\em next} & {\em Simon M{\" u}ller} & {\em Minor update of \autoref{subsec:LBC_bdy_tides}} \\[2mm] 18 19 {\em 4.0} & {\em ...} & {\em ...} \\ 19 20 {\em 3.6} & {\em ...} & {\em ...} \\ … … 665 666 666 667 Tidal forcing at open boundaries requires the activation of surface 667 tides (i.e., in \nam{_tide}{\_tide}, \np{ln_tide}{ln\_tide} needs to be set to 668 \forcode{.true.} and the required constituents need to be activated by 669 including their names in the \np{clname}{clname} array; see 670 \autoref{sec:SBC_tide}). Specific options related to the reading in of 668 tides (i.e., in \nam{_tide}{\_tide}, \np[=.true.]{ln_tide}{ln\_tide} with the active tidal 669 constituents listed in the \np{sn_tide_cnames}{sn\_tide\_cnames} array; see 670 \autoref{sec:SBC_TDE}). The specific options related to the reading in of 671 671 the complex harmonic amplitudes of elevation (SSH) and barotropic 672 velocity (u,v) atopen boundaries are defined through the673 \nam{bdy_tide}{bdy\_tide} namelist parameters.\ \672 velocity components (u,v) at the open boundaries are defined through the 673 \nam{bdy_tide}{bdy\_tide} namelist parameters.\par 674 674 675 675 The tidal harmonic data at open boundaries can be specified in two 676 676 different ways, either on a two-dimensional grid covering the entire 677 677 model domain or along open boundary segments; these two variants can 678 be selected by setting \np{ln_bdytide_2ddta }{ln\_bdytide\_2ddta } to \forcode{.true.} or 679 \forcode{.false.}, respectively. In either case, the real and 680 imaginary parts of SSH and the two barotropic velocity components for 681 each activated tidal constituent \textit{tcname} have to be provided 682 separately: when two-dimensional data is used, variables 683 \textit{tcname\_z1} and \textit{tcname\_z2} for real and imaginary SSH, 684 respectively, are expected in input file \np{filtide}{filtide} with suffix 685 \ifile{\_grid\_T}, variables \textit{tcname\_u1} and 686 \textit{tcname\_u2} for real and imaginary u, respectively, are 687 expected in input file \np{filtide}{filtide} with suffix \ifile{\_grid\_U}, and 688 \textit{tcname\_v1} and \textit{tcname\_v2} for real and imaginary v, 689 respectively, are expected in input file \np{filtide}{filtide} with suffix 690 \ifile{\_grid\_V}; when data along open boundary segments is used, 691 variables \textit{z1} and \textit{z2} (real and imaginary part of SSH) 692 are expected to be available from file \np{filtide}{filtide} with suffix 693 \ifile{tcname\_grid\_T}, variables \textit{u1} and \textit{u2} (real 694 and imaginary part of u) are expected to be available from file 695 \np{filtide}{filtide} with suffix \ifile{tcname\_grid\_U}, and variables 696 \textit{v1} and \textit{v2} (real and imaginary part of v) are 697 expected to be available from file \np{filtide}{filtide} with suffix 698 \ifile{tcname\_grid\_V}. If \np{ln_bdytide_conj}{ln\_bdytide\_conj} is set to 699 \forcode{.true.}, the data is expected to be in complex conjugate 700 form. 678 be selected by setting \np[=.true.]{ln_bdytide_2ddta}{ln\_bdytide\_2ddta} or 679 \np[=.false.]{ln_bdytide_2ddta}{ln\_bdytide\_2ddta}, respectively. In either 680 case, the real and imaginary parts of SSH, u, and v amplitudes associated with 681 each activated tidal constituent \texttt{<constituent>} have to be provided 682 separately as fields in input files with names based on 683 \np[=<input>]{filtide}{filtide}: when two-dimensional data is used, variables 684 \texttt{<constituent>\_z1} and \texttt{<constituent>\_z2} for the real and imaginary parts of 685 SSH, respectively, are expected to be available in file 686 \ifile{<input>\_grid\_T}, variables \texttt{<constituent>\_u1} and 687 \texttt{<constituent>\_u2} for the real and imaginary parts of u, respectively, in file 688 \ifile{<input>\_grid\_U}, and \texttt{<constituent>\_v1} and 689 \texttt{<constituent>\_v2} for the real and imaginary parts of v, respectively, in file 690 \ifile{<input>\_grid\_V}; when data along open boundary segments is used, 691 variables \texttt{z1} and \texttt{z2} (real and imaginary part of SSH) are 692 expected to be available in file \ifile{<input><constituent>\_grid\_T}, 693 variables \texttt{u1} and \texttt{u2} (real and imaginary part of u) in file 694 \ifile{<input><constituent>\_grid\_U}, and variables \texttt{v1} and \texttt{v2} 695 (real and imaginary part of v) in file 696 \ifile{<input><constituent>\_grid\_V}.\par 701 697 702 698 Note that the barotropic velocity components are assumed to be defined -
NEMO/branches/2020/dev_r13923_Tiling_Cleanup_MPI3_LoopFusion/doc/latex/NEMO/subfiles/chap_SBC.tex
r13165 r13966 5 5 \begin{document} 6 6 7 \chapter{Surface Boundary Condition (SBC, SAS, ISF, ICB )}7 \chapter{Surface Boundary Condition (SBC, SAS, ISF, ICB, TDE)} 8 8 \label{chap:SBC} 9 9 … … 18 18 Release & Author(s) & Modifications \\ 19 19 \hline 20 {\em next} & {\em Simon M{\" u}ller} & {\em Update of \autoref{sec:SBC_TDE}}\\[2mm] 20 21 {\em 4.0} & {\em ...} & {\em ...} \\ 21 22 {\em 3.6} & {\em ...} & {\em ...} \\ … … 1013 1014 1014 1015 %% ================================================================================================= 1015 \section [Surface tides (\textit{sbctide.F90})]{Surface tides (\protect\mdl{sbctide})}1016 \label{sec:SBC_ tide}1016 \section{Surface tides (TDE)} 1017 \label{sec:SBC_TDE} 1017 1018 1018 1019 \begin{listing} … … 1022 1023 \end{listing} 1023 1024 1024 The tidal forcing, generated by the gravity forces of the Earth-Moon and Earth-Sun sytems, 1025 is activated if \np{ln_tide}{ln\_tide} and \np{ln_tide_pot}{ln\_tide\_pot} are both set to \forcode{.true.} in \nam{_tide}{\_tide}. 1026 This translates as an additional barotropic force in the momentum \autoref{eq:MB_PE_dyn} such that: 1025 \subsection{Tidal constituents} 1026 Ocean model component TDE provides the common functionality for tidal forcing 1027 and tidal analysis in the model framework. This includes the computation of the gravitational 1028 surface forcing, as well as support for lateral forcing at open boundaries (see 1029 \autoref{subsec:LBC_bdy_tides}) and tidal harmonic analysis (see 1030 \autoref{subsec:DIA_diamlr} and \autoref{subsec:DIA_diadetide}). The module is 1031 activated with \np[=.true.]{ln_tide}{ln\_tide} in namelist 1032 \nam{_tide}{\_tide}. It provides the same 34 tidal constituents that are 1033 included in the 1034 \href{https://www.aviso.altimetry.fr/en/data/products/auxiliary-products/global-tide-fes.html}{FES2014 1035 ocean tide model}: Mf, Mm, Ssa, Mtm, Msf, Msqm, Sa, K1, O1, P1, Q1, J1, S1, 1036 M2, S2, N2, K2, nu2, mu2, 2N2, L2, T2, eps2, lam2, R2, M3, MKS2, MN4, MS4, M4, 1037 N4, S4, M6, and M8; see file \hf{tide} and \mdl{tide\_mod} for further 1038 information and references\footnote{As a legacy option \np{ln_tide_var} can be 1039 set to \forcode{0}, in which case the 19 tidal constituents (M2, N2, 2N2, S2, 1040 K2, K1, O1, Q1, P1, M4, Mf, Mm, Msqm, Mtm, S1, MU2, NU2, L2, and T2; see file 1041 \hf{tide}) and associated parameters that have been available in NEMO version 1042 4.0 and earlier are available}. Constituents to be included in the tidal forcing 1043 (surface and lateral boundaries) are selected by enumerating their respective 1044 names in namelist array \np{sn_tide_cnames}{sn\_tide\_cnames}.\par 1045 1046 \subsection{Surface tidal forcing} 1047 Surface tidal forcing can be represented in the model through an additional 1048 barotropic force in the momentum equation (\autoref{eq:MB_PE_dyn}) such that: 1027 1049 \[ 1028 % \label{eq:SBC_PE_dyn_tides} 1029 \frac{\partial {\mathrm {\mathbf U}}_h }{\partial t}= ... 1030 +g\nabla (\Pi_{eq} + \Pi_{sal}) 1050 \frac{\partial {\mathrm {\mathbf U}}_h }{\partial t} = \ldots +g\nabla (\gamma 1051 \Pi_{eq} + \Pi_{sal}) 1031 1052 \] 1032 where $\Pi_{eq}$ stands for the equilibrium tidal forcing and 1033 $\Pi_{sal}$ is a self-attraction and loading term (SAL). 1034 1035 The equilibrium tidal forcing is expressed as a sum over a subset of 1036 constituents chosen from the set of available tidal constituents 1037 defined in file \hf{SBC/tide} (this comprises the tidal 1038 constituents \textit{M2, N2, 2N2, S2, K2, K1, O1, Q1, P1, M4, Mf, Mm, 1039 Msqm, Mtm, S1, MU2, NU2, L2}, and \textit{T2}). Individual 1040 constituents are selected by including their names in the array 1041 \np{clname}{clname} in \nam{_tide}{\_tide} (e.g., \np{clname}{clname}\forcode{(1)='M2', } 1042 \np{clname}{clname}\forcode{(2)='S2'} to select solely the tidal consituents \textit{M2} 1043 and \textit{S2}). Optionally, when \np{ln_tide_ramp}{ln\_tide\_ramp} is set to 1044 \forcode{.true.}, the equilibrium tidal forcing can be ramped up 1045 linearly from zero during the initial \np{rdttideramp}{rdttideramp} days of the 1046 model run. 1053 where $\gamma \Pi_{eq}$ stands for the equilibrium tidal forcing scaled by a spatially 1054 uniform tilt factor $\gamma$, and $\Pi_{sal}$ is an optional 1055 self-attraction and loading term (SAL). These additional terms are enabled when, 1056 in addition to \np[=.true.]{ln_tide}{ln\_tide}), 1057 \np[=.true.]{ln_tide_pot}{ln\_tide\_pot}.\par 1058 1059 The equilibrium tidal forcing is expressed as a sum over the subset of 1060 constituents listed in \np{sn_tide_cnames}{sn\_tide\_cnames} of 1061 \nam{_tide} (e.g., 1062 \begin{forlines} 1063 sn_tide_cnames(1) = 'M2' 1064 sn_tide_cnames(2) = 'K1' 1065 sn_tide_cnames(3) = 'S2' 1066 sn_tide_cnames(4) = 'O1' 1067 \end{forlines} 1068 to select the four tidal constituents of strongest equilibrium tidal 1069 potential). The tidal tilt factor $\gamma = 1 + k - h$ includes the 1070 Love numbers $k$ and $h$ \citep{love_prsla1909}; this factor is 1071 configurable using \np{rn_tide_gamma} (default value 0.7). Optionally, 1072 when \np[=.true.]{ln_tide_ramp}{ln\_tide\_ramp}, the equilibrium tidal 1073 forcing can be ramped up linearly from zero during the initial 1074 \np{rn_tide_ramp_dt}{rn\_tide\_ramp\_dt} days of the model run.\par 1047 1075 1048 1076 The SAL term should in principle be computed online as it depends on 1049 1077 the model tidal prediction itself (see \citet{arbic.garner.ea_DSR04} for a 1050 discussion about the practical implementation of this term). 1051 Nevertheless, the complex calculations involved would make this 1052 computationally too expensive. Here, two options are available: 1053 $\Pi_{sal}$ generated by an external model can be read in 1054 (\np[=.true.]{ln_read_load}{ln\_read\_load}), or a ``scalar approximation'' can be 1055 used (\np[=.true.]{ln_scal_load}{ln\_scal\_load}). In the latter case 1078 discussion about the practical implementation of this term). The complex 1079 calculations involved in such computations, however, are computationally very 1080 expensive. Here, two mutually exclusive simpler variants are available: 1081 amplitudes generated by an external model for oscillatory $\Pi_{sal}$ 1082 contributions from each of the selected tidal constituents can be read in 1083 (\np[=.true.]{ln_read_load}{ln\_read\_load}) from the file specified in 1084 \np{cn_tide_load}{cn\_tide\_load} (the variable names are comprised of the 1085 tidal-constituent name and suffixes \forcode{_z1} and \forcode{_z2} for the two 1086 orthogonal components, respectively); alternatively, a ``scalar approximation'' 1087 can be used (\np[=.true.]{ln_scal_load}{ln\_scal\_load}), where 1056 1088 \[ 1057 1089 \Pi_{sal} = \beta \eta, 1058 1090 \] 1059 where $\beta$ (\np{rn_scal_load}{rn\_scal\_load} with a default value of 0.094) is a 1060 spatially constant scalar, often chosen to minimize tidal prediction 1061 errors. Setting both \np{ln_read_load}{ln\_read\_load} and \np{ln_scal_load}{ln\_scal\_load} to 1062 \forcode{.false.} removes the SAL contribution. 1091 with a spatially uniform coefficient $\beta$, which can be configured 1092 via \np{rn_scal_load}{rn\_scal\_load} (default value 0.094) and is 1093 often tuned to minimize tidal prediction errors.\par 1094 1095 For diagnostic purposes, the forcing potential of the individual tidal 1096 constituents (incl. load ptential, if activated) and the total forcing 1097 potential (incl. load potential, if activated) can be made available 1098 as diagnostic output by setting 1099 \np[=.true.]{ln_tide_dia}{ln\_tide\_dia} (fields 1100 \forcode{tide_pot_<constituent>} and \forcode{tide_pot}).\par 1063 1101 1064 1102 %% ================================================================================================= -
NEMO/branches/2020/dev_r13923_Tiling_Cleanup_MPI3_LoopFusion/doc/namelists/nam_tide
r10075 r13966 3 3 !----------------------------------------------------------------------- 4 4 ln_tide = .false. ! Activate tides 5 ln_tide_pot = .true. ! use tidal potential forcing 5 nn_tide_var = 1 ! Variant of tidal parameter set and tide-potential computation 6 ! ! (1: default; 0: compatibility with previous versions) 7 ln_tide_dia = .false. ! Enable tidal diagnostic output 8 ln_tide_pot = .false. ! use tidal potential forcing 9 rn_tide_gamma = 0.7 ! Tidal tilt factor 6 10 ln_scal_load = .false. ! Use scalar approximation for 7 11 rn_scal_load = 0.094 ! load potential 8 12 ln_read_load = .false. ! Or read load potential from file 9 13 cn_tide_load = 'tide_LOAD_grid_T.nc' ! filename for load potential 10 ! 14 ! 11 15 ln_tide_ramp = .false. ! Use linear ramp for tides at startup 12 r dttideramp = 0.! ramp duration in days13 clname(1)= 'DUMMY' ! name of constituent - all tidal components must be set in namelist_cfg16 rn_tide_ramp_dt = 0. ! ramp duration in days 17 sn_tide_cnames(1) = 'DUMMY' ! name of constituent - all tidal components must be set in namelist_cfg 14 18 / -
NEMO/branches/2020/dev_r13923_Tiling_Cleanup_MPI3_LoopFusion/doc/namelists/nambdy_tide
r10075 r13966 4 4 filtide = 'bdydta/amm12_bdytide_' ! file name root of tidal forcing files 5 5 ln_bdytide_2ddta = .false. ! 6 ln_bdytide_conj = .false. !7 6 / -
NEMO/branches/2020/dev_r13923_Tiling_Cleanup_MPI3_LoopFusion/src/OCE/C1D/step_c1d.F90
r13237 r13966 122 122 CALL dyn_atf ( kstp, Nbb, Nnn, Naa , uu, vv, e3t, e3u, e3v ) ! time filtering of "now" fields 123 123 IF(.NOT.ln_linssh)CALL ssh_atf ( kstp, Nbb, Nnn, Naa , ssh ) ! time filtering of "now" sea surface height 124 IF( kstp == nit000 .AND. ln_linssh) THEN 125 ssh(:,:,Naa) = ssh(:,:,Nnn) ! init ssh after in ln_linssh case 126 ENDIF 124 127 ! 125 128 ! Swap time levels
Note: See TracChangeset
for help on using the changeset viewer.