C*********************************************************************** C PROGRAM: PRECFORCE MAKE PRECIP FORCING FIELDS FOR LDAS C PRGMMR: MARSHALL ORG: W/NP20 C C ABSTRACT: MERGE STAGE IV HOURLY PRECIP DATA (MULTISENSOR ANALYSES) C AND CPC DAILY TOTAL PRECIP (GAUGE ONLY) TO GENERATE HOURLY PRECIP C FORCING FIELDS TO BE USED FOR FORCING THE LDAS. HOURLY STAGE IV C ESTIMATES ARE SUMMED OVER THE 24 HOUR PERIOD OF THE CPC ANALYSIS. C WEIGHTS ARE DERIVED FOR EACH HOUR BY FINDING THE FRACTION OF 24 H C SUM OVER ALL HOURS. THESE HOURLY WEIGHTS, DERIVED ONLY FROM THE STAGE C IV, ARE THEN MULTIPLIED BY THE CPC DAILY TOTAL TO "SPLIT OUR" HOURLY C PRECIPITATION AMOUNTS. NOTE THAT WHEN A STAGE IV DATA POINT IS C MISSING, IT IS REPLACED WITH ITS NEAREST NEIGHBOR, OUT TO 240 KM. C BEYOND THAT RANGE, EDAS HOURLY PRECIPS ARE USED. PRACTICALLY, THIS C MEANS AREAS OUTSIDE THE EDGE OF THE STAGE IV DOMAIN, BUT INSIDE THE C LDAS DOMAIN, ARE DOMINATED BY EDAS IN THE DERIVATION OF THE WEIGHTS. C C PROGRAM HISTORY LOG: C 99-01-21 MARSHALL ORIGINAL CODING C 99-11-16 MARSHALL ADDED STAGE IV ON LDAS GRID TO OUTPUT FILES C 02-02-01 LOHMANN CHANGED TO PRIZM BASED PRECIP C 02-03-18 LOHMANN CHANGED GRID on STAGE IV C 04-07-06 EBISUZAKI USE 3 HOURLY NDAS FILES C C INPUT FILES C C UNIT5 STDIN, LIST OF DATES C UNIT09 OCEANMASK.GRB C UNIT11 NDAS 12Z C UNIT14 NDAS 15Z C UNIT17 NDAS 18Z C UNIT20 NDAS 21Z C UNIT23 NDAS 00Z (NEXT DAY) C UNIT26 NDAS 03Z (NEXT DAY) C UNIT29 NDAS 06Z (NEXT DAY) C UNIT31 NDAS 09Z (NEXT DAY) C UNIT35-58 STAGE IV PRECIP C UNIT08 DAILY GAUGE PRECIP FOR CONUS (BINARY) C C OUTPUT FILES C C UNIT60-83 GRIB CONUS PRECIP C C SUBPROGRAMS CALLED: C MAKGDS C BAOPEN, BAOPENR C BACLOSE C GETGB C PUTGB C IPOLATES C C EXIT STATES: C COND = 0 - SUCCESSFUL RUN C C REMARKS: C C ATTRIBUTES: C LANGUAGE: STANDARD FORTRAN 90 C$$$ C*********************************************************************** Dimensions of input data: PARAMETER (NLDAS = 103936, NX = 464, NY = 224, BOUND=16, + NSTAGE4 = 987601, NNDAS=185*129) C REAL EDAS(NLDAS), S4IN(NSTAGE4), S4OUT(NLDAS), RLAT(NLDAS), + RLON(NLDAS), S42DTEMP(NX,NY), EDAS2D(NX,NY), S42D(NX,NY), + S4(24,NLDAS), LSUM(NLDAS), WEIGHT(24,NLDAS), CPC(NLDAS), + HOURPREC(NLDAS), WEIGHTSUM(NLDAS), + CPCTMP(NX,NY), WTSUMTMP(NX,NY), WT2DTMP(24,NX,NY), + WT2D(24,NX,NY), NDAS(NNDAS) C LOGICAL*1 OCEANMASK(NLDAS), LB(NSTAGE4), LO(NLDAS), + MASKTEMP(NX,NY), FOUND, + NDASMASK(NNDAS), EDASMASK(NLDAS) wgrib -V gauge_precip.20140707.grb.ldas rec 1:0:date 2014070712 PRATE kpds5=59 kpds6=1 kpds7=0 levels=(0,0) grid=255 sfc 0-1d ave: bitmap: 49432 undef PRATE=Precipitation rate [kg/m^2/s] timerange 3 P1 0 P2 1 TimeU 2 nx 464 ny 224 GDS grid 0 num_in_ave 0 missing 0 center 7 subcenter 0 process 0 Table 2 scan: WE:SN winds(N/S) latlon: lat 25.063000 to 52.938000 by 0.125000 nxny 103936 long -124.938000 to -67.063000 by 0.125000, (464 x 224) scan 64 mode 128 bdsgrid 1 min/max data 0 0.0010293 num bits 14 BDS_Ref 0 DecScale 7 BinScale 0 Stage IV data after WCOSS conversion -- num grid points unchanged .. assume same grid wgrib -V ST2gg2014070707.Grb rec 1:0:date 2014070706 APCP kpds5=61 kpds6=1 kpds7=0 levels=(0,0) grid=255 sfc 0-1hr acc: bitmap: 525674 undef APCP=Total precipitation [kg/m^2] timerange 4 P1 0 P2 1 TimeU 1 nx 1121 ny 881 GDS grid 5 num_in_ave 0 missing 0 center 7 subcenter 4 process 152 Table 2 scan: WE:SN winds(grid) polar stereo: Lat1 23.117000 Long1 -119.023000 Orient -105.000000 north pole (1121 x 881) Dx 4763 Dy 4763 scan 64 mode 8 min/max data 0 23.9 num bits 8 BDS_Ref 0 DecScale 1 BinScale 0 wgrib -V NDAS.2014070709 rec 1:0:date 2014070709 APCP kpds5=61 kpds6=1 kpds7=0 levels=(0,0) grid=212 sfc 0-3hr acc: APCP=Total precipitation [kg/m^2] timerange 4 P1 0 P2 3 TimeU 1 nx 185 ny 129 GDS grid 3 num_in_ave 0 missing 0 center 7 subcenter 0 process 84 Table 2 scan: WE:SN winds(grid) Lambert Conf: Lat1 12.190000 Lon1 -133.459000 Lov -95.000000 Latin1 25.000000 Latin2 25.000000 LatSP 0.000000 LonSP 0.000000 North Pole (185 x 129) Dx 40.635000 Dy 40.635000 scan 64 mode 8 min/max data 0 13 num bits 7 BDS_Ref 0 DecScale 0 BinScale -3