MOM6
mom_error_handler Module Reference

Functions/Subroutines

logical function, public is_root_pe ()
 
subroutine, public mom_mesg (message, verb, all_print)
 
subroutine, public mom_error (level, message, all_print)
 
subroutine, public mom_set_verbosity (verb)
 
integer function, public mom_get_verbosity ()
 
logical function, public mom_verbose_enough (verb)
 
logical function, public calltree_showquery ()
 Returns True, if the verbosity>=6 indicating to show the call tree. More...
 
subroutine, public calltree_enter (mesg, n)
 Writes a message about entering a subroutine if call tree reporting is active. More...
 
subroutine, public calltree_leave (mesg)
 Writes a message about leaving a subroutine if call tree reporting is active. More...
 
subroutine, public calltree_waypoint (mesg, n)
 Writes a message about reaching a milestone if call tree reporting is active. More...
 
subroutine, public assert (logical_arg, msg)
 Issues a FATAL error if the assertion fails, i.e. the first argument is false. More...
 

Variables

integer verbosity = 6
 
integer calltreeindentlevel = 0
 

Function/Subroutine Documentation

◆ assert()

subroutine, public mom_error_handler::assert ( logical, intent(in)  logical_arg,
character(len=*), intent(in)  msg 
)

Issues a FATAL error if the assertion fails, i.e. the first argument is false.

Parameters
[in]logical_argIf false causes a FATAL error
[in]msgMessage to issue in case of failed assertion

Definition at line 178 of file MOM_error_handler.F90.

References mom_error().

Referenced by mom_diag_mediator::add_diag_to_list(), mom_diag_remap::diag_remap_do_remap(), mom_diag_mediator::get_new_diag_id(), mom_diag_remap::horizontally_average_diag_field(), mom_diag_mediator::post_data_0d(), mom_diag_mediator::post_data_1d_k(), mom_diag_mediator::post_data_2d(), mom_diag_mediator::post_data_2d_low(), mom_diag_mediator::post_data_3d(), mom_diag_mediator::post_data_3d_low(), mom_diag_mediator::post_xy_average(), mom_diag_mediator::register_scalar_field(), mom_diag_mediator::register_static_field(), mom_diag_remap::vertically_interpolate_diag_field(), and mom_diag_remap::vertically_reintegrate_diag_field().

178  logical, intent(in) :: logical_arg !< If false causes a FATAL error
179  character(len=*), intent(in) :: msg !< Message to issue in case of failed assertion
180 
181  if (.not. logical_arg) then
182  call mom_error(fatal, msg)
183  endif
184 
Here is the call graph for this function:
Here is the caller graph for this function:

◆ calltree_enter()

subroutine, public mom_error_handler::calltree_enter ( character(len=*)  mesg,
integer, optional  n 
)

Writes a message about entering a subroutine if call tree reporting is active.

Parameters
mesgMessage to write
nAn optional integer to write at end of message

Definition at line 126 of file MOM_error_handler.F90.

References calltreeindentlevel, is_root_pe(), and verbosity.

