MOM6
|
Provides kernels for single-column interpolation, re-integration (re-mapping of integrated quantities) and intensive-variable remapping in the vertical.
Functions/Subroutines | |
subroutine, public | interpolate_column (nsrc, h_src, u_src, ndest, h_dest, missing_value, u_dest) |
Linearly interpolate interface data, u_src, from grid h_src to a grid h_dest. More... | |
subroutine, public | reintegrate_column (nsrc, h_src, uh_src, ndest, h_dest, missing_value, uh_dest) |
Conservatively calculate integrated data, uh_dest, on grid h_dest, from layer-integrated data, uh_src, on grid h_src. More... | |
logical function, public | diag_vkernels_unit_tests (verbose) |
Returns true if any unit tests for module MOM_diag_vkernels fail. More... | |
logical function | test_interp (verbose, missing_value, msg, nsrc, h_src, u_src, ndest, h_dest, u_true) |
Returns true if a test of interpolate_column() produces the wrong answer. More... | |
logical function | test_reintegrate (verbose, missing_value, msg, nsrc, h_src, uh_src, ndest, h_dest, uh_true) |
Returns true if a test of reintegrate_column() produces the wrong answer. More... | |
logical function, public mom_diag_vkernels::diag_vkernels_unit_tests | ( | logical, intent(in) | verbose | ) |
Returns true if any unit tests for module MOM_diag_vkernels fail.
[in] | verbose | If true, write results to stdout |
Definition at line 169 of file MOM_diag_vkernels.F90.
References test_interp(), and test_reintegrate().
Referenced by mom_unit_tests::unit_tests().
subroutine, public mom_diag_vkernels::interpolate_column | ( | integer, intent(in) | nsrc, |
real, dimension(nsrc), intent(in) | h_src, | ||
real, dimension(nsrc+1), intent(in) | u_src, | ||
integer, intent(in) | ndest, | ||
real, dimension(ndest), intent(in) | h_dest, | ||
real, intent(in) | missing_value, | ||
real, dimension(ndest+1), intent(inout) | u_dest | ||
) |
Linearly interpolate interface data, u_src, from grid h_src to a grid h_dest.
[in] | nsrc | Number of source cells |
[in] | h_src | Thickness of source cells |
[in] | u_src | Values at source cell interfaces |
[in] | ndest | Number of destination cells |
[in] | h_dest | Thickness of destination cells |
[in] | missing_value | Value to assign in vanished cells |
[in,out] | u_dest | Interpolated value at destination cell interfaces |
Definition at line 17 of file MOM_diag_vkernels.F90.
Referenced by mom_ale::ale_offline_inputs(), test_interp(), and mom_diag_remap::vertically_interpolate_diag_field().
subroutine, public mom_diag_vkernels::reintegrate_column | ( | integer, intent(in) | nsrc, |
real, dimension(nsrc), intent(in) | h_src, | ||
real, dimension(nsrc), intent(in) | uh_src, | ||
integer, intent(in) | ndest, | ||
real, dimension(ndest), intent(in) | h_dest, | ||
real, intent(in) | missing_value, | ||
real, dimension(ndest), intent(inout) | uh_dest | ||
) |
Conservatively calculate integrated data, uh_dest, on grid h_dest, from layer-integrated data, uh_src, on grid h_src.
[in] | nsrc | Number of source cells |
[in] | h_src | Thickness of source cells |
[in] | uh_src | Values at source cell interfaces |
[in] | ndest | Number of destination cells |
[in] | h_dest | Thickness of destination cells |
[in] | missing_value | Value to assign in vanished cells |
[in,out] | uh_dest | Interpolated value at destination cell interfaces |
Definition at line 92 of file MOM_diag_vkernels.F90.
Referenced by mom_ale::ale_offline_inputs(), test_reintegrate(), and mom_diag_remap::vertically_reintegrate_diag_field().
|
private |
Returns true if a test of interpolate_column() produces the wrong answer.
[in] | verbose | If true, write results to stdout |
[in] | missing_value | Value to indicate missing data |
[in] | msg | Message to label test |
[in] | nsrc | Number of source cells |
[in] | h_src | Thickness of source cells |
[in] | u_src | Values at source cell interfaces |
[in] | ndest | Number of destination cells |
[in] | h_dest | Thickness of destination cells |
[in] | u_true | Correct value at destination cell interfaces |
Definition at line 282 of file MOM_diag_vkernels.F90.
References interpolate_column().
Referenced by diag_vkernels_unit_tests().
|
private |
Returns true if a test of reintegrate_column() produces the wrong answer.
[in] | verbose | If true, write results to stdout |
[in] | missing_value | Value to indicate missing data |
[in] | msg | Message to label test |
[in] | nsrc | Number of source cells |
[in] | h_src | Thickness of source cells |
[in] | uh_src | Values of source cell stuff |
[in] | ndest | Number of destination cells |
[in] | h_dest | Thickness of destination cells |
[in] | uh_true | Correct value of destination cell stuff |
Definition at line 320 of file MOM_diag_vkernels.F90.
References reintegrate_column().
Referenced by diag_vkernels_unit_tests().