NCEPLIBS-g2tmpl  1.12.0
g2sec4_temp12.F90
Go to the documentation of this file.
1 
4 
54 subroutine g2sec4_temp12(icatg,iparm,typ_gen_proc_key,gen_proc_or_mod_key, &
55  hrs_obs_cutoff,min_obs_cutoff,unit_of_time_key, &
56  fcst_time,lvl_type1,scale_fac1,scaled_val1,lvl_type2, &
57  scale_fac2,scaled_val2,derive_fcst_key,num_fcst_ens, &
58  year_intvl,mon_intvl,day_intvl,hour_intvl,min_intvl, &
59  sec_intvl,num_time_range,stat_miss_val, &
60  type_of_stat_proc,type_of_time_inc,stat_unit_time_key, &
61  leng_time_range_stat,stat_unit_time_key_succ, &
62  time_inc_betwn_succ_fld,ipdstmpl12)
63 
65 
66  integer(4),intent(in) :: icatg,iparm,hrs_obs_cutoff,min_obs_cutoff,fcst_time, &
67  scale_fac1,scaled_val1,scale_fac2,scaled_val2
68  integer(4),intent(in) :: year_intvl,mon_intvl,day_intvl,hour_intvl,min_intvl, &
69  sec_intvl,num_time_range,stat_miss_val, &
70  leng_time_range_stat,time_inc_betwn_succ_fld
71  integer(4),intent(in) :: num_fcst_ens
72  !
73  character(len=*),intent(in) :: typ_gen_proc_key,gen_proc_or_mod_key, &
74  unit_of_time_key,lvl_type1,lvl_type2, &
75  type_of_stat_proc,type_of_time_inc, &
76  stat_unit_time_key,stat_unit_time_key_succ, &
77  derive_fcst_key
78  !
79  integer(4) :: bckgnd_gen_proc_id ! defined by the center
80  !
81  integer(4),intent(inout) :: ipdstmpl12(31) ! currently works only for n=1
82  ! later on, this will be generalized
83  !
84  !-- local vars
85  integer(4) :: value,ierr
86  !
87  bckgnd_gen_proc_id=0
88  !
89  ipdstmpl12(1) = icatg
90  ipdstmpl12(2) = iparm
91  !
92  call get_g2_typeofgenproc(typ_gen_proc_key,value,ierr)
93  ipdstmpl12(3) = value
94  !
95  ipdstmpl12(4) = bckgnd_gen_proc_id
96  !
97  call get_g2_on388genproc(gen_proc_or_mod_key,value,ierr)
98  ipdstmpl12(5) = value
99  !
100  ipdstmpl12(6) = hrs_obs_cutoff
101  ipdstmpl12(7) = min_obs_cutoff
102  !
103  call get_g2_unitoftimerange(unit_of_time_key,value,ierr)
104  ipdstmpl12(8) = value
105  ipdstmpl12(9) = fcst_time
106  !
107  call get_g2_fixedsurfacetypes(lvl_type1,value,ierr)
108  ipdstmpl12(10) = value
109  ipdstmpl12(11) = scale_fac1
110  ipdstmpl12(12) = scaled_val1
111  !
112  call get_g2_fixedsurfacetypes(lvl_type2,value,ierr)
113  ipdstmpl12(13) = value
114  !
115  ipdstmpl12(14) = scale_fac2
116  ipdstmpl12(15) = scaled_val2
117  !
118  call get_g2_typeofderivefcst(derive_fcst_key,value,ierr)
119  ipdstmpl12(16) = value
120  !
121  ipdstmpl12(17) = num_fcst_ens
122  !
123  ipdstmpl12(18) = year_intvl
124  ipdstmpl12(19) = mon_intvl
125  ipdstmpl12(20) = day_intvl
126  ipdstmpl12(21) = hour_intvl
127  ipdstmpl12(22) = min_intvl
128  ipdstmpl12(23) = sec_intvl
129  !
130  ipdstmpl12(24) = num_time_range ! choose n=1 for this case
131  ipdstmpl12(25) = stat_miss_val ! choose 0 for this case
132  !
133  call get_g2_statprocesstypes(type_of_stat_proc,value,ierr)
134  ipdstmpl12(26) = value ! types_of_stat_proc='accumulation'
135  !
136  call get_g2_typeoftimeintervals(type_of_time_inc,value,ierr)
137  ipdstmpl12(27) = value ! type_of_time_inc='same_start_time_fcst_fcst_time_inc'
138  ! value = 2 (Successive times processed have same start
139  ! time of forecast, forecast time is incremented)
140  !
141  call get_g2_unitoftimerange(stat_unit_time_key,value,ierr)
142  ipdstmpl12(28) = value ! stat_unit_time_key='hour'
143  ! value = 1
144  ipdstmpl12(29) = leng_time_range_stat ! value = 6
145  !
146  call get_g2_unitoftimerange(stat_unit_time_key_succ,value,ierr)
147  ! stat_unit_time_key_succ='missing'
148  ipdstmpl12(30) = value ! value = 255
149  !
150  ipdstmpl12(31) = time_inc_betwn_succ_fld ! value = 0
151  !
152  return
153 end subroutine g2sec4_temp12
subroutine g2sec4_temp12(icatg, iparm, typ_gen_proc_key, gen_proc_or_mod_key, hrs_obs_cutoff, min_obs_cutoff, unit_of_time_key, fcst_time, lvl_type1, scale_fac1, scaled_val1, lvl_type2, scale_fac2, scaled_val2, derive_fcst_key, num_fcst_ens, year_intvl, mon_intvl, day_intvl, hour_intvl, min_intvl, sec_intvl, num_time_range, stat_miss_val, type_of_stat_proc, type_of_time_inc, stat_unit_time_key, leng_time_range_stat, stat_unit_time_key_succ, time_inc_betwn_succ_fld, ipdstmpl12)
This subroutine returns the Grib2 Section 4 Template 4.12 list for given keys PDT 4....
Define the variables in the derived data type discipline provided in Section 0.
subroutine get_g2_on388genproc(key, value, ierr)
This subroutine returns the corresponding GRIB1 - PDS Ocet6 data value (Generating process or model) ...
subroutine get_g2_typeofgenproc(key, value, ierr)
This subroutine returns the corresponding GRIB2 - Type of Generating Process value for a given short ...
subroutine get_g2_typeoftimeintervals(key, value, ierr)
This subroutine returns the corresponding GRIB2 - Type of time intervals value for a given short key ...
subroutine get_g2_typeofderivefcst(key, value, ierr)
This subroutine returns the corresponding GRIB2 type of derive forecast value for a given short key n...
subroutine get_g2_fixedsurfacetypes(key, value, ierr)
This subroutine returns the corresponding GRIB2 - Fixed Surface Types and Units value for a given sho...
subroutine get_g2_statprocesstypes(key, value, ierr)
This subroutine returns the corresponding GRIB2 - Type of statistica processing value for a given sho...
subroutine get_g2_unitoftimerange(key, value, ierr)
This subroutine returns the corresponding GRIB2 - Indicator of unit of time range value for a given s...