MOM6
midas_vertmap.F90 File Reference

Go to the source code of this file.

Data Types

interface  midas_vertmap::fill_boundaries
 Fill grid edges. More...
 

Modules

module  midas_vertmap
 Routines for initialization callable from MOM6 or Python (MIDAS)
 

Functions/Subroutines

real function, dimension(size(tr_in, 1), size(tr_in, 2), nlay), public midas_vertmap::tracer_z_init (tr_in, z_edges, e, nkml, nkbl, land_fill, wet, nlay, nlevs, debug, i_debug, j_debug, eps_z)
 Layer model routine for remapping tracers. More...
 
integer function, dimension(size(a, 1), size(x, 1)) midas_vertmap::bisect_fast (a, x, lo, hi)
 Return the index where to insert item x in list a, assuming a is sorted. The return values [i] is such that all e in a[:i-1] have e <= x, and all e in a[i:] have e > x. So if x already appears in the list, will insert just after the rightmost x already there. Optional args lo (default 1) and hi (default len(a)) bound the slice of a to be searched. More...
 
subroutine, public midas_vertmap::determine_temperature (temp, salt, R, p_ref, niter, land_fill, h, k_start, eos)
 This subroutine determines the potential temperature and salinity that is consistent with the target density using provided initial guess. More...
 
subroutine midas_vertmap::find_overlap (e, Z_top, Z_bot, k_max, k_start, k_top, k_bot, wt, z1, z2)
 This subroutine determines the layers bounded by interfaces e that overlap with the depth range between Z_top and Z_bot, and also the fractional weights of each layer. It also calculates the normalized relative depths of the range of each layer that overlaps that depth range. Note that by convention, e decreases with increasing k and Z_top > Z_bot. More...
 
real function midas_vertmap::find_limited_slope (val, e, k)
 This subroutine determines a limited slope for val to be advected with a piecewise limited scheme. More...
 
real function, dimension(size(rho, 1), size(rho, 2), size(rb, 1)), public midas_vertmap::find_interfaces (rho, zin, Rb, depth, nlevs, nkml, nkbl, hml, debug, eps_z, eps_rho)
 Find interface positions corresponding to density profile. More...
 
subroutine, public midas_vertmap::meshgrid (x, y, x_T, y_T)
 Create a 2d-mesh of grid coordinates from 1-d arrays. More...
 
subroutine midas_vertmap::smooth_heights (zi, fill, bad, sor, niter, cyclic_x, tripolar_n)
 Solve del2 (zi) = 0 using successive iterations with a 5 point stencil. Only points fill==1 are modified. Except where bad==1, information propagates isotropically in index space. The resulting solution in each region is an approximation to del2(zi)=0 subject to boundary conditions along the valid points curve bounding this region. More...
 
integer function, dimension(0:size(m, 1)+1, 0:size(m, 2)+1) midas_vertmap::fill_boundaries_int (m, cyclic_x, tripolar_n)
 Fill grid edges. More...
 
real function, dimension(0:size(m, 1)+1, 0:size(m, 2)+1) midas_vertmap::fill_boundaries_real (m, cyclic_x, tripolar_n)
 fill grid edges More...