Skip to content

Commit

Permalink
Merge pull request #1259 from Hallberg-NOAA/salt_flux_unit_fix
Browse files Browse the repository at this point in the history
Correct units of integrated salt flux diagnostics
  • Loading branch information
marshallward authored Dec 2, 2020
2 parents 23c0660 + 5b75e6c commit ca3ff96
Show file tree
Hide file tree
Showing 4 changed files with 7 additions and 9 deletions.
7 changes: 3 additions & 4 deletions src/core/MOM_forcing_type.F90
Original file line number Diff line number Diff line change
Expand Up @@ -1874,17 +1874,16 @@ subroutine register_forcing_type_diags(Time, diag, US, use_temperature, handles,

handles%id_total_saltflux = register_scalar_field('ocean_model', &
'total_salt_flux', Time, diag, &
long_name='Area integrated surface salt flux', units='kg', &
long_name='Area integrated surface salt flux', units='kg s-1', &
cmor_field_name='total_sfdsi', &
cmor_units='kg s-1', &
cmor_standard_name='downward_sea_ice_basal_salt_flux_area_integrated',&
cmor_long_name='Downward Sea Ice Basal Salt Flux Area Integrated')

handles%id_total_saltFluxIn = register_scalar_field('ocean_model', 'total_salt_Flux_In', &
Time, diag, long_name='Area integrated surface salt flux at surface from coupler', units='kg')
Time, diag, long_name='Area integrated surface salt flux at surface from coupler', units='kg s-1')

handles%id_total_saltFluxAdded = register_scalar_field('ocean_model', 'total_salt_Flux_Added', &
Time, diag, long_name='Area integrated surface salt flux due to restoring or flux adjustment', units='kg')
Time, diag, long_name='Area integrated surface salt flux due to restoring or flux adjustment', units='kg s-1')


end subroutine register_forcing_type_diags
Expand Down
1 change: 0 additions & 1 deletion src/parameterizations/lateral/MOM_thickness_diffuse.F90
Original file line number Diff line number Diff line change
Expand Up @@ -2052,7 +2052,6 @@ subroutine thickness_diffuse_init(Time, G, GV, US, param_file, diag, CDp, CS)
'm2 s-1', conversion=US%L_to_m**2*US%s_to_T, &
cmor_field_name='diftrblo', &
cmor_long_name='Ocean Tracer Diffusivity due to Parameterized Mesoscale Advection', &
cmor_units='m2 s-1', &
cmor_standard_name='ocean_tracer_diffusivity_due_to_parameterized_mesoscale_advection')

CS%id_KH_u1 = register_diag_field('ocean_model', 'KHTH_u1', diag%axesCu1, Time, &
Expand Down
2 changes: 1 addition & 1 deletion src/parameterizations/vertical/MOM_geothermal.F90
Original file line number Diff line number Diff line change
Expand Up @@ -581,7 +581,7 @@ subroutine geothermal_init(Time, G, GV, US, param_file, diag, CS, useALEalgorith
! post the static geothermal heating field
id = register_static_field('ocean_model', 'geo_heat', diag%axesT1, &
'Geothermal heat flux into ocean', 'W m-2', conversion=US%QRZ_T_to_W_m2, &
cmor_field_name='hfgeou', cmor_units='W m-2', &
cmor_field_name='hfgeou', &
cmor_standard_name='upward_geothermal_heat_flux_at_sea_floor', &
cmor_long_name='Upward geothermal heat flux at sea floor', &
x_cell_method='mean', y_cell_method='mean', area_cell_method='mean')
Expand Down
6 changes: 3 additions & 3 deletions src/tracer/MOM_tracer_hor_diff.F90
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ module MOM_tracer_hor_diff
use MOM_domains, only : create_group_pass, do_group_pass, group_pass_type
use MOM_domains, only : pass_vector
use MOM_debugging, only : hchksum, uvchksum
use MOM_diabatic_driver, only : diabatic_CS
use MOM_diabatic_driver, only : diabatic_CS
use MOM_EOS, only : calculate_density, EOS_type, EOS_domain
use MOM_error_handler, only : MOM_error, FATAL, WARNING, MOM_mesg, is_root_pe
use MOM_error_handler, only : MOM_set_verbosity, callTree_showQuery
Expand Down Expand Up @@ -60,7 +60,7 @@ module MOM_tracer_hor_diff
logical :: use_neutral_diffusion !< If true, use the neutral_diffusion module from within
!! tracer_hor_diff.
logical :: use_lateral_boundary_diffusion !< If true, use the lateral_boundary_diffusion module from within
!! tracer_hor_diff.
!! tracer_hor_diff.
logical :: recalc_neutral_surf !< If true, recalculate the neutral surfaces if CFL has been
!! exceeded
type(neutral_diffusion_CS), pointer :: neutral_diffusion_CSp => NULL() !< Control structure for neutral diffusion.
Expand Down Expand Up @@ -1513,7 +1513,7 @@ subroutine tracer_hor_diff_init(Time, G, US, param_file, diag, EOS, diabatic_CSp
"USE_NEUTRAL_DIFFUSION and DIFFUSE_ML_TO_INTERIOR are mutually exclusive!")
CS%use_lateral_boundary_diffusion = lateral_boundary_diffusion_init(Time, G, param_file, diag, diabatic_CSp, &
CS%lateral_boundary_diffusion_CSp)
if (CS%use_neutral_diffusion .and. CS%Diffuse_ML_interior) call MOM_error(FATAL, "MOM_tracer_hor_diff: "// &
if (CS%use_lateral_boundary_diffusion .and. CS%Diffuse_ML_interior) call MOM_error(FATAL, "MOM_tracer_hor_diff: "// &
"USE_LATERAL_BOUNDARY_DIFFUSION and DIFFUSE_ML_TO_INTERIOR are mutually exclusive!")

call get_param(param_file, mdl, "DEBUG", CS%debug, default=.false.)
Expand Down

0 comments on commit ca3ff96

Please sign in to comment.