forecasts =TS.get_forecast_days(rundays=[2]) forecasts_sublist=TS.get_sublist(forecasts,[2,3,4]) #forecast tuesday and wed,thu sat_archive="/gss/gss_work/DRES_OGS_BiGe/Observations/TIME_RAW_DATA/ONLINE/SAT/MODIS/DAILY/CHECKED/" DAILY_SAT_LIST=TS.get_daily_sat(forecasts_sublist,sat_archive) # float aggregator already done by others day=0 surf_layer=Layer(0,10) for time,archived_file,satfile in DAILY_SAT_LIST: avefile=INPUTDIR + os.path.basename(archived_file)[:-3] day=day+1 outfile=OUTDIR + "misfit+%dh.nc" % (day*24) print avefile continue Sat16 = Sat.convertinV4format( Sat.readfromfile(satfile) ) De = DataExtractor(TheMask,filename=avefile, varname='P_i') Model = MapBuilder.get_layer_average(De, surf_layer) Misfit = Sat16-Model cloudsLand = (np.isnan(Sat16)) #| (Sat16 > 1.e19) | (Sat16<0) modelLand = np.isnan(Model) #lands are nan nodata = cloudsLand | modelLand selection = ~nodata # & TheMask.mask_at_level(200.0) Misfit[nodata] = np.NaN netcdf3.write_2d_file(Misfit, 'chl_misfit', outfile, TheMask)
COASTNESS_LIST=['coast','open_sea','everywhere'] nCOAST = len(COASTNESS_LIST) dtype = [(coast, np.bool) for coast in COASTNESS_LIST] COASTNESS = np.ones((jpj,jpi),dtype=dtype) COASTNESS['coast'] = ~mask200_2D; COASTNESS['open_sea'] = mask200_2D; #COASTNESS['everywhere'] = True; satfile = glob.glob(REF_DIR+date+"*")[0] modfile = MODELDIR + "ave." + date + "-12:00:00.nc" Model = netcdf3.read_3d_file(modfile, 'P_l')[0,:,:] try: Sat16 = Sat.readfromfile(satfile,'lchlm') # weekly except: Sat16 = Sat.convertinV4format(Sat.readfromfile(satfile, 'CHL')) # daily cloudsLand = np.isnan(Sat16) Sat16[cloudsLand] = -999.0 cloudsLand = Sat16==-999.0; modelLand = Model > 1.0e+19 nodata = cloudsLand | modelLand BGC_CLASS4_CHL_RMS_SURF_BASIN = np.zeros((nSUB,nCOAST),np.float32) BGC_CLASS4_CHL_BIAS_SURF_BASIN = np.zeros((nSUB,nCOAST),np.float32) VALID_POINTS = np.zeros((nSUB,nCOAST),np.float32) MODEL_MEAN = np.zeros((nSUB,nCOAST),np.float32) SAT___MEAN = np.zeros((nSUB,nCOAST),np.float32) BGC_CLASS4_CHL_RMS_SURF_BASIN_LOG = np.zeros((nSUB,nCOAST),np.float32)