Computation of barotropic and meridional overturning streamfunctions for models formulated on unstructured meshes is commonly preceded by interpolation to a regular mesh. This operation destroys the original conservation, which can be then artificially imposed to make the computation possible. An elementary method is proposed that avoids interpolation and preserves conservation in a strict model sense. The method is described as applied to the discretization of the Finite volumE Sea ice – Ocean Model (FESOM2) on triangular meshes. It, however, is generalizable to colocated vertex-based discretization on triangular meshes and to both triangular and hexagonal C-grid discretizations.

Over recent years, a considerable progress has been achieved in the development of global ocean circulation models working on horizontally unstructured meshes such as FESOM1.4

All new large-scale ocean models are based on the finite-volume method and as such have a clear definition of fluxes at boundaries of the control cells of their meshes. However, these fluxes are defined on irregularly located faces, so instead of using them in their original sense, one is tempted to rely on interpolation to a regular mesh. Our practice shows that incurred inconsistencies can be large, and this road should not be followed if global or basin-scale quantities are computed. It turns out that there are efficient and easy-to-implement procedures that are based on exact fluxes and balances and that might be used for analyses. These procedures do not rely on interpolation but use binning, which is sufficient in most cases except for very coarse meshes. The intention of this note is to describe some of them. In doing so we will use the arrangement of variables of FESOM2; however the adjustments needed for other models with different discretizations are relatively straightforward and will be briefly mentioned. We suspect that similar procedures are already used by other groups – in particular, for the analysis on cubed-sphere meshes of the Massachusetts Institute of Technology general circulation model see, e.g.,

We will discuss computations of meridional overturning streamfunctions in height and density coordinates as well as computations of barotropic streamfunctions.

FESOM2 uses a cell–vertex discretization, placing horizontal velocities on centroids of triangles and scalar quantities at vertices if viewed from the surface, as shown schematically in Fig.

Horizontal schematic of

The elementary structure used in computations of horizontal fluxes between two scalar control volumes is given by mesh edges (labeled with index

For zonally integrated vertical and meridional velocities

In FESOM2, the vertical velocity is conservatively remapped from vertices to cells using

We introduce a set of latitude bins

Schematic of binning. Circles correspond to triangle centroids. Bins (here B

For each bin

Compute

Compute the meridional overturning streamfunction

Generally

The computations presented here can be generalized to some other sets of binning. Any sufficiently smooth scalar quantity defined at vertices or triangles can be used to introduce a set of bins. For example, being limited to the N Atlantic subpolar gyre, one may ask where the AMOC is forming using bins in mean sea surface height or barotropic streamfunction (see, e.g.,

In the following we present an example showing differences between computations using different bins in

Global meridional overturning circulation (MOC) streamfunction including the eddy-induced transports. Method A was used for the computation. The streamfunction depicts a canonical pattern as known from the literature with a maximum of 20 Sv at 45

Differences in MOC computed with method A and using bins

Panel

Here the horizontal velocities are used. We select a set of latitudes

For each

The flux associated with the edge is given by the expression for

Since each of segments

Note that the set of intersected edges may be ordered arbitrarily; the computation relies on the orientation of edges
with respect to lines

Using this method we computed the streamfunction using the discrete spacing of

If the modeled fluxes have been remapped onto the desired set of vertical levels as, for instance, prescribed density levels, method B can be directly used for computing the MOC for a new vertical coordinate system.
Figure

Schematic of edge search method. The gray line

Note that the diagnostic of MOC in density coordinates can be also made in the same manner as method A. For this, the horizontal divergence needs to be remapped conservatively into density bins. From the horizontal divergence we then (1) diagnose the diapycnal velocity and (2) use it in method A.

Differences between computations of MOC using meridional (method B) or vertical (method A) velocities. The discrepancy between techniques may result in differences of more than 1 Sv.

As follows from the equation for elevation, time mean vertically integrated horizontal velocity

The barotropic streamfunction is more difficult to compute because binning has to be done in two directions. We introduce first a set of lines

This procedure can potentially be more noisy than computations of MOC and may benefit from a conservative remap of the contributions from the segments in the second binning step (the number of segments in final bins is not necessarily large, in contrast to computations of meridional overturning).

According to the above procedure we computed the barotropic streamfunction using

Fig.

FESOM2, as its predecessor, uses implicit time stepping for the internal mode. The already available solver and routines need to be only slightly adjusted to compute the barotropic streamfunction

If we integrate the equation above over a scalar control volume (in FESOM2 scalar points are natural locations for relative vorticity

The FESOM 2.0 source code is available at

For postprocessing in Python, a combination of dask and xarray is used for reading a 3D field (if, for example, the mean over several timesteps or years is required). The MOC calculation itself happens using the data that are located in memory. One should have, of course, a sufficient amount of memory installed on the post processing machine. Our experience shows that 200 GB is enough to compute MOC for a mesh with

Computation of the barotropic streamfunction is currently implemented offline, and from our experience it is slow because of loops along vertical and zonal directions are required. Hence we plan to implement the computation of the barotropic streamfunction following the philosophy of the in situ computations

The general idea of the simple procedures described above is the use of transports as they are defined in an unstructured-mesh model, avoiding interpolation from an unstructured to a structured mesh. The diagnosed quantities such as meridional and barotropic streamfunctions rely on the continuity equation, which is satisfied by the model only in a certain discrete sense. Interpolation destroys this sense, requiring corrections and introducing interpretation errors related to these corrections. In practice the interpretation errors are significant, being on the level of sverdrups for the meridional overturning as illustrated in

The algorithms above rely only on transports as they are defined in models and use conservative interpolation only in the vertical direction if required by a specified system of levels. We emphasize that the algorithms described are still sensitive to parameter choices and thus contain interpretation uncertainty. In each case there is some sensitivity to how bins or vertical levels are selected. In method B the straight line

We describe a set of simple procedures to diagnose the meridional overturning and barotropic streamfunctions intended for unstructured meshes and requiring no interpolation of model output to regular meshes. We give application examples and discuss uncertainties involved. The procedures are described for FESOM2, but their adaptation for other discretizations (MPAS or ICON) is straightforward. Our experience using them indicates that they create much fewer difficulties with interpretation of model results than all our previous approaches based on interpolation.

The code of the FESOM 2.0 model which was used to conduct the simulations for this paper is available at Zenodo

The dataset related to this article can be found at Zenodo

DS and SD proposed the methods. DS and NK worked on the implementation, and NK, PS and QW contributed to the analyses. DS and SD wrote the initial paper, and all authors contributed to its final version.

The authors declare that they have no conflict of interest.

We thank Mark Petersen and an anonymous reviewer for their helpful suggestions. This paper is a contribution to the projects S1 (Diagnosis and Metrics in Climate Models) and S2 (Improved parameterizations and numerics in climate models) of the Collaborative Research Centre TRR 181 “Energy Transfer in Atmosphere and Ocean” funded by the Deutsche Forschungsgemeinschaft (DFG, German Research Foundation) –

This research has been supported by the Deutsche Forschungsgemeinschaft (grant no. 274762653) and the Helmholtz-Gemeinschaft (REKLIM grant).The article processing charges for this open-access publication were covered by a Research Centre of the Helmholtz Association.

This paper was edited by Simone Marras and reviewed by Mark Petersen and one anonymous referee.