1 2 function nf90_put_var_OneByteInt(ncid, varid, values, start) 3 integer, intent( in) :: ncid, varid 4 integer (kind = OneByteInt), intent( in) :: values 5 integer, dimension(:), optional, intent( in) :: start 6 integer :: nf90_put_var_OneByteInt 7 8 integer, dimension(nf90_max_var_dims) :: localIndex 9 10 ! Set local arguments to default values 11 localIndex(:) = 1 12 if(present(start)) localIndex(:size(start)) = start(:) 13 14 nf90_put_var_OneByteInt = nf_put_var1_int1(ncid, varid, localIndex, values) 15 end function nf90_put_var_OneByteInt 16 17 18 function nf90_put_var_TwoByteInt(ncid, varid, values, start) 19 integer, intent( in) :: ncid, varid 20 integer (kind = TwoByteInt), intent( in) :: values 21 integer, dimension(:), optional, intent( in) :: start 22 integer :: nf90_put_var_TwoByteInt 23 24 integer, dimension(nf90_max_var_dims) :: localIndex 25 26 ! Set local arguments to default values 27 localIndex(:) = 1 28 if(present(start)) localIndex(:size(start)) = start(:) 29 30 nf90_put_var_TwoByteInt = nf_put_var1_int2(ncid, varid, localIndex, values) 31 end function nf90_put_var_TwoByteInt 32 33 34 function nf90_put_var_FourByteInt(ncid, varid, values, start) 35 integer, intent( in) :: ncid, varid 36 integer (kind = FourByteInt), intent( in) :: values 37 integer, dimension(:), optional, intent( in) :: start 38 integer :: nf90_put_var_FourByteInt 39 40 integer, dimension(nf90_max_var_dims) :: localIndex 41 42 ! Set local arguments to default values 43 localIndex(:) = 1 44 if(present(start)) localIndex(:size(start)) = start(:) 45 46 nf90_put_var_FourByteInt = nf_put_var1_int(ncid, varid, localIndex, int(values)) 47 end function nf90_put_var_FourByteInt 48 49 50 function nf90_put_var_FourByteReal(ncid, varid, values, start) 51 integer, intent( in) :: ncid, varid 52 real (kind = FourByteReal), intent( in) :: values 53 integer, dimension(:), optional, intent( in) :: start 54 integer :: nf90_put_var_FourByteReal 55 56 integer, dimension(nf90_max_var_dims) :: localIndex 57 58 ! Set local arguments to default values 59 localIndex(:) = 1 60 if(present(start)) localIndex(:size(start)) = start(:) 61 62 nf90_put_var_FourByteReal = nf_put_var1_real(ncid, varid, localIndex, values) 63 end function nf90_put_var_FourByteReal 64 65 66 function nf90_put_var_EightByteReal(ncid, varid, values, start) 67 integer, intent( in) :: ncid, varid 68 real (kind = EightByteReal), intent( in) :: values 69 integer, dimension(:), optional, intent( in) :: start 70 integer :: nf90_put_var_EightByteReal 71 72 integer, dimension(nf90_max_var_dims) :: localIndex 73 74 ! Set local arguments to default values 75 localIndex(:) = 1 76 if(present(start)) localIndex(:size(start)) = start(:) 77 78 nf90_put_var_EightByteReal = nf_put_var1_double(ncid, varid, localIndex, values) 79 end function nf90_put_var_EightByteReal 80 81 82 function nf90_get_var_OneByteInt(ncid, varid, values, start) 83 integer, intent( in) :: ncid, varid 84 integer (kind = OneByteInt), intent(out) :: values 85 integer, dimension(:), optional, intent( in) :: start 86 integer :: nf90_get_var_OneByteInt 87 88 integer, dimension(nf90_max_var_dims) :: localIndex 89 90 ! Set local arguments to default values 91 localIndex(:) = 1 92 if(present(start)) localIndex(:size(start)) = start(:) 93 94 nf90_get_var_OneByteInt = nf_get_var1_int1(ncid, varid, localIndex, values) 95 end function nf90_get_var_OneByteInt 96 97 98 function nf90_get_var_TwoByteInt(ncid, varid, values, start) 99 integer, intent( in) :: ncid, varid 100 integer (kind = TwoByteInt), intent(out) :: values 101 integer, dimension(:), optional, intent( in) :: start 102 integer :: nf90_get_var_TwoByteInt 103 104 integer, dimension(nf90_max_var_dims) :: localIndex 105 106 ! Set local arguments to default values 107 localIndex(:) = 1 108 if(present(start)) localIndex(:size(start)) = start(:) 109 110 nf90_get_var_TwoByteInt = nf_get_var1_int2(ncid, varid, localIndex, values) 111 end function nf90_get_var_TwoByteInt 112 113 114 function nf90_get_var_FourByteInt(ncid, varid, values, start) 115 integer, intent( in) :: ncid, varid 116 integer (kind = FourByteInt), intent(out) :: values 117 integer, dimension(:), optional, intent( in) :: start 118 integer :: nf90_get_var_FourByteInt 119 120 integer, dimension(nf90_max_var_dims) :: localIndex 121 integer :: defaultInteger 122 123 ! Set local arguments to default values 124 localIndex(:) = 1 125 if(present(start)) localIndex(:size(start)) = start(:) 126 127 nf90_get_var_FourByteInt = nf_get_var1_int(ncid, varid, localIndex, defaultInteger) 128 values = defaultInteger 129 end function nf90_get_var_FourByteInt 130 131 132 function nf90_get_var_FourByteReal(ncid, varid, values, start) 133 integer, intent( in) :: ncid, varid 134 real (kind = FourByteReal), intent(out) :: values 135 integer, dimension(:), optional, intent( in) :: start 136 integer :: nf90_get_var_FourByteReal 137 138 integer, dimension(nf90_max_var_dims) :: localIndex 139 140 ! Set local arguments to default values 141 localIndex(:) = 1 142 if(present(start)) localIndex(:size(start)) = start(:) 143 144 nf90_get_var_FourByteReal = nf_get_var1_real(ncid, varid, localIndex, values) 145 end function nf90_get_var_FourByteReal 146 147 148 function nf90_get_var_EightByteReal(ncid, varid, values, start) 149 integer, intent( in) :: ncid, varid 150 real (kind = EightByteReal), intent(out) :: values 151 integer, dimension(:), optional, intent( in) :: start 152 integer :: nf90_get_var_EightByteReal 153 154 integer, dimension(nf90_max_var_dims) :: localIndex 155 156 ! Set local arguments to default values 157 localIndex(:) = 1 158 if(present(start)) localIndex(:size(start)) = start(:) 159 160 nf90_get_var_EightByteReal = nf_get_var1_double(ncid, varid, localIndex, values) 161 end function nf90_get_var_EightByteReal 162 163 164 165 function nf90_put_var_1D_OneByteInt(ncid, varid, values, start, count, stride, map) 166 integer, intent( in) :: ncid, varid 167 integer (kind = OneByteInt), dimension(:), & 168 intent( in) :: values 169 integer, dimension(:), optional, intent( in) :: start, count, stride, map 170 integer :: nf90_put_var_1D_OneByteInt 171 172 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 173 integer :: numDims, counter 174 175 ! Set local arguments to default values 176 numDims = size(shape(values)) 177 localStart (: ) = 1 178 localCount (:numDims ) = shape(values) 179 localCount (numDims+1:) = 1 180 localStride(: ) = 1 181 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 182 183 if(present(start)) localStart (:size(start) ) = start(:) 184 if(present(count)) localCount (:size(count) ) = count(:) 185 if(present(stride)) localStride(:size(stride)) = stride(:) 186 if(present(map)) then 187 localMap (:size(map)) = map(:) 188 nf90_put_var_1D_OneByteInt = & 189 nf_put_varm_int1(ncid, varid, localStart, localCount, localStride, localMap, values) 190 else if(present(stride)) then 191 nf90_put_var_1D_OneByteInt = & 192 nf_put_vars_int1(ncid, varid, localStart, localCount, localStride, values) 193 else 194 nf90_put_var_1D_OneByteInt = & 195 nf_put_vara_int1(ncid, varid, localStart, localCount, values) 196 end if 197 end function nf90_put_var_1D_OneByteInt 198 199 200 function nf90_put_var_2D_OneByteInt(ncid, varid, values, start, count, stride, map) 201 integer, intent( in) :: ncid, varid 202 integer (kind = OneByteInt), dimension(:, :), & 203 intent( in) :: values 204 integer, dimension(:), optional, intent( in) :: start, count, stride, map 205 integer :: nf90_put_var_2D_OneByteInt 206 207 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 208 integer :: numDims, counter 209 210 ! Set local arguments to default values 211 numDims = size(shape(values)) 212 localStart (: ) = 1 213 localCount (:numDims ) = shape(values) 214 localCount (numDims+1:) = 1 215 localStride(: ) = 1 216 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 217 218 if(present(start)) localStart (:size(start) ) = start(:) 219 if(present(count)) localCount (:size(count) ) = count(:) 220 if(present(stride)) localStride(:size(stride)) = stride(:) 221 if(present(map)) then 222 localMap (:size(map)) = map(:) 223 nf90_put_var_2D_OneByteInt = & 224 nf_put_varm_int1(ncid, varid, localStart, localCount, localStride, localMap, values) 225 else if(present(stride)) then 226 nf90_put_var_2D_OneByteInt = & 227 nf_put_vars_int1(ncid, varid, localStart, localCount, localStride, values) 228 else 229 nf90_put_var_2D_OneByteInt = & 230 nf_put_vara_int1(ncid, varid, localStart, localCount, values) 231 end if 232 end function nf90_put_var_2D_OneByteInt 233 234 235 function nf90_put_var_3D_OneByteInt(ncid, varid, values, start, count, stride, map) 236 integer, intent( in) :: ncid, varid 237 integer (kind = OneByteInt), dimension(:, :, :), & 238 intent( in) :: values 239 integer, dimension(:), optional, intent( in) :: start, count, stride, map 240 integer :: nf90_put_var_3D_OneByteInt 241 242 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 243 integer :: numDims, counter 244 245 ! Set local arguments to default values 246 numDims = size(shape(values)) 247 localStart (: ) = 1 248 localCount (:numDims ) = shape(values) 249 localCount (numDims+1:) = 1 250 localStride(: ) = 1 251 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 252 253 if(present(start)) localStart (:size(start) ) = start(:) 254 if(present(count)) localCount (:size(count) ) = count(:) 255 if(present(stride)) localStride(:size(stride)) = stride(:) 256 if(present(map)) then 257 localMap (:size(map)) = map(:) 258 nf90_put_var_3D_OneByteInt = & 259 nf_put_varm_int1(ncid, varid, localStart, localCount, localStride, localMap, values) 260 else if(present(stride)) then 261 nf90_put_var_3D_OneByteInt = & 262 nf_put_vars_int1(ncid, varid, localStart, localCount, localStride, values) 263 else 264 nf90_put_var_3D_OneByteInt = & 265 nf_put_vara_int1(ncid, varid, localStart, localCount, values) 266 end if 267 end function nf90_put_var_3D_OneByteInt 268 269 270 function nf90_put_var_4D_OneByteInt(ncid, varid, values, start, count, stride, map) 271 integer, intent( in) :: ncid, varid 272 integer (kind = OneByteInt), dimension(:, :, :, :), & 273 intent( in) :: values 274 integer, dimension(:), optional, intent( in) :: start, count, stride, map 275 integer :: nf90_put_var_4D_OneByteInt 276 277 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 278 integer :: numDims, counter 279 280 ! Set local arguments to default values 281 numDims = size(shape(values)) 282 localStart (: ) = 1 283 localCount (:numDims ) = shape(values) 284 localCount (numDims+1:) = 1 285 localStride(: ) = 1 286 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 287 288 if(present(start)) localStart (:size(start) ) = start(:) 289 if(present(count)) localCount (:size(count) ) = count(:) 290 if(present(stride)) localStride(:size(stride)) = stride(:) 291 if(present(map)) then 292 localMap (:size(map)) = map(:) 293 nf90_put_var_4D_OneByteInt = & 294 nf_put_varm_int1(ncid, varid, localStart, localCount, localStride, localMap, values) 295 else if(present(stride)) then 296 nf90_put_var_4D_OneByteInt = & 297 nf_put_vars_int1(ncid, varid, localStart, localCount, localStride, values) 298 else 299 nf90_put_var_4D_OneByteInt = & 300 nf_put_vara_int1(ncid, varid, localStart, localCount, values) 301 end if 302 end function nf90_put_var_4D_OneByteInt 303 304 305 function nf90_put_var_5D_OneByteInt(ncid, varid, values, start, count, stride, map) 306 integer, intent( in) :: ncid, varid 307 integer (kind = OneByteInt), dimension(:, :, :, :, :), & 308 intent( in) :: values 309 integer, dimension(:), optional, intent( in) :: start, count, stride, map 310 integer :: nf90_put_var_5D_OneByteInt 311 312 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 313 integer :: numDims, counter 314 315 ! Set local arguments to default values 316 numDims = size(shape(values)) 317 localStart (: ) = 1 318 localCount (:numDims ) = shape(values) 319 localCount (numDims+1:) = 1 320 localStride(: ) = 1 321 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 322 323 if(present(start)) localStart (:size(start) ) = start(:) 324 if(present(count)) localCount (:size(count) ) = count(:) 325 if(present(stride)) localStride(:size(stride)) = stride(:) 326 if(present(map)) then 327 localMap (:size(map)) = map(:) 328 nf90_put_var_5D_OneByteInt = & 329 nf_put_varm_int1(ncid, varid, localStart, localCount, localStride, localMap, values) 330 else if(present(stride)) then 331 nf90_put_var_5D_OneByteInt = & 332 nf_put_vars_int1(ncid, varid, localStart, localCount, localStride, values) 333 else 334 nf90_put_var_5D_OneByteInt = & 335 nf_put_vara_int1(ncid, varid, localStart, localCount, values) 336 end if 337 end function nf90_put_var_5D_OneByteInt 338 339 340 function nf90_put_var_6D_OneByteInt(ncid, varid, values, start, count, stride, map) 341 integer, intent( in) :: ncid, varid 342 integer (kind = OneByteInt), dimension(:, :, :, :, :, :), & 343 intent( in) :: values 344 integer, dimension(:), optional, intent( in) :: start, count, stride, map 345 integer :: nf90_put_var_6D_OneByteInt 346 347 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 348 integer :: numDims, counter 349 350 ! Set local arguments to default values 351 numDims = size(shape(values)) 352 localStart (: ) = 1 353 localCount (:numDims ) = shape(values) 354 localCount (numDims+1:) = 1 355 localStride(: ) = 1 356 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 357 358 if(present(start)) localStart (:size(start) ) = start(:) 359 if(present(count)) localCount (:size(count) ) = count(:) 360 if(present(stride)) localStride(:size(stride)) = stride(:) 361 if(present(map)) then 362 localMap (:size(map)) = map(:) 363 nf90_put_var_6D_OneByteInt = & 364 nf_put_varm_int1(ncid, varid, localStart, localCount, localStride, localMap, values) 365 else if(present(stride)) then 366 nf90_put_var_6D_OneByteInt = & 367 nf_put_vars_int1(ncid, varid, localStart, localCount, localStride, values) 368 else 369 nf90_put_var_6D_OneByteInt = & 370 nf_put_vara_int1(ncid, varid, localStart, localCount, values) 371 end if 372 end function nf90_put_var_6D_OneByteInt 373 374 375 function nf90_put_var_7D_OneByteInt(ncid, varid, values, start, count, stride, map) 376 integer, intent( in) :: ncid, varid 377 integer (kind = OneByteInt), dimension(:, :, :, :, :, :, :), & 378 intent( in) :: values 379 integer, dimension(:), optional, intent( in) :: start, count, stride, map 380 integer :: nf90_put_var_7D_OneByteInt 381 382 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 383 integer :: numDims, counter 384 385 ! Set local arguments to default values 386 numDims = size(shape(values)) 387 localStart (: ) = 1 388 localCount (:numDims ) = shape(values) 389 localCount (numDims+1:) = 1 390 localStride(: ) = 1 391 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 392 393 if(present(start)) localStart (:size(start) ) = start(:) 394 if(present(count)) localCount (:size(count) ) = count(:) 395 if(present(stride)) localStride(:size(stride)) = stride(:) 396 if(present(map)) then 397 localMap (:size(map)) = map(:) 398 nf90_put_var_7D_OneByteInt = & 399 nf_put_varm_int1(ncid, varid, localStart, localCount, localStride, localMap, values) 400 else if(present(stride)) then 401 nf90_put_var_7D_OneByteInt = & 402 nf_put_vars_int1(ncid, varid, localStart, localCount, localStride, values) 403 else 404 nf90_put_var_7D_OneByteInt = & 405 nf_put_vara_int1(ncid, varid, localStart, localCount, values) 406 end if 407 end function nf90_put_var_7D_OneByteInt 408 409 410 function nf90_put_var_1D_TwoByteInt(ncid, varid, values, start, count, stride, map) 411 integer, intent( in) :: ncid, varid 412 integer (kind = TwoByteInt), dimension(:), & 413 intent( in) :: values 414 integer, dimension(:), optional, intent( in) :: start, count, stride, map 415 integer :: nf90_put_var_1D_TwoByteInt 416 417 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 418 integer :: numDims, counter 419 420 ! Set local arguments to default values 421 numDims = size(shape(values)) 422 localStart (: ) = 1 423 localCount (:numDims ) = shape(values) 424 localCount (numDims+1:) = 1 425 localStride(: ) = 1 426 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 427 428 if(present(start)) localStart (:size(start) ) = start(:) 429 if(present(count)) localCount (:size(count) ) = count(:) 430 if(present(stride)) localStride(:size(stride)) = stride(:) 431 if(present(map)) then 432 localMap (:size(map)) = map(:) 433 nf90_put_var_1D_TwoByteInt = & 434 nf_put_varm_int2(ncid, varid, localStart, localCount, localStride, localMap, values) 435 else if(present(stride)) then 436 nf90_put_var_1D_TwoByteInt = & 437 nf_put_vars_int2(ncid, varid, localStart, localCount, localStride, values) 438 else 439 nf90_put_var_1D_TwoByteInt = & 440 nf_put_vara_int2(ncid, varid, localStart, localCount, values) 441 end if 442 end function nf90_put_var_1D_TwoByteInt 443 444 445 function nf90_put_var_2D_TwoByteInt(ncid, varid, values, start, count, stride, map) 446 integer, intent( in) :: ncid, varid 447 integer (kind = TwoByteInt), dimension(:, :), & 448 intent( in) :: values 449 integer, dimension(:), optional, intent( in) :: start, count, stride, map 450 integer :: nf90_put_var_2D_TwoByteInt 451 452 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 453 integer :: numDims, counter 454 455 ! Set local arguments to default values 456 numDims = size(shape(values)) 457 localStart (: ) = 1 458 localCount (:numDims ) = shape(values) 459 localCount (numDims+1:) = 1 460 localStride(: ) = 1 461 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 462 463 if(present(start)) localStart (:size(start) ) = start(:) 464 if(present(count)) localCount (:size(count) ) = count(:) 465 if(present(stride)) localStride(:size(stride)) = stride(:) 466 if(present(map)) then 467 localMap (:size(map)) = map(:) 468 nf90_put_var_2D_TwoByteInt = & 469 nf_put_varm_int2(ncid, varid, localStart, localCount, localStride, localMap, values) 470 else if(present(stride)) then 471 nf90_put_var_2D_TwoByteInt = & 472 nf_put_vars_int2(ncid, varid, localStart, localCount, localStride, values) 473 else 474 nf90_put_var_2D_TwoByteInt = & 475 nf_put_vara_int2(ncid, varid, localStart, localCount, values) 476 end if 477 end function nf90_put_var_2D_TwoByteInt 478 479 480 function nf90_put_var_3D_TwoByteInt(ncid, varid, values, start, count, stride, map) 481 integer, intent( in) :: ncid, varid 482 integer (kind = TwoByteInt), dimension(:, :, :), & 483 intent( in) :: values 484 integer, dimension(:), optional, intent( in) :: start, count, stride, map 485 integer :: nf90_put_var_3D_TwoByteInt 486 487 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 488 integer :: numDims, counter 489 490 ! Set local arguments to default values 491 numDims = size(shape(values)) 492 localStart (: ) = 1 493 localCount (:numDims ) = shape(values) 494 localCount (numDims+1:) = 1 495 localStride(: ) = 1 496 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 497 498 if(present(start)) localStart (:size(start) ) = start(:) 499 if(present(count)) localCount (:size(count) ) = count(:) 500 if(present(stride)) localStride(:size(stride)) = stride(:) 501 if(present(map)) then 502 localMap (:size(map)) = map(:) 503 nf90_put_var_3D_TwoByteInt = & 504 nf_put_varm_int2(ncid, varid, localStart, localCount, localStride, localMap, values) 505 else if(present(stride)) then 506 nf90_put_var_3D_TwoByteInt = & 507 nf_put_vars_int2(ncid, varid, localStart, localCount, localStride, values) 508 else 509 nf90_put_var_3D_TwoByteInt = & 510 nf_put_vara_int2(ncid, varid, localStart, localCount, values) 511 end if 512 end function nf90_put_var_3D_TwoByteInt 513 514 515 function nf90_put_var_4D_TwoByteInt(ncid, varid, values, start, count, stride, map) 516 integer, intent( in) :: ncid, varid 517 integer (kind = TwoByteInt), dimension(:, :, :, :), & 518 intent( in) :: values 519 integer, dimension(:), optional, intent( in) :: start, count, stride, map 520 integer :: nf90_put_var_4D_TwoByteInt 521 522 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 523 integer :: numDims, counter 524 525 ! Set local arguments to default values 526 numDims = size(shape(values)) 527 localStart (: ) = 1 528 localCount (:numDims ) = shape(values) 529 localCount (numDims+1:) = 1 530 localStride(: ) = 1 531 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 532 533 if(present(start)) localStart (:size(start) ) = start(:) 534 if(present(count)) localCount (:size(count) ) = count(:) 535 if(present(stride)) localStride(:size(stride)) = stride(:) 536 if(present(map)) then 537 localMap (:size(map)) = map(:) 538 nf90_put_var_4D_TwoByteInt = & 539 nf_put_varm_int2(ncid, varid, localStart, localCount, localStride, localMap, values) 540 else if(present(stride)) then 541 nf90_put_var_4D_TwoByteInt = & 542 nf_put_vars_int2(ncid, varid, localStart, localCount, localStride, values) 543 else 544 nf90_put_var_4D_TwoByteInt = & 545 nf_put_vara_int2(ncid, varid, localStart, localCount, values) 546 end if 547 end function nf90_put_var_4D_TwoByteInt 548 549 550 function nf90_put_var_5D_TwoByteInt(ncid, varid, values, start, count, stride, map) 551 integer, intent( in) :: ncid, varid 552 integer (kind = TwoByteInt), dimension(:, :, :, :, :), & 553 intent( in) :: values 554 integer, dimension(:), optional, intent( in) :: start, count, stride, map 555 integer :: nf90_put_var_5D_TwoByteInt 556 557 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 558 integer :: numDims, counter 559 560 ! Set local arguments to default values 561 numDims = size(shape(values)) 562 localStart (: ) = 1 563 localCount (:numDims ) = shape(values) 564 localCount (numDims+1:) = 1 565 localStride(: ) = 1 566 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 567 568 if(present(start)) localStart (:size(start) ) = start(:) 569 if(present(count)) localCount (:size(count) ) = count(:) 570 if(present(stride)) localStride(:size(stride)) = stride(:) 571 if(present(map)) then 572 localMap (:size(map)) = map(:) 573 nf90_put_var_5D_TwoByteInt = & 574 nf_put_varm_int2(ncid, varid, localStart, localCount, localStride, localMap, values) 575 else if(present(stride)) then 576 nf90_put_var_5D_TwoByteInt = & 577 nf_put_vars_int2(ncid, varid, localStart, localCount, localStride, values) 578 else 579 nf90_put_var_5D_TwoByteInt = & 580 nf_put_vara_int2(ncid, varid, localStart, localCount, values) 581 end if 582 end function nf90_put_var_5D_TwoByteInt 583 584 585 function nf90_put_var_6D_TwoByteInt(ncid, varid, values, start, count, stride, map) 586 integer, intent( in) :: ncid, varid 587 integer (kind = TwoByteInt), dimension(:, :, :, :, :, :), & 588 intent( in) :: values 589 integer, dimension(:), optional, intent( in) :: start, count, stride, map 590 integer :: nf90_put_var_6D_TwoByteInt 591 592 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 593 integer :: numDims, counter 594 595 ! Set local arguments to default values 596 numDims = size(shape(values)) 597 localStart (: ) = 1 598 localCount (:numDims ) = shape(values) 599 localCount (numDims+1:) = 1 600 localStride(: ) = 1 601 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 602 603 if(present(start)) localStart (:size(start) ) = start(:) 604 if(present(count)) localCount (:size(count) ) = count(:) 605 if(present(stride)) localStride(:size(stride)) = stride(:) 606 if(present(map)) then 607 localMap (:size(map)) = map(:) 608 nf90_put_var_6D_TwoByteInt = & 609 nf_put_varm_int2(ncid, varid, localStart, localCount, localStride, localMap, values) 610 else if(present(stride)) then 611 nf90_put_var_6D_TwoByteInt = & 612 nf_put_vars_int2(ncid, varid, localStart, localCount, localStride, values) 613 else 614 nf90_put_var_6D_TwoByteInt = & 615 nf_put_vara_int2(ncid, varid, localStart, localCount, values) 616 end if 617 end function nf90_put_var_6D_TwoByteInt 618 619 620 function nf90_put_var_7D_TwoByteInt(ncid, varid, values, start, count, stride, map) 621 integer, intent( in) :: ncid, varid 622 integer (kind = TwoByteInt), dimension(:, :, :, :, :, :, :), & 623 intent( in) :: values 624 integer, dimension(:), optional, intent( in) :: start, count, stride, map 625 integer :: nf90_put_var_7D_TwoByteInt 626 627 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 628 integer :: numDims, counter 629 630 ! Set local arguments to default values 631 numDims = size(shape(values)) 632 localStart (: ) = 1 633 localCount (:numDims ) = shape(values) 634 localCount (numDims+1:) = 1 635 localStride(: ) = 1 636 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 637 638 if(present(start)) localStart (:size(start) ) = start(:) 639 if(present(count)) localCount (:size(count) ) = count(:) 640 if(present(stride)) localStride(:size(stride)) = stride(:) 641 if(present(map)) then 642 localMap (:size(map)) = map(:) 643 nf90_put_var_7D_TwoByteInt = & 644 nf_put_varm_int2(ncid, varid, localStart, localCount, localStride, localMap, values) 645 else if(present(stride)) then 646 nf90_put_var_7D_TwoByteInt = & 647 nf_put_vars_int2(ncid, varid, localStart, localCount, localStride, values) 648 else 649 nf90_put_var_7D_TwoByteInt = & 650 nf_put_vara_int2(ncid, varid, localStart, localCount, values) 651 end if 652 end function nf90_put_var_7D_TwoByteInt 653 654 655 function nf90_put_var_1D_FourByteInt(ncid, varid, values, start, count, stride, map) 656 integer, intent( in) :: ncid, varid 657 integer (kind = FourByteInt), dimension(:), & 658 intent( in) :: values 659 integer, dimension(:), optional, intent( in) :: start, count, stride, map 660 integer :: nf90_put_var_1D_FourByteInt 661 662 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 663 integer :: numDims, counter 664 665 ! Set local arguments to default values 666 numDims = size(shape(values)) 667 localStart (: ) = 1 668 localCount (:numDims ) = shape(values) 669 localCount (numDims+1:) = 1 670 localStride(: ) = 1 671 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 672 673 if(present(start)) localStart (:size(start) ) = start(:) 674 if(present(count)) localCount (:size(count) ) = count(:) 675 if(present(stride)) localStride(:size(stride)) = stride(:) 676 if(present(map)) then 677 localMap (:size(map)) = map(:) 678 nf90_put_var_1D_FourByteInt = & 679 nf_put_varm_int(ncid, varid, localStart, localCount, localStride, localMap, int(values)) 680 else if(present(stride)) then 681 nf90_put_var_1D_FourByteInt = & 682 nf_put_vars_int(ncid, varid, localStart, localCount, localStride, int(values)) 683 else 684 nf90_put_var_1D_FourByteInt = & 685 nf_put_vara_int(ncid, varid, localStart, localCount, int(values)) 686 end if 687 end function nf90_put_var_1D_FourByteInt 688 689 690 function nf90_put_var_2D_FourByteInt(ncid, varid, values, start, count, stride, map) 691 integer, intent( in) :: ncid, varid 692 integer (kind = FourByteInt), dimension(:, :), & 693 intent( in) :: values 694 integer, dimension(:), optional, intent( in) :: start, count, stride, map 695 integer :: nf90_put_var_2D_FourByteInt 696 697 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 698 integer :: numDims, counter 699 700 ! Set local arguments to default values 701 numDims = size(shape(values)) 702 localStart (: ) = 1 703 localCount (:numDims ) = shape(values) 704 localCount (numDims+1:) = 1 705 localStride(: ) = 1 706 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 707 708 if(present(start)) localStart (:size(start) ) = start(:) 709 if(present(count)) localCount (:size(count) ) = count(:) 710 if(present(stride)) localStride(:size(stride)) = stride(:) 711 if(present(map)) then 712 localMap (:size(map)) = map(:) 713 nf90_put_var_2D_FourByteInt = & 714 nf_put_varm_int(ncid, varid, localStart, localCount, localStride, localMap, int(values)) 715 else if(present(stride)) then 716 nf90_put_var_2D_FourByteInt = & 717 nf_put_vars_int(ncid, varid, localStart, localCount, localStride, int(values)) 718 else 719 nf90_put_var_2D_FourByteInt = & 720 nf_put_vara_int(ncid, varid, localStart, localCount, values) 721 end if 722 end function nf90_put_var_2D_FourByteInt 723 724 725 function nf90_put_var_3D_FourByteInt(ncid, varid, values, start, count, stride, map) 726 integer, intent( in) :: ncid, varid 727 integer (kind = FourByteInt), dimension(:, :, :), & 728 intent( in) :: values 729 integer, dimension(:), optional, intent( in) :: start, count, stride, map 730 integer :: nf90_put_var_3D_FourByteInt 731 732 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 733 integer :: numDims, counter 734 735 ! Set local arguments to default values 736 numDims = size(shape(values)) 737 localStart (: ) = 1 738 localCount (:numDims ) = shape(values) 739 localCount (numDims+1:) = 1 740 localStride(: ) = 1 741 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 742 743 if(present(start)) localStart (:size(start) ) = start(:) 744 if(present(count)) localCount (:size(count) ) = count(:) 745 if(present(stride)) localStride(:size(stride)) = stride(:) 746 if(present(map)) then 747 localMap (:size(map)) = map(:) 748 nf90_put_var_3D_FourByteInt = & 749 nf_put_varm_int(ncid, varid, localStart, localCount, localStride, localMap, int(values)) 750 else if(present(stride)) then 751 nf90_put_var_3D_FourByteInt = & 752 nf_put_vars_int(ncid, varid, localStart, localCount, localStride, int(values)) 753 else 754 nf90_put_var_3D_FourByteInt = & 755 nf_put_vara_int(ncid, varid, localStart, localCount, int(values)) 756 end if 757 end function nf90_put_var_3D_FourByteInt 758 759 760 function nf90_put_var_4D_FourByteInt(ncid, varid, values, start, count, stride, map) 761 integer, intent( in) :: ncid, varid 762 integer (kind = FourByteInt), dimension(:, :, :, :), & 763 intent( in) :: values 764 integer, dimension(:), optional, intent( in) :: start, count, stride, map 765 integer :: nf90_put_var_4D_FourByteInt 766 767 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 768 integer :: numDims, counter 769 770 ! Set local arguments to default values 771 numDims = size(shape(values)) 772 localStart (: ) = 1 773 localCount (:numDims ) = shape(values) 774 localCount (numDims+1:) = 1 775 localStride(: ) = 1 776 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 777 778 if(present(start)) localStart (:size(start) ) = start(:) 779 if(present(count)) localCount (:size(count) ) = count(:) 780 if(present(stride)) localStride(:size(stride)) = stride(:) 781 if(present(map)) then 782 localMap (:size(map)) = map(:) 783 nf90_put_var_4D_FourByteInt = & 784 nf_put_varm_int(ncid, varid, localStart, localCount, localStride, localMap, int(values)) 785 else if(present(stride)) then 786 nf90_put_var_4D_FourByteInt = & 787 nf_put_vars_int(ncid, varid, localStart, localCount, localStride, int(values)) 788 else 789 nf90_put_var_4D_FourByteInt = & 790 nf_put_vara_int(ncid, varid, localStart, localCount, int(values)) 791 end if 792 end function nf90_put_var_4D_FourByteInt 793 794 795 function nf90_put_var_5D_FourByteInt(ncid, varid, values, start, count, stride, map) 796 integer, intent( in) :: ncid, varid 797 integer (kind = FourByteInt), dimension(:, :, :, :, :), & 798 intent( in) :: values 799 integer, dimension(:), optional, intent( in) :: start, count, stride, map 800 integer :: nf90_put_var_5D_FourByteInt 801 802 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 803 integer :: numDims, counter 804 805 ! Set local arguments to default values 806 numDims = size(shape(values)) 807 localStart (: ) = 1 808 localCount (:numDims ) = shape(values) 809 localCount (numDims+1:) = 1 810 localStride(: ) = 1 811 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 812 813 if(present(start)) localStart (:size(start) ) = start(:) 814 if(present(count)) localCount (:size(count) ) = count(:) 815 if(present(stride)) localStride(:size(stride)) = stride(:) 816 if(present(map)) then 817 localMap (:size(map)) = map(:) 818 nf90_put_var_5D_FourByteInt = & 819 nf_put_varm_int(ncid, varid, localStart, localCount, localStride, localMap, int(values)) 820 else if(present(stride)) then 821 nf90_put_var_5D_FourByteInt = & 822 nf_put_vars_int(ncid, varid, localStart, localCount, localStride, int(values)) 823 else 824 nf90_put_var_5D_FourByteInt = & 825 nf_put_vara_int(ncid, varid, localStart, localCount, int(values)) 826 end if 827 end function nf90_put_var_5D_FourByteInt 828 829 830 function nf90_put_var_6D_FourByteInt(ncid, varid, values, start, count, stride, map) 831 integer, intent( in) :: ncid, varid 832 integer (kind = FourByteInt), dimension(:, :, :, :, :, :), & 833 intent( in) :: values 834 integer, dimension(:), optional, intent( in) :: start, count, stride, map 835 integer :: nf90_put_var_6D_FourByteInt 836 837 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 838 integer :: numDims, counter 839 840 ! Set local arguments to default values 841 numDims = size(shape(values)) 842 localStart (: ) = 1 843 localCount (:numDims ) = shape(values) 844 localCount (numDims+1:) = 1 845 localStride(: ) = 1 846 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 847 848 if(present(start)) localStart (:size(start) ) = start(:) 849 if(present(count)) localCount (:size(count) ) = count(:) 850 if(present(stride)) localStride(:size(stride)) = stride(:) 851 if(present(map)) then 852 localMap (:size(map)) = map(:) 853 nf90_put_var_6D_FourByteInt = & 854 nf_put_varm_int(ncid, varid, localStart, localCount, localStride, localMap, int(values)) 855 else if(present(stride)) then 856 nf90_put_var_6D_FourByteInt = & 857 nf_put_vars_int(ncid, varid, localStart, localCount, localStride, int(values)) 858 else 859 nf90_put_var_6D_FourByteInt = & 860 nf_put_vara_int(ncid, varid, localStart, localCount, int(values)) 861 end if 862 end function nf90_put_var_6D_FourByteInt 863 864 865 function nf90_put_var_7D_FourByteInt(ncid, varid, values, start, count, stride, map) 866 integer, intent( in) :: ncid, varid 867 integer (kind = FourByteInt), dimension(:, :, :, :, :, :, :), & 868 intent( in) :: values 869 integer, dimension(:), optional, intent( in) :: start, count, stride, map 870 integer :: nf90_put_var_7D_FourByteInt 871 872 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 873 integer :: numDims, counter 874 875 ! Set local arguments to default values 876 numDims = size(shape(values)) 877 localStart (: ) = 1 878 localCount (:numDims ) = shape(values) 879 localCount (numDims+1:) = 1 880 localStride(: ) = 1 881 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 882 883 if(present(start)) localStart (:size(start) ) = start(:) 884 if(present(count)) localCount (:size(count) ) = count(:) 885 if(present(stride)) localStride(:size(stride)) = stride(:) 886 if(present(map)) then 887 localMap (:size(map)) = map(:) 888 nf90_put_var_7D_FourByteInt = & 889 nf_put_varm_int(ncid, varid, localStart, localCount, localStride, localMap, int(values)) 890 else if(present(stride)) then 891 nf90_put_var_7D_FourByteInt = & 892 nf_put_vars_int(ncid, varid, localStart, localCount, localStride, int(values)) 893 else 894 nf90_put_var_7D_FourByteInt = & 895 nf_put_vara_int(ncid, varid, localStart, localCount, int(values)) 896 end if 897 end function nf90_put_var_7D_FourByteInt 898 899 900 function nf90_put_var_1D_FourByteReal(ncid, varid, values, start, count, stride, map) 901 integer, intent( in) :: ncid, varid 902 real (kind = FourByteReal), dimension(:), & 903 intent( in) :: values 904 integer, dimension(:), optional, intent( in) :: start, count, stride, map 905 integer :: nf90_put_var_1D_FourByteReal 906 907 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 908 integer :: numDims, counter 909 910 ! Set local arguments to default values 911 numDims = size(shape(values)) 912 localStart (: ) = 1 913 localCount (:numDims ) = shape(values) 914 localCount (numDims+1:) = 1 915 localStride(: ) = 1 916 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 917 918 if(present(start)) localStart (:size(start) ) = start(:) 919 if(present(count)) localCount (:size(count) ) = count(:) 920 if(present(stride)) localStride(:size(stride)) = stride(:) 921 if(present(map)) then 922 localMap (:size(map)) = map(:) 923 nf90_put_var_1D_FourByteReal = & 924 nf_put_varm_real(ncid, varid, localStart, localCount, localStride, localMap, values) 925 else if(present(stride)) then 926 nf90_put_var_1D_FourByteReal = & 927 nf_put_vars_real(ncid, varid, localStart, localCount, localStride, values) 928 else 929 nf90_put_var_1D_FourByteReal = & 930 nf_put_vara_real(ncid, varid, localStart, localCount, values) 931 end if 932 end function nf90_put_var_1D_FourByteReal 933 934 935 function nf90_put_var_2D_FourByteReal(ncid, varid, values, start, count, stride, map) 936 integer, intent( in) :: ncid, varid 937 real (kind = FourByteReal), dimension(:, :), & 938 intent( in) :: values 939 integer, dimension(:), optional, intent( in) :: start, count, stride, map 940 integer :: nf90_put_var_2D_FourByteReal 941 942 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 943 integer :: numDims, counter 944 945 ! Set local arguments to default values 946 numDims = size(shape(values)) 947 localStart (: ) = 1 948 localCount (:numDims ) = shape(values) 949 localCount (numDims+1:) = 1 950 localStride(: ) = 1 951 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 952 953 if(present(start)) localStart (:size(start) ) = start(:) 954 if(present(count)) localCount (:size(count) ) = count(:) 955 if(present(stride)) localStride(:size(stride)) = stride(:) 956 if(present(map)) then 957 localMap (:size(map)) = map(:) 958 nf90_put_var_2D_FourByteReal = & 959 nf_put_varm_real(ncid, varid, localStart, localCount, localStride, localMap, values) 960 else if(present(stride)) then 961 nf90_put_var_2D_FourByteReal = & 962 nf_put_vars_real(ncid, varid, localStart, localCount, localStride, values) 963 else 964 nf90_put_var_2D_FourByteReal = & 965 nf_put_vara_real(ncid, varid, localStart, localCount, values) 966 end if 967 end function nf90_put_var_2D_FourByteReal 968 969 970 function nf90_put_var_3D_FourByteReal(ncid, varid, values, start, count, stride, map) 971 integer, intent( in) :: ncid, varid 972 real (kind = FourByteReal), dimension(:, :, :), & 973 intent( in) :: values 974 integer, dimension(:), optional, intent( in) :: start, count, stride, map 975 integer :: nf90_put_var_3D_FourByteReal 976 977 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 978 integer :: numDims, counter 979 980 ! Set local arguments to default values 981 numDims = size(shape(values)) 982 localStart (: ) = 1 983 localCount (:numDims ) = shape(values) 984 localCount (numDims+1:) = 1 985 localStride(: ) = 1 986 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 987 988 if(present(start)) localStart (:size(start) ) = start(:) 989 if(present(count)) localCount (:size(count) ) = count(:) 990 if(present(stride)) localStride(:size(stride)) = stride(:) 991 if(present(map)) then 992 localMap (:size(map)) = map(:) 993 nf90_put_var_3D_FourByteReal = & 994 nf_put_varm_real(ncid, varid, localStart, localCount, localStride, localMap, values) 995 else if(present(stride)) then 996 nf90_put_var_3D_FourByteReal = & 997 nf_put_vars_real(ncid, varid, localStart, localCount, localStride, values) 998 else 999 nf90_put_var_3D_FourByteReal = & 1000 nf_put_vara_real(ncid, varid, localStart, localCount, values) 1001 end if 1002 end function nf90_put_var_3D_FourByteReal 1003 1004 1005 function nf90_put_var_4D_FourByteReal(ncid, varid, values, start, count, stride, map) 1006 integer, intent( in) :: ncid, varid 1007 real (kind = FourByteReal), dimension(:, :, :, :), & 1008 intent( in) :: values 1009 integer, dimension(:), optional, intent( in) :: start, count, stride, map 1010 integer :: nf90_put_var_4D_FourByteReal 1011 1012 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 1013 integer :: numDims, counter 1014 1015 ! Set local arguments to default values 1016 numDims = size(shape(values)) 1017 localStart (: ) = 1 1018 localCount (:numDims ) = shape(values) 1019 localCount (numDims+1:) = 1 1020 localStride(: ) = 1 1021 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 1022 1023 if(present(start)) localStart (:size(start) ) = start(:) 1024 if(present(count)) localCount (:size(count) ) = count(:) 1025 if(present(stride)) localStride(:size(stride)) = stride(:) 1026 if(present(map)) then 1027 localMap (:size(map)) = map(:) 1028 nf90_put_var_4D_FourByteReal = & 1029 nf_put_varm_real(ncid, varid, localStart, localCount, localStride, localMap, values) 1030 else if(present(stride)) then 1031 nf90_put_var_4D_FourByteReal = & 1032 nf_put_vars_real(ncid, varid, localStart, localCount, localStride, values) 1033 else 1034 nf90_put_var_4D_FourByteReal = & 1035 nf_put_vara_real(ncid, varid, localStart, localCount, values) 1036 end if 1037 end function nf90_put_var_4D_FourByteReal 1038 1039 1040 function nf90_put_var_5D_FourByteReal(ncid, varid, values, start, count, stride, map) 1041 integer, intent( in) :: ncid, varid 1042 real (kind = FourByteReal), dimension(:, :, :, :, :), & 1043 intent( in) :: values 1044 integer, dimension(:), optional, intent( in) :: start, count, stride, map 1045 integer :: nf90_put_var_5D_FourByteReal 1046 1047 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 1048 integer :: numDims, counter 1049 1050 ! Set local arguments to default values 1051 numDims = size(shape(values)) 1052 localStart (: ) = 1 1053 localCount (:numDims ) = shape(values) 1054 localCount (numDims+1:) = 1 1055 localStride(: ) = 1 1056 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 1057 1058 if(present(start)) localStart (:size(start) ) = start(:) 1059 if(present(count)) localCount (:size(count) ) = count(:) 1060 if(present(stride)) localStride(:size(stride)) = stride(:) 1061 if(present(map)) then 1062 localMap (:size(map)) = map(:) 1063 nf90_put_var_5D_FourByteReal = & 1064 nf_put_varm_real(ncid, varid, localStart, localCount, localStride, localMap, values) 1065 else if(present(stride)) then 1066 nf90_put_var_5D_FourByteReal = & 1067 nf_put_vars_real(ncid, varid, localStart, localCount, localStride, values) 1068 else 1069 nf90_put_var_5D_FourByteReal = & 1070 nf_put_vara_real(ncid, varid, localStart, localCount, values) 1071 end if 1072 end function nf90_put_var_5D_FourByteReal 1073 1074 1075 function nf90_put_var_6D_FourByteReal(ncid, varid, values, start, count, stride, map) 1076 integer, intent( in) :: ncid, varid 1077 real (kind = FourByteReal), dimension(:, :, :, :, :, :), & 1078 intent( in) :: values 1079 integer, dimension(:), optional, intent( in) :: start, count, stride, map 1080 integer :: nf90_put_var_6D_FourByteReal 1081 1082 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 1083 integer :: numDims, counter 1084 1085 ! Set local arguments to default values 1086 numDims = size(shape(values)) 1087 localStart (: ) = 1 1088 localCount (:numDims ) = shape(values) 1089 localCount (numDims+1:) = 1 1090 localStride(: ) = 1 1091 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 1092 1093 if(present(start)) localStart (:size(start) ) = start(:) 1094 if(present(count)) localCount (:size(count) ) = count(:) 1095 if(present(stride)) localStride(:size(stride)) = stride(:) 1096 if(present(map)) then 1097 localMap (:size(map)) = map(:) 1098 nf90_put_var_6D_FourByteReal = & 1099 nf_put_varm_real(ncid, varid, localStart, localCount, localStride, localMap, values) 1100 else if(present(stride)) then 1101 nf90_put_var_6D_FourByteReal = & 1102 nf_put_vars_real(ncid, varid, localStart, localCount, localStride, values) 1103 else 1104 nf90_put_var_6D_FourByteReal = & 1105 nf_put_vara_real(ncid, varid, localStart, localCount, values) 1106 end if 1107 end function nf90_put_var_6D_FourByteReal 1108 1109 1110 function nf90_put_var_7D_FourByteReal(ncid, varid, values, start, count, stride, map) 1111 integer, intent( in) :: ncid, varid 1112 real (kind = FourByteReal), dimension(:, :, :, :, :, :, :), & 1113 intent( in) :: values 1114 integer, dimension(:), optional, intent( in) :: start, count, stride, map 1115 integer :: nf90_put_var_7D_FourByteReal 1116 1117 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 1118 integer :: numDims, counter 1119 1120 ! Set local arguments to default values 1121 numDims = size(shape(values)) 1122 localStart (: ) = 1 1123 localCount (:numDims ) = shape(values) 1124 localCount (numDims+1:) = 1 1125 localStride(: ) = 1 1126 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 1127 1128 if(present(start)) localStart (:size(start) ) = start(:) 1129 if(present(count)) localCount (:size(count) ) = count(:) 1130 if(present(stride)) localStride(:size(stride)) = stride(:) 1131 if(present(map)) then 1132 localMap (:size(map)) = map(:) 1133 nf90_put_var_7D_FourByteReal = & 1134 nf_put_varm_real(ncid, varid, localStart, localCount, localStride, localMap, values) 1135 else if(present(stride)) then 1136 nf90_put_var_7D_FourByteReal = & 1137 nf_put_vars_real(ncid, varid, localStart, localCount, localStride, values) 1138 else 1139 nf90_put_var_7D_FourByteReal = & 1140 nf_put_vara_real(ncid, varid, localStart, localCount, values) 1141 end if 1142 end function nf90_put_var_7D_FourByteReal 1143 1144 1145 function nf90_put_var_1D_EightByteReal(ncid, varid, values, start, count, stride, map) 1146 integer, intent( in) :: ncid, varid 1147 real (kind = EightByteReal), dimension(:), & 1148 intent( in) :: values 1149 integer, dimension(:), optional, intent( in) :: start, count, stride, map 1150 integer :: nf90_put_var_1D_EightByteReal 1151 1152 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 1153 integer :: numDims, counter 1154 1155 ! Set local arguments to default values 1156 numDims = size(shape(values)) 1157 localStart (: ) = 1 1158 localCount (:numDims ) = shape(values) 1159 localCount (numDims+1:) = 1 1160 localStride(: ) = 1 1161 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 1162 1163 if(present(start)) localStart (:size(start) ) = start(:) 1164 if(present(count)) localCount (:size(count) ) = count(:) 1165 if(present(stride)) localStride(:size(stride)) = stride(:) 1166 if(present(map)) then 1167 localMap (:size(map)) = map(:) 1168 nf90_put_var_1D_EightByteReal = & 1169 nf_put_varm_double(ncid, varid, localStart, localCount, localStride, localMap, values) 1170 else if(present(stride)) then 1171 nf90_put_var_1D_EightByteReal = & 1172 nf_put_vars_double(ncid, varid, localStart, localCount, localStride, values) 1173 else 1174 nf90_put_var_1D_EightByteReal = & 1175 nf_put_vara_double(ncid, varid, localStart, localCount, values) 1176 end if 1177 end function nf90_put_var_1D_EightByteReal 1178 1179 1180 function nf90_put_var_2D_EightByteReal(ncid, varid, values, start, count, stride, map) 1181 integer, intent( in) :: ncid, varid 1182 real (kind = EightByteReal), dimension(:, :), & 1183 intent( in) :: values 1184 integer, dimension(:), optional, intent( in) :: start, count, stride, map 1185 integer :: nf90_put_var_2D_EightByteReal 1186 1187 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 1188 integer :: numDims, counter 1189 1190 ! Set local arguments to default values 1191 numDims = size(shape(values)) 1192 localStart (: ) = 1 1193 localCount (:numDims ) = shape(values) 1194 localCount (numDims+1:) = 1 1195 localStride(: ) = 1 1196 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 1197 1198 if(present(start)) localStart (:size(start) ) = start(:) 1199 if(present(count)) localCount (:size(count) ) = count(:) 1200 if(present(stride)) localStride(:size(stride)) = stride(:) 1201 if(present(map)) then 1202 localMap (:size(map)) = map(:) 1203 nf90_put_var_2D_EightByteReal = & 1204 nf_put_varm_double(ncid, varid, localStart, localCount, localStride, localMap, values) 1205 else if(present(stride)) then 1206 nf90_put_var_2D_EightByteReal = & 1207 nf_put_vars_double(ncid, varid, localStart, localCount, localStride, values) 1208 else 1209 nf90_put_var_2D_EightByteReal = & 1210 nf_put_vara_double(ncid, varid, localStart, localCount, values) 1211 end if 1212 end function nf90_put_var_2D_EightByteReal 1213 1214 1215 function nf90_put_var_3D_EightByteReal(ncid, varid, values, start, count, stride, map) 1216 integer, intent( in) :: ncid, varid 1217 real (kind = EightByteReal), dimension(:, :, :), & 1218 intent( in) :: values 1219 integer, dimension(:), optional, intent( in) :: start, count, stride, map 1220 integer :: nf90_put_var_3D_EightByteReal 1221 1222 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 1223 integer :: numDims, counter 1224 1225 ! Set local arguments to default values 1226 numDims = size(shape(values)) 1227 localStart (: ) = 1 1228 localCount (:numDims ) = shape(values) 1229 localCount (numDims+1:) = 1 1230 localStride(: ) = 1 1231 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 1232 1233 if(present(start)) localStart (:size(start) ) = start(:) 1234 if(present(count)) localCount (:size(count) ) = count(:) 1235 if(present(stride)) localStride(:size(stride)) = stride(:) 1236 if(present(map)) then 1237 localMap (:size(map)) = map(:) 1238 nf90_put_var_3D_EightByteReal = & 1239 nf_put_varm_double(ncid, varid, localStart, localCount, localStride, localMap, values) 1240 else if(present(stride)) then 1241 nf90_put_var_3D_EightByteReal = & 1242 nf_put_vars_double(ncid, varid, localStart, localCount, localStride, values) 1243 else 1244 nf90_put_var_3D_EightByteReal = & 1245 nf_put_vara_double(ncid, varid, localStart, localCount, values) 1246 end if 1247 end function nf90_put_var_3D_EightByteReal 1248 1249 1250 function nf90_put_var_4D_EightByteReal(ncid, varid, values, start, count, stride, map) 1251 integer, intent( in) :: ncid, varid 1252 real (kind = EightByteReal), dimension(:, :, :, :), & 1253 intent( in) :: values 1254 integer, dimension(:), optional, intent( in) :: start, count, stride, map 1255 integer :: nf90_put_var_4D_EightByteReal 1256 1257 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 1258 integer :: numDims, counter 1259 1260 ! Set local arguments to default values 1261 numDims = size(shape(values)) 1262 localStart (: ) = 1 1263 localCount (:numDims ) = shape(values) 1264 localCount (numDims+1:) = 1 1265 localStride(: ) = 1 1266 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 1267 1268 if(present(start)) localStart (:size(start) ) = start(:) 1269 if(present(count)) localCount (:size(count) ) = count(:) 1270 if(present(stride)) localStride(:size(stride)) = stride(:) 1271 if(present(map)) then 1272 localMap (:size(map)) = map(:) 1273 nf90_put_var_4D_EightByteReal = & 1274 nf_put_varm_double(ncid, varid, localStart, localCount, localStride, localMap, values) 1275 else if(present(stride)) then 1276 nf90_put_var_4D_EightByteReal = & 1277 nf_put_vars_double(ncid, varid, localStart, localCount, localStride, values) 1278 else 1279 nf90_put_var_4D_EightByteReal = & 1280 nf_put_vara_double(ncid, varid, localStart, localCount, values) 1281 end if 1282 end function nf90_put_var_4D_EightByteReal 1283 1284 1285 function nf90_put_var_5D_EightByteReal(ncid, varid, values, start, count, stride, map) 1286 integer, intent( in) :: ncid, varid 1287 real (kind = EightByteReal), dimension(:, :, :, :, :), & 1288 intent( in) :: values 1289 integer, dimension(:), optional, intent( in) :: start, count, stride, map 1290 integer :: nf90_put_var_5D_EightByteReal 1291 1292 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 1293 integer :: numDims, counter 1294 1295 ! Set local arguments to default values 1296 numDims = size(shape(values)) 1297 localStart (: ) = 1 1298 localCount (:numDims ) = shape(values) 1299 localCount (numDims+1:) = 1 1300 localStride(: ) = 1 1301 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 1302 1303 if(present(start)) localStart (:size(start) ) = start(:) 1304 if(present(count)) localCount (:size(count) ) = count(:) 1305 if(present(stride)) localStride(:size(stride)) = stride(:) 1306 if(present(map)) then 1307 localMap (:size(map)) = map(:) 1308 nf90_put_var_5D_EightByteReal = & 1309 nf_put_varm_double(ncid, varid, localStart, localCount, localStride, localMap, values) 1310 else if(present(stride)) then 1311 nf90_put_var_5D_EightByteReal = & 1312 nf_put_vars_double(ncid, varid, localStart, localCount, localStride, values) 1313 else 1314 nf90_put_var_5D_EightByteReal = & 1315 nf_put_vara_double(ncid, varid, localStart, localCount, values) 1316 end if 1317 end function nf90_put_var_5D_EightByteReal 1318 1319 1320 function nf90_put_var_6D_EightByteReal(ncid, varid, values, start, count, stride, map) 1321 integer, intent( in) :: ncid, varid 1322 real (kind = EightByteReal), dimension(:, :, :, :, :, :), & 1323 intent( in) :: values 1324 integer, dimension(:), optional, intent( in) :: start, count, stride, map 1325 integer :: nf90_put_var_6D_EightByteReal 1326 1327 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 1328 integer :: numDims, counter 1329 1330 ! Set local arguments to default values 1331 numDims = size(shape(values)) 1332 localStart (: ) = 1 1333 localCount (:numDims ) = shape(values) 1334 localCount (numDims+1:) = 1 1335 localStride(: ) = 1 1336 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 1337 1338 if(present(start)) localStart (:size(start) ) = start(:) 1339 if(present(count)) localCount (:size(count) ) = count(:) 1340 if(present(stride)) localStride(:size(stride)) = stride(:) 1341 if(present(map)) then 1342 localMap (:size(map)) = map(:) 1343 nf90_put_var_6D_EightByteReal = & 1344 nf_put_varm_double(ncid, varid, localStart, localCount, localStride, localMap, values) 1345 else if(present(stride)) then 1346 nf90_put_var_6D_EightByteReal = & 1347 nf_put_vars_double(ncid, varid, localStart, localCount, localStride, values) 1348 else 1349 nf90_put_var_6D_EightByteReal = & 1350 nf_put_vara_double(ncid, varid, localStart, localCount, values) 1351 end if 1352 end function nf90_put_var_6D_EightByteReal 1353 1354 1355 function nf90_put_var_7D_EightByteReal(ncid, varid, values, start, count, stride, map) 1356 integer, intent( in) :: ncid, varid 1357 real (kind = EightByteReal), dimension(:, :, :, :, :, :, :), & 1358 intent( in) :: values 1359 integer, dimension(:), optional, intent( in) :: start, count, stride, map 1360 integer :: nf90_put_var_7D_EightByteReal 1361 1362 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 1363 integer :: numDims, counter 1364 1365 ! Set local arguments to default values 1366 numDims = size(shape(values)) 1367 localStart (: ) = 1 1368 localCount (:numDims ) = shape(values) 1369 localCount (numDims+1:) = 1 1370 localStride(: ) = 1 1371 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 1372 1373 if(present(start)) localStart (:size(start) ) = start(:) 1374 if(present(count)) localCount (:size(count) ) = count(:) 1375 if(present(stride)) localStride(:size(stride)) = stride(:) 1376 if(present(map)) then 1377 localMap (:size(map)) = map(:) 1378 nf90_put_var_7D_EightByteReal = & 1379 nf_put_varm_double(ncid, varid, localStart, localCount, localStride, localMap, values) 1380 else if(present(stride)) then 1381 nf90_put_var_7D_EightByteReal = & 1382 nf_put_vars_double(ncid, varid, localStart, localCount, localStride, values) 1383 else 1384 nf90_put_var_7D_EightByteReal = & 1385 nf_put_vara_double(ncid, varid, localStart, localCount, values) 1386 end if 1387 end function nf90_put_var_7D_EightByteReal 1388 1389 1390 function nf90_get_var_1D_OneByteInt(ncid, varid, values, start, count, stride, map) 1391 integer, intent( in) :: ncid, varid 1392 integer (kind = OneByteInt), dimension(:), & 1393 intent(out) :: values 1394 integer, dimension(:), optional, intent( in) :: start, count, stride, map 1395 integer :: nf90_get_var_1D_OneByteInt 1396 1397 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 1398 integer :: numDims, counter 1399 1400 ! Set local arguments to default values 1401 numDims = size(shape(values)) 1402 localStart (: ) = 1 1403 localCount (:numDims ) = shape(values) 1404 localCount (numDims+1:) = 1 1405 localStride(: ) = 1 1406 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 1407 1408 if(present(start)) localStart (:size(start) ) = start(:) 1409 if(present(count)) localCount (:size(count) ) = count(:) 1410 if(present(stride)) localStride(:size(stride)) = stride(:) 1411 if(present(map)) then 1412 localMap (:size(map)) = map(:) 1413 nf90_get_var_1D_OneByteInt = & 1414 nf_get_varm_int1(ncid, varid, localStart, localCount, localStride, localMap, values) 1415 else if(present(stride)) then 1416 nf90_get_var_1D_OneByteInt = & 1417 nf_get_vars_int1(ncid, varid, localStart, localCount, localStride, values) 1418 else 1419 nf90_get_var_1D_OneByteInt = & 1420 nf_get_vara_int1(ncid, varid, localStart, localCount, values) 1421 end if 1422 end function nf90_get_var_1D_OneByteInt 1423 1424 1425 function nf90_get_var_2D_OneByteInt(ncid, varid, values, start, count, stride, map) 1426 integer, intent( in) :: ncid, varid 1427 integer (kind = OneByteInt), dimension(:, :), & 1428 intent(out) :: values 1429 integer, dimension(:), optional, intent( in) :: start, count, stride, map 1430 integer :: nf90_get_var_2D_OneByteInt 1431 1432 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 1433 integer :: numDims, counter 1434 1435 ! Set local arguments to default values 1436 numDims = size(shape(values)) 1437 localStart (: ) = 1 1438 localCount (:numDims ) = shape(values) 1439 localCount (numDims+1:) = 1 1440 localStride(: ) = 1 1441 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 1442 1443 if(present(start)) localStart (:size(start) ) = start(:) 1444 if(present(count)) localCount (:size(count) ) = count(:) 1445 if(present(stride)) localStride(:size(stride)) = stride(:) 1446 if(present(map)) then 1447 localMap (:size(map)) = map(:) 1448 nf90_get_var_2D_OneByteInt = & 1449 nf_get_varm_int1(ncid, varid, localStart, localCount, localStride, localMap, values) 1450 else if(present(stride)) then 1451 nf90_get_var_2D_OneByteInt = & 1452 nf_get_vars_int1(ncid, varid, localStart, localCount, localStride, values) 1453 else 1454 nf90_get_var_2D_OneByteInt = & 1455 nf_get_vara_int1(ncid, varid, localStart, localCount, values) 1456 end if 1457 end function nf90_get_var_2D_OneByteInt 1458 1459 1460 function nf90_get_var_3D_OneByteInt(ncid, varid, values, start, count, stride, map) 1461 integer, intent( in) :: ncid, varid 1462 integer (kind = OneByteInt), dimension(:, :, :), & 1463 intent(out) :: values 1464 integer, dimension(:), optional, intent( in) :: start, count, stride, map 1465 integer :: nf90_get_var_3D_OneByteInt 1466 1467 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 1468 integer :: numDims, counter 1469 1470 ! Set local arguments to default values 1471 numDims = size(shape(values)) 1472 localStart (: ) = 1 1473 localCount (:numDims ) = shape(values) 1474 localCount (numDims+1:) = 1 1475 localStride(: ) = 1 1476 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 1477 1478 if(present(start)) localStart (:size(start) ) = start(:) 1479 if(present(count)) localCount (:size(count) ) = count(:) 1480 if(present(stride)) localStride(:size(stride)) = stride(:) 1481 if(present(map)) then 1482 localMap (:size(map)) = map(:) 1483 nf90_get_var_3D_OneByteInt = & 1484 nf_get_varm_int1(ncid, varid, localStart, localCount, localStride, localMap, values) 1485 else if(present(stride)) then 1486 nf90_get_var_3D_OneByteInt = & 1487 nf_get_vars_int1(ncid, varid, localStart, localCount, localStride, values) 1488 else 1489 nf90_get_var_3D_OneByteInt = & 1490 nf_get_vara_int1(ncid, varid, localStart, localCount, values) 1491 end if 1492 end function nf90_get_var_3D_OneByteInt 1493 1494 1495 function nf90_get_var_4D_OneByteInt(ncid, varid, values, start, count, stride, map) 1496 integer, intent( in) :: ncid, varid 1497 integer (kind = OneByteInt), dimension(:, :, :, :), & 1498 intent(out) :: values 1499 integer, dimension(:), optional, intent( in) :: start, count, stride, map 1500 integer :: nf90_get_var_4D_OneByteInt 1501 1502 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 1503 integer :: numDims, counter 1504 1505 ! Set local arguments to default values 1506 numDims = size(shape(values)) 1507 localStart (: ) = 1 1508 localCount (:numDims ) = shape(values) 1509 localCount (numDims+1:) = 1 1510 localStride(: ) = 1 1511 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 1512 1513 if(present(start)) localStart (:size(start) ) = start(:) 1514 if(present(count)) localCount (:size(count) ) = count(:) 1515 if(present(stride)) localStride(:size(stride)) = stride(:) 1516 if(present(map)) then 1517 localMap (:size(map)) = map(:) 1518 nf90_get_var_4D_OneByteInt = & 1519 nf_get_varm_int1(ncid, varid, localStart, localCount, localStride, localMap, values) 1520 else if(present(stride)) then 1521 nf90_get_var_4D_OneByteInt = & 1522 nf_get_vars_int1(ncid, varid, localStart, localCount, localStride, values) 1523 else 1524 nf90_get_var_4D_OneByteInt = & 1525 nf_get_vara_int1(ncid, varid, localStart, localCount, values) 1526 end if 1527 end function nf90_get_var_4D_OneByteInt 1528 1529 1530 function nf90_get_var_5D_OneByteInt(ncid, varid, values, start, count, stride, map) 1531 integer, intent( in) :: ncid, varid 1532 integer (kind = OneByteInt), dimension(:, :, :, :, :), & 1533 intent(out) :: values 1534 integer, dimension(:), optional, intent( in) :: start, count, stride, map 1535 integer :: nf90_get_var_5D_OneByteInt 1536 1537 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 1538 integer :: numDims, counter 1539 1540 ! Set local arguments to default values 1541 numDims = size(shape(values)) 1542 localStart (: ) = 1 1543 localCount (:numDims ) = shape(values) 1544 localCount (numDims+1:) = 1 1545 localStride(: ) = 1 1546 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 1547 1548 if(present(start)) localStart (:size(start) ) = start(:) 1549 if(present(count)) localCount (:size(count) ) = count(:) 1550 if(present(stride)) localStride(:size(stride)) = stride(:) 1551 if(present(map)) then 1552 localMap (:size(map)) = map(:) 1553 nf90_get_var_5D_OneByteInt = & 1554 nf_get_varm_int1(ncid, varid, localStart, localCount, localStride, localMap, values) 1555 else if(present(stride)) then 1556 nf90_get_var_5D_OneByteInt = & 1557 nf_get_vars_int1(ncid, varid, localStart, localCount, localStride, values) 1558 else 1559 nf90_get_var_5D_OneByteInt = & 1560 nf_get_vara_int1(ncid, varid, localStart, localCount, values) 1561 end if 1562 end function nf90_get_var_5D_OneByteInt 1563 1564 1565 function nf90_get_var_6D_OneByteInt(ncid, varid, values, start, count, stride, map) 1566 integer, intent( in) :: ncid, varid 1567 integer (kind = OneByteInt), dimension(:, :, :, :, :, :), & 1568 intent(out) :: values 1569 integer, dimension(:), optional, intent( in) :: start, count, stride, map 1570 integer :: nf90_get_var_6D_OneByteInt 1571 1572 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 1573 integer :: numDims, counter 1574 1575 ! Set local arguments to default values 1576 numDims = size(shape(values)) 1577 localStart (: ) = 1 1578 localCount (:numDims ) = shape(values) 1579 localCount (numDims+1:) = 1 1580 localStride(: ) = 1 1581 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 1582 1583 if(present(start)) localStart (:size(start) ) = start(:) 1584 if(present(count)) localCount (:size(count) ) = count(:) 1585 if(present(stride)) localStride(:size(stride)) = stride(:) 1586 if(present(map)) then 1587 localMap (:size(map)) = map(:) 1588 nf90_get_var_6D_OneByteInt = & 1589 nf_get_varm_int1(ncid, varid, localStart, localCount, localStride, localMap, values) 1590 else if(present(stride)) then 1591 nf90_get_var_6D_OneByteInt = & 1592 nf_get_vars_int1(ncid, varid, localStart, localCount, localStride, values) 1593 else 1594 nf90_get_var_6D_OneByteInt = & 1595 nf_get_vara_int1(ncid, varid, localStart, localCount, values) 1596 end if 1597 end function nf90_get_var_6D_OneByteInt 1598 1599 1600 function nf90_get_var_7D_OneByteInt(ncid, varid, values, start, count, stride, map) 1601 integer, intent( in) :: ncid, varid 1602 integer (kind = OneByteInt), dimension(:, :, :, :, :, :, :), & 1603 intent(out) :: values 1604 integer, dimension(:), optional, intent( in) :: start, count, stride, map 1605 integer :: nf90_get_var_7D_OneByteInt 1606 1607 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 1608 integer :: numDims, counter 1609 1610 ! Set local arguments to default values 1611 numDims = size(shape(values)) 1612 localStart (: ) = 1 1613 localCount (:numDims ) = shape(values) 1614 localCount (numDims+1:) = 1 1615 localStride(: ) = 1 1616 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 1617 1618 if(present(start)) localStart (:size(start) ) = start(:) 1619 if(present(count)) localCount (:size(count) ) = count(:) 1620 if(present(stride)) localStride(:size(stride)) = stride(:) 1621 if(present(map)) then 1622 localMap (:size(map)) = map(:) 1623 nf90_get_var_7D_OneByteInt = & 1624 nf_get_varm_int1(ncid, varid, localStart, localCount, localStride, localMap, values) 1625 else if(present(stride)) then 1626 nf90_get_var_7D_OneByteInt = & 1627 nf_get_vars_int1(ncid, varid, localStart, localCount, localStride, values) 1628 else 1629 nf90_get_var_7D_OneByteInt = & 1630 nf_get_vara_int1(ncid, varid, localStart, localCount, values) 1631 end if 1632 end function nf90_get_var_7D_OneByteInt 1633 1634 1635 function nf90_get_var_1D_TwoByteInt(ncid, varid, values, start, count, stride, map) 1636 integer, intent( in) :: ncid, varid 1637 integer (kind = TwoByteInt), dimension(:), & 1638 intent(out) :: values 1639 integer, dimension(:), optional, intent( in) :: start, count, stride, map 1640 integer :: nf90_get_var_1D_TwoByteInt 1641 1642 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 1643 integer :: numDims, counter 1644 1645 ! Set local arguments to default values 1646 numDims = size(shape(values)) 1647 localStart (: ) = 1 1648 localCount (:numDims ) = shape(values) 1649 localCount (numDims+1:) = 1 1650 localStride(: ) = 1 1651 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 1652 1653 if(present(start)) localStart (:size(start) ) = start(:) 1654 if(present(count)) localCount (:size(count) ) = count(:) 1655 if(present(stride)) localStride(:size(stride)) = stride(:) 1656 if(present(map)) then 1657 localMap (:size(map)) = map(:) 1658 nf90_get_var_1D_TwoByteInt = & 1659 nf_get_varm_int2(ncid, varid, localStart, localCount, localStride, localMap, values) 1660 else if(present(stride)) then 1661 nf90_get_var_1D_TwoByteInt = & 1662 nf_get_vars_int2(ncid, varid, localStart, localCount, localStride, values) 1663 else 1664 nf90_get_var_1D_TwoByteInt = & 1665 nf_get_vara_int2(ncid, varid, localStart, localCount, values) 1666 end if 1667 end function nf90_get_var_1D_TwoByteInt 1668 1669 1670 function nf90_get_var_2D_TwoByteInt(ncid, varid, values, start, count, stride, map) 1671 integer, intent( in) :: ncid, varid 1672 integer (kind = TwoByteInt), dimension(:, :), & 1673 intent(out) :: values 1674 integer, dimension(:), optional, intent( in) :: start, count, stride, map 1675 integer :: nf90_get_var_2D_TwoByteInt 1676 1677 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 1678 integer :: numDims, counter 1679 1680 ! Set local arguments to default values 1681 numDims = size(shape(values)) 1682 localStart (: ) = 1 1683 localCount (:numDims ) = shape(values) 1684 localCount (numDims+1:) = 1 1685 localStride(: ) = 1 1686 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 1687 1688 if(present(start)) localStart (:size(start) ) = start(:) 1689 if(present(count)) localCount (:size(count) ) = count(:) 1690 if(present(stride)) localStride(:size(stride)) = stride(:) 1691 if(present(map)) then 1692 localMap (:size(map)) = map(:) 1693 nf90_get_var_2D_TwoByteInt = & 1694 nf_get_varm_int2(ncid, varid, localStart, localCount, localStride, localMap, values) 1695 else if(present(stride)) then 1696 nf90_get_var_2D_TwoByteInt = & 1697 nf_get_vars_int2(ncid, varid, localStart, localCount, localStride, values) 1698 else 1699 nf90_get_var_2D_TwoByteInt = & 1700 nf_get_vara_int2(ncid, varid, localStart, localCount, values) 1701 end if 1702 end function nf90_get_var_2D_TwoByteInt 1703 1704 1705 function nf90_get_var_3D_TwoByteInt(ncid, varid, values, start, count, stride, map) 1706 integer, intent( in) :: ncid, varid 1707 integer (kind = TwoByteInt), dimension(:, :, :), & 1708 intent(out) :: values 1709 integer, dimension(:), optional, intent( in) :: start, count, stride, map 1710 integer :: nf90_get_var_3D_TwoByteInt 1711 1712 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 1713 integer :: numDims, counter 1714 1715 ! Set local arguments to default values 1716 numDims = size(shape(values)) 1717 localStart (: ) = 1 1718 localCount (:numDims ) = shape(values) 1719 localCount (numDims+1:) = 1 1720 localStride(: ) = 1 1721 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 1722 1723 if(present(start)) localStart (:size(start) ) = start(:) 1724 if(present(count)) localCount (:size(count) ) = count(:) 1725 if(present(stride)) localStride(:size(stride)) = stride(:) 1726 if(present(map)) then 1727 localMap (:size(map)) = map(:) 1728 nf90_get_var_3D_TwoByteInt = & 1729 nf_get_varm_int2(ncid, varid, localStart, localCount, localStride, localMap, values) 1730 else if(present(stride)) then 1731 nf90_get_var_3D_TwoByteInt = & 1732 nf_get_vars_int2(ncid, varid, localStart, localCount, localStride, values) 1733 else 1734 nf90_get_var_3D_TwoByteInt = & 1735 nf_get_vara_int2(ncid, varid, localStart, localCount, values) 1736 end if 1737 end function nf90_get_var_3D_TwoByteInt 1738 1739 1740 function nf90_get_var_4D_TwoByteInt(ncid, varid, values, start, count, stride, map) 1741 integer, intent( in) :: ncid, varid 1742 integer (kind = TwoByteInt), dimension(:, :, :, :), & 1743 intent(out) :: values 1744 integer, dimension(:), optional, intent( in) :: start, count, stride, map 1745 integer :: nf90_get_var_4D_TwoByteInt 1746 1747 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 1748 integer :: numDims, counter 1749 1750 ! Set local arguments to default values 1751 numDims = size(shape(values)) 1752 localStart (: ) = 1 1753 localCount (:numDims ) = shape(values) 1754 localCount (numDims+1:) = 1 1755 localStride(: ) = 1 1756 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 1757 1758 if(present(start)) localStart (:size(start) ) = start(:) 1759 if(present(count)) localCount (:size(count) ) = count(:) 1760 if(present(stride)) localStride(:size(stride)) = stride(:) 1761 if(present(map)) then 1762 localMap (:size(map)) = map(:) 1763 nf90_get_var_4D_TwoByteInt = & 1764 nf_get_varm_int2(ncid, varid, localStart, localCount, localStride, localMap, values) 1765 else if(present(stride)) then 1766 nf90_get_var_4D_TwoByteInt = & 1767 nf_get_vars_int2(ncid, varid, localStart, localCount, localStride, values) 1768 else 1769 nf90_get_var_4D_TwoByteInt = & 1770 nf_get_vara_int2(ncid, varid, localStart, localCount, values) 1771 end if 1772 end function nf90_get_var_4D_TwoByteInt 1773 1774 1775 function nf90_get_var_5D_TwoByteInt(ncid, varid, values, start, count, stride, map) 1776 integer, intent( in) :: ncid, varid 1777 integer (kind = TwoByteInt), dimension(:, :, :, :, :), & 1778 intent(out) :: values 1779 integer, dimension(:), optional, intent( in) :: start, count, stride, map 1780 integer :: nf90_get_var_5D_TwoByteInt 1781 1782 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 1783 integer :: numDims, counter 1784 1785 ! Set local arguments to default values 1786 numDims = size(shape(values)) 1787 localStart (: ) = 1 1788 localCount (:numDims ) = shape(values) 1789 localCount (numDims+1:) = 1 1790 localStride(: ) = 1 1791 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 1792 1793 if(present(start)) localStart (:size(start) ) = start(:) 1794 if(present(count)) localCount (:size(count) ) = count(:) 1795 if(present(stride)) localStride(:size(stride)) = stride(:) 1796 if(present(map)) then 1797 localMap (:size(map)) = map(:) 1798 nf90_get_var_5D_TwoByteInt = & 1799 nf_get_varm_int2(ncid, varid, localStart, localCount, localStride, localMap, values) 1800 else if(present(stride)) then 1801 nf90_get_var_5D_TwoByteInt = & 1802 nf_get_vars_int2(ncid, varid, localStart, localCount, localStride, values) 1803 else 1804 nf90_get_var_5D_TwoByteInt = & 1805 nf_get_vara_int2(ncid, varid, localStart, localCount, values) 1806 end if 1807 end function nf90_get_var_5D_TwoByteInt 1808 1809 1810 function nf90_get_var_6D_TwoByteInt(ncid, varid, values, start, count, stride, map) 1811 integer, intent( in) :: ncid, varid 1812 integer (kind = TwoByteInt), dimension(:, :, :, :, :, :), & 1813 intent(out) :: values 1814 integer, dimension(:), optional, intent( in) :: start, count, stride, map 1815 integer :: nf90_get_var_6D_TwoByteInt 1816 1817 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 1818 integer :: numDims, counter 1819 1820 ! Set local arguments to default values 1821 numDims = size(shape(values)) 1822 localStart (: ) = 1 1823 localCount (:numDims ) = shape(values) 1824 localCount (numDims+1:) = 1 1825 localStride(: ) = 1 1826 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 1827 1828 if(present(start)) localStart (:size(start) ) = start(:) 1829 if(present(count)) localCount (:size(count) ) = count(:) 1830 if(present(stride)) localStride(:size(stride)) = stride(:) 1831 if(present(map)) then 1832 localMap (:size(map)) = map(:) 1833 nf90_get_var_6D_TwoByteInt = & 1834 nf_get_varm_int2(ncid, varid, localStart, localCount, localStride, localMap, values) 1835 else if(present(stride)) then 1836 nf90_get_var_6D_TwoByteInt = & 1837 nf_get_vars_int2(ncid, varid, localStart, localCount, localStride, values) 1838 else 1839 nf90_get_var_6D_TwoByteInt = & 1840 nf_get_vara_int2(ncid, varid, localStart, localCount, values) 1841 end if 1842 end function nf90_get_var_6D_TwoByteInt 1843 1844 1845 function nf90_get_var_7D_TwoByteInt(ncid, varid, values, start, count, stride, map) 1846 integer, intent( in) :: ncid, varid 1847 integer (kind = TwoByteInt), dimension(:, :, :, :, :, :, :), & 1848 intent(out) :: values 1849 integer, dimension(:), optional, intent( in) :: start, count, stride, map 1850 integer :: nf90_get_var_7D_TwoByteInt 1851 1852 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 1853 integer :: numDims, counter 1854 1855 ! Set local arguments to default values 1856 numDims = size(shape(values)) 1857 localStart (: ) = 1 1858 localCount (:numDims ) = shape(values) 1859 localCount (numDims+1:) = 1 1860 localStride(: ) = 1 1861 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 1862 1863 if(present(start)) localStart (:size(start) ) = start(:) 1864 if(present(count)) localCount (:size(count) ) = count(:) 1865 if(present(stride)) localStride(:size(stride)) = stride(:) 1866 if(present(map)) then 1867 localMap (:size(map)) = map(:) 1868 nf90_get_var_7D_TwoByteInt = & 1869 nf_get_varm_int2(ncid, varid, localStart, localCount, localStride, localMap, values) 1870 else if(present(stride)) then 1871 nf90_get_var_7D_TwoByteInt = & 1872 nf_get_vars_int2(ncid, varid, localStart, localCount, localStride, values) 1873 else 1874 nf90_get_var_7D_TwoByteInt = & 1875 nf_get_vara_int2(ncid, varid, localStart, localCount, values) 1876 end if 1877 end function nf90_get_var_7D_TwoByteInt 1878 1879 1880 function nf90_get_var_1D_FourByteInt(ncid, varid, values, start, count, stride, map) 1881 integer, intent( in) :: ncid, varid 1882 integer (kind = FourByteInt), dimension(:), & 1883 intent(out) :: values 1884 integer, dimension(:), optional, intent( in) :: start, count, stride, map 1885 integer :: nf90_get_var_1D_FourByteInt 1886 1887 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 1888 integer :: numDims, counter 1889 integer, dimension(size(values)) :: defaultIntArray 1890 1891 ! Set local arguments to default values 1892 numDims = size(shape(values)) 1893 localStart (: ) = 1 1894 localCount (:numDims ) = shape(values) 1895 localCount (numDims+1:) = 1 1896 localStride(: ) = 1 1897 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 1898 1899 if(present(start)) localStart (:size(start) ) = start(:) 1900 if(present(count)) localCount (:size(count) ) = count(:) 1901 if(present(stride)) localStride(:size(stride)) = stride(:) 1902 if(present(map)) then 1903 localMap (:size(map)) = map(:) 1904 nf90_get_var_1D_FourByteInt = & 1905 nf_get_varm_int(ncid, varid, localStart, localCount, localStride, localMap, defaultIntArray) 1906 else if(present(stride)) then 1907 nf90_get_var_1D_FourByteInt = & 1908 nf_get_vars_int(ncid, varid, localStart, localCount, localStride, defaultIntArray) 1909 else 1910 nf90_get_var_1D_FourByteInt = & 1911 nf_get_vara_int(ncid, varid, localStart, localCount, defaultIntArray) 1912 end if 1913 values(:) = reshape(defaultIntArray(:), shape(values)) 1914 end function nf90_get_var_1D_FourByteInt 1915 1916 1917 function nf90_get_var_2D_FourByteInt(ncid, varid, values, start, count, stride, map) 1918 integer, intent( in) :: ncid, varid 1919 integer (kind = FourByteInt), dimension(:, :), & 1920 intent(out) :: values 1921 integer, dimension(:), optional, intent( in) :: start, count, stride, map 1922 integer :: nf90_get_var_2D_FourByteInt 1923 1924 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 1925 integer :: numDims, counter 1926 integer, dimension(size(values)) :: defaultIntArray 1927 1928 ! Set local arguments to default values 1929 numDims = size(shape(values)) 1930 localStart (: ) = 1 1931 localCount (:numDims ) = shape(values) 1932 localCount (numDims+1:) = 1 1933 localStride(: ) = 1 1934 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 1935 1936 if(present(start)) localStart (:size(start) ) = start(:) 1937 if(present(count)) localCount (:size(count) ) = count(:) 1938 if(present(stride)) localStride(:size(stride)) = stride(:) 1939 if(present(map)) then 1940 localMap (:size(map)) = map(:) 1941 nf90_get_var_2D_FourByteInt = & 1942 nf_get_varm_int(ncid, varid, localStart, localCount, localStride, localMap, defaultIntArray) 1943 else if(present(stride)) then 1944 nf90_get_var_2D_FourByteInt = & 1945 nf_get_vars_int(ncid, varid, localStart, localCount, localStride, defaultIntArray) 1946 else 1947 nf90_get_var_2D_FourByteInt = & 1948 nf_get_vara_int(ncid, varid, localStart, localCount, defaultIntArray) 1949 end if 1950 values(:, :) = reshape(defaultIntArray(:), shape(values)) 1951 end function nf90_get_var_2D_FourByteInt 1952 1953 1954 function nf90_get_var_3D_FourByteInt(ncid, varid, values, start, count, stride, map) 1955 integer, intent( in) :: ncid, varid 1956 integer (kind = FourByteInt), dimension(:, :, :), & 1957 intent(out) :: values 1958 integer, dimension(:), optional, intent( in) :: start, count, stride, map 1959 integer :: nf90_get_var_3D_FourByteInt 1960 1961 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 1962 integer :: numDims, counter 1963 integer, dimension(size(values)) :: defaultIntArray 1964 1965 ! Set local arguments to default values 1966 numDims = size(shape(values)) 1967 localStart (: ) = 1 1968 localCount (:numDims ) = shape(values) 1969 localCount (numDims+1:) = 1 1970 localStride(: ) = 1 1971 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 1972 1973 if(present(start)) localStart (:size(start) ) = start(:) 1974 if(present(count)) localCount (:size(count) ) = count(:) 1975 if(present(stride)) localStride(:size(stride)) = stride(:) 1976 if(present(map)) then 1977 localMap (:size(map)) = map(:) 1978 nf90_get_var_3D_FourByteInt = & 1979 nf_get_varm_int(ncid, varid, localStart, localCount, localStride, localMap, defaultIntArray) 1980 else if(present(stride)) then 1981 nf90_get_var_3D_FourByteInt = & 1982 nf_get_vars_int(ncid, varid, localStart, localCount, localStride, defaultIntArray) 1983 else 1984 nf90_get_var_3D_FourByteInt = & 1985 nf_get_vara_int(ncid, varid, localStart, localCount, defaultIntArray) 1986 end if 1987 values(:, :, :) = reshape(defaultIntArray(:), shape(values)) 1988 end function nf90_get_var_3D_FourByteInt 1989 1990 1991 function nf90_get_var_4D_FourByteInt(ncid, varid, values, start, count, stride, map) 1992 integer, intent( in) :: ncid, varid 1993 integer (kind = FourByteInt), dimension(:, :, :, :), & 1994 intent(out) :: values 1995 integer, dimension(:), optional, intent( in) :: start, count, stride, map 1996 integer :: nf90_get_var_4D_FourByteInt 1997 1998 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 1999 integer :: numDims, counter 2000 integer, dimension(size(values)) :: defaultIntArray 2001 2002 ! Set local arguments to default values 2003 numDims = size(shape(values)) 2004 localStart (: ) = 1 2005 localCount (:numDims ) = shape(values) 2006 localCount (numDims+1:) = 1 2007 localStride(: ) = 1 2008 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 2009 2010 if(present(start)) localStart (:size(start) ) = start(:) 2011 if(present(count)) localCount (:size(count) ) = count(:) 2012 if(present(stride)) localStride(:size(stride)) = stride(:) 2013 if(present(map)) then 2014 localMap (:size(map)) = map(:) 2015 nf90_get_var_4D_FourByteInt = & 2016 nf_get_varm_int(ncid, varid, localStart, localCount, localStride, localMap, defaultIntArray) 2017 else if(present(stride)) then 2018 nf90_get_var_4D_FourByteInt = & 2019 nf_get_vars_int(ncid, varid, localStart, localCount, localStride, defaultIntArray) 2020 else 2021 nf90_get_var_4D_FourByteInt = & 2022 nf_get_vara_int(ncid, varid, localStart, localCount, defaultIntArray) 2023 end if 2024 values(:, :, :, :) = reshape(defaultIntArray(:), shape(values)) 2025 end function nf90_get_var_4D_FourByteInt 2026 2027 2028 function nf90_get_var_5D_FourByteInt(ncid, varid, values, start, count, stride, map) 2029 integer, intent( in) :: ncid, varid 2030 integer (kind = FourByteInt), dimension(:, :, :, :, :), & 2031 intent(out) :: values 2032 integer, dimension(:), optional, intent( in) :: start, count, stride, map 2033 integer :: nf90_get_var_5D_FourByteInt 2034 2035 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 2036 integer :: numDims, counter 2037 integer, dimension(size(values)) :: defaultIntArray 2038 2039 ! Set local arguments to default values 2040 numDims = size(shape(values)) 2041 localStart (: ) = 1 2042 localCount (:numDims ) = shape(values) 2043 localCount (numDims+1:) = 1 2044 localStride(: ) = 1 2045 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 2046 2047 if(present(start)) localStart (:size(start) ) = start(:) 2048 if(present(count)) localCount (:size(count) ) = count(:) 2049 if(present(stride)) localStride(:size(stride)) = stride(:) 2050 if(present(map)) then 2051 localMap (:size(map)) = map(:) 2052 nf90_get_var_5D_FourByteInt = & 2053 nf_get_varm_int(ncid, varid, localStart, localCount, localStride, localMap, defaultIntArray) 2054 else if(present(stride)) then 2055 nf90_get_var_5D_FourByteInt = & 2056 nf_get_vars_int(ncid, varid, localStart, localCount, localStride, defaultIntArray) 2057 else 2058 nf90_get_var_5D_FourByteInt = & 2059 nf_get_vara_int(ncid, varid, localStart, localCount, defaultIntArray) 2060 end if 2061 values(:, :, :, :, :) = reshape(defaultIntArray(:), shape(values)) 2062 end function nf90_get_var_5D_FourByteInt 2063 2064 2065 function nf90_get_var_6D_FourByteInt(ncid, varid, values, start, count, stride, map) 2066 integer, intent( in) :: ncid, varid 2067 integer (kind = FourByteInt), dimension(:, :, :, :, :, :), & 2068 intent(out) :: values 2069 integer, dimension(:), optional, intent( in) :: start, count, stride, map 2070 integer :: nf90_get_var_6D_FourByteInt 2071 2072 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 2073 integer :: numDims, counter 2074 integer, dimension(size(values)) :: defaultIntArray 2075 2076 ! Set local arguments to default values 2077 numDims = size(shape(values)) 2078 localStart (: ) = 1 2079 localCount (:numDims ) = shape(values) 2080 localCount (numDims+1:) = 1 2081 localStride(: ) = 1 2082 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 2083 2084 if(present(start)) localStart (:size(start) ) = start(:) 2085 if(present(count)) localCount (:size(count) ) = count(:) 2086 if(present(stride)) localStride(:size(stride)) = stride(:) 2087 if(present(map)) then 2088 localMap (:size(map)) = map(:) 2089 nf90_get_var_6D_FourByteInt = & 2090 nf_get_varm_int(ncid, varid, localStart, localCount, localStride, localMap, defaultIntArray) 2091 else if(present(stride)) then 2092 nf90_get_var_6D_FourByteInt = & 2093 nf_get_vars_int(ncid, varid, localStart, localCount, localStride, defaultIntArray) 2094 else 2095 nf90_get_var_6D_FourByteInt = & 2096 nf_get_vara_int(ncid, varid, localStart, localCount, defaultIntArray) 2097 end if 2098 values(:, :, :, :, :, :) = reshape(defaultIntArray(:), shape(values)) 2099 end function nf90_get_var_6D_FourByteInt 2100 2101 2102 function nf90_get_var_7D_FourByteInt(ncid, varid, values, start, count, stride, map) 2103 integer, intent( in) :: ncid, varid 2104 integer (kind = FourByteInt), dimension(:, :, :, :, :, :, :), & 2105 intent(out) :: values 2106 integer, dimension(:), optional, intent( in) :: start, count, stride, map 2107 integer :: nf90_get_var_7D_FourByteInt 2108 2109 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 2110 integer :: numDims, counter 2111 integer, dimension(size(values)) :: defaultIntArray 2112 2113 ! Set local arguments to default values 2114 numDims = size(shape(values)) 2115 localStart (: ) = 1 2116 localCount (:numDims ) = shape(values) 2117 localCount (numDims+1:) = 1 2118 localStride(: ) = 1 2119 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 2120 2121 if(present(start)) localStart (:size(start) ) = start(:) 2122 if(present(count)) localCount (:size(count) ) = count(:) 2123 if(present(stride)) localStride(:size(stride)) = stride(:) 2124 if(present(map)) then 2125 localMap (:size(map)) = map(:) 2126 nf90_get_var_7D_FourByteInt = & 2127 nf_get_varm_int(ncid, varid, localStart, localCount, localStride, localMap, defaultIntArray) 2128 else if(present(stride)) then 2129 nf90_get_var_7D_FourByteInt = & 2130 nf_get_vars_int(ncid, varid, localStart, localCount, localStride, defaultIntArray) 2131 else 2132 nf90_get_var_7D_FourByteInt = & 2133 nf_get_vara_int(ncid, varid, localStart, localCount, defaultIntArray) 2134 end if 2135 values(:, :, :, :, :, :, :) = reshape(defaultIntArray(:), shape(values)) 2136 end function nf90_get_var_7D_FourByteInt 2137 2138 2139 function nf90_get_var_1D_FourByteReal(ncid, varid, values, start, count, stride, map) 2140 integer, intent( in) :: ncid, varid 2141 real (kind = FourByteReal), dimension(:), & 2142 intent(out) :: values 2143 integer, dimension(:), optional, intent( in) :: start, count, stride, map 2144 integer :: nf90_get_var_1D_FourByteReal 2145 2146 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 2147 integer :: numDims, counter 2148 2149 ! Set local arguments to default values 2150 numDims = size(shape(values)) 2151 localStart (: ) = 1 2152 localCount (:numDims ) = shape(values) 2153 localCount (numDims+1:) = 1 2154 localStride(: ) = 1 2155 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 2156 2157 if(present(start)) localStart (:size(start) ) = start(:) 2158 if(present(count)) localCount (:size(count) ) = count(:) 2159 if(present(stride)) localStride(:size(stride)) = stride(:) 2160 if(present(map)) then 2161 localMap (:size(map)) = map(:) 2162 nf90_get_var_1D_FourByteReal = & 2163 nf_get_varm_real(ncid, varid, localStart, localCount, localStride, localMap, values) 2164 else if(present(stride)) then 2165 nf90_get_var_1D_FourByteReal = & 2166 nf_get_vars_real(ncid, varid, localStart, localCount, localStride, values) 2167 else 2168 nf90_get_var_1D_FourByteReal = & 2169 nf_get_vara_real(ncid, varid, localStart, localCount, values) 2170 end if 2171 end function nf90_get_var_1D_FourByteReal 2172 2173 2174 function nf90_get_var_2D_FourByteReal(ncid, varid, values, start, count, stride, map) 2175 integer, intent( in) :: ncid, varid 2176 real (kind = FourByteReal), dimension(:, :), & 2177 intent(out) :: values 2178 integer, dimension(:), optional, intent( in) :: start, count, stride, map 2179 integer :: nf90_get_var_2D_FourByteReal 2180 2181 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 2182 integer :: numDims, counter 2183 2184 ! Set local arguments to default values 2185 numDims = size(shape(values)) 2186 localStart (: ) = 1 2187 localCount (:numDims ) = shape(values) 2188 localCount (numDims+1:) = 1 2189 localStride(: ) = 1 2190 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 2191 2192 if(present(start)) localStart (:size(start) ) = start(:) 2193 if(present(count)) localCount (:size(count) ) = count(:) 2194 if(present(stride)) localStride(:size(stride)) = stride(:) 2195 if(present(map)) then 2196 localMap (:size(map)) = map(:) 2197 nf90_get_var_2D_FourByteReal = & 2198 nf_get_varm_real(ncid, varid, localStart, localCount, localStride, localMap, values) 2199 else if(present(stride)) then 2200 nf90_get_var_2D_FourByteReal = & 2201 nf_get_vars_real(ncid, varid, localStart, localCount, localStride, values) 2202 else 2203 nf90_get_var_2D_FourByteReal = & 2204 nf_get_vara_real(ncid, varid, localStart, localCount, values) 2205 end if 2206 end function nf90_get_var_2D_FourByteReal 2207 2208 2209 function nf90_get_var_3D_FourByteReal(ncid, varid, values, start, count, stride, map) 2210 integer, intent( in) :: ncid, varid 2211 real (kind = FourByteReal), dimension(:, :, :), & 2212 intent(out) :: values 2213 integer, dimension(:), optional, intent( in) :: start, count, stride, map 2214 integer :: nf90_get_var_3D_FourByteReal 2215 2216 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 2217 integer :: numDims, counter 2218 2219 ! Set local arguments to default values 2220 numDims = size(shape(values)) 2221 localStart (: ) = 1 2222 localCount (:numDims ) = shape(values) 2223 localCount (numDims+1:) = 1 2224 localStride(: ) = 1 2225 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 2226 2227 if(present(start)) localStart (:size(start) ) = start(:) 2228 if(present(count)) localCount (:size(count) ) = count(:) 2229 if(present(stride)) localStride(:size(stride)) = stride(:) 2230 if(present(map)) then 2231 localMap (:size(map)) = map(:) 2232 nf90_get_var_3D_FourByteReal = & 2233 nf_get_varm_real(ncid, varid, localStart, localCount, localStride, localMap, values) 2234 else if(present(stride)) then 2235 nf90_get_var_3D_FourByteReal = & 2236 nf_get_vars_real(ncid, varid, localStart, localCount, localStride, values) 2237 else 2238 nf90_get_var_3D_FourByteReal = & 2239 nf_get_vara_real(ncid, varid, localStart, localCount, values) 2240 end if 2241 end function nf90_get_var_3D_FourByteReal 2242 2243 2244 function nf90_get_var_4D_FourByteReal(ncid, varid, values, start, count, stride, map) 2245 integer, intent( in) :: ncid, varid 2246 real (kind = FourByteReal), dimension(:, :, :, :), & 2247 intent(out) :: values 2248 integer, dimension(:), optional, intent( in) :: start, count, stride, map 2249 integer :: nf90_get_var_4D_FourByteReal 2250 2251 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 2252 integer :: numDims, counter 2253 2254 ! Set local arguments to default values 2255 numDims = size(shape(values)) 2256 localStart (: ) = 1 2257 localCount (:numDims ) = shape(values) 2258 localCount (numDims+1:) = 1 2259 localStride(: ) = 1 2260 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 2261 2262 if(present(start)) localStart (:size(start) ) = start(:) 2263 if(present(count)) localCount (:size(count) ) = count(:) 2264 if(present(stride)) localStride(:size(stride)) = stride(:) 2265 if(present(map)) then 2266 localMap (:size(map)) = map(:) 2267 nf90_get_var_4D_FourByteReal = & 2268 nf_get_varm_real(ncid, varid, localStart, localCount, localStride, localMap, values) 2269 else if(present(stride)) then 2270 nf90_get_var_4D_FourByteReal = & 2271 nf_get_vars_real(ncid, varid, localStart, localCount, localStride, values) 2272 else 2273 nf90_get_var_4D_FourByteReal = & 2274 nf_get_vara_real(ncid, varid, localStart, localCount, values) 2275 end if 2276 end function nf90_get_var_4D_FourByteReal 2277 2278 2279 function nf90_get_var_5D_FourByteReal(ncid, varid, values, start, count, stride, map) 2280 integer, intent( in) :: ncid, varid 2281 real (kind = FourByteReal), dimension(:, :, :, :, :), & 2282 intent(out) :: values 2283 integer, dimension(:), optional, intent( in) :: start, count, stride, map 2284 integer :: nf90_get_var_5D_FourByteReal 2285 2286 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 2287 integer :: numDims, counter 2288 2289 ! Set local arguments to default values 2290 numDims = size(shape(values)) 2291 localStart (: ) = 1 2292 localCount (:numDims ) = shape(values) 2293 localCount (numDims+1:) = 1 2294 localStride(: ) = 1 2295 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 2296 2297 if(present(start)) localStart (:size(start) ) = start(:) 2298 if(present(count)) localCount (:size(count) ) = count(:) 2299 if(present(stride)) localStride(:size(stride)) = stride(:) 2300 if(present(map)) then 2301 localMap (:size(map)) = map(:) 2302 nf90_get_var_5D_FourByteReal = & 2303 nf_get_varm_real(ncid, varid, localStart, localCount, localStride, localMap, values) 2304 else if(present(stride)) then 2305 nf90_get_var_5D_FourByteReal = & 2306 nf_get_vars_real(ncid, varid, localStart, localCount, localStride, values) 2307 else 2308 nf90_get_var_5D_FourByteReal = & 2309 nf_get_vara_real(ncid, varid, localStart, localCount, values) 2310 end if 2311 end function nf90_get_var_5D_FourByteReal 2312 2313 2314 function nf90_get_var_6D_FourByteReal(ncid, varid, values, start, count, stride, map) 2315 integer, intent( in) :: ncid, varid 2316 real (kind = FourByteReal), dimension(:, :, :, :, :, :), & 2317 intent(out) :: values 2318 integer, dimension(:), optional, intent( in) :: start, count, stride, map 2319 integer :: nf90_get_var_6D_FourByteReal 2320 2321 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 2322 integer :: numDims, counter 2323 2324 ! Set local arguments to default values 2325 numDims = size(shape(values)) 2326 localStart (: ) = 1 2327 localCount (:numDims ) = shape(values) 2328 localCount (numDims+1:) = 1 2329 localStride(: ) = 1 2330 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 2331 2332 if(present(start)) localStart (:size(start) ) = start(:) 2333 if(present(count)) localCount (:size(count) ) = count(:) 2334 if(present(stride)) localStride(:size(stride)) = stride(:) 2335 if(present(map)) then 2336 localMap (:size(map)) = map(:) 2337 nf90_get_var_6D_FourByteReal = & 2338 nf_get_varm_real(ncid, varid, localStart, localCount, localStride, localMap, values) 2339 else if(present(stride)) then 2340 nf90_get_var_6D_FourByteReal = & 2341 nf_get_vars_real(ncid, varid, localStart, localCount, localStride, values) 2342 else 2343 nf90_get_var_6D_FourByteReal = & 2344 nf_get_vara_real(ncid, varid, localStart, localCount, values) 2345 end if 2346 end function nf90_get_var_6D_FourByteReal 2347 2348 2349 function nf90_get_var_7D_FourByteReal(ncid, varid, values, start, count, stride, map) 2350 integer, intent( in) :: ncid, varid 2351 real (kind = FourByteReal), dimension(:, :, :, :, :, :, :), & 2352 intent(out) :: values 2353 integer, dimension(:), optional, intent( in) :: start, count, stride, map 2354 integer :: nf90_get_var_7D_FourByteReal 2355 2356 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 2357 integer :: numDims, counter 2358 2359 ! Set local arguments to default values 2360 numDims = size(shape(values)) 2361 localStart (: ) = 1 2362 localCount (:numDims ) = shape(values) 2363 localCount (numDims+1:) = 1 2364 localStride(: ) = 1 2365 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 2366 2367 if(present(start)) localStart (:size(start) ) = start(:) 2368 if(present(count)) localCount (:size(count) ) = count(:) 2369 if(present(stride)) localStride(:size(stride)) = stride(:) 2370 if(present(map)) then 2371 localMap (:size(map)) = map(:) 2372 nf90_get_var_7D_FourByteReal = & 2373 nf_get_varm_real(ncid, varid, localStart, localCount, localStride, localMap, values) 2374 else if(present(stride)) then 2375 nf90_get_var_7D_FourByteReal = & 2376 nf_get_vars_real(ncid, varid, localStart, localCount, localStride, values) 2377 else 2378 nf90_get_var_7D_FourByteReal = & 2379 nf_get_vara_real(ncid, varid, localStart, localCount, values) 2380 end if 2381 end function nf90_get_var_7D_FourByteReal 2382 2383 2384 function nf90_get_var_1D_EightByteReal(ncid, varid, values, start, count, stride, map) 2385 integer, intent( in) :: ncid, varid 2386 real (kind = EightByteReal), dimension(:), & 2387 intent(out) :: values 2388 integer, dimension(:), optional, intent( in) :: start, count, stride, map 2389 integer :: nf90_get_var_1D_EightByteReal 2390 2391 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 2392 integer :: numDims, counter 2393 2394 ! Set local arguments to default values 2395 numDims = size(shape(values)) 2396 localStart (: ) = 1 2397 localCount (:numDims ) = shape(values) 2398 localCount (numDims+1:) = 1 2399 localStride(: ) = 1 2400 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 2401 2402 if(present(start)) localStart (:size(start) ) = start(:) 2403 if(present(count)) localCount (:size(count) ) = count(:) 2404 if(present(stride)) localStride(:size(stride)) = stride(:) 2405 if(present(map)) then 2406 localMap (:size(map)) = map(:) 2407 nf90_get_var_1D_EightByteReal = & 2408 nf_get_varm_double(ncid, varid, localStart, localCount, localStride, localMap, values) 2409 else if(present(stride)) then 2410 nf90_get_var_1D_EightByteReal = & 2411 nf_get_vars_double(ncid, varid, localStart, localCount, localStride, values) 2412 else 2413 nf90_get_var_1D_EightByteReal = & 2414 nf_get_vara_double(ncid, varid, localStart, localCount, values) 2415 end if 2416 end function nf90_get_var_1D_EightByteReal 2417 2418 2419 function nf90_get_var_2D_EightByteReal(ncid, varid, values, start, count, stride, map) 2420 integer, intent( in) :: ncid, varid 2421 real (kind = EightByteReal), dimension(:, :), & 2422 intent(out) :: values 2423 integer, dimension(:), optional, intent( in) :: start, count, stride, map 2424 integer :: nf90_get_var_2D_EightByteReal 2425 2426 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 2427 integer :: numDims, counter 2428 2429 ! Set local arguments to default values 2430 numDims = size(shape(values)) 2431 localStart (: ) = 1 2432 localCount (:numDims ) = shape(values) 2433 localCount (numDims+1:) = 1 2434 localStride(: ) = 1 2435 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 2436 2437 if(present(start)) localStart (:size(start) ) = start(:) 2438 if(present(count)) localCount (:size(count) ) = count(:) 2439 if(present(stride)) localStride(:size(stride)) = stride(:) 2440 if(present(map)) then 2441 localMap (:size(map)) = map(:) 2442 nf90_get_var_2D_EightByteReal = & 2443 nf_get_varm_double(ncid, varid, localStart, localCount, localStride, localMap, values) 2444 else if(present(stride)) then 2445 nf90_get_var_2D_EightByteReal = & 2446 nf_get_vars_double(ncid, varid, localStart, localCount, localStride, values) 2447 else 2448 nf90_get_var_2D_EightByteReal = & 2449 nf_get_vara_double(ncid, varid, localStart, localCount, values) 2450 end if 2451 end function nf90_get_var_2D_EightByteReal 2452 2453 2454 function nf90_get_var_3D_EightByteReal(ncid, varid, values, start, count, stride, map) 2455 integer, intent( in) :: ncid, varid 2456 real (kind = EightByteReal), dimension(:, :, :), & 2457 intent(out) :: values 2458 integer, dimension(:), optional, intent( in) :: start, count, stride, map 2459 integer :: nf90_get_var_3D_EightByteReal 2460 2461 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 2462 integer :: numDims, counter 2463 2464 ! Set local arguments to default values 2465 numDims = size(shape(values)) 2466 localStart (: ) = 1 2467 localCount (:numDims ) = shape(values) 2468 localCount (numDims+1:) = 1 2469 localStride(: ) = 1 2470 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 2471 2472 if(present(start)) localStart (:size(start) ) = start(:) 2473 if(present(count)) localCount (:size(count) ) = count(:) 2474 if(present(stride)) localStride(:size(stride)) = stride(:) 2475 if(present(map)) then 2476 localMap (:size(map)) = map(:) 2477 nf90_get_var_3D_EightByteReal = & 2478 nf_get_varm_double(ncid, varid, localStart, localCount, localStride, localMap, values) 2479 else if(present(stride)) then 2480 nf90_get_var_3D_EightByteReal = & 2481 nf_get_vars_double(ncid, varid, localStart, localCount, localStride, values) 2482 else 2483 nf90_get_var_3D_EightByteReal = & 2484 nf_get_vara_double(ncid, varid, localStart, localCount, values) 2485 end if 2486 end function nf90_get_var_3D_EightByteReal 2487 2488 2489 function nf90_get_var_4D_EightByteReal(ncid, varid, values, start, count, stride, map) 2490 integer, intent( in) :: ncid, varid 2491 real (kind = EightByteReal), dimension(:, :, :, :), & 2492 intent(out) :: values 2493 integer, dimension(:), optional, intent( in) :: start, count, stride, map 2494 integer :: nf90_get_var_4D_EightByteReal 2495 2496 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 2497 integer :: numDims, counter 2498 2499 ! Set local arguments to default values 2500 numDims = size(shape(values)) 2501 localStart (: ) = 1 2502 localCount (:numDims ) = shape(values) 2503 localCount (numDims+1:) = 1 2504 localStride(: ) = 1 2505 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 2506 2507 if(present(start)) localStart (:size(start) ) = start(:) 2508 if(present(count)) localCount (:size(count) ) = count(:) 2509 if(present(stride)) localStride(:size(stride)) = stride(:) 2510 if(present(map)) then 2511 localMap (:size(map)) = map(:) 2512 nf90_get_var_4D_EightByteReal = & 2513 nf_get_varm_double(ncid, varid, localStart, localCount, localStride, localMap, values) 2514 else if(present(stride)) then 2515 nf90_get_var_4D_EightByteReal = & 2516 nf_get_vars_double(ncid, varid, localStart, localCount, localStride, values) 2517 else 2518 nf90_get_var_4D_EightByteReal = & 2519 nf_get_vara_double(ncid, varid, localStart, localCount, values) 2520 end if 2521 end function nf90_get_var_4D_EightByteReal 2522 2523 2524 function nf90_get_var_5D_EightByteReal(ncid, varid, values, start, count, stride, map) 2525 integer, intent( in) :: ncid, varid 2526 real (kind = EightByteReal), dimension(:, :, :, :, :), & 2527 intent(out) :: values 2528 integer, dimension(:), optional, intent( in) :: start, count, stride, map 2529 integer :: nf90_get_var_5D_EightByteReal 2530 2531 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 2532 integer :: numDims, counter 2533 2534 ! Set local arguments to default values 2535 numDims = size(shape(values)) 2536 localStart (: ) = 1 2537 localCount (:numDims ) = shape(values) 2538 localCount (numDims+1:) = 1 2539 localStride(: ) = 1 2540 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 2541 2542 if(present(start)) localStart (:size(start) ) = start(:) 2543 if(present(count)) localCount (:size(count) ) = count(:) 2544 if(present(stride)) localStride(:size(stride)) = stride(:) 2545 if(present(map)) then 2546 localMap (:size(map)) = map(:) 2547 nf90_get_var_5D_EightByteReal = & 2548 nf_get_varm_double(ncid, varid, localStart, localCount, localStride, localMap, values) 2549 else if(present(stride)) then 2550 nf90_get_var_5D_EightByteReal = & 2551 nf_get_vars_double(ncid, varid, localStart, localCount, localStride, values) 2552 else 2553 nf90_get_var_5D_EightByteReal = & 2554 nf_get_vara_double(ncid, varid, localStart, localCount, values) 2555 end if 2556 end function nf90_get_var_5D_EightByteReal 2557 2558 2559 function nf90_get_var_6D_EightByteReal(ncid, varid, values, start, count, stride, map) 2560 integer, intent( in) :: ncid, varid 2561 real (kind = EightByteReal), dimension(:, :, :, :, :, :), & 2562 intent(out) :: values 2563 integer, dimension(:), optional, intent( in) :: start, count, stride, map 2564 integer :: nf90_get_var_6D_EightByteReal 2565 2566 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 2567 integer :: numDims, counter 2568 2569 ! Set local arguments to default values 2570 numDims = size(shape(values)) 2571 localStart (: ) = 1 2572 localCount (:numDims ) = shape(values) 2573 localCount (numDims+1:) = 1 2574 localStride(: ) = 1 2575 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 2576 2577 if(present(start)) localStart (:size(start) ) = start(:) 2578 if(present(count)) localCount (:size(count) ) = count(:) 2579 if(present(stride)) localStride(:size(stride)) = stride(:) 2580 if(present(map)) then 2581 localMap (:size(map)) = map(:) 2582 nf90_get_var_6D_EightByteReal = & 2583 nf_get_varm_double(ncid, varid, localStart, localCount, localStride, localMap, values) 2584 else if(present(stride)) then 2585 nf90_get_var_6D_EightByteReal = & 2586 nf_get_vars_double(ncid, varid, localStart, localCount, localStride, values) 2587 else 2588 nf90_get_var_6D_EightByteReal = & 2589 nf_get_vara_double(ncid, varid, localStart, localCount, values) 2590 end if 2591 end function nf90_get_var_6D_EightByteReal 2592 2593 2594 function nf90_get_var_7D_EightByteReal(ncid, varid, values, start, count, stride, map) 2595 integer, intent( in) :: ncid, varid 2596 real (kind = EightByteReal), dimension(:, :, :, :, :, :, :), & 2597 intent(out) :: values 2598 integer, dimension(:), optional, intent( in) :: start, count, stride, map 2599 integer :: nf90_get_var_7D_EightByteReal 2600 2601 integer, dimension(nf90_max_var_dims) :: localStart, localCount, localStride, localMap 2602 integer :: numDims, counter 2603 2604 ! Set local arguments to default values 2605 numDims = size(shape(values)) 2606 localStart (: ) = 1 2607 localCount (:numDims ) = shape(values) 2608 localCount (numDims+1:) = 1 2609 localStride(: ) = 1 2610 localMap (:numDims ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 2611 2612 if(present(start)) localStart (:size(start) ) = start(:) 2613 if(present(count)) localCount (:size(count) ) = count(:) 2614 if(present(stride)) localStride(:size(stride)) = stride(:) 2615 if(present(map)) then 2616 localMap (:size(map)) = map(:) 2617 nf90_get_var_7D_EightByteReal = & 2618 nf_get_varm_double(ncid, varid, localStart, localCount, localStride, localMap, values) 2619 else if(present(stride)) then 2620 nf90_get_var_7D_EightByteReal = & 2621 nf_get_vars_double(ncid, varid, localStart, localCount, localStride, values) 2622 else 2623 nf90_get_var_7D_EightByteReal = & 2624 nf_get_vara_double(ncid, varid, localStart, localCount, values) 2625 end if 2626 end function nf90_get_var_7D_EightByteReal 2627 2628 2629