libsim Versione 8.0.0

◆ gridinfo_export_to_file()

subroutine gridinfo_export_to_file ( type(arrayof_gridinfo) this,
character(len=*), intent(in) filename,
character(len=*), intent(in), optional categoryappend )
private

Export an arrayof_gridinfo object to a file.

It receives an arrayof_gridinfo object which will be exported to the given file. The driver for writing to file is chosen according to the gaid associated to the first gridinfo element, and it must be the same for all the elements.

Parametri
thisarray of gridinfo objects which will be written to file
[in]filenamename of file to open and import, in the form [driver:]pathname
[in]categoryappendappend this suffix to log4fortran namespace category

Definizione alla linea 1005 del file gridinfo_class.F90.

1006 CALL raise_fatal_error()
1007ENDIF
1008
1009CONTAINS
1010
1011! Explicitely compute and code in grib2 template 4.8 the end of
1012! overalltimeinterval which is not done automatically by grib_api
1013SUBROUTINE code_endoftimeinterval(endtime)
1014TYPE(datetime),INTENT(in) :: endtime
1015
1016INTEGER :: year, month, day, hour, minute, msec
1017
1018CALL getval(endtime, year=year, month=month, day=day, &
1019 hour=hour, minute=minute, msec=msec)
1020 CALL grib_set(gaid,'yearOfEndOfOverallTimeInterval',year)
1021 CALL grib_set(gaid,'monthOfEndOfOverallTimeInterval',month)
1022 CALL grib_set(gaid,'dayOfEndOfOverallTimeInterval',day)
1023 CALL grib_set(gaid,'hourOfEndOfOverallTimeInterval',hour)
1024 CALL grib_set(gaid,'minuteOfEndOfOverallTimeInterval',minute)
1025 CALL grib_set(gaid,'secondOfEndOfOverallTimeInterval',msec/1000)
1026
1027END SUBROUTINE code_endoftimeinterval
1028
1029END SUBROUTINE timerange_export_gribapi
1030
1031
1032SUBROUTINE var_import_gribapi(this, gaid)
1033TYPE(volgrid6d_var),INTENT(out) :: this ! volgrid6d_var object
1034INTEGER,INTENT(in) :: gaid ! grib_api id of the grib loaded in memory to import
1035
1036INTEGER :: EditionNumber, centre, discipline, category, number
1037
1038call grib_get(gaid,'GRIBEditionNumber',editionnumber)
1039
1040if (editionnumber == 1) then
1041
1042 call grib_get(gaid,'centre',centre)
1043 call grib_get(gaid,'gribTablesVersionNo',category)
1044 call grib_get(gaid,'indicatorOfParameter',number)
1045
1046 call init(this, centre, category, number)
1047
1048else if (editionnumber == 2) then
1049
1050 call grib_get(gaid,'centre',centre)
1051 call grib_get(gaid,'discipline',discipline)
1052 call grib_get(gaid,'parameterCategory',category)
1053 call grib_get(gaid,'parameterNumber',number)
1054
1055 call init(this, centre, category, number, discipline)
1056
1057else
1058
1059 CALL l4f_log(l4f_error,'GribEditionNumber '//t2c(editionnumber)//' not supported')
1060 CALL raise_error()
1061
1062endif
1063
1064END SUBROUTINE var_import_gribapi
1065
1066
1067SUBROUTINE var_export_gribapi(this, gaid)
1068TYPE(volgrid6d_var),INTENT(in) :: this ! volgrid6d_var object
1069INTEGER,INTENT(in) :: gaid ! grib_api id of the grib loaded in memory to export

Generated with Doxygen.