MOM6
|
Data Types | |
interface | check_redundant |
interface | check_redundant_b |
interface | check_redundant_c |
interface | check_redundant_t |
interface | vec_chksum |
interface | vec_chksum_a |
interface | vec_chksum_b |
interface | vec_chksum_c |
Functions/Subroutines | |
subroutine, public | mom_debugging_init (param_file) |
MOM_debugging_init initializes the MOM_debugging module, and sets the parameterts that control which checks are active for MOM6. More... | |
subroutine | check_redundant_vc3d (mesg, u_comp, v_comp, G, is, ie, js, je, direction) |
subroutine | check_redundant_vc2d (mesg, u_comp, v_comp, G, is, ie, js, je, direction) |
subroutine | check_redundant_sb3d (mesg, array, G, is, ie, js, je) |
subroutine | check_redundant_sb2d (mesg, array, G, is, ie, js, je) |
subroutine | check_redundant_vb3d (mesg, u_comp, v_comp, G, is, ie, js, je, direction) |
subroutine | check_redundant_vb2d (mesg, u_comp, v_comp, G, is, ie, js, je, direction) |
subroutine | check_redundant_st3d (mesg, array, G, is, ie, js, je) |
subroutine | check_redundant_st2d (mesg, array, G, is, ie, js, je) |
subroutine | check_redundant_vt3d (mesg, u_comp, v_comp, G, is, ie, js, je, direction) |
subroutine | check_redundant_vt2d (mesg, u_comp, v_comp, G, is, ie, js, je, direction) |
subroutine | chksum_vec_c3d (mesg, u_comp, v_comp, G, halos, scalars) |
subroutine | chksum_vec_c2d (mesg, u_comp, v_comp, G, halos, scalars) |
subroutine | chksum_vec_b3d (mesg, u_comp, v_comp, G, halos, scalars) |
subroutine | chksum_vec_b2d (mesg, u_comp, v_comp, G, halos, scalars, symmetric) |
subroutine | chksum_vec_a3d (mesg, u_comp, v_comp, G, halos, scalars) |
subroutine | chksum_vec_a2d (mesg, u_comp, v_comp, G, halos, scalars) |
real function, public | totalstuff (HI, hThick, areaT, stuff) |
This function returns the sum over computational domain of all processors of hThick*stuff, where stuff is a 3-d array at tracer points. More... | |
subroutine, public | totaltands (HI, hThick, areaT, temperature, salinity, mesg) |
This subroutine display the total thickness, temperature and salinity as well as the change since the last call. NOTE: This subroutine uses "save" data which is not thread safe and is purely for extreme debugging without a proper debugger. More... | |
logical function, public | check_column_integral (nk, field, known_answer) |
Returns false if the column integral of a given quantity is within roundoff. More... | |
logical function, public | check_column_integrals (nk_1, field_1, nk_2, field_2, missing_value) |
Returns false if the column integrals of two given quantities are within roundoff of each other. More... | |
Variables | |
integer | max_redundant_prints = 100 |
integer, dimension(3) | redundant_prints = 0 |
logical | debug = .false. |
logical | debug_chksums = .true. |
logical | debug_redundant = .true. |
logical function, public mom_debugging::check_column_integral | ( | integer, intent(in) | nk, |
real, dimension(nk), intent(in) | field, | ||
real, intent(in), optional | known_answer | ||
) |
Returns false if the column integral of a given quantity is within roundoff.
[in] | nk | Number of levels in column |
[in] | field | Field to be summed |
[in] | known_answer | If present is the expected sum, If missing, assumed zero |
Definition at line 803 of file MOM_debugging.F90.
logical function, public mom_debugging::check_column_integrals | ( | integer, intent(in) | nk_1, |
real, dimension(nk_1), intent(in) | field_1, | ||
integer, intent(in) | nk_2, | ||
real, dimension(nk_2), intent(in) | field_2, | ||
real, intent(in), optional | missing_value | ||
) |
Returns false if the column integrals of two given quantities are within roundoff of each other.
[in] | nk_1 | Number of levels in field 1 |
[in] | nk_2 | Number of levels in field 2 |
[in] | field_1 | First field to be summed |
[in] | field_2 | Second field to be summed |
[in] | missing_value | If column contains missing values, mask them from the sum |
Definition at line 838 of file MOM_debugging.F90.
Referenced by mom_ale::ale_offline_inputs().
|
private |
[in,out] | g | The ocean's grid structure |
Definition at line 242 of file MOM_debugging.F90.
References max_redundant_prints, mom_error_handler::mom_error(), redundant_prints, and mom_domains::to_all.
Referenced by check_redundant_sb3d().
|
private |
[in,out] | g | The ocean's grid structure |
Definition at line 217 of file MOM_debugging.F90.
References check_redundant_sb2d().
|
private |
[in,out] | g | The ocean's grid structure |
Definition at line 431 of file MOM_debugging.F90.
References max_redundant_prints, and redundant_prints.
Referenced by check_redundant_st3d().
|
private |
[in,out] | g | The ocean's grid structure |
Definition at line 406 of file MOM_debugging.F90.
References check_redundant_st2d().
|
private |
[in,out] | g | The ocean's grid structure |
Definition at line 331 of file MOM_debugging.F90.
References max_redundant_prints, mom_error_handler::mom_error(), and redundant_prints.
Referenced by check_redundant_vb3d().
|
private |
[in,out] | g | The ocean's grid structure |
Definition at line 302 of file MOM_debugging.F90.
References check_redundant_vb2d().
|
private |
[in,out] | g | The ocean's grid structure |
Definition at line 143 of file MOM_debugging.F90.
References max_redundant_prints, mom_error_handler::mom_error(), and redundant_prints.
Referenced by check_redundant_vc3d().
|
private |
[in,out] | g | The ocean's grid structure |
Definition at line 114 of file MOM_debugging.F90.
References check_redundant_vc2d().
|
private |
[in,out] | g | The ocean's grid structure |
Definition at line 506 of file MOM_debugging.F90.
References max_redundant_prints, and redundant_prints.
Referenced by check_redundant_vt3d().
|
private |
[in,out] | g | The ocean's grid structure |
Definition at line 477 of file MOM_debugging.F90.
References check_redundant_vt2d().
|
private |
[in] | mesg | An identifying message |
[in,out] | g | The ocean's grid structure |
[in] | u_comp | The u-component of the vector |
[in] | v_comp | The v-component of the vector |
[in] | halos | The width of halos to check (default 0) |
[in] | scalars | If true this is a pair of scalars that are being checked. |
Definition at line 707 of file MOM_debugging.F90.
References debug_chksums, debug_redundant, and mom_domains::to_all.
|
private |
[in] | mesg | An identifying message |
[in,out] | g | The ocean's grid structure |
[in] | u_comp | The u-component of the vector |
[in] | v_comp | The v-component of the vector |
[in] | halos | The width of halos to check (default 0) |
[in] | scalars | If true this is a pair of scalars that are being checked. |
Definition at line 679 of file MOM_debugging.F90.
References debug_chksums, debug_redundant, and mom_domains::to_all.
|
private |
[in] | mesg | An identifying message |
[in,out] | g | The ocean's grid structure |
[in] | u_comp | The u-component of the vector |
[in] | v_comp | The v-component of the vector |
[in] | halos | The width of halos to check (default 0) |
[in] | scalars | If true this is a pair of scalars that are being checked. |
[in] | symmetric | If true, do the checksums on the full symmetric computational domain. |
Definition at line 650 of file MOM_debugging.F90.
References debug_chksums, debug_redundant, and mom_domains::to_all.
|
private |
[in] | mesg | An identifying message |
[in,out] | g | The ocean's grid structure |
[in] | u_comp | The u-component of the vector |
[in] | v_comp | The v-component of the vector |
[in] | halos | The width of halos to check (default 0) |
[in] | scalars | If true this is a pair of scalars that are being checked. |
Definition at line 623 of file MOM_debugging.F90.
References debug_chksums, debug_redundant, and mom_domains::to_all.
|
private |
[in] | mesg | An identifying message |
[in,out] | g | The ocean's grid structure |
[in] | u_comp | The u-component of the vector |
[in] | v_comp | The v-component of the vector |
[in] | halos | The width of halos to check (default 0) |
[in] | scalars | If true this is a pair of scalars that are being checked. |
Definition at line 597 of file MOM_debugging.F90.
References debug_chksums, debug_redundant, and mom_domains::to_all.
|
private |
[in] | mesg | An identifying message |
[in,out] | g | The ocean's grid structure |
[in] | u_comp | The u-component of the vector |
[in] | v_comp | The v-component of the vector |
[in] | halos | The width of halos to check (default 0) |
[in] | scalars | If true this is a pair of scalars that are being checked. |
Definition at line 571 of file MOM_debugging.F90.
References debug_chksums, debug_redundant, and mom_domains::to_all.
subroutine, public mom_debugging::mom_debugging_init | ( | type(param_file_type), intent(in) | param_file | ) |
MOM_debugging_init initializes the MOM_debugging module, and sets the parameterts that control which checks are active for MOM6.
[in] | param_file | A structure to parse for run-time parameters |
Definition at line 93 of file MOM_debugging.F90.
References debug, debug_chksums, debug_redundant, and mom_checksums::mom_checksums_init().
real function, public mom_debugging::totalstuff | ( | type(hor_index_type), intent(in) | HI, |
real, dimension(hi%isd:,hi%jsd:,:), intent(in) | hThick, | ||
real, dimension(hi%isd:,hi%jsd:), intent(in) | areaT, | ||
real, dimension(hi%isd:,hi%jsd:,:), intent(in) | stuff | ||
) |
This function returns the sum over computational domain of all processors of hThick*stuff, where stuff is a 3-d array at tracer points.
[in] | hi | A horizontal index type |
[in] | hthick | The array of thicknesses to use as weights |
[in] | areat | The array of cell areas in m2 |
[in] | stuff | The array of stuff to be summed |
Definition at line 738 of file MOM_debugging.F90.
Referenced by totaltands().
subroutine, public mom_debugging::totaltands | ( | type(hor_index_type), intent(in) | HI, |
real, dimension(hi%isd:,hi%jsd:,:), intent(in) | hThick, | ||
real, dimension(hi%isd:,hi%jsd:), intent(in) | areaT, | ||
real, dimension(hi%isd:,hi%jsd:,:), intent(in) | temperature, | ||
real, dimension(hi%isd:,hi%jsd:,:), intent(in) | salinity, | ||
character(len=*), intent(in) | mesg | ||
) |
This subroutine display the total thickness, temperature and salinity as well as the change since the last call. NOTE: This subroutine uses "save" data which is not thread safe and is purely for extreme debugging without a proper debugger.
[in] | hi | A horizontal index type |
[in] | hthick | The array of thicknesses to use as weights |
[in] | areat | The array of cell areas in m2 |
[in] | temperature | The temperature field to sum |
[in] | salinity | The salinity field to sum |
[in] | mesg | An identifying message |
Definition at line 761 of file MOM_debugging.F90.
References mom_error_handler::is_root_pe(), and totalstuff().
|
private |
Definition at line 82 of file MOM_debugging.F90.
Referenced by mom_debugging_init().
|
private |
Definition at line 83 of file MOM_debugging.F90.
Referenced by chksum_vec_a2d(), chksum_vec_a3d(), chksum_vec_b2d(), chksum_vec_b3d(), chksum_vec_c2d(), chksum_vec_c3d(), and mom_debugging_init().
|
private |
Definition at line 84 of file MOM_debugging.F90.
Referenced by chksum_vec_a2d(), chksum_vec_a3d(), chksum_vec_b2d(), chksum_vec_b3d(), chksum_vec_c2d(), chksum_vec_c3d(), and mom_debugging_init().
|
private |
Definition at line 80 of file MOM_debugging.F90.
Referenced by check_redundant_sb2d(), check_redundant_st2d(), check_redundant_vb2d(), check_redundant_vc2d(), and check_redundant_vt2d().
|
private |
Definition at line 81 of file MOM_debugging.F90.
Referenced by check_redundant_sb2d(), check_redundant_st2d(), check_redundant_vb2d(), check_redundant_vc2d(), and check_redundant_vt2d().