ocean_bottom_drag_bytes Function

private pure function ocean_bottom_drag_bytes(this) result(nbytes)

Counted allocatable footprint of the bottom drag slot (0 when unallocated). One arr_bytes term per array — add a term here when a new allocatable joins the type.

Type Bound

ocean_bottom_drag_t

Arguments

Type IntentOptional Attributes Name
class(ocean_bottom_drag_t), intent(in) :: this

Return Value integer(kind=int64)


Calls

proc~~ocean_bottom_drag_bytes~~CallsGraph proc~ocean_bottom_drag_bytes ocean_bottom_drag_t%ocean_bottom_drag_bytes interface~arr_bytes arr_bytes proc~ocean_bottom_drag_bytes->interface~arr_bytes proc~scratch_3d_buffer_bytes scratch_3d_buffer_t%scratch_3d_buffer_bytes proc~ocean_bottom_drag_bytes->proc~scratch_3d_buffer_bytes proc~arr_bytes_i1 arr_bytes_i1 interface~arr_bytes->proc~arr_bytes_i1 proc~arr_bytes_i2 arr_bytes_i2 interface~arr_bytes->proc~arr_bytes_i2 proc~arr_bytes_i3 arr_bytes_i3 interface~arr_bytes->proc~arr_bytes_i3 proc~arr_bytes_l1 arr_bytes_l1 interface~arr_bytes->proc~arr_bytes_l1 proc~arr_bytes_l2 arr_bytes_l2 interface~arr_bytes->proc~arr_bytes_l2 proc~arr_bytes_l3 arr_bytes_l3 interface~arr_bytes->proc~arr_bytes_l3 proc~arr_bytes_r1 arr_bytes_r1 interface~arr_bytes->proc~arr_bytes_r1 proc~arr_bytes_r2 arr_bytes_r2 interface~arr_bytes->proc~arr_bytes_r2 proc~arr_bytes_r3 arr_bytes_r3 interface~arr_bytes->proc~arr_bytes_r3 proc~arr_bytes_r4 arr_bytes_r4 interface~arr_bytes->proc~arr_bytes_r4 proc~scratch_3d_buffer_bytes->interface~arr_bytes

Source Code

   pure function ocean_bottom_drag_bytes(this) result(nbytes)
      !! Counted allocatable footprint of the bottom drag slot
      !! (0 when unallocated). One arr_bytes term per array — add a
      !! term here when a new allocatable joins the type.
      class(ocean_bottom_drag_t), intent(in) :: this
      integer(int64) :: nbytes
      nbytes = this%du_drag%bytes() &
               + this%dv_drag%bytes() &
               + arr_bytes(this%lambda_bot_u) &
               + arr_bytes(this%lambda_bot_v) &
               + this%lambda_side_u%bytes() &
               + this%lambda_side_v%bytes()
   end function ocean_bottom_drag_bytes