uniform_diag_levels Function

private pure function uniform_diag_levels(nz) result(levels)

nz uniform cumulative fractions (m/nz, m=1..nz) — the auto sigma / z* output grid when no explicit levels are configured. Moved from rdb_driver (P2.4).

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: nz

Return Value real(kind=wp), (max(nz,1))


Called by

proc~~uniform_diag_levels~~CalledByGraph proc~uniform_diag_levels uniform_diag_levels proc~engine_configure_diag engine_configure_diag proc~engine_configure_diag->proc~uniform_diag_levels proc~engine_setup engine_setup proc~engine_setup->proc~engine_configure_diag proc~complete_ocean_create complete_ocean_create proc~complete_ocean_create->proc~engine_setup proc~driver_run_ocean driver_run_ocean proc~driver_run_ocean->proc~engine_setup proc~driver_validate driver_validate proc~driver_validate->proc~engine_setup proc~driver_run driver_run proc~driver_run->proc~driver_run_ocean proc~rdb_ocean_create_finalize rdb_ocean_create_finalize proc~rdb_ocean_create_finalize->proc~complete_ocean_create proc~rdb_ocean_create_from_string rdb_ocean_create_from_string proc~rdb_ocean_create_from_string->proc~complete_ocean_create

Variables

Type Visibility Attributes Name Initial
integer, private :: m
integer, private :: n

Source Code

   pure function uniform_diag_levels(nz) result(levels)
      !! `nz` uniform cumulative fractions (m/nz, m=1..nz) — the auto
      !! sigma / z* output grid when no explicit levels are configured.
      !! Moved from `rdb_driver` (P2.4).
      integer, intent(in) :: nz
      real(wp) :: levels(max(nz, 1))
      integer :: m, n
      n = max(nz, 1)
      do m = 1, n
         levels(m) = real(m, wp)/real(n, wp)
      end do
   end function uniform_diag_levels