!----------------------------------------------------------------------- &namtra_adv ! advection scheme for tracer !----------------------------------------------------------------------- ln_traadv_cen2 = .false. ! 2nd order centered scheme ln_traadv_tvd = .true. ! TVD scheme ln_traadv_muscl = .false. ! MUSCL scheme ln_traadv_muscl2 = .false. ! MUSCL2 scheme + cen2 at boundaries ln_traadv_ubs = .false. ! UBS scheme ln_traadv_qck = .false. ! QUICKEST scheme ln_traadv_msc_ups= .false. ! use upstream scheme within muscl ln_traadv_tvd_zts= .false. ! TVD scheme with sub-timestepping of vertical tracer advection /
The advection tendency of a tracer in flux form is the divergence of the advective fluxes. Its discrete expression is given by :
|
The key difference between the advection schemes available in NEMO is the choice made in space and time interpolation to define the value of the tracer at the velocity points (Fig. 5.1).
Along solid lateral and bottom boundaries a zero tracer flux is automatically specified, since the normal velocity is zero there. At the sea surface the boundary condition depends on the type of sea surface chosen:
The velocity field that appears in (5.1) and () is the centred (now) effective ocean velocity, the eulerian velocity (see Chap. 6) plus the eddy induced velocity (eiv) and/or the mixed layer eddy induced velocity (eiv) when those parameterisations are used (see Chap. 9).
The choice of an advection scheme is made in the nam_traadv namelist, by setting to true one and only one of the logicals ln_traadv_xxx. The corresponding code can be found in the traadv_xxx.F90 module, where xxx is a 3 or 4 letter acronym corresponding to each scheme. Details of the advection schemes are given below. The choice of an advection scheme is a complex matter which depends on the model physics, model resolution, type of tracer, as well as the issue of numerical cost.
Note that (1) cen2 and TVD schemes require an explicit diffusion operator while the other schemes are diffusive enough so that they do not require additional diffusion ; (2) cen2, MUSCL2, and UBS are not positive schemes 5.1, implying that false extrema are permitted. Their use is not recommended on passive tracers ; (3) It is recommended that the same advection-diffusion scheme is used on both active and passive tracers. Indeed, if a source or sink of a passive tracer depends on an active one, the difference of treatment of active and passive tracers can create very nice-looking frontal structures that are pure numerical artefacts. Nevertheless, most of our users set a different treatment on passive and active tracers, that's the reason why this possibility is offered. We strongly suggest them to perform a sensitivity experiment using a same treatment to assess the robustness of their results.
In the centred second order formulation, the tracer at velocity points is evaluated as the mean of the two neighbouring -point values. For example, in the -direction :
The scheme is non diffusive ( it conserves the tracer variance, but dispersive ( it may create false extrema). It is therefore notoriously noisy and must be used in conjunction with an explicit diffusion operator to produce a sensible solution. The associated time-stepping is performed using a leapfrog scheme in conjunction with an Asselin time-filter, so in (5.2) is the now tracer value. The centered second order advection is computed in the traadv_cen2.F90 module. In this module, it is advantageous to combine the cen2 scheme with an upstream scheme in specific areas which require a strong diffusion in order to avoid the generation of false extrema. These areas are the vicinity of large river mouths, some straits with coarse resolution, and the vicinity of ice cover area ( when the ocean temperature is close to the freezing point). This combined scheme has been included for specific grid points in the ORCA2 configuration only. This is an obsolescent feature as the recommended advection scheme for the ORCA configuration is TVD (see §5.1.2).
Note that using the cen2 scheme, the overall tracer advection is of second order accuracy since both (5.1) and (5.2) have this order of accuracy.
In the Total Variance Dissipation (TVD) formulation, the tracer at velocity points is evaluated using a combination of an upstream and a centred scheme. For example, in the -direction :
For stability reasons (see §3), is evaluated in (5.3) using the now tracer while is evaluated using the before tracer. In other words, the advective part of the scheme is time stepped with a leap-frog scheme while a forward scheme is used for the diffusive part.
An additional option has been added controlled by ln_traadv_tvd_zts. By setting this logical to true, a TVD scheme is used on both horizontal and vertical direction, but on the latter, a split-explicit time stepping is used, with 5 sub-timesteps. This option can be useful when the value of the timestep is limited by vertical advection [Lemarié et al., 2015]. Note that in this case, a similar split-explicit time stepping should be used on vertical advection of momentum to ensure a better stability (see ln_dynzad_zts in §6.2.3).
The Monotone Upstream Scheme for Conservative Laws (MUSCL) has been implemented by Lévy et al. [2001]. In its formulation, the tracer at velocity points is evaluated assuming a linear tracer variation between two -points (Fig.5.1). For example, in the -direction :
The time stepping is performed using a forward scheme, that is the before tracer field is used to evaluate .
For an ocean grid point adjacent to land and where the ocean velocity is directed toward land, two choices are available: an upstream flux (ln_traadv_muscl=true) or a second order flux (ln_traadv_muscl2=true). Note that the latter choice does not ensure the positive character of the scheme. Only the former can be used on both active and passive tracers. The two MUSCL schemes are implemented in the traadv_tvd.F90 and traadv_tvd2.F90 modules.
Note that when using npln_traadv_msc_ups = true in addition to ln_traadv_muscl=true, the MUSCL fluxes are replaced by upstream fluxes in vicinity of river mouths.
The UBS advection scheme is an upstream-biased third order scheme based on an upstream-biased parabolic interpolation. It is also known as the Cell Averaged QUICK scheme (Quadratic Upstream Interpolation for Convective Kinematics). For example, in the -direction :
This results in a dissipatively dominant (i.e. hyper-diffusive) truncation error [Shchepetkin and McWilliams, 2005]. The overall performance of the advection scheme is similar to that reported in Farrow and Stevens [1995]. It is a relatively good compromise between accuracy and smoothness. It is not a positive scheme, meaning that false extrema are permitted, but the amplitude of such are significantly reduced over the centred second order method. Nevertheless it is not recommended that it should be applied to a passive tracer that requires positivity.
The intrinsic diffusion of UBS makes its use risky in the vertical direction where the control of artificial diapycnal fluxes is of paramount importance. Therefore the vertical flux is evaluated using the TVD scheme when ln_traadv_ubs=true.
For stability reasons (see §3), the first term in (5.5) (which corresponds to a second order centred scheme) is evaluated using the now tracer (centred in time) while the second term (which is the diffusive part of the scheme), is evaluated using the before tracer (forward in time). This choice is discussed by Webb et al. [1998] in the context of the QUICK advection scheme. UBS and QUICK schemes only differ by one coefficient. Replacing 1/6 with 1/8 in (5.5) leads to the QUICK advection scheme [Webb et al., 1998]. This option is not available through a namelist parameter, since the 1/6 coefficient is hard coded. Nevertheless it is quite easy to make the substitution in the traadv_ubs.F90 module and obtain a QUICK scheme.
Four different options are possible for the vertical component used in the UBS scheme. can be evaluated using either (a) a centred order scheme, or (b) a TVD scheme, or (c) an interpolation based on conservative parabolic splines following the Shchepetkin and McWilliams [2005] implementation of UBS in ROMS, or (d) a UBS. The case has dispersion properties similar to an eighth-order accurate conventional scheme. The current reference version uses method b)
Note that :
(1) When a high vertical resolution is used, the model stability can be controlled by vertical advection (not vertical diffusion which is usually solved using an implicit scheme). Computer time can be saved by using a time-splitting technique on vertical advection. Such a technique has been implemented and validated in ORCA05 with 301 levels. It is not available in the current reference version.
(2) It is straightforward to rewrite (5.5) as follows:
(5.6) has several advantages. Firstly, it clearly reveals that the UBS scheme is based on the fourth order scheme to which an upstream-biased diffusion term is added. Secondly, this emphasises that the order part (as well as the order part as stated above) has to be evaluated at the now time step using (5.5). Thirdly, the diffusion term is in fact a biharmonic operator with an eddy coefficient which is simply proportional to the velocity: . Note that NEMO v3.4 still uses (5.5), not (5.6).
The Quadratic Upstream Interpolation for Convective Kinematics with Estimated Streaming Terms (QUICKEST) scheme proposed by Leonard [1979] is the third order Godunov scheme. It is associated with the ULTIMATE QUICKEST limiter [Leonard, 1991]. It has been implemented in NEMO by G. Reffray (MERCATOR-ocean) and can be found in the traadv_qck.F90 module. The resulting scheme is quite expensive but positive. It can be used on both active and passive tracers. However, the intrinsic diffusion of QCK makes its use risky in the vertical direction where the control of artificial diapycnal fluxes is of paramount importance. Therefore the vertical flux is evaluated using the CEN2 scheme. This no longer guarantees the positivity of the scheme. The use of TVD in the vertical direction (as for the UBS case) should be implemented to restore this property.
Gurvan Madec and the NEMO Team
NEMO European Consortium2017-02-17