⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 grib2.doc

📁 计算线性趋势 回归系数 主要用于气象站点值的线性趋势计算
💻 DOC
📖 第 1 页 / 共 5 页
字号:
!     cgrib    - Character array that contains the GRIB2 message!     lcgrib   - Length (in bytes) of GRIB message in array cgrib.!!   OUTPUT ARGUMENT LIST:      !     listsec0 - Contains information decoded from GRIB Indicator Section 0.!                Must be dimensioned >= 2.!                listsec0(1)=Discipline-GRIB Master Table Number!                            (see Code Table 0.0)!                listsec0(2)=GRIB Edition Number (currently 2)!                listsec0(3)=Length of GRIB message!     listsec1 - Contains information read from GRIB Identification Section 1.!                Must be dimensioned >= 13.!                listsec1(1)=Id of orginating centre (Common Code Table C-1)!                listsec1(2)=Id of orginating sub-centre (local table)!                listsec1(3)=GRIB Master Tables Version Number (Code Table 1.0)!                listsec1(4)=GRIB Local Tables Version Number !                listsec1(5)=Significance of Reference Time (Code Table 1.1)!                listsec1(6)=Reference Time - Year (4 digits)!                listsec1(7)=Reference Time - Month!                listsec1(8)=Reference Time - Day!                listsec1(9)=Reference Time - Hour!                listsec1(10)=Reference Time - Minute!                listsec1(11)=Reference Time - Second!                listsec1(12)=Production status of data (Code Table 1.2)!                listsec1(13)=Type of processed data (Code Table 1.3)!     numfields- The number of gridded fields found in the GRIB message.!     numlocal - The number of Local Use Sections ( Section 2 ) found in !                the GRIB message.!     maxlocal-  The size of the largest Local Use Section ( Section 2 ).!                Can be used to ensure that the return array passed!                to subroutine getlocal is dimensioned large enough.!     ierr     - Error return code.!                0 = no error!                1 = Beginning characters "GRIB" not found.!                2 = GRIB message is not Edition 2.!                3 = Could not find Section 1, where expected.!                4 = End string "7777" found, but not where expected.!                5 = End string "7777" not found at end of message.!                6 = Invalid section number found.!! REMARKS: None!! ATTRIBUTES:!   LANGUAGE: Fortran 90!   MACHINE:  IBM SP!!$$$!$$$  SUBPROGRAM DOCUMENTATION BLOCK!                .      .    .                                       .! SUBPROGRAM:    getlocal !   PRGMMR: Gilbert         ORG: W/NP11    DATE: 2000-05-25!! ABSTRACT: This subroutine returns the contents of Section 2 ( Local !   Use Section ) from a GRIB2 message.  Since there can be multiple!   occurrences of Section 2 within a GRIB message, the calling routine!   indicates which occurrence is being requested with the localnum argument.!! PROGRAM HISTORY LOG:! 2000-05-25  Gilbert!! USAGE:    CALL getlocal(cgrib,lcgrib,localnum,csec2,lcsec2,ierr)!   INPUT ARGUMENT LIST:!     cgrib    - Character array that contains the GRIB2 message!     lcgrib   - Length (in bytes) of GRIB message in array cgrib.!     localnum - The nth occurrence of Section 2 requested.!!   OUTPUT ARGUMENT LIST:      !     csec2    - Character array containing information read from !                Section 2.!                The dimension of this array can be obtained in advance!                from argument maxlocal, which is returned from subroutine !                gb_info.!     lcsec2   - Number of bytes of character array csec2 read from!                Section 2.!     ierr     - Error return code.!                0 = no error!                1 = Beginning characters "GRIB" not found.!                2 = GRIB message is not Edition 2.!                3 = The section 2 request number was not positive.!                4 = End string "7777" found, but not where expected.!                5 = End string "7777" not found at end of message.!                6 = GRIB message did not contain the requested number of!                    Local Use Sections.!! REMARKS: Note that subroutine gribinfo can be used to first determine!          how many Local Use sections exist in a given GRIB message.!! ATTRIBUTES:!   LANGUAGE: Fortran 90!   MACHINE:  IBM SP!!$$$!$$$  SUBPROGRAM DOCUMENTATION BLOCK!                .      .    .                                       .! SUBPROGRAM:    gf_getfld !   PRGMMR: Gilbert         ORG: W/NP11    DATE: 2000-05-26!! ABSTRACT: This subroutine returns the Grid Definition, Product Definition,!   Bit-map ( if applicable ), and the unpacked data for a given data!   field.  All of the information returned is stored in a derived!   type variable, gfld.  Gfld is of type gribfield, which is defined!   in module grib_mod, so users of this routine will need to include!   the line "USE GRIB_MOD" in their calling routine.  Each component of the !   gribfield type is described in the OUTPUT ARGUMENT LIST section below.!!   Since there can be multiple data fields packed into a GRIB2!   message, the calling routine indicates which field is being requested!   with the ifldnum argument.!! PROGRAM HISTORY LOG:! 2000-05-26  Gilbert! 2002-01-24  Gilbert  - Changed to pass back derived type gribfield!                        variable through argument list, instead of!                        having many different arguments.!! USAGE:    CALL gf_getfld(cgrib,lcgrib,ifldnum,unpack,expand,gfld,ierr)!   INPUT ARGUMENT LIST:!     cgrib    - Character array that contains the GRIB2 message!     lcgrib   - Length (in bytes) of GRIB message array cgrib.!     ifldnum  - Specifies which field in the GRIB2 message to return.!     unpack   - Logical value indicating whether to unpack bitmap/data!                .true. = unpack bitmap and data values!                .false. = do not unpack bitmap and data values!     expand   - Boolean value indicating whether the data points should be!                expanded to the correspond grid, if a bit-map is present.!                1 = if possible, expand data field to grid, inserting zero!                    values at gridpoints that are bitmapped out.!                    (SEE REMARKS2)!                0 = do not expand data field, leaving it an array of!                    consecutive data points for each "1" in the bitmap.!                This argument is ignored if unpack == 0 OR if the!                returned field does not contain a bit-map.!!   OUTPUT ARGUMENT LIST:      !     gfld - derived type gribfield ( defined in module grib_mod )!            ( NOTE: See Remarks Section )!        gfld%version = GRIB edition number ( currently 2 )!        gfld%discipline = Message Discipline ( see Code Table 0.0 )!        gfld%idsect() = Contains the entries in the Identification!                        Section ( Section 1 )!                        This element is actually a pointer to an array!                        that holds the data.!            gfld%idsect(1)  = Identification of originating Centre !                                    ( see Common Code Table C-1 )!                             7 - US National Weather Service!            gfld%idsect(2)  = Identification of originating Sub-centre!            gfld%idsect(3)  = GRIB Master Tables Version Number!                                    ( see Code Table 1.0 )!                             0 - Experimental!                             1 - Initial operational version number!            gfld%idsect(4)  = GRIB Local Tables Version Number!                                    ( see Code Table 1.1 )!                             0     - Local tables not used!                             1-254 - Number of local tables version used!            gfld%idsect(5)  = Significance of Reference Time (Code Table 1.2)!                             0 - Analysis!                             1 - Start of forecast!                             2 - Verifying time of forecast!                             3 - Observation time!            gfld%idsect(6)  = Year ( 4 digits )!            gfld%idsect(7)  = Month!            gfld%idsect(8)  = Day!            gfld%idsect(9)  = Hour!            gfld%idsect(10)  = Minute!            gfld%idsect(11)  = Second!            gfld%idsect(12)  = Production status of processed data!                                    ( see Code Table 1.3 )!                              0 - Operational products!                              1 - Operational test products!                              2 - Research products!                              3 - Re-analysis products!            gfld%idsect(13)  = Type of processed data ( see Code Table 1.4 )!                              0  - Analysis products!                              1  - Forecast products!                              2  - Analysis and forecast products!                              3  - Control forecast products!                              4  - Perturbed forecast products!                              5  - Control and perturbed forecast products!                              6  - Processed satellite observations!                              7  - Processed radar observations!        gfld%idsectlen = Number of elements in gfld%idsect().!        gfld%ifldnum = field number within GRIB message!        gfld%griddef = Source of grid definition (see Code Table 3.0)!                      0 - Specified in Code table 3.1!                      1 - Predetermined grid Defined by originating centre!        gfld%ngrdpts = Number of grid points in the defined grid.!        gfld%numoct_opt = Number of octets needed for each !                          additional grid points definition.  !                          Used to define number of!                          points in each row ( or column ) for!                          non-regular grids.  !                          = 0, if using regular grid.!        gfld%interp_opt = Interpretation of list for optional points !                          definition.  (Code Table 3.11)!        gfld%igdtnum = Grid Definition Template Number (Code Table 3.1)!        gfld%igdtmpl() = Contains the data values for the specified Grid !                         Definition Template ( NN=gfld%igdtnum ).  Each !                         element of this integer array contains an entry (in !                         the order specified) of Grid Defintion Template 3.NN!                         This element is actually a pointer to an array!                         that holds the data.!        gfld%igdtlen = Number of elements in gfld%igdtmpl().  i.e. number of!                       entries in Grid Defintion Template 3.NN  !                       ( NN=gfld%igdtnum ).!        gfld%list_opt() = (Used if gfld%numoct_opt .ne. 0)  This array !                          contains the number of grid points contained in !                          each row ( or column ).  (part of Section 3)!                          This element is actually a pointer to an array!                          that holds the data.  This pointer is nullified!                          if gfld%numoct_opt=0.!        gfld%num_opt = (Used if gfld%numoct_opt .ne. 0)  The number of entries!                       in array ideflist.  i.e. number of rows ( or columns )!                       for which optional grid points are defined.  This value!                       is set to zero, if gfld%numoct_opt=0.!        gfdl%ipdtnum = Product Definition Template Number (see Code Table 4.0)!        gfld%ipdtmpl() = Contains the data values for the specified Product !                         Definition Template ( N=gfdl%ipdtnum ).  Each element!                         of this integer array contains an entry (in the !                         order specified) of Product Defintion Template 4.N.!                         This element is actually a pointer to an array!                         that holds the data.!        gfld%ipdtlen = Number of elements in gfld%ipdtmpl().  i.e. number of!                       entries in Product Defintion Template 4.N  !                       ( N=gfdl%ipdtnum ).!        gfld%coord_list() = Real array containing floating point values !                            intended to document the vertical discretisation!                            associated to model data on hybrid coordinate!                            vertical levels.  (part of Section 4)!                            This element is actually a pointer to an array!                            that holds the data.!        gfld%num_coord = number of values in array gfld%coord_list().!        gfld%ndpts = Number of data points unpacked and returned.!        gfld%idrtnum = Data Representation Template Number !                       ( see Code Table 5.0)!        gfld%idrtmpl() = Contains the data values for the specified Data !                         Representation Template ( N=gfld%idrtnum ).  Each !                         element of this integer array contains an entry !                         (in the order specified) of Product Defintion !                         Template 5.N.!                         This element is actually a pointer to an array!                         that holds the data.!        gfld%idrtlen = Number of elements in gfld%idrtmpl().  i.e. number 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -