7.1.2. g_tracer_utils module reference

<undocumented>

More…

7.1.2.1. Data Types

g_tracer_type

<undocumented>

g_diag_type

<undocumented>

g_diag_ctrl

<undocumented>

g_tracer_common

<undocumented>

7.1.2.3. Detailed Description

<undocumented>

7.1.2.4. Type Documentation

type g_tracer_utils/g_tracer_type
Type fields
  • % next [type( g_tracer_type ),pointer, private]

  • % index [integer,private]

  • % name [character(len=fm_string_len),private]

  • % longname [character(len=fm_string_len),private]

  • % alias [character(len=fm_string_len),private]

  • % package_name [character(len=fm_string_len),private]

  • % diag_name [character(len=fm_string_len),private]

  • % standard_name [character(len=fm_string_len),private]

  • % diag_field_units [character(len=fm_string_len),private]

  • % diag_field_scaling_factor [real,private]

  • % flux_gas_molwt [real,private]

  • % flux_gas_name [character(len=fm_string_len),private]

  • % flux_gas_type [character(len=fm_string_len),private]

  • % flux_runoff_name [character(len=fm_string_len),private]

  • % flux_wetdep_name [character(len=fm_string_len),private]

  • % flux_drydep_name [character(len=fm_string_len),private]

  • % implementation [character(len=fm_string_len),private]

  • % _allocatable [real,private]

  • % dimension [real(:,:,:),private]

  • % flux_param [real,private]

  • % flux_gas_param [real,private]

  • % ice_restart_file [character(len=fm_string_len),private]

  • % ocean_restart_file [character(len=fm_string_len),private]

  • % flux_gas_restart_file [character(len=fm_string_len),private]

  • % units [character(len=fm_string_len),private]

  • % flux_units [character(len=fm_string_len),private]

  • % field [real, dimension (:,:,:,:), pointer, private]

  • % field4d_ptr [real, dimension (:,:,:,:), pointer, private]

  • % field3d_ptr [real, dimension (:,:,:), pointer, private]

  • % field_3d [real, dimension (:,:,:), pointer, private]

  • % stf [real,private]

  • % _null [real,private]

  • % stf_gas [real,private]

  • % deltap [real,private]

  • % kw [real,private]

  • % btf [real,private]

  • % btm_reservoir [real,private]

  • % trunoff [real,private]

  • % runoff_tracer_flux [real,private]

  • % wetdep [real,private]

  • % drydep [real,private]

  • % csurf [real,private]

  • % alpha [real,private]

  • % sc_no [real,private]

  • % vmove [real,private]

  • % vdiff [real,private]

  • % vdiffuse_impl [real,private]

  • % tendency [real, dimension (:,:,:), pointer, private]

  • % diag_id_field [integer,private]

  • % diag_id_stf [integer,private]

  • % diag_id_stf_gas [integer,private]

  • % diag_id_deltap [integer,private]

  • % diag_id_kw [integer,private]

  • % diag_id_trunoff [integer,private]

  • % diag_id_stf_gas_aux [integer,private]

  • % diag_id_alpha [integer,private]

  • % diag_id_csurf [integer,private]

  • % diag_id_sc_no [integer,private]

  • % diag_id_aux [integer,private]

  • % diag_id_btf [integer,private]

  • % diag_id_btm [integer,private]

  • % diag_id_vmove [integer,private]

  • % diag_id_vdiff [integer,private]

  • % diag_id_vdiffuse_impl [integer,private]

  • % diag_id_tendency [integer,private]

  • % diag_id_field_taup1 [integer,private]

  • % const_init_value [real,private]

  • % initial_value [real,private]

  • % sink_rate [real,private]

  • % prog [logical,private]

  • % move_vertical [logical,private]

  • % diff_vertical [logical,private]

  • % flux_gas [logical,private]

  • % flux_runoff [logical,private]

  • % flux_wetdep [logical,private]

  • % flux_drydep [logical,private]

  • % flux_bottom [logical,private]

  • % has_btm_reservoir [logical,private]

  • % runoff_added_to_stf [logical,private]

  • % flux_gas_ind [integer,private]

  • % flux_runoff_ind [integer,private]

  • % flux_wetdep_ind [integer,private]

  • % flux_drydep_ind [integer,private]

  • % requires_restart [logical,private]

  • % src_file [character(len=fm_string_len),private]

  • % src_var_name [character(len=fm_string_len),private]

  • % src_var_unit [character(len=fm_string_len),private]

  • % src_var_gridspec [character(len=fm_string_len),private]

  • % obc_src_file_name [character(len=fm_string_len),private]

  • % obc_src_field_name [character(len=fm_string_len),private]

  • % obc_lfac_in [real,private]

  • % obc_lfac_out [real,private]

  • % obc_has [logical,private]

  • % src_var_record [integer,private]

  • % requires_src_info [logical,private]

  • % src_var_unit_conversion [real,private]

  • % src_var_valid_min [real,private]

  • % src_var_valid_max [real,private]

type g_tracer_utils/g_diag_type
Type fields
  • % next [type( g_diag_type ),pointer, private]

  • % diag_id [integer,private]

  • % name [character(len=fm_string_len),private]

  • % longname [character(len=fm_string_len),private]

  • % package_name [character(len=fm_string_len),private]

  • % units [character(len=fm_string_len),private]

  • % axes [integer(3),private]

  • % init_time [type(time_type),private]

  • % missing_value [real,private]

  • % z_diag [integer,private]

  • % field_ptr [real(:,:,:),pointer, private]

type g_tracer_utils/g_diag_ctrl
Type fields
  • % handle [integer,private]

type g_tracer_utils/g_tracer_common
Type fields
  • % diag_cs [type( g_diag_ctrl ),private]

  • % isc [integer,private]

  • % iec [integer,private]

  • % jsc [integer,private]

  • % jec [integer,private]

  • % isd [integer,private]

  • % ied [integer,private]

  • % jsd [integer,private]

  • % jed [integer,private]

  • % nk [integer,private]

  • % ntau [integer,private]

  • % axes [integer, dimension (3), private]

  • % init_time [type(time_type),private]

  • % _allocatable [integer,private]

  • % dimension [integer(:,:),private]

  • % grid_tmask [real,private]

  • % _null [integer,private]

  • % _allocatable

  • % dimension

  • % grid_kmt [integer,private]

  • % _null

  • % grid_mask_coast [integer,private]

  • % ice_restart_file [character(len=fm_string_len),private]

  • % ocean_restart_file [character(len=fm_string_len),private]

7.1.2.5. Function/Subroutine Documentation

subroutine g_tracer_utils/g_tracer_start_param_list(package_name)
subroutine g_tracer_utils/g_tracer_end_param_list(package_name)
subroutine g_tracer_utils/g_tracer_add_param_real(name, var, value)
subroutine g_tracer_utils/g_tracer_add_param_logical(name, var, value)
subroutine g_tracer_utils/g_tracer_add_param_integer(name, var, value)
subroutine g_tracer_utils/g_tracer_add_param_string(name, var, value)
subroutine g_tracer_utils/g_tracer_add(node_ptr, package, name, longname, units, prog, const_init_value, init_value, flux_gas, flux_gas_name, flux_runoff, flux_wetdep, flux_drydep, flux_gas_molwt, flux_gas_param, flux_param, flux_bottom, btm_reservoir, move_vertical, diff_vertical, sink_rate, flux_gas_restart_file, flux_gas_type, requires_src_info, standard_name, diag_name, diag_field_units, diag_field_scaling_factor, implementation)
Call to

g_tracer_com

function g_tracer_utils/remap_bounds(ilb, jlb, klb, array) [real]
Called from

g_tracer_init

subroutine g_tracer_utils/g_tracer_init(g_tracer)
Call to

g_tracer_get_common remap_bounds

subroutine g_tracer_utils/g_tracer_flux_init(g_tracer, verbosity)
Parameters

verbosity :: [in] A 0-9 integer indicating a level of verbosity.

subroutine g_tracer_utils/g_tracer_register_diag(g_tracer)
Call to

g_register_diag_field g_tracer_com

subroutine g_tracer_utils/g_tracer_coupler_set(g_tracer_list, IOB_struc, value)
Call to

g_tracer_com fms_coupler_util::set_coupler_values

subroutine g_tracer_utils/g_tracer_coupler_get(g_tracer_list, IOB_struc, weight, model_time)
Call to

fms_coupler_util::extract_coupler_values g_tracer_com

Called from

g_tracer_coupler_accumulate

subroutine g_tracer_utils/g_tracer_coupler_accumulate(g_tracer_list, IOB_struc, weight, model_time)
Call to

g_tracer_coupler_get

Called from

generic_tracer::generic_tracer_coupler_accumulate

subroutine g_tracer_utils/g_tracer_set_csdiag(diag_CS)
Call to

g_tracer_com

subroutine g_tracer_utils/g_tracer_set_common(isc, iec, jsc, jec, isd, ied, jsd, jed, nk, ntau, axes, grid_tmask, grid_kmt, init_time)
Call to

g_tracer_com

subroutine g_tracer_utils/g_tracer_get_common(isc, iec, jsc, jec, isd, ied, jsd, jed, nk, ntau, axes, grid_tmask, grid_mask_coast, grid_kmt, init_time, diag_CS)
Call to

g_tracer_com

Called from

g_tracer_column_int g_tracer_flux_at_depth g_tracer_init

subroutine g_tracer_utils/g_tracer_get_diagcs(diag_CS)
Call to

g_tracer_com

Called from

g_register_diag_field g_tracer_utils::g_send_data::g_send_data_0d g_tracer_utils::g_send_data::g_send_data_1d g_tracer_utils::g_send_data::g_send_data_2d g_tracer_utils::g_send_data::g_send_data_3d

subroutine g_tracer_utils/g_tracer_set_files(ice_restart_file, ocean_restart_file)
Call to

g_tracer_com

subroutine g_tracer_utils/g_tracer_get_4d(g_tracer_list, name, member, array_ptr)
subroutine g_tracer_utils/g_tracer_get_3d(g_tracer_list, name, member, array_ptr)
subroutine g_tracer_utils/g_tracer_get_2d(g_tracer_list, name, member, array_ptr)
subroutine g_tracer_utils/g_tracer_get_4d_val(g_tracer_list, name, member, array, isd, jsd)
subroutine g_tracer_utils/g_tracer_get_3d_val(g_tracer_list, name, member, array, isd, jsd, ntau, positive)
subroutine g_tracer_utils/g_tracer_get_2d_val(g_tracer_list, name, member, array, isd, jsd)
subroutine g_tracer_utils/g_tracer_get_real(g_tracer_list, name, member, value)
subroutine g_tracer_utils/g_tracer_get_string(g_tracer_list, name, member, string)
subroutine g_tracer_utils/g_tracer_set_2d(g_tracer_list, name, member, array, isd, jsd, weight)
subroutine g_tracer_utils/g_tracer_set_3d(g_tracer_list, name, member, array, isd, jsd, ntau)
subroutine g_tracer_utils/g_tracer_set_4d(g_tracer_list, name, member, array, isd, jsd)
subroutine g_tracer_utils/g_tracer_set_real(g_tracer_list, name, member, value)
subroutine g_tracer_utils/g_tracer_set_pointer_4d(g_tracer_list, name, member, array, ilb, jlb)
subroutine g_tracer_utils/g_tracer_set_pointer_3d(g_tracer_list, name, member, array, ilb, jlb)
subroutine g_tracer_utils/g_tracer_find(g_tracer, name)
Called from

g_tracer_utils::g_tracer_get_pointer::g_tracer_get_2d g_tracer_utils::g_tracer_get_values::g_tracer_get_2d_val g_tracer_utils::g_tracer_get_pointer::g_tracer_get_3d g_tracer_utils::g_tracer_get_values::g_tracer_get_3d_val g_tracer_utils::g_tracer_get_pointer::g_tracer_get_4d g_tracer_utils::g_tracer_get_values::g_tracer_get_4d_val g_tracer_get_obc_segment_props g_tracer_utils::g_tracer_get_values::g_tracer_get_real g_tracer_get_src_info g_tracer_utils::g_tracer_get_values::g_tracer_get_string g_tracer_utils::g_tracer_set_values::g_tracer_set_2d g_tracer_utils::g_tracer_set_values::g_tracer_set_3d g_tracer_utils::g_tracer_set_values::g_tracer_set_4d g_tracer_utils::g_tracer_set_pointer::g_tracer_set_pointer_3d g_tracer_utils::g_tracer_set_pointer::g_tracer_set_pointer_4d g_tracer_utils::g_tracer_set_values::g_tracer_set_real

subroutine g_tracer_utils/g_tracer_column_int(depth, ilb, jlb, var, dzt, rho_dzt, rd, k_level, integral, caller)
Call to

g_tracer_get_common mod_name

subroutine g_tracer_utils/g_tracer_flux_at_depth(depth, ilb, jlb, var, dzt, k_level, frac, initialized, flux, caller)
Call to

g_tracer_get_common mod_name

subroutine g_tracer_utils/g_tracer_send_diag(g_tracer_list, model_time, tau)
Call to

g_tracer_com g_tracer_is_prog

subroutine g_tracer_utils/g_tracer_diag(g_tracer_list, ilb, jlb, rho_dzt_tau, rho_dzt_taup1, model_time, tau, taup1, dtts)
Call to

g_tracer_com g_tracer_is_prog

subroutine g_tracer_utils/g_tracer_traverse(g_tracer_list)
subroutine g_tracer_utils/g_tracer_get_name(g_tracer, string)
subroutine g_tracer_utils/g_tracer_get_alias(g_tracer, string)
function g_tracer_utils/g_tracer_is_prog(g_tracer) [logical]
Called from

g_tracer_diag g_tracer_send_diag generic_cobalt::generic_cobalt_update_from_source

subroutine g_tracer_utils/g_tracer_get_next(g_tracer, g_tracer_next)
Called from

generic_cobalt::generic_cobalt_update_from_source

subroutine g_tracer_utils/g_tracer_vertfill(g_tracer, h, kappa_dt, tau, larger_h_denom)

Returns tracer arrays (nominally T and S) with massless layers filled with sensible values, by diffusing vertically with a small but constant diffusivity.

Parameters

larger_h_denom :: [in] Present and true, add a large enough minimal thickness in the denominator of the flux calculations so that the fluxes are never so large as eliminate the transmission of information across groups of massless layers.

Call to

g_tracer_com

Called from

generic_cobalt::generic_cobalt_update_from_source

subroutine g_tracer_utils/g_tracer_vertdiff_g(g_tracer, h_old, ea, eb, dt, kg_m2_to_H, m_to_H, tau, mom)
Call to

g_tracer_com

Called from

g_tracer_vertdiff_m

subroutine g_tracer_utils/g_tracer_vertdiff_m(g_tracer, dh, dhw, diff_cbt, dt, rho0, tau)
Call to

g_tracer_com g_tracer_vertdiff_g

subroutine g_tracer_utils/g_diag_field_add(node_ptr, diag_id, package_name, name, axes, init_time, longname, units, missing_value, Z_diag, field_ptr, Zname, Zlongname, Zunits)
Call to

g_register_diag_field

subroutine g_tracer_utils/g_tracer_print_info(g_tracer_list, verbosity)
subroutine g_tracer_utils/g_tracer_get_src_info(g_tracer_list, name, src_file, src_var_name, src_var_unit, src_var_gridspec, src_var_record, src_var_valid_min, src_var_valid_max)
Call to

g_tracer_find

subroutine g_tracer_utils/g_tracer_get_obc_segment_props(g_tracer_list, name, obc_has, src_file, src_var_name, lfac_in, lfac_out)
Parameters
  • obc_has :: [out] .true. if This tracer has OBC

  • src_var_name :: [out] OBC source file and variable in file

  • lfac_out :: [out] OBC reservoir inverse lengthscale factor

Call to

g_tracer_find

Called from

mom_generic_tracer::initialize_mom_generic_tracer mom_generic_tracer::register_mom_generic_tracer_segments

function g_tracer_utils/g_register_diag_field(module_name, field_name, axes, init_time, long_name, units, missing_value, range, mask_variant, standard_name, verbose, do_not_log, err_msg, interp_method, tile_count, cmor_field_name, cmor_long_name, cmor_units, cmor_standard_name, cell_methods, x_cell_method, y_cell_method, v_cell_method, diag_CS) [integer]
Return

undefined :: An integer handle for a diagnostic array.

Parameters
  • module_name :: [in] Name of this module, usually “ocean_model” or “ice_shelf_model”

  • field_name :: [in] Name of the diagnostic field

  • init_time :: [in] Time at which a field is first available?

  • long_name :: [in] Long name of a field.

  • units :: [in] Units of a field.

  • standard_name :: [in] Standardized name associated with a field

  • missing_value :: [in] A value that indicates missing values.

  • range :: [in] Valid range of a variable (not used in MOM?)

  • mask_variant :: [in] If true a logical mask must be provided with post_data calls (not used in MOM?)

  • verbose :: [in] If true, FMS is verbose (not used in MOM?)

  • do_not_log :: [in] If true, do not log something (not used in MOM?)

  • err_msg :: [out] String into which an error message might be placed (not used in MOM?)

  • interp_method :: [in] no clue (not used in MOM?)

  • tile_count :: [in] no clue (not used in MOM?)

  • cmor_field_name :: [in] CMOR name of a field

  • cmor_long_name :: [in] CMOR long name of a field

  • cmor_units :: [in] CMOR units of a field

  • cmor_standard_name :: [in] CMOR standardized name associated with a field

  • cell_methods :: [in] String to append as cell_methods attribute. Use ‘’ to have no attribute. If present, this overrides the default constructed from the default for each individual axis direction.

  • x_cell_method :: [in] Specifies the cell method for the x-direction. Use ‘’ have no method.

  • y_cell_method :: [in] Specifies the cell method for the y-direction. Use ‘’ have no method.

  • v_cell_method :: [in] Specifies the cell method for the vertical direction. Use ‘’ have no method.

Call to

g_tracer_get_diagcs

Called from

g_diag_field_add g_tracer_register_diag

function g_tracer_utils/g_send_data_0d(diag_field_id, field, time, err_msg, diag_CS) [logical]
Called from

g_tracer_utils::g_send_data::g_send_data_0d

function g_tracer_utils/g_send_data_1d(diag_field_id, field, time, is_in, mask, rmask, ie_in, weight, err_msg, diag_CS) [logical]
Called from

g_tracer_utils::g_send_data::g_send_data_1d

function g_tracer_utils/g_send_data_2d(diag_field_id, field, time, is_in, js_in, mask, rmask, ie_in, je_in, weight, err_msg, diag_CS) [logical]
Called from

g_tracer_utils::g_send_data::g_send_data_2d

function g_tracer_utils/g_send_data_3d(diag_field_id, field, time, is_in, js_in, ks_in, mask, rmask, ie_in, je_in, ke_in, weight, err_msg, diag_CS) [logical]
Called from

g_tracer_utils::g_send_data::g_send_data_3d

function g_tracer_utils/is_root_pe() [logical]

This returns .true. if the current PE is the root PE.