Counted allocatable footprint of the grid metrics slot (0 when unallocated). One arr_bytes term per array — add a term here when a new allocatable joins the type.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(ocean_metrics_t), | intent(in) | :: | this |
pure function ocean_metrics_bytes(this) result(nbytes) !! Counted allocatable footprint of the grid metrics slot !! (0 when unallocated). One arr_bytes term per array — add a !! term here when a new allocatable joins the type. class(ocean_metrics_t), intent(in) :: this integer(int64) :: nbytes nbytes = arr_bytes(this%dxT) & + arr_bytes(this%dyT) & + arr_bytes(this%dxCu) & + arr_bytes(this%dyCu) & + arr_bytes(this%dxCv) & + arr_bytes(this%dyCv) & + arr_bytes(this%dxBu) & + arr_bytes(this%dyBu) & + arr_bytes(this%dy_cu) & + arr_bytes(this%dx_cv) & + arr_bytes(this%dy_cu_bt) & + arr_bytes(this%dx_cv_bt) & + arr_bytes(this%por_bed) & + arr_bytes(this%por_dmin_u) & + arr_bytes(this%por_dmax_u) & + arr_bytes(this%por_davg_u) & + arr_bytes(this%por_dmin_v) & + arr_bytes(this%por_dmax_v) & + arr_bytes(this%por_davg_v) & + arr_bytes(this%por_face_area_u) & + arr_bytes(this%por_face_area_v) & + arr_bytes(this%open_u) & + arr_bytes(this%open_v) & + arr_bytes(this%z_draft) & + arr_bytes(this%cover_frac) & + arr_bytes(this%p_ice_ref) & + arr_bytes(this%wet_T) & + arr_bytes(this%wet_u) & + arr_bytes(this%wet_v) & + arr_bytes(this%wet_q) & + arr_bytes(this%areaT) & + arr_bytes(this%areaCu) & + arr_bytes(this%areaCv) & + arr_bytes(this%areaBu) & + arr_bytes(this%idxT) & + arr_bytes(this%idyT) & + arr_bytes(this%idxCu) & + arr_bytes(this%idyCu) & + arr_bytes(this%idxCv) & + arr_bytes(this%idyCv) & + arr_bytes(this%iareaT) & + arr_bytes(this%iareaBu) & + arr_bytes(this%iareaCu) & + arr_bytes(this%iareaCv) & + arr_bytes(this%geolatT) & + arr_bytes(this%geolonT) & + arr_bytes(this%geolatBu) & + arr_bytes(this%geolonBu) & + arr_bytes(this%angle_dx) & + arr_bytes(this%dy_dxT) & + arr_bytes(this%dx_dyT) & + arr_bytes(this%dy_dxBu) & + arr_bytes(this%dx_dyBu) & + arr_bytes(this%dx2h) & + arr_bytes(this%dy2h) & + arr_bytes(this%dx2q) & + arr_bytes(this%dy2q) end function ocean_metrics_bytes