+Make h_neglect argument mandatory in 28 routines #700
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Made the
h_neglect
argument non-optional to 28 routines, because there is no way to provide a consistent hard-coded default for a dimensional parameter. The routines where this change was made includeremapping_core_h()
,remapping_core_w()
,build_reconstructions_1d()
,P1M_interpolation()
,P3M_interpolation()
,P3M_boundary_extrapolation()
,PLM_reconstruction()
,PLM_boundary_extrapolation()
,PPM_reconstruction()
,PPM_limiter_standard()
,PPM_boundary_extrapolation()
,PQM_reconstruction()
,PQM_limiter()
,PQM_boundary_extrapolation_v1()
,build_hycom1_column()
,build_rho_column()
,bound_edge_values()
,edge_values_explicit_h4()
,edge_values_explicit_h4cw()
,edge_values_implicit_h4()
,edge_slopes_implicit_h3()
,edge_slopes_implicit_h5()
,edge_values_implicit_h6()
,regridding_set_ppolys()
,build_and_interpolate_grid()
,remapByProjection()
,remapByDeltaZ()
, andintegrateReconOnInterval()
.In those cases that also have an optional
h_neglect_edge
argument, the default is now set toh_neglect
. Improperly hard-coded dimensional default values forh_neglect
orh_neglect_edge
were eliminated in 15 places as a result of this change, but they were added back in 3 unit testing routines (one of these is archaic and unused) that do not use exercise dimensional rescaling tests.Because these previously optional arguments were already present in all calls from the dev/gfdl or main branches of the MOM6 code, all answers are bitwise identical in the regression tests, but this change in interfaces could impact other code that is not in the main branch of MOM6.
These changes were discussed and agreed to at the consortium wide MOM6 dev call on July 29, 2024.