;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;; Set your domain to fetch data from the IRI data library ;;;;;;;;;;;;;;;; latS = 5.0 latN = 25.0 lonW = -95.0 lonE = -55.0 dircmorph = "../precip/cmorph/" MonS = "Jun" MonE = "Aug" YearS = 1998 YearE = 2023 SEASON = "JJA" allYrs = ispan(YearS,YearE, 1) nyrs = dimsizes(allYrs) Res = 0.1 mlat = toint((latN-latS)/Res + 1) mlon = toint((lonE-lonW)/Res + 1) REGlat = fspan(latS, latN, mlat) REGlon = fspan(lonW, lonE, mlon) REGlat@units = "degrees_north" REGlon@units = "degrees_east" prec = new((/nyrs, mlat, mlon/),float, -9999) prec!0 = "time" prec!1 = "lat" prec!2 = "lon" prec&time = allYrs prec&lat = REGlat prec&lon = REGlon prec@_FillValue = -9999 prec@units = "mm" monthdef = (/"", "Jan","Feb","Mar","Apr","May","Jun", \ "Jul","Aug","Sep","Oct","Nov","Dec" /) imonS = ind(monthdef .eq. MonS) imonE = ind(monthdef .eq. MonE) mmS = sprinti("%0.2i",imonS) mmE = sprinti("%0.2i",imonE) ; ddS = sprinti("%0.2i",firstDay) ; ddE = sprinti("%0.2i",lastDay) print(mmS + " " + mmE) do iyr = 0, dimsizes(allYrs) - 1 yrS = toint(allYrs(iyr) + mmS) yrE = toint(allYrs(iyr) + mmE) ;print(yrS + " " + yrE ) a = addfile(dircmorph + "cmorph.v2.0.daily.CAMp1." + \ allYrs(iyr) + ".nc","r") p1 := a->prec lon = a->lon lat = a->lat t1 := a->time yyyymm := cd_calendar(t1, -1) iday := ind( yyyymm .ge. yrS .and. yyyymm .le. yrE) ; print(yyyymm(iday)) prec(iyr,:,:) = (/ dim_sum_n(p1(iday,:,:), 0) /) ;prec = linint2_Wrap(lon,lat,y, False, REGlon,REGlat, 0) end do fname = "./prec"+SEASON+"_"+YearS+"-"+YearE+"CMORPH.nc" system("/bin/rm -f "+fname) ncdf = addfile(fname, "c") fAtt = True ; assign file attributes fAtt@title = "CMORPH @ /cpc/fews/production/cmorph/output/bin/" fAtt@source_file = "/CMORPH_V1.0_RAW_0.25deg-DLY_00Z_*" fAtt@Conventions = "None" fAtt@creation_date = systemfunc ("date") fileattdef( ncdf, fAtt ) ; copy file attributes filedimdef(ncdf,"time",-1,True) ncdf->prec = prec