MOM6
MOM_ALE.F90 File Reference
#include <MOM_memory.h>
Include dependency graph for MOM_ALE.F90:

Go to the source code of this file.

Data Types

type  mom_ale::ale_cs
 ALE control structure. More...
 

Modules

module  mom_ale
 This module contains the main regridding routines.
 

Functions/Subroutines

subroutine, public mom_ale::ale_init (param_file, GV, US, max_depth, CS)
 This routine is typically called (from initialize_MOM in file MOM.F90) before the main time integration loop to initialize the regridding stuff. We read the MOM_input file to register the values of different regridding/remapping parameters. More...
 
subroutine, public mom_ale::ale_register_diags (Time, G, GV, US, diag, CS)
 Initialize diagnostics for the ALE module. More...
 
subroutine, public mom_ale::adjustgridforintegrity (CS, G, GV, h)
 Crudely adjust (initial) grid for integrity. This routine is typically called (from initialize_MOM in file MOM.F90) before the main time integration loop to initialize the regridding stuff. We read the MOM_input file to register the values of different regridding/remapping parameters. More...
 
subroutine, public mom_ale::ale_end (CS)
 End of regridding (memory deallocation). This routine is typically called (from MOM_end in file MOM.F90) after the main time integration loop to deallocate the regridding stuff. More...
 
subroutine, public mom_ale::ale_main (G, GV, US, h, u, v, tv, Reg, CS, OBC, dt, frac_shelf_h)
 Takes care of (1) building a new grid and (2) remapping all variables between the old grid and the new grid. The creation of the new grid can be based on z coordinates, target interface densities, sigma coordinates or any arbitrary coordinate system. More...
 
subroutine, public mom_ale::ale_main_offline (G, GV, h, tv, Reg, CS, OBC, dt)
 Takes care of (1) building a new grid and (2) remapping all variables between the old grid and the new grid. The creation of the new grid can be based on z coordinates, target interface densities, sigma coordinates or any arbitrary coordinate system. More...
 
subroutine, public mom_ale::ale_offline_inputs (CS, G, GV, h, tv, Reg, uhtr, vhtr, Kd, debug, OBC)
 Regrid/remap stored fields used for offline tracer integrations. These input fields are assumed to have the same layer thicknesses at the end of the last offline interval (which should be a Zstar grid). This routine builds a grid on the runtime specified vertical coordinate. More...
 
subroutine, public mom_ale::ale_offline_tracer_final (G, GV, h, tv, h_target, Reg, CS, OBC)
 Remaps all tracers from h onto h_target. This is intended to be called when tracers are done offline. In the case where transports don't quite conserve, we still want to make sure that layer thicknesses offline do not drift too far away from the online model. More...
 
subroutine mom_ale::check_grid (G, GV, h, threshold)
 Check grid for negative thicknesses. More...
 
subroutine, public mom_ale::ale_build_grid (G, GV, regridCS, remapCS, h, tv, debug, frac_shelf_h)
 Generates new grid. More...
 
subroutine, public mom_ale::ale_regrid_accelerated (CS, G, GV, h, tv, n, u, v, OBC, Reg, dt, dzRegrid, initial)
 For a state-based coordinate, accelerate the process of regridding by repeatedly applying the grid calculation algorithm. More...
 
subroutine mom_ale::remap_all_state_vars (CS_remapping, CS_ALE, G, GV, h_old, h_new, Reg, OBC, dxInterface, u, v, debug, dt)
 This routine takes care of remapping all variable between the old and the new grids. When velocity components need to be remapped, thicknesses at velocity points are taken to be arithmetic averages of tracer thicknesses. This routine is called during initialization of the model at time=0, to remap initiali conditions to the model grid. It is also called during a time step to update the state. More...
 
subroutine, public mom_ale::ale_remap_scalar (CS, G, GV, nk_src, h_src, s_src, h_dst, s_dst, all_cells, old_remap)
 Remaps a single scalar between grids described by thicknesses h_src and h_dst. h_dst must be dimensioned as a model array with GVke layers while h_src can have an arbitrary number of layers specified by nk_src. More...
 
subroutine, public mom_ale::pressure_gradient_plm (CS, S_t, S_b, T_t, T_b, G, GV, tv, h, bdry_extrap)
 Use plm reconstruction for pressure gradient (determine edge values) By using a PLM (limited piecewise linear method) reconstruction, this routine determines the edge values for the salinity and temperature within each layer. These edge values are returned and are used to compute the pressure gradient (by computing the densities). More...
 
subroutine, public mom_ale::pressure_gradient_ppm (CS, S_t, S_b, T_t, T_b, G, GV, tv, h, bdry_extrap)
 Use ppm reconstruction for pressure gradient (determine edge values) By using a PPM (limited piecewise linear method) reconstruction, this routine determines the edge values for the salinity and temperature within each layer. These edge values are returned and are used to compute the pressure gradient (by computing the densities). More...
 
subroutine, public mom_ale::ale_initregridding (GV, US, max_depth, param_file, mdl, regridCS)
 Initializes regridding for the main ALE algorithm. More...
 
real function, dimension(cs%nk+1), public mom_ale::ale_getcoordinate (CS)
 Query the target coordinate interfaces positions. More...
 
character(len=20) function, public mom_ale::ale_getcoordinateunits (CS)
 Query the target coordinate units. More...
 
logical function, public mom_ale::ale_remap_init_conds (CS)
 Returns true if initial conditions should be regridded and remapped. More...
 
subroutine, public mom_ale::ale_update_regrid_weights (dt, CS)
 Updates the weights for time filtering the new grid generated in regridding. More...
 
subroutine, public mom_ale::ale_updateverticalgridtype (CS, GV)
 Update the vertical grid type with ALE information. This subroutine sets information in the verticalGrid_type to be consistent with the use of ALE mode. More...
 
subroutine, public mom_ale::ale_writecoordinatefile (CS, GV, directory)
 Write the vertical coordinate information into a file. This subroutine writes out a file containing any available data related to the vertical grid used by the MOM ocean model when in ALE mode. More...
 
subroutine, public mom_ale::ale_initthicknesstocoord (CS, G, GV, h)
 Set h to coordinate values for fixed coordinate systems. More...