▼Nadvection_test_tracer | This tracer package is used to test advection schemes |
Cadvection_test_tracer_cs | The control structure for the advect_test_tracer module |
▼Nbfb_surface_forcing | Surface forcing for the boundary-forced-basin (BFB) configuration |
Cbfb_surface_forcing_cs | Control structure for BFB_surface_forcing |
▼Nboundary_impulse_tracer | Implements a boundary impulse response tracer to calculate Green's functions |
Cboundary_impulse_tracer_cs | The control structure for the boundary impulse tracer package |
▼Ncoord_adapt | Regrid columns for the adaptive coordinate |
Cadapt_cs | Control structure for adaptive coordinates (coord_adapt) |
▼Ncoord_hycom | Regrid columns for the HyCOM coordinate |
Chycom_cs | Control structure containing required parameters for the HyCOM coordinate |
▼Ncoord_rho | Regrid columns for the continuous isopycnal (rho) coordinate |
Crho_cs | Control structure containing required parameters for the rho coordinate |
▼Ncoord_sigma | Regrid columns for the sigma coordinate |
Csigma_cs | Control structure containing required parameters for the sigma coordinate |
▼Ncoord_slight | Regrid columns for the SLight coordinate |
Cslight_cs | Control structure containing required parameters for the SLight coordinate |
▼Ncoord_zlike | Regrid columns for a z-like coordinate (z-star, z-level) |
Czlike_cs | Control structure containing required parameters for a z-like coordinate |
▼Ndome_tracer | A tracer package that is used as a diagnostic in the DOME experiments |
Cdome_tracer_cs | The DOME_tracer control structure |
▼Ndumbbell_surface_forcing | Surface forcing for the dumbbell test case |
Cdumbbell_surface_forcing_cs | Control structure for the dumbbell test case forcing |
▼Ndyed_channel_initialization | Initialization for the dyed_channel configuration |
Cdyed_channel_obc_cs | Control structure for dyed-channel open boundaries |
▼Ndyed_obc_tracer | This tracer package dyes flow through open boundaries |
Cdyed_obc_tracer_cs | The control structure for the dyed_obc tracer package |
▼Nideal_age_example | A tracer package of ideal age tracers |
Cideal_age_tracer_cs | The control structure for the ideal_age_tracer package |
▼Nidealized_hurricane | Forcing for the idealized hurricane and SCM_idealized_hurricane examples |
Cidealized_hurricane_cs | Container for parameters describing idealized wind structure |
▼Nisomip_tracer | Routines used to set up and use a set of (one for now) dynamically passive tracers in the ISOMIP configuration |
Cisomip_tracer_cs | ISOMIP tracer package control structure |
▼Nkelvin_initialization | Configures the model for the Kelvin wave experiment |
Ckelvin_obc_cs | Control structure for Kelvin wave open boundaries |
▼Nmeso_surface_forcing | Sets forcing for the MESO configuration |
Cmeso_surface_forcing_cs | This control structure is used to store parameters associated with the MESO forcing |
▼Nmidas_vertmap | Routines for initialization callable from MOM6 or Python (MIDAS) |
Cfill_boundaries | Fill grid edges |
▼Nmom | The central module of the MOM6 ocean model |
Cmom_control_struct | Control structure for the MOM module, including the variables that describe the state of the ocean |
Cmom_diag_ids | A structure with diagnostic IDs of the state variables |
▼Nmom_ale | This module contains the main regridding routines |
Cale_cs | ALE control structure |
▼Nmom_ale_sponge | This module contains the routines used to apply sponge layers when using the ALE mode |
Cale_sponge_cs | ALE sponge control structure |
Cinitialize_ale_sponge | Ddetermine the number of points which are within sponges in this computational domain |
Cp2d | A structure for creating arrays of pointers to 2D arrays with extra gridding information |
Cp3d | A structure for creating arrays of pointers to 3D arrays with extra gridding information |
Cset_up_ale_sponge_field | Store the reference profile at h points for a variable |
Cset_up_ale_sponge_vel_field | This subroutine stores the reference profile at u and v points for a vector |
▼Nmom_barotropic | Baropotric solver |
Cbarotropic_cs | The barotropic stepping control stucture |
Cbt_obc_type | The barotropic stepping open boundary condition type |
Clocal_bt_cont_u_type | A desciption of the functional dependence of transport at a u-point |
Clocal_bt_cont_v_type | A desciption of the functional dependence of transport at a v-point |
Cmemory_size_type | A container for passing around active tracer point memory limits |
▼Nmom_bkgnd_mixing | Interface to background mixing schemes, including the Bryan and Lewis (1979) which is applied via CVMix |
Cbkgnd_mixing_cs | Control structure including parameters for this module |
▼Nmom_boundary_update | Controls where open boundary conditions are applied |
Cupdate_obc_cs | The control structure for the MOM_boundary_update module |
▼Nmom_bulk_mixed_layer | Build mixed layer parameterization |
Cbulkmixedlayer_cs | The control structure with parameters for the MOM_bulk_mixed_layer module |
▼Nmom_cap_methods | Contains import/export methods for both NEMS and CMEPS |
Cstate_getfldptr | Get field pointer |
▼Nmom_cap_mod | This module contains a set of subroutines that are required by NUOPC |
Cfld_list_type | Contains field information |
Cocean_internalstate_type | Internal state type with pointers to three types defined by MOM |
Cocean_internalstate_wrapper | Wrapper-derived type required to associate an internal state instance with the ESMF/NUOPC component |
▼Nmom_checksum_packages | Provides routines that do checksums of groups of MOM variables |
Cmom_state_chksum | Write out checksums of the MOM6 state variables |
Cstats | A type for storing statistica about a variable |
▼Nmom_checksums | Routines to calculate checksums of various array and vector types |
Cbchksum | Checksums an array (2d or 3d) staggered at corner points |
Cbchksum_pair | Checksums a pair of arrays (2d or 3d) staggered at corner points |
Cchk_sum_msg | Write a message with either checksums or numerical statistics of arrays |
Cchksum | This is an older interface for 1-, 2-, or 3-D checksums |
Chchksum | Checksums an array (2d or 3d) staggered at tracer points |
Chchksum_pair | Checksums a pair of arrays (2d or 3d) staggered at tracer points |
Cis_nan | Returns .true. if any element of x is a NaN, and .false. otherwise |
Cqchksum | This is an older interface that has been renamed Bchksum |
Cuchksum | Checksums an array (2d or 3d) staggered at C-grid u points |
Cuvchksum | Checksums a pair velocity arrays (2d or 3d) staggered at C-grid locations |
Cvchksum | Checksums an array (2d or 3d) staggered at C-grid v points |
▼Nmom_coms | Interfaces to non-domain-oriented communication subroutines, including the MOM6 reproducing sums facility |
Cassignment(=) | Copy the value of one extended-fixed-point number into another |
Cefp_type | The Extended Fixed Point (EFP) type provides a public interface for doing sums and taking differences with this type |
Coperator(+) | Add two extended-fixed-point numbers |
Coperator(-) | Subtract one extended-fixed-point number from another |
Creproducing_sum | Find an accurate and order-invariant sum of distributed 2d or 3d fields |
▼Nmom_continuity | Solve the layer continuity equation |
Ccontinuity_cs | Control structure for mom_continuity |
▼Nmom_continuity_ppm | Solve the layer continuity equation using the PPM method for layer fluxes |
Ccontinuity_ppm_cs | Control structure for mom_continuity_ppm |
Cloop_bounds_type | A container for loop bounds |
▼Nmom_controlled_forcing | Use control-theory to adjust the surface heat flux and precipitation |
Cctrl_forcing_cs | Control structure for MOM_controlled_forcing |
▼Nmom_coriolisadv | Accelerations due to the Coriolis force and momentum advection |
Ccoriolisadv_cs | Control structure for mom_coriolisadv |
▼Nmom_cvmix_conv | Interface to CVMix convection scheme |
Ccvmix_conv_cs | Control structure including parameters for CVMix convection |
▼Nmom_cvmix_ddiff | Interface to CVMix double diffusion scheme |
Ccvmix_ddiff_cs | Control structure including parameters for CVMix double diffusion |
▼Nmom_cvmix_kpp | Provides the K-Profile Parameterization (KPP) of Large et al., 1994, via CVMix |
Ckpp_cs | Control structure for containing KPP parameters/data |
▼Nmom_cvmix_shear | Interface to CVMix interior shear schemes |
Ccvmix_shear_cs | Control structure including parameters for CVMix interior shear schemes |
▼Nmom_debugging | Provides checksumming functions for debugging |
Ccheck_redundant | Check for consistency between the duplicated points of a C-grid vector |
Ccheck_redundant_b | Check for consistency between the duplicated points of a B-grid vector or scalar |
Ccheck_redundant_c | Check for consistency between the duplicated points of a C-grid vector |
Ccheck_redundant_t | Check for consistency between the duplicated points of an A-grid vector or scalar |
Cvec_chksum | Do checksums on the components of a C-grid vector |
Cvec_chksum_a | Do checksums on the components of an A-grid vector |
Cvec_chksum_b | Do checksums on the components of a B-grid vector |
Cvec_chksum_c | Do checksums on the components of a C-grid vector |
▼Nmom_diabatic_aux | Provides functions for some diabatic processes such as fraxil, brine rejection, tendency due to surface flux divergence |
Cdiabatic_aux_cs | Control structure for diabatic_aux |
▼Nmom_diabatic_driver | This routine drives the diabatic/dianeutral physics for MOM |
Cdiabatic_cs | Control structure for this module |
▼Nmom_diag_manager_wrapper | A simple (very thin) wrapper for register_diag_field to avoid a compiler bug with PGI |
Cregister_diag_field_fms | A wrapper for register_diag_field_array() |
▼Nmom_diag_mediator | The subroutines here provide convenient wrappers to the fms diag_manager interfaces with additional diagnostic capabilies |
Caxes_grp | A group of 1D axes that comprise a 1D/2D/3D mesh |
Cdiag_ctrl | The following data type a list of diagnostic fields an their variants, as well as variables that control the handling of model output |
Cdiag_dsamp | Contained for down sampled masks |
Cdiag_grid_storage | Stores all the remapping grids and the model's native space thicknesses |
Cdiag_grids_type | Contains an array to store a diagnostic target grid |
Cdiag_type | This type is used to represent a diagnostic at the diag_mediator level |
Cdiagcs_dsamp | Container for down sampling information |
Cdownsample_diag_field | Down sample a diagnostic field |
Cdownsample_field | Down sample a field |
Cdownsample_mask | Down sample the mask of a field |
Cpost_data | Make a diagnostic available for averaging or output |
▼Nmom_diag_remap | Runtime remapping of diagnostics to z star, sigma and rho vertical coordinates |
Cdiag_remap_ctrl | Represents remapping of diagnostics to a particular vertical coordinate |
▼Nmom_diagnostics | Calculates any requested diagnostic quantities that are not calculated in the various subroutines. Diagnostic quantities are requested by allocating them memory |
Cdiagnostics_cs | The control structure for the MOM_diagnostics module |
Csurface_diag_ids | A structure with diagnostic IDs of the surface and integrated variables |
Ctransport_diag_ids | A structure with diagnostic IDs of mass transport related diagnostics |
▼Nmom_diapyc_energy_req | Calculates the energy requirements of mixing |
Cdiapyc_energy_req_cs | This control structure holds parameters for the MOM_diapyc_energy_req module |
▼Nmom_document | The subroutines here provide hooks for document generation functions at various levels of granularity |
Cdoc_param | Document parameter values |
Cdoc_type | A structure that controls where the documentation occurs, its veborsity and formatting |
Clink_msg | A linked list of the parameter documentation messages that have been issued so far |
▼Nmom_domains | Describes the decomposed MOM domain and has routines for communications across PEs |
Cclone_mom_domain | Copy one MOM_domain_type into another |
Ccreate_group_pass | Set up a group of halo updates |
Cfill_symmetric_edges | Do a set of halo updates that fill in the values at the duplicated edges of a staggered symmetric memory domain |
Cmom_domain_type | The MOM_domain_type contains information about the domain decompositoin |
Cpass_var | Do a halo update on an array |
Cpass_var_complete | Complete a non-blocking halo update on an array |
Cpass_var_start | Initiate a non-blocking halo update on an array |
Cpass_vector | Do a halo update on a pair of arrays representing the two components of a vector |
Cpass_vector_complete | Complete a halo update on a pair of arrays representing the two components of a vector |
Cpass_vector_start | Initiate a halo update on a pair of arrays representing the two components of a vector |
▼Nmom_dyn_horgrid | Contains a shareable dynamic type for describing horizontal grids and metric data and utilty routines that work on this type |
Cdyn_horgrid_type | Describes the horizontal ocean grid with only dynamic memory arrays |
▼Nmom_dynamics_split_rk2 | Time step the adiabatic dynamic core of MOM using RK2 method |
Cmom_dyn_split_rk2_cs | MOM_dynamics_split_RK2 module control structure |
▼Nmom_dynamics_unsplit | Time steps the ocean dynamics with an unsplit quasi 3rd order scheme |
Cmom_dyn_unsplit_cs | MOM_dynamics_unsplit module control structure |
▼Nmom_dynamics_unsplit_rk2 | Time steps the ocean dynamics with an unsplit quasi 2nd order Runge-Kutta scheme |
Cmom_dyn_unsplit_rk2_cs | MOM_dynamics_unsplit_RK2 module control structure |
▼Nmom_energetic_pbl | Energetically consistent planetary boundary layer parameterization |
Cenergetic_pbl_cs | This control structure holds parameters for the MOM_energetic_PBL module |
Cepbl_column_diags | A type for conveniently passing around ePBL diagnostics for a column |
▼Nmom_entrain_diffusive | Diapycnal mixing and advection in isopycnal mode |
Centrain_diffusive_cs | The control structure holding parametes for the MOM_entrain_diffusive module |
▼Nmom_eos | Provides subroutines for quantities specific to the equation of state |
Ccalculate_compress | Calculates the compressibility of water from T, S, and P |
Ccalculate_density | Calculates density of sea water from T, S and P |
Ccalculate_density_derivs | Calculate the derivatives of density with temperature and salinity from T, S, and P |
Ccalculate_density_second_derivs | Calculates the second derivatives of density with various combinations of temperature, salinity, and pressure from T, S and P |
Ccalculate_spec_vol | Calculates specific volume of sea water from T, S and P |
Ccalculate_tfreeze | Calculates the freezing point of sea water from T, S and P |
Ceos_type | A control structure for the equation of state |
▼Nmom_eos_linear | A simple linear equation of state for sea water with constant coefficients |
Ccalculate_density_derivs_linear | For a given thermodynamic state, return the derivatives of density with temperature and salinity using the simple linear equation of state |
Ccalculate_density_linear | Compute the density of sea water (in kg/m^3), or its anomaly from a reference density, using a simple linear equation of state from salinity (in psu), potential temperature (in deg C) and pressure [Pa] |
Ccalculate_density_second_derivs_linear | For a given thermodynamic state, return the second derivatives of density with various combinations of temperature, salinity, and pressure. Note that with a simple linear equation of state these second derivatives are all 0 |
Ccalculate_spec_vol_linear | Compute the specific volume of sea water (in m^3/kg), or its anomaly from a reference value, using a simple linear equation of state from salinity (in psu), potential temperature (in deg C) and pressure [Pa] |
▼Nmom_eos_nemo | The equation of state using the expressions of Roquet et al. that are used in NEMO |
Ccalculate_density_derivs_nemo | For a given thermodynamic state, return the derivatives of density with conservative temperature and absolute salinity, the expressions derived for use with NEMO |
Ccalculate_density_nemo | Compute the in situ density of sea water ([kg m-3]), or its anomaly with respect to a reference density, from absolute salinity (g/kg), conservative temperature (in deg C), and pressure [Pa], using the expressions derived for use with NEMO |
▼Nmom_eos_teos10 | The equation of state using the TEOS10 expressions |
Ccalculate_density_derivs_teos10 | For a given thermodynamic state, return the derivatives of density with conservative temperature and absolute salinity, using the TEOS10 expressions |
Ccalculate_density_second_derivs_teos10 | For a given thermodynamic state, return the second derivatives of density with various combinations of conservative temperature, absolute salinity, and pressure, using the TEOS10 expressions |
Ccalculate_density_teos10 | Compute the in situ density of sea water ([kg m-3]), or its anomaly with respect to a reference density, from absolute salinity (g/kg), conservative temperature (in deg C), and pressure [Pa], using the TEOS10 expressions |
Ccalculate_spec_vol_teos10 | Compute the in situ specific volume of sea water (in [m3 kg-1]), or an anomaly with respect to a reference specific volume, from absolute salinity (in g/kg), conservative temperature (in deg C), and pressure [Pa], using the TEOS10 expressions |
▼Nmom_eos_unesco | The equation of state using the Jackett and McDougall fits to the UNESCO EOS |
Ccalculate_density_unesco | Compute the in situ density of sea water (in [kg m-3]), or its anomaly with respect to a reference density, from salinity [PSU], potential temperature [degC], and pressure [Pa], using the UNESCO (1981) equation of state |
Ccalculate_spec_vol_unesco | Compute the in situ specific volume of sea water (in [m3 kg-1]), or an anomaly with respect to a reference specific volume, from salinity [PSU], potential temperature [degC], and pressure [Pa], using the UNESCO (1981) equation of state |
▼Nmom_eos_wright | The equation of state using the Wright 1997 expressions |
Ccalculate_density_derivs_wright | For a given thermodynamic state, return the derivatives of density with temperature and salinity |
Ccalculate_density_second_derivs_wright | For a given thermodynamic state, return the second derivatives of density with various combinations of temperature, salinity, and pressure |
Ccalculate_density_wright | Compute the in situ density of sea water (in [kg m-3]), or its anomaly with respect to a reference density, from salinity (in psu), potential temperature (in deg C), and pressure [Pa], using the expressions from Wright, 1997, J. Atmos. Ocean. Tech., 14, 735-740 |
Ccalculate_spec_vol_wright | Compute the in situ specific volume of sea water (in [m3 kg-1]), or an anomaly with respect to a reference specific volume, from salinity (in psu), potential temperature (in deg C), and pressure [Pa], using the expressions from Wright, 1997, J. Atmos. Ocean. Tech., 14, 735-740 |
▼Nmom_file_parser | The MOM6 facility to parse input files for runtime parameters |
Cfile_data_type | The valid lines extracted from an input parameter file without comments |
Cget_param | An overloaded interface to read and log the values of various types of parameters |
Clink_parameter | A link in the list of variables that have already had override warnings issued |
Clog_param | An overloaded interface to log the values of various types of parameters |
Clog_version | An overloaded interface to log version information about modules |
Cparam_file_type | A structure that can be parsed to read and document run-time parameters |
Cparameter_block | Specify the active parameter block |
Cread_param | An overloaded interface to read various types of parameters |
▼Nmom_forcing_type | This module implements boundary forcing for MOM6 |
Cforcing | Structure that contains pointers to the boundary forcing used to drive the liquid ocean simulated by MOM |
Cforcing_diags | Structure that defines the id handles for the forcing type |
Cmech_forcing | Structure that contains pointers to the mechanical forcing at the surface used to drive the liquid ocean simulated by MOM. Data in this type is allocated in the module MOM_surface_forcing.F90, of which there are three versions: solo, coupled, and ice-shelf |
▼Nmom_geothermal | Implemented geothermal heating at the ocean bottom |
Cgeothermal_cs | Control structure for geothermal heating |
▼Nmom_get_input | Reads the only Fortran name list needed to boot-strap the model |
Cdirectories | Container for paths and parameter file names |
▼Nmom_grid | Provides the ocean grid type |
Cocean_grid_type | Ocean grid type. See mom_grid for details |
▼Nmom_grid_initialize | Initializes horizontal grid |
Cgps | Global positioning system (aka container for information to describe the grid) |
▼Nmom_hor_index | Defines the horizontal index type (hor_index_type) used for providing index ranges |
Cassignment(=) | Copy the contents of one horizontal index type into another |
Chor_index_type | Container for horizontal index ranges for data, computational and global domains |
▼Nmom_hor_visc | Calculates horizontal viscosity and viscous stresses |
Chor_visc_cs | Control structure for horizontal viscosity |
▼Nmom_horizontal_regridding | Horizontal interpolation |
Cfill_boundaries | Fill grid edges |
Choriz_interp_and_extrap_tracer | Extrapolate and interpolate data |
▼Nmom_ice_shelf | Implements the thermodynamic aspects of ocean / ice-shelf interactions, along with a crude placeholder for a later implementation of full ice shelf dynamics, all using the MOM framework and coding style |
Cice_shelf_cs | Control structure that contains ice shelf parameters and diagnostics handles |
▼Nmom_ice_shelf_dynamics | Implements a crude placeholder for a later implementation of full ice shelf dynamics |
Cice_shelf_dyn_cs | The control structure for the ice shelf dynamics |
▼Nmom_ice_shelf_state | Implements the thermodynamic aspects of ocean / ice-shelf interactions, along with a crude placeholder for a later implementation of full ice shelf dynamics, all using the MOM framework and coding style |
Cice_shelf_state | Structure that describes the ice shelf state |
▼Nmom_int_tide_input | Calculates energy input to the internal tides |
Cint_tide_input_cs | This control structure holds parameters that regulate internal tide energy inputs |
Cint_tide_input_type | This type is used to exchange fields related to the internal tides |
▼Nmom_interface_heights | Functions for calculating interface heights, including free surface height |
Cfind_eta | Calculates the heights of sruface or all interfaces from layer thicknesses |
▼Nmom_internal_tides | Subroutines that use the ray-tracing equations to propagate the internal tide energy density |
Cint_tide_cs | This control structure has parameters for the MOM_internal_tides module |
Cloop_bounds_type | A structure with the active energy loop bounds |
▼Nmom_io | This module contains I/O framework code |
Cfile_exists | Indicate whether a file exists, perhaps with domain decomposition |
Cmom_read_data | Read a data field from a file |
Cmom_read_vector | Read a pair of data fields representing the two components of a vector from a file |
Cvardesc | Type for describing a variable, typically a tracer |
▼Nmom_kappa_shear | Shear-dependent mixing following Jackson et al. 2008 |
Ckappa_shear_cs | This control structure holds the parameters that regulate shear mixing |
▼Nmom_lateral_boundary_diffusion | Calculates and applies diffusive fluxes as a parameterization of lateral mixing (non-neutral) by mesoscale eddies near the top and bottom (to be implemented) boundary layers of the ocean |
Clateral_boundary_diffusion_cs | Sets parameters for lateral boundary mixing module |
▼Nmom_lateral_mixing_coeffs | Variable mixing coefficients |
Cvarmix_cs | Variable mixing coefficients |
▼Nmom_marine_ice | Routines incorporating the effects of marine ice (sea-ice and icebergs) into the ocean model dynamics and thermodynamics |
Cmarine_ice_cs | Control structure for MOM_marine_ice |
▼Nmom_meke | Implements the Mesoscale Eddy Kinetic Energy framework with topographic beta effect included in computing beta in Rhines scale |
Cmeke_cs | Control structure that contains MEKE parameters and diagnostics handles |
▼Nmom_meke_types | |
Cmeke_type | This type is used to exchange information related to the MEKE calculations |
▼Nmom_mixed_layer_restrat | Parameterization of mixed layer restratification by unresolved mixed-layer eddies |
Cmixedlayer_restrat_cs | Control structure for mom_mixed_layer_restrat |
▼Nmom_neutral_diffusion | A column-wise toolbox for implementing neutral diffusion |
Cneutral_diffusion_cs | The control structure for the MOM_neutral_diffusion module |
▼Nmom_ocean_model_mct | Top-level module for the MOM6 ocean model in coupled mode |
Cocean_public_type | This type is used for communication with other components via the FMS coupler. The element names and types can be changed only with great deliberation, hence the persistnce of things like the cutsy element name "avg_kount" |
Cocean_state_type | The ocean_state_type contains all information about the state of the ocean, with a format that is private so it can be readily changed without disrupting other coupled components |
▼Nmom_ocean_model_nuopc | Top-level module for the MOM6 ocean model in coupled mode |
Cocean_public_type | This type is used for communication with other components via the FMS coupler. The element names and types can be changed only with great deliberation, hence the persistnce of things like the cutsy element name "avg_kount" |
Cocean_state_type | The ocean_state_type contains all information about the state of the ocean, with a format that is private so it can be readily changed without disrupting other coupled components |
▼Nmom_ocmip2_cfc | Simulates CFCs using the OCMIP2 protocols |
Cocmip2_cfc_cs | The control structure for the OCMPI2_CFC tracer package |
▼Nmom_oda_driver_mod | Interfaces for MOM6 ensembles and data assimilation |
Coda_cs | Control structure that contains a transpose of the ocean state across ensemble members |
Cptr_mpp_domain | A structure with a pointer to a domain2d, to allow for the creation of arrays of pointers |
▼Nmom_offline_main | The routines here implement the offline tracer algorithm used in MOM6. These are called from step_offline Some routines called here can be found in the MOM_offline_aux module |
Coffline_transport_cs | The control structure for the offline transport module |
▼Nmom_opacity | Routines used to calculate the opacity of the ocean |
Copacity_cs | The control structure with paramters for the MOM_opacity module |
Coptics_type | This type is used to store information about ocean optical properties |
▼Nmom_open_boundary | Controls where open boundary conditions are applied |
Cfile_obc_cs | Control structure for open boundaries that read from files. Probably lots to update here |
Cobc_registry_type | Type to carry basic OBC information needed for updating values |
Cobc_segment_data_type | Open boundary segment data from files (mostly) |
Cobc_segment_tracer_type | Tracer on OBC segment data structure, for putting into a segment tracer registry |
Cobc_segment_type | Open boundary segment data structure |
Cobc_struct_type | Type to carry something (what] for the OBC registry |
Cocean_obc_type | Open-boundary data |
Csegment_tracer_registry_type | Registry type for tracers on segments |
▼Nmom_pointaccel | Debug accelerations at a given point |
Cpointaccel_cs | The control structure for the MOM_PointAccel module |
▼Nmom_pressureforce | A thin wrapper for Boussinesq/non-Boussinesq forms of the pressure force calculation |
Cpressureforce_cs | Pressure force control structure |
▼Nmom_pressureforce_afv | Analytically integrated finite volume pressure gradient |
Cpressureforce_afv_cs | Finite volume pressure gradient control structure |
▼Nmom_pressureforce_blk_afv | Analytically integrated finite volume pressure gradient |
Cpressureforce_blk_afv_cs | Finite volume pressure gradient control structure |
▼Nmom_pressureforce_mont | Provides the Montgomery potential form of pressure gradient |
Cpressureforce_mont_cs | Control structure for the Montgomery potential form of pressure gradient |
▼Nmom_regridding | Generates vertical grids as part of the ALE algorithm |
Cregridding_cs | Regridding control structure |
▼Nmom_regularize_layers | Provides regularization of layers in isopycnal mode |
Cregularize_layers_cs | This control structure holds parameters used by the MOM_regularize_layers module |
▼Nmom_remapping | Provides column-wise vertical remapping functions |
Cremapping_cs | Container for remapping parameters |
▼Nmom_restart | The MOM6 facility for reading and writing restart files, and querying what has been read |
Cfield_restart | A structure with information about a single restart field |
Cmom_restart_cs | A restart registry and the control structure for restarts |
Cobsolete_restart | A structure to store information about restart fields that are no longer used |
Cp0d | A type for making arrays of pointers to scalars |
Cp1d | A type for making arrays of pointers to 1-d arrays |
Cp2d | A type for making arrays of pointers to 2-d arrays |
Cp3d | A type for making arrays of pointers to 3-d arrays |
Cp4d | A type for making arrays of pointers to 4-d arrays |
Cquery_initialized | Indicate whether a field has been read from a restart file |
Cregister_restart_field | Register fields for restarts |
▼Nmom_safe_alloc | Convenience functions for safely allocating memory without accidentally reallocating pointer and causing memory leaks |
Csafe_alloc_alloc | Allocate a 2-d or 3-d allocatable array |
Csafe_alloc_ptr | Allocate a pointer to a 1-d, 2-d or 3-d array |
▼Nmom_set_diffusivity | Calculate vertical diffusivity from all mixing processes |
Cdiffusivity_diags | This structure has memory for used in calculating diagnostics of diffusivity |
Cset_diffusivity_cs | This control structure contains parameters for MOM_set_diffusivity |
▼Nmom_set_visc | Calculates various values related to the bottom boundary layer, such as the viscosity and thickness of the BBL (set_viscous_BBL) |
Cset_visc_cs | Control structure for MOM_set_visc |
▼Nmom_sponge | Implements sponge regions in isopycnal mode |
Cp2d | A structure for creating arrays of pointers to 2D arrays |
Cp3d | A structure for creating arrays of pointers to 3D arrays |
Csponge_cs | This control structure holds memory and parameters for the MOM_sponge module |
▼Nmom_sum_output | Reports integrated quantities for monitoring the model state |
Cdepth_list | A list of depths and corresponding globally integrated ocean area at each depth and the ocean volume below each depth |
Csum_output_cs | The control structure for the MOM_sum_output module |
▼Nmom_surface_forcing | Functions that calculate the surface wind stresses and fluxes of buoyancy or temperature/salinity andfresh water, in ocean-only (solo) mode |
Csurface_forcing_cs | Structure containing pointers to the forcing fields that may be used to drive MOM. All fluxes are positive into the ocean |
▼Nmom_surface_forcing_mct | |
Cice_ocean_boundary_type | Structure corresponding to forcing, but with the elements, units, and conventions that exactly conform to the use for MOM-based coupled models |
Csurface_forcing_cs | Contains pointers to the forcing fields which may be used to drive MOM. All fluxes are positive downward |
▼Nmom_surface_forcing_nuopc | Converts the input ESMF data (import data) to a MOM-specific data type (surface_forcing_CS) |
Cice_ocean_boundary_type | Structure corresponding to forcing, but with the elements, units, and conventions that exactly conform to the use for MOM-based coupled models |
Csurface_forcing_cs | Contains pointers to the forcing fields which may be used to drive MOM. All fluxes are positive downward |
▼Nmom_tfreeze | Freezing point expressions |
Ccalculate_tfreeze_linear | Compute the freezing point potential temperature [degC] from salinity [ppt] and pressure [Pa] using a simple linear expression, with coefficients passed in as arguments |
Ccalculate_tfreeze_millero | Compute the freezing point potential temperature [degC] from salinity [PSU] and pressure [Pa] using the expression from Millero (1978) (and in appendix A of Gill 1982), but with the of the pressure dependence changed from 7.53e-8 to 7.75e-8 to make this an expression for potential temperature (not in situ temperature), using a value that is correct at the freezing point at 35 PSU and 5e6 Pa (500 dbar) |
Ccalculate_tfreeze_teos10 | Compute the freezing point conservative temperature [degC] from absolute salinity [g/kg] and pressure [Pa] using the TEOS10 package |
▼Nmom_thickness_diffuse | Thickness diffusion (or Gent McWilliams) |
Cthickness_diffuse_cs | Control structure for thickness diffusion |
▼Nmom_tidal_forcing | Tidal contributions to geopotential |
Ctidal_forcing_cs | The control structure for the MOM_tidal_forcing module |
▼Nmom_tidal_mixing | Interface to vertical tidal mixing schemes including CVMix tidal mixing |
Ctidal_mixing_cs | Control structure with parameters for the tidal mixing module |
Ctidal_mixing_diags | Containers for tidal mixing diagnostics |
▼Nmom_tracer_advect | This module contains the subroutines that advect tracers along coordinate surfaces |
Ctracer_advect_cs | Control structure for this module |
▼Nmom_tracer_flow_control | Orchestrates the registration and calling of tracer packages |
Ctracer_flow_control_cs | The control structure for orchestrating the calling of tracer packages |
▼Nmom_tracer_hor_diff | Main routine for lateral (along surface or neutral) diffusion of tracers |
Cp2d | A type that can be used to create arrays of pointers to 2D arrays |
Cp2di | A type that can be used to create arrays of pointers to 2D integer arrays |
Ctracer_hor_diff_cs | The ocntrol structure for along-layer and epineutral tracer diffusion |
▼Nmom_tracer_registry | This module contains the tracer_registry_type and the subroutines that handle registration of tracers and related subroutines. The primary subroutine, register_tracer, is called to indicate the tracers advected and diffused |
Ctracer_registry_type | Type to carry basic tracer information |
Ctracer_type | The tracer type |
▼Nmom_unit_scaling | Provides a transparent unit rescaling type to facilitate dimensional consistency testing |
Cunit_scale_type | Describes various unit conversion factors |
▼Nmom_variables | Provides transparent structures with groups of MOM6 variables and supporting routines |
Caccel_diag_ptrs | Pointers to arrays with accelerations, which can later be used for derived diagnostics, like energy balances |
Cbt_cont_type | Container for information about the summed layer transports and how they will vary as the barotropic velocity is changed |
Ccont_diag_ptrs | Pointers to arrays with transports, which can later be used for derived diagnostics, like energy balances |
Cocean_internal_state | Pointers to all of the prognostic variables allocated in MOM_variables.F90 and MOM.F90 |
Cp2d | A structure for creating arrays of pointers to 2D arrays |
Cp3d | A structure for creating arrays of pointers to 3D arrays |
Csurface | Pointers to various fields which may be used describe the surface state of MOM, and which will be returned to a the calling program |
Cthermo_var_ptrs | Pointers to an assortment of thermodynamic fields that may be available, including potential temperature, salinity, heat capacity, and the equation of state control structure |
Cvertvisc_type | Vertical viscosities, drag coefficients, and related fields |
▼Nmom_vert_friction | Implements vertical viscosity (vertvisc) |
Cvertvisc_cs | The control structure with parameters and memory for the MOM_vert_friction module |
▼Nmom_verticalgrid | Provides a transparent vertical ocean grid type and supporting routines |
Cverticalgrid_type | Describes the vertical ocean grid, including unit conversion factors |
▼Nmom_wave_interface | Interface for surface waves |
Cwave_parameters_cs | Container for all surface wave related parameters |
▼Nmom_wave_speed | Routines for calculating baroclinic wave speeds |
Cwave_speed_cs | Control structure for MOM_wave_speed |
▼Nmom_wave_structure | Vertical structure functions for first baroclinic mode wave speed |
Cwave_structure_cs | The control structure for the MOM_wave_structure module |
▼Nmom_write_cputime | A module to monitor the overall CPU time used by MOM6 and project when to stop the model |
Cwrite_cputime_cs | A control structure that regulates the writing of CPU time |
▼Nneverland_surface_forcing | Wind and buoyancy forcing for the Neverland configurations |
Cneverland_surface_forcing_cs | This control structure should be used to store any run-time variables associated with the Neverland forcing |
▼Nocn_comp_mct | This is the main driver for MOM6 in CIME |
Cmct_mom_data | Control structure for this module |
▼Nocn_cpl_indices | |
Ccpl_indices_type | Structure with indices needed for MCT attribute vectors |
▼Noil_tracer | A tracer package to mimic dissolved oil |
Coil_tracer_cs | The control structure for the oil tracer package |
▼Npseudo_salt_tracer | A tracer package that mimics salinity |
Cpseudo_salt_tracer_cs | The control structure for the pseudo-salt tracer |
▼Nregional_dyes | A tracer package for using dyes to diagnose regional flows |
Cdye_tracer_cs | The control structure for the regional dyes tracer package |
▼Nregrid_consts | Contains constants for interpreting input parameters that control regridding |
Ccoordinateunits | Returns a string with the coordinate units associated with the coordinate mode |
Cstate_dependent | Returns true if the coordinate is dependent on the state density, returns false otherwise |
▼Nregrid_interp | Vertical interpolation for regridding |
Cinterp_cs_type | Control structure for regrid_interp module |
▼Nrgc_tracer | This module contains the routines used to set up a dynamically passive tracer. Set up and use passive tracers requires the following: (1) register_RGC_tracer (2) apply diffusion, physics/chemistry and advect the tracer |
Crgc_tracer_cs | Tracer control structure |
▼Nscm_cvmix_tests | Initial conditions and forcing for the single column model (SCM) CVMix test set |
Cscm_cvmix_tests_cs | Container for surface forcing parameters |
▼Nshelfwave_initialization | Configures the model for the idealized shelfwave test case |
Cshelfwave_obc_cs | Control structure for shelfwave open boundaries |
▼Ntidal_bay_initialization | Configures the model for the "tidal_bay" experiment. tidal_bay = Tidally resonant bay from Zygmunt Kowalik's class on tides |
Ctidal_bay_obc_cs | Control structure for tidal bay open boundaries |
▼Ntime_utils_mod | Set of time utilities for converting between FMS and ESMF time type |
Cesmf2fms_time | Converts time from FMS to ESMF format |
Cfms2esmf_cal | Converts calendar from FMS to ESMF format |
▼Nuser_change_diffusivity | Increments the diapycnal diffusivity in a specified band of latitudes and densities |
Cuser_change_diff_cs | Control structure for user_change_diffusivity |
▼Nuser_revise_forcing | Provides a template for users to code updating the forcing fluxes |
Cuser_revise_forcing_cs | Control structure for user_revise_forcing |
▼Nuser_shelf_init | This module specifies the initial values and evolving properties of the MOM6 ice shelf, using user-provided code |
Cuser_ice_shelf_cs | The control structure for the user_ice_shelf module |
▼Nuser_surface_forcing | Template for user to code up surface forcing |
Cuser_surface_forcing_cs | This control structure should be used to store any run-time variables associated with the user-specified forcing |
▼Nuser_tracer_example | A sample tracer package that has striped initial conditions |
Cuser_tracer_example_cs | The control structure for the USER_tracer_example module |