Define a 2D variable with working precision type
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| integer, | intent(in) | :: | ncid | |||
| character(len=*), | intent(in) | :: | name | |||
| integer, | intent(in) | :: | dimids(2) | |||
| integer, | intent(out) | :: | varid | |||
| integer, | intent(in), | optional | :: | deflate_level |
Compression level (0=none, 1-9=deflate). Enables shuffle when > 0. |
|
| integer, | intent(out), | optional | :: | ierr |
Non-zero on failure when present; absent behaves as today
( |
subroutine nc_def_var_2d(ncid, name, dimids, varid, deflate_level, ierr) !! Define a 2D variable with working precision type integer, intent(in) :: ncid character(len=*), intent(in) :: name integer, intent(in) :: dimids(2) integer, intent(out) :: varid integer, intent(in), optional :: deflate_level !! Compression level (0=none, 1-9=deflate). Enables shuffle when > 0. integer, intent(out), optional :: ierr !! Non-zero on failure when present; absent behaves as today !! (`error stop`). call nc_check(nf90_def_var(ncid, name, NC_WP, dimids, varid), & "defining variable "//trim(name), ierr) if (present(ierr)) then if (ierr /= nf90_noerr) return end if if (present(deflate_level)) then if (deflate_level > 0) then call nc_check(nf90_def_var_deflate(ncid, varid, & shuffle=1, deflate=1, deflate_level=deflate_level), & "enabling compression for "//trim(name), ierr) end if end if end subroutine nc_def_var_2d