| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| character(len=64), | public | :: | name | = | "" |
Human-readable identifier (“global”, “tasman_box”, …). |
|
| integer, | public | :: | nx | = | 0 |
Mask shape — matches the grid’s total extent. |
|
| integer, | public | :: | ny | = | 0 |
Mask shape — matches the grid’s total extent. |
|
| real(kind=wp), | public | :: | total_area | = | 0.0_wp |
Cached nominal |
|
| real(kind=wp), | public, | allocatable | :: | weight(:,:) |
Per-cell weight in |
| procedure, public, non_overridable :: bytes => diag_mask_bytes |
Index-based bounding box (test-only). Weight = 1 inside the
closed interval [i0,i1] × [j0,j1], 0 outside. Indices 1-based
and inclusive; ghost cells count if inside the box.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(hgrid_t), | intent(in) | :: | grid | |||
| integer, | intent(in) | :: | i0 | |||
| integer, | intent(in) | :: | i1 | |||
| integer, | intent(in) | :: | j0 | |||
| integer, | intent(in) | :: | j1 | |||
| character(len=*), | intent(in), | optional | :: | name |
Whole-grid mask — all weights = 1. Equivalent to “no mask”; exists for explicit registration and global-integral tests.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(hgrid_t), | intent(in) | :: | grid |
Horizontal section (test-only): one cell row at j = j_row,
spanning i ∈ [i0,i1]. Integrates transport across a constant-y
line (v_face_y_layer at j_row = meridional throughflow).
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(hgrid_t), | intent(in) | :: | grid | |||
| integer, | intent(in) | :: | j_row | |||
| integer, | intent(in) | :: | i0 | |||
| integer, | intent(in) | :: | i1 | |||
| character(len=*), | intent(in), | optional | :: | name |
Vertical section (test-only): one cell column at i = i_col,
spanning j ∈ [j0,j1]. Mirror of h_section for zonal throughflow.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(hgrid_t), | intent(in) | :: | grid | |||
| integer, | intent(in) | :: | i_col | |||
| integer, | intent(in) | :: | j0 | |||
| integer, | intent(in) | :: | j1 | |||
| character(len=*), | intent(in), | optional | :: | name |
Counted allocatable footprint of one region mask (0 when
unallocated). weight is device-mapped by
ocean_diag_enter_data_impl, so it must carry a term — see
diag_var_bytes, which folds this in per masked diagnostic.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(diag_mask_t), | intent(in) | :: | this |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(diag_mask_t), | intent(inout) | :: | this |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(diag_mask_t), | intent(inout) | :: | this | |||
| real(kind=wp), | intent(in) | :: | dx | |||
| real(kind=wp), | intent(in) | :: | dy |