libsim  Versione 7.1.6

◆ grid_id_decode_data()

subroutine grid_id_class::grid_id_decode_data ( type(grid_id), intent(in)  this,
real, dimension(:,:), intent(out)  field 
)

Decode and return the data array from a grid_id object.

The output array field must have a size matching the size of the encoded data.

Definizione alla linea 951 del file grid_id_class.F90.

952 
953 CALL grib_get(gaid,'iScansNegatively',iScansNegatively,ierr)
954 IF (ierr /= grib_success) iscansnegatively=0
955 CALL grib_get(gaid,'jScansPositively',jScansPositively,ierr)
956 IF (ierr /= grib_success) jscanspositively=1
957 CALL grib_get(gaid,'jPointsAreConsecutive',jPointsAreConsecutive,ierr)
958 IF (ierr /= grib_success) jpointsareconsecutive=0
959 
960 ! these grib_sets are alredy done in gridinfo_export, but it seems
961 ! that it is necessary to repeat them here, they can fail with
962 ! unstructured grids, thus ierr
963 #ifdef DEBUG
964 CALL l4f_log(L4F_DEBUG, 'grib_api, Ni,Nj:'//t2c(SIZE(field,1))//','//t2c(SIZE(field,2)))
965 #endif
966 CALL grib_set(gaid,'Ni',SIZE(field,1), ierr)
967 CALL grib_set(gaid,'Nj',SIZE(field,2), ierr)
968 
969 ! Transfer data field changing scanning mode from 64
970 IF (iscansnegatively == 0) THEN
971  x1 = 1
972  x2 = SIZE(field,1)

Generated with Doxygen.