Referenced by mom_ale::ale_build_grid(), mom_ale::ale_init(), mom_ale::ale_main(), mom_ale::ale_main_offline(), mom_ale::ale_offline_tracer_final(), mom_shared_initialization::apply_topography_edits_from_file(), mom_surface_forcing::buoyancy_forcing_from_data_override(), mom_surface_forcing::buoyancy_forcing_from_files(), mom_diabatic_driver::diabatic(), mom::finish_mom_initialization(), mom::initialize_mom(), mom_state_initialization::initialize_temp_salt_fit(), mom_state_initialization::initialize_temp_salt_from_file(), mom_state_initialization::initialize_temp_salt_from_profile(), mom_state_initialization::initialize_temp_salt_linear(), mom_state_initialization::initialize_thickness_from_file(), mom_state_initialization::initialize_thickness_uniform(), mom_shared_initialization::initialize_topography_from_file(), mom_shared_initialization::initialize_topography_named(), mom_state_initialization::initialize_velocity_from_file(), mom_state_initialization::initialize_velocity_zero(), mom_shared_initialization::limit_topography(), mom_coord_initialization::mom_initialize_coord(), mom_fixed_initialization::mom_initialize_fixed(), mom_shared_initialization::mom_initialize_rotation(), mom_state_initialization::mom_initialize_state(), mom_main(), mom_state_initialization::mom_temp_salt_initialize_from_z(), ocean_model_mod::ocean_model_init(), mom_ale::remap_all_state_vars(), mom_shared_initialization::reset_face_lengths_file(), mom_shared_initialization::reset_face_lengths_list(), mom_coord_initialization::set_coord_from_file(), mom_coord_initialization::set_coord_from_gprime(), mom_coord_initialization::set_coord_from_layer_density(), mom_coord_initialization::set_coord_from_ts_profile(), mom_coord_initialization::set_coord_from_ts_range(), mom_coord_initialization::set_coord_from_ts_ref(), mom_coord_initialization::set_coord_linear(), mom_set_diffusivity::set_diffusivity(), mom_surface_forcing::set_forcing(), mom_grid_initialize::set_grid_metrics(), mom_grid_initialize::set_grid_metrics_cartesian(), mom_grid_initialize::set_grid_metrics_from_mosaic(), mom_grid_initialize::set_grid_metrics_spherical(), mom_shared_initialization::set_rotation_beta_plane(), mom_shared_initialization::set_rotation_planetary(), mom::step_mom(), mom_dynamics_split_rk2::step_mom_dyn_split_rk2(), mom::step_mom_thermo(), mom_tracer_hor_diff::tracer_hordiff(), ocean_model_mod::update_ocean_model(), mom_surface_forcing::wind_forcing_1gyre(), mom_surface_forcing::wind_forcing_2gyre(), mom_surface_forcing::wind_forcing_by_data_override(), mom_surface_forcing::wind_forcing_const(), mom_surface_forcing::wind_forcing_from_file(), and mom_surface_forcing::wind_forcing_gyres().

126  character(len=*) :: mesg !< Message to write
127  integer, optional :: n !< An optional integer to write at end of message
128  ! Local variables
129  character(len=8) :: nasstring
130  calltreeindentlevel = calltreeindentlevel + 1
131  if (verbosity<6) return
132  if (is_root_pe()) then
133  nasstring = ''
134  if (present(n)) then
135  write(nasstring(1:8),'(i8)') n
136  call mpp_error(note, 'callTree: '// &
137  repeat(' ',calltreeindentlevel-1)//'loop '//trim(mesg)//trim(nasstring))
138  else
139  call mpp_error(note, 'callTree: '// &
140  repeat(' ',calltreeindentlevel-1)//'---> '//trim(mesg))
141  endif
142  endif
Here is the call graph for this function:
Here is the caller graph for this function:

◆ calltree_leave()

subroutine, public mom_error_handler::calltree_leave ( character(len=*)  mesg)

Writes a message about leaving a subroutine if call tree reporting is active.

Parameters
mesgMessage to write

Definition at line 147 of file MOM_error_handler.F90.

References calltreeindentlevel, is_root_pe(), and verbosity.

Referenced by mom_ale::ale_build_grid(), mom_ale::ale_init(), mom_ale::ale_main(), mom_ale::ale_main_offline(), mom_ale::ale_offline_inputs(), mom_ale::ale_offline_tracer_final(), mom_shared_initialization::apply_topography_edits_from_file(), mom_surface_forcing::buoyancy_forcing_from_files(), mom_diabatic_driver::diabatic(), mom::finish_mom_initialization(), mom::initialize_mom(), mom_state_initialization::initialize_temp_salt_fit(), mom_state_initialization::initialize_temp_salt_from_file(), mom_state_initialization::initialize_temp_salt_from_profile(), mom_state_initialization::initialize_temp_salt_linear(), mom_state_initialization::initialize_thickness_from_file(), mom_state_initialization::initialize_thickness_uniform(), mom_shared_initialization::initialize_topography_from_file(), mom_shared_initialization::initialize_topography_named(), mom_state_initialization::initialize_velocity_from_file(), mom_state_initialization::initialize_velocity_zero(), mom_shared_initialization::limit_topography(), mom_coord_initialization::mom_initialize_coord(), mom_fixed_initialization::mom_initialize_fixed(), mom_shared_initialization::mom_initialize_rotation(), mom_state_initialization::mom_initialize_state(), mom_main(), mom_state_initialization::mom_temp_salt_initialize_from_z(), ocean_model_mod::ocean_model_init(), mom_ale::remap_all_state_vars(), mom_shared_initialization::reset_face_lengths_file(), mom_shared_initialization::reset_face_lengths_list(), mom_coord_initialization::set_coord_from_file(), mom_coord_initialization::set_coord_from_gprime(), mom_coord_initialization::set_coord_from_layer_density(), mom_coord_initialization::set_coord_from_ts_profile(), mom_coord_initialization::set_coord_from_ts_range(), mom_coord_initialization::set_coord_from_ts_ref(), mom_coord_initialization::set_coord_linear(), mom_set_diffusivity::set_diffusivity(), mom_surface_forcing::set_forcing(), mom_grid_initialize::set_grid_metrics(), mom_grid_initialize::set_grid_metrics_cartesian(), mom_grid_initialize::set_grid_metrics_from_mosaic(), mom_shared_initialization::set_rotation_beta_plane(), mom_shared_initialization::set_rotation_planetary(), mom::step_mom(), mom_dynamics_split_rk2::step_mom_dyn_split_rk2(), mom::step_mom_thermo(), mom_tracer_hor_diff::tracer_hordiff(), ocean_model_mod::update_ocean_model(), mom_surface_forcing::wind_forcing_1gyre(), mom_surface_forcing::wind_forcing_2gyre(), mom_surface_forcing::wind_forcing_by_data_override(), mom_surface_forcing::wind_forcing_const(), mom_surface_forcing::wind_forcing_from_file(), and mom_surface_forcing::wind_forcing_gyres().

147  character(len=*) :: mesg !< Message to write
148  if (calltreeindentlevel<1) write(0,*) 'callTree_leave: error callTreeIndentLevel=',calltreeindentlevel,trim(mesg)
149  calltreeindentlevel = calltreeindentlevel - 1
150  if (verbosity<6) return
151  if (is_root_pe()) call mpp_error(note, 'callTree: '// &
152  repeat(' ',calltreeindentlevel)//'<--- '//trim(mesg))
Here is the call graph for this function:
Here is the caller graph for this function:

◆ calltree_showquery()

logical function, public mom_error_handler::calltree_showquery ( )

Returns True, if the verbosity>=6 indicating to show the call tree.

Definition at line 119 of file MOM_error_handler.F90.

References verbosity.

119  ! Local variables
120  logical :: calltree_showquery
121  calltree_showquery = (verbosity >= 6)

◆ calltree_waypoint()

subroutine, public mom_error_handler::calltree_waypoint ( character(len=*)  mesg,
integer, optional  n 
)

Writes a message about reaching a milestone if call tree reporting is active.

Parameters
mesgMessage to write
nAn optional integer to write at end of message

Definition at line 157 of file MOM_error_handler.F90.

References calltreeindentlevel, is_root_pe(), and verbosity.

Referenced by mom_ale::ale_main(), mom_ale::ale_main_offline(), mom_ale::ale_offline_inputs(), mom_ale::ale_offline_tracer_final(), mom_diabatic_driver::diabatic(), mom::initialize_mom(), mom_main(), mom_ale::remap_all_state_vars(), mom_set_diffusivity::set_diffusivity(), mom::step_mom(), mom_dynamics_split_rk2::step_mom_dyn_split_rk2(), mom::step_mom_thermo(), and mom_tracer_hor_diff::tracer_hordiff().

157  character(len=*) :: mesg !< Message to write
158  integer, optional :: n !< An optional integer to write at end of message
159  ! Local variables
160  character(len=8) :: nasstring
161  if (calltreeindentlevel<0) write(0,*) 'callTree_waypoint: error callTreeIndentLevel=',calltreeindentlevel,trim(mesg)
162  if (verbosity<6) return
163  if (is_root_pe()) then
164  nasstring = ''
165  if (present(n)) then
166  write(nasstring(1:8),'(i8)') n
167  call mpp_error(note, 'callTree: '// &
168  repeat(' ',calltreeindentlevel)//'loop '//trim(mesg)//trim(nasstring))
169  else
170  call mpp_error(note, 'callTree: '// &
171  repeat(' ',calltreeindentlevel)//'o '//trim(mesg))
172  endif
173  endif
Here is the call graph for this function:
Here is the caller graph for this function:

◆ is_root_pe()

logical function, public mom_error_handler::is_root_pe ( )

Definition at line 49 of file MOM_error_handler.F90.

Referenced by mom_barotropic::btstep(), calltree_enter(), calltree_leave(), calltree_waypoint(), mom_checksums::chksum_h_2d(), mom_file_parser::clearparameterblock(), mom_file_parser::close_param_file(), mom_file_parser::closeparameterblock(), mom_sum_output::depth_list_setup(), mom_diag_mediator::diag_mediator_init(), mom_diapyc_energy_req::diapyc_energy_req_test(), mom_document::doc_closeblock(), mom_document::doc_openblock(), mom_document::doc_param_char(), mom_document::doc_param_int(), mom_document::doc_param_int_array(), mom_document::doc_param_logical(), mom_document::doc_param_logical_array(), mom_document::doc_param_none(), mom_document::doc_param_real(), mom_document::doc_param_real_array(), mom_document::doc_param_time(), mom_entrain_diffusive::entrainment_diffusive(), mom_obsolete_params::find_obsolete_params(), mom_obsolete_diagnostics::found_in_diagtable(), mom_file_parser::get_variable_line(), mom_legacy_barotropic::legacy_btstep(), mom_file_parser::log_param_char(), mom_file_parser::log_param_int(), mom_file_parser::log_param_int_array(), mom_file_parser::log_param_logical(), mom_file_parser::log_param_real(), mom_file_parser::log_param_real_array(), mom_file_parser::log_param_time(), mom_file_parser::log_version_cs(), mom_file_parser::log_version_plain(), mom_error(), mom_main(), mom_mesg(), mom_checksum_packages::mom_state_stats(), mom_tracer_registry::mom_tracer_chkinv(), mom_file_parser::open_param_file(), mom_file_parser::openparameterblock(), mom_file_parser::popblocklevel(), mom_file_parser::populate_param_data(), mom_restart::query_initialized_0d_name(), mom_restart::query_initialized_1d_name(), mom_restart::query_initialized_2d_name(), mom_restart::query_initialized_3d_name(), mom_restart::query_initialized_4d_name(), mom_restart::query_initialized_name(), mom_diag_mediator::register_diag_field_expand_cmor(), mom_obsolete_diagnostics::register_obsolete_diagnostics(), mom_diag_mediator::register_scalar_field(), mom_diag_mediator::register_static_field(), mom_restart::restore_state(), mom_sponge::set_up_sponge_field(), mom_ice_shelf::shelf_calc_flux(), mom_file_parser::simplifywhitespace(), substats(), mom_debugging::totaltands(), mom_tracer_registry::tracer_registry_init(), mom_unit_tests::unit_tests(), mom_write_cputime::write_cputime(), mom_sum_output::write_depth_list(), and mom_sum_output::write_energy().

49  ! This returns .true. if the current PE is the root PE.
50  logical :: is_root_pe
51  is_root_pe = .false.
52  if (mpp_pe() == mpp_root_pe()) is_root_pe = .true.
53  return
Here is the caller graph for this function:

◆ mom_error()

subroutine, public mom_error_handler::mom_error ( integer, intent(in)  level,
character(len=*), intent(in)  message,
logical, intent(in), optional  all_print 
)

Definition at line 73 of file MOM_error_handler.F90.

References is_root_pe(), and verbosity.

Referenced by mom_sum_output::accumulate_net_input(), mom_tracer_registry::add_tracer_diagnostics(), mom_tracer_registry::add_tracer_obc_values(), adjustment_initialization::adjustment_initialize_temperature_salinity(), adjustment_initialization::adjustment_initialize_thickness(), mom_tracer_advect::advect_tracer(), mom_variables::alloc_bt_cont_type(), mom_controlled_forcing::apply_ctrl_forcing(), mom_sponge::apply_sponge(), assert(), mom_diag_mediator::attach_cell_methods(), mom_remapping::average_value_ppoly(), mom_barotropic::barotropic_init(), bfb_surface_forcing::bfb_buoyancy_forcing(), bfb_surface_forcing::bfb_surface_forcing_init(), mom_barotropic::bt_mass_source(), mom_barotropic::btcalc(), mom_barotropic::btstep(), mom_regridding::build_grid_hycom1(), mom_remapping::build_reconstructions_1d(), mom_regridding::build_rho_grid(), mom_regridding::build_sigma_grid(), coord_slight::build_slight_column(), mom_regridding::build_zstar_grid(), mom_bulk_mixed_layer::bulkmixedlayer(), mom_lateral_mixing_coeffs::calc_resoln_function(), mom_lateral_mixing_coeffs::calc_slope_functions(), mom_lateral_mixing_coeffs::calc_slope_functions_using_just_e(), mom_lateral_mixing_coeffs::calc_visbeck_coeffs(), mom_diag_to_z::calc_zint_diags(), mom_eos::calculate_compress(), mom_eos::calculate_density_array(), mom_eos::calculate_density_derivs(), mom_eos::calculate_density_scalar(), mom_diagnostics::calculate_diagnostic_fields(), mom_eos::calculate_specific_vol_derivs(), mom_eos::calculate_tfreeze_array(), mom_eos::calculate_tfreeze_scalar(), mom_diag_to_z::calculate_z_diag_fields(), mom_diag_to_z::calculate_z_transport(), mom_boundary_update::call_obc_register(), mom_tracer_flow_control::call_tracer_column_fns(), mom_tracer_flow_control::call_tracer_register(), mom_tracer_flow_control::call_tracer_set_forcing(), mom_tracer_flow_control::call_tracer_stocks(), mom_tracer_flow_control::call_tracer_surface_state(), mom_regridding::check_grid_column(), mom_remapping::check_reconstructions_1d(), mom_debugging::check_redundant_sb2d(), mom_debugging::check_redundant_vb2d(), mom_debugging::check_redundant_vc2d(), mom_domains::clone_md_to_d2d(), mom_domains::clone_md_to_md(), mom_continuity::continuity(), mom_continuity::continuity_init(), mom_continuity_ppm::continuity_ppm(), mom_eos::convert_temp_salt_for_teos10(), regrid_consts::coordinatemode(), regrid_consts::coordinateunitsi(), mom_transcribe_grid::copy_dyngrid_to_mom_grid(), mom_transcribe_grid::copy_mom_grid_to_dyngrid(), mom_coriolisadv::coradcalc(), mom_coriolisadv::coriolisadv_init(), mom_dyn_horgrid::create_dyn_horgrid(), mom_io::create_file(), mom_cvmix_shear::cvmix_shear_init(), mom_diag_mediator::define_axes_group(), dense_water_initialization::dense_water_initialize_sponges(), mom_sum_output::depth_list_setup(), mom_dyn_horgrid::destroy_dyn_horgrid(), mom_entrain_diffusive::determine_dskb(), mom_entrain_diffusive::determine_ea_kb(), mom_diag_mediator::diag_mediator_init(), mom_diag_mediator::diag_register_volume_ids(), mom_diag_remap::diag_remap_update(), mom_diapyc_energy_req::diapyc_energy_req_test(), mom_diffconvection::diffconvection_init(), mom_offline_aux::distribute_residual_uh_barotropic(), dome2d_initialization::dome2d_initialize_sponges(), dome2d_initialization::dome2d_initialize_temperature_salinity(), dome2d_initialization::dome2d_initialize_thickness(), dome_initialization::dome_initialize_sponges(), mom_coms::efp_list_sum_across_pes(), mom_energetic_pbl::energetic_pbl(), mom_io::ensembler(), mom_entrain_diffusive::entrain_diffusive_init(), mom_entrain_diffusive::entrainment_diffusive(), mom_eos::eos_init(), mom_eos::eos_use_linear(), coupler_util::extract_coupler_values(), mom_forcing_type::extractfluxes1d(), mom_regridding::filtered_grid_motion(), mom_interface_heights::find_eta_3d(), mom_tidal_forcing::find_in_files(), mom_obsolete_params::find_obsolete_params(), mom_document::find_unused_unit_number(), mom_forcing_type::forcing_accumulate(), mom_obsolete_diagnostics::found_in_diagtable(), mom_geothermal::geothermal(), mom_geothermal::geothermal_init(), mom_tracer_flow_control::get_chl_from_model(), mom_get_input::get_mom_input(), regrid_interp::get_polynomial_coordinate(), mom_verticalgrid::get_tr_flux_units(), mom_diag_to_z::get_z_depths(), mom_spatial_means::global_i_mean(), mom_spatial_means::global_j_mean(), mom_hor_visc::hor_visc_init(), mom_hor_visc::horizontal_viscosity(), coord_adapt::init_coord_adapt(), coord_hycom::init_coord_hycom(), coord_rho::init_coord_rho(), coord_sigma::init_coord_sigma(), coord_slight::init_coord_slight(), coord_zlike::init_coord_zlike(), mom_ocmip2_cfc::init_tracer_cfc(), mom_ale_sponge::initialize_ale_sponge(), dome_tracer::initialize_dome_tracer(), mom_ice_shelf_initialize::initialize_ice_thickness(), mom_ice_shelf_initialize::initialize_ice_thickness_from_file(), ideal_age_example::initialize_ideal_age_tracer(), isomip_tracer::initialize_isomip_tracer(), mom_ocmip2_cfc::initialize_ocmip2_cfc(), oil_tracer::initialize_oil_tracer(), mom_regridding::initialize_regridding(), mom_open_boundary::initialize_segment_data(), mom_sponge::initialize_sponge(), mom_eos::int_density_dz(), mom_eos::int_density_dz_generic_ppm(), mom_eos::int_specific_vol_dp(), mom_int_tide_input::int_tide_input_init(), mom_remapping::integraterecononinterval(), regrid_interp::interpolation_scheme(), interpret_int_expr(), isomip_initialization::isomip_initialize_sponges(), isomip_initialization::isomip_initialize_temperature_salinity(), isomip_initialization::isomip_initialize_thickness(), mom_remapping::ispossumerrsignificant(), mom_kappa_shear::kappa_shear_init(), mom_kpp::kpp_init(), mom_legacy_barotropic::legacy_btstep(), mom_tracer_registry::lock_tracer_registry(), mom_meke::meke_alloc_register_restart(), mom_meke::meke_init(), mom_document::mesghasbeendocumented(), meso_surface_forcing::meso_buoyancy_forcing(), meso_surface_forcing::meso_surface_forcing_init(), meso_surface_forcing::meso_wind_forcing(), mom_bulk_mixed_layer::mixedlayer_detrain_2(), mom_mixed_layer_restrat::mixedlayer_restrat(), mom_mixed_layer_restrat::mixedlayer_restrat_bml(), mom_mixed_layer_restrat::mixedlayer_restrat_general(), mom_mixed_layer_restrat::mixedlayer_restrat_init(), mom_mixed_layer_restrat::mixedlayer_restrat_register_restarts(), mom_diag_to_z::mom_diag_to_z_init(), mom_diagnostics::mom_diagnostics_init(), mom_domains::mom_domains_init(), mom_grid::mom_grid_init(), mom_main(), mom_set_verbosity(), mom_sum_output::mom_sum_output_init(), mom_neutral_diffusion::neutral_diffusion_init(), mom_io::num_timelevels(), mom_obsolete_params::obsolete_char(), mom_obsolete_params::obsolete_int(), mom_obsolete_params::obsolete_logical(), mom_obsolete_params::obsolete_real(), mom_diag_mediator::ocean_register_diag(), mom_diag_to_z::ocean_register_diag_with_z(), mom_opacity::opacity_from_chl(), mom_open_boundary::open_boundary_config(), mom_document::open_doc_file(), mom_open_boundary::parse_segment_data_str(), mom_open_boundary::parse_segment_str(), mom_diag_mediator::post_data_2d_low(), mom_diag_mediator::post_data_3d(), mom_diag_mediator::post_data_3d_low(), mom_pressureforce_afv::pressureforce_afv_bouss(), mom_pressureforce_afv::pressureforce_afv_init(), mom_pressureforce_afv::pressureforce_afv_nonbouss(), mom_pressureforce::pressureforce_init(), mom_pressureforce_mont::pressureforce_mont_bouss(), mom_pressureforce_mont::pressureforce_mont_init(), mom_pressureforce_mont::pressureforce_mont_nonbouss(), mom_internal_tides::propagate_int_tide(), mom_eos::query_compressible(), mom_restart::query_initialized_0d(), mom_restart::query_initialized_0d_name(), mom_restart::query_initialized_1d(), mom_restart::query_initialized_1d_name(), mom_restart::query_initialized_2d(), mom_restart::query_initialized_2d_name(), mom_restart::query_initialized_3d(), mom_restart::query_initialized_3d_name(), mom_restart::query_initialized_4d(), mom_restart::query_initialized_4d_name(), mom_restart::query_initialized_name(), mom_io::read_axis_data(), mom_sum_output::read_depth_list(), mom_tracer_z_init::read_z_edges(), mom_coms::real_to_efp(), mom_coms::real_to_ints(), advection_test_tracer::register_advection_test_tracer(), mom_barotropic::register_barotropic_restarts(), boundary_impulse_tracer::register_boundary_impulse_tracer(), mom_controlled_forcing::register_ctrl_forcing_restarts(), dome_tracer::register_dome_tracer(), regional_dyes::register_dye_tracer(), ideal_age_example::register_ideal_age_tracer(), isomip_tracer::register_isomip_tracer(), kelvin_initialization::register_kelvin_obc(), mom_obsolete_diagnostics::register_obsolete_diagnostics(), mom_ocmip2_cfc::register_ocmip2_cfc(), oil_tracer::register_oil_tracer(), pseudo_salt_tracer::register_pseudo_salt_tracer(), mom_restart::register_restart_field_ptr0d(), mom_restart::register_restart_field_ptr1d(), mom_restart::register_restart_field_ptr2d(), mom_restart::register_restart_field_ptr3d(), mom_restart::register_restart_field_ptr4d(), shelfwave_initialization::register_shelfwave_obc(), tidal_bay_initialization::register_tidal_bay_obc(), mom_diagnostics::register_time_deriv(), mom_tracer_registry::register_tracer(), mom_diag_to_z::register_z_diag(), mom_diag_to_z::register_z_tracer_low(), mom_diag_to_z::register_zint_diag(), mom_regridding::regridding_main(), mom_regularize_layers::regularize_layers(), mom_regularize_layers::regularize_layers_init(), mom_regularize_layers::regularize_surface(), mom_remapping::remap_via_sub_cells(), mom_remapping::remapping_core_h(), mom_remapping::remapping_core_w(), mom_io::reopen_file(), mom_coms::reproducing_sum_2d(), mom_coms::reproducing_sum_3d(), mom_restart::restart_error(), mom_restart::restart_init(), mom_restart::restore_state(), coord_slight::rho_interfaces_col(), rossby_front_2d_initialization::rossby_front_initialize_thickness(), mom_io::safe_string_copy(), mom_restart::save_restart(), scm_cvmix_tests::scm_cvmix_tests_surface_forcing_init(), scm_idealized_hurricane::scm_idealized_hurricane_wind_init(), seamount_initialization::seamount_initialize_temperature_salinity(), coord_adapt::set_adapt_params(), coupler_util::set_coupler_values(), mom_barotropic::set_dtbt(), coord_hycom::set_hycom_params(), mom_int_tide_input::set_int_tide_input(), mom_opacity::set_opacity(), coord_rho::set_rho_params(), coord_sigma::set_sigma_params(), coord_slight::set_slight_params(), mom_barotropic::set_up_bt_obc(), mom_sponge::set_up_sponge_field(), mom_sponge::set_up_sponge_ml_density(), mom_set_visc::set_visc_init(), mom_set_visc::set_viscous_bbl(), mom_set_visc::set_viscous_ml(), coord_zlike::set_zlike_params(), mom_remapping::setreconstructiontype(), mom_open_boundary::setup_u_point_obc(), mom_open_boundary::setup_v_point_obc(), mom_ice_shelf::shelf_calc_flux(), regrid_solvers::solve_linear_system(), regrid_consts::state_dependent_int(), mom_meke::step_forward_meke(), mom_tracer_flow_control::store_stocks(), supercritical_initialization::supercritical_set_obc_data(), mom_thickness_diffuse::thickness_diffuse(), mom_thickness_diffuse::thickness_diffuse_full(), mom_thickness_diffuse::thickness_diffuse_init(), mom_tidal_forcing::tidal_forcing_init(), mom_tracer_advect::tracer_advect_init(), mom_tracer_flow_control::tracer_flow_control_init(), mom_tracer_registry::tracer_registry_init(), mom_tracer_z_init::tracer_z_init(), mom_wave_structure::tridiag_solver(), mom_unit_tests::unit_tests(), mom_vert_friction::updatecfltruncationvalue(), user_surface_forcing::user_buoyancy_forcing(), user_change_diffusivity::user_change_diff(), user_change_diffusivity::user_change_diff_init(), user_initialization::user_init_temperature_salinity(), user_initialization::user_initialize_sponges(), user_initialization::user_initialize_thickness(), user_initialization::user_initialize_topography(), user_tracer_example::user_initialize_tracer(), user_initialization::user_initialize_velocity(), user_tracer_example::user_register_tracer_example(), user_initialization::user_set_coord(), user_initialization::user_set_rotation(), user_surface_forcing::user_surface_forcing_init(), user_surface_forcing::user_wind_forcing(), mom_lateral_mixing_coeffs::varmix_init(), mom_verticalgrid::verticalgridinit(), mom_vert_friction::vertvisc(), mom_vert_friction::vertvisc_coef(), mom_vert_friction::vertvisc_init(), mom_vert_friction::vertvisc_remnant(), mom_wave_speed::wave_speed(), mom_wave_structure::wave_structure(), mom_wave_structure::wave_structure_init(), mom_write_cputime::write_cputime(), mom_sum_output::write_depth_list(), mom_sum_output::write_energy(), mom_pointaccel::write_u_accel(), and mom_pointaccel::write_v_accel().

73  integer, intent(in) :: level
74  character(len=*), intent(in) :: message
75  logical, optional, intent(in) :: all_print
76  ! This provides a convenient interface for writing an mpp_error message
77  ! with run-time filter based on a verbosity.
78  logical :: write_msg
79 
80  write_msg = is_root_pe()
81  if (present(all_print)) write_msg = write_msg .or. all_print
82 
83  select case (level)
84  case (note)
85  if (write_msg.and.verbosity>=2) call mpp_error(note, message)
86  case (warning)
87  if (write_msg.and.verbosity>=1) call mpp_error(warning, message)
88  case (fatal)
89  if (verbosity>=0) call mpp_error(fatal, message)
90  case default
91  call mpp_error(level, message)
92  end select
Here is the call graph for this function:
Here is the caller graph for this function:

◆ mom_get_verbosity()

integer function, public mom_error_handler::mom_get_verbosity ( )

Definition at line 107 of file MOM_error_handler.F90.

References verbosity.

107  integer :: mom_get_verbosity
108  mom_get_verbosity = verbosity

◆ mom_mesg()

subroutine, public mom_error_handler::mom_mesg ( character(len=*), intent(in)  message,
integer, intent(in), optional  verb,
logical, intent(in), optional  all_print 
)

Definition at line 57 of file MOM_error_handler.F90.

References is_root_pe(), and verbosity.

Referenced by adjustment_initialization::adjustment_initialize_thickness(), mom_barotropic::barotropic_init(), benchmark_initialization::benchmark_initialize_thickness(), benchmark_initialization::benchmark_initialize_topography(), mom_barotropic::btstep(), circle_obcs_initialization::circle_obcs_initialize_thickness(), mom_continuity::continuity_init(), mom_coriolisadv::coriolisadv_init(), dome2d_initialization::dome2d_initialize_thickness(), dome_initialization::dome_initialize_thickness(), dome_initialization::dome_initialize_topography(), mom_eos::eos_init(), external_gwave_initialization::external_gwave_initialize_thickness(), mom_ice_shelf_initialize::initialize_ice_thickness_channel(), mom_ice_shelf_initialize::initialize_ice_thickness_from_file(), isomip_initialization::isomip_initialize_thickness(), isomip_initialization::isomip_initialize_topography(), kelvin_initialization::kelvin_initialize_topography(), mom_legacy_barotropic::legacy_btstep(), lock_exchange_initialization::lock_exchange_initialize_thickness(), mom_meke::meke_alloc_register_restart(), mom_meke::meke_init(), mom_domains::mom_domains_init(), mom_grid::mom_grid_init(), mom_main(), mom_checksum_packages::mom_state_stats(), mom_tracer_z_init::read_z_edges(), mom_coms::reproducing_sum_2d(), mom_coms::reproducing_sum_3d(), rossby_front_2d_initialization::rossby_front_initialize_thickness(), seamount_initialization::seamount_initialize_thickness(), soliton_initialization::soliton_initialize_thickness(), and supercritical_initialization::supercritical_initialize_topography().

57  character(len=*), intent(in) :: message
58  integer, optional, intent(in) :: verb
59  logical, optional, intent(in) :: all_print
60  ! This provides a convenient interface for writing an informative comment.
61  integer :: verb_msg
62  logical :: write_msg
63 
64  write_msg = is_root_pe()
65  if (present(all_print)) write_msg = write_msg .or. all_print
66 
67  verb_msg = 2 ; if (present(verb)) verb_msg = verb
68  if (write_msg .and. (verbosity >= verb_msg)) call mpp_error(note, message)
69 
Here is the call graph for this function:
Here is the caller graph for this function:

◆ mom_set_verbosity()

subroutine, public mom_error_handler::mom_set_verbosity ( integer, intent(in)  verb)

Definition at line 96 of file MOM_error_handler.F90.

References mom_error(), and verbosity.

96  integer, intent(in) :: verb
97  character(len=80) :: msg
98  if (verb>0 .and. verb<10) then
99  verbosity=verb
100  else
101  write(msg(1:80),'("Attempt to set verbosity outside of range (0-9). verb=",I0)') verb
102  call mom_error(fatal,msg)
103  endif
Here is the call graph for this function:

◆ mom_verbose_enough()

logical function, public mom_error_handler::mom_verbose_enough ( integer, intent(in)  verb)

Definition at line 112 of file MOM_error_handler.F90.

References verbosity.

112  integer, intent(in) :: verb
113  logical :: mom_verbose_enough
114  mom_verbose_enough = (verbosity >= verb)

Variable Documentation

◆ calltreeindentlevel

integer mom_error_handler::calltreeindentlevel = 0
private

Definition at line 44 of file MOM_error_handler.F90.

Referenced by calltree_enter(), calltree_leave(), and calltree_waypoint().

44 integer :: calltreeindentlevel = 0

◆ verbosity

integer mom_error_handler::verbosity = 6
private