nc.createDimension(outtimename, None) nc.createVariable('lon', 'f8', ('lon')) nc.variables['lon'].long_name = 'longitude' nc.variables['lon'].units = 'degrees_east' nc.variables['lon'][:] = lon nc.createVariable('lat', 'f8', ('lat')) nc.variables['lat'].long_name = 'latitude' nc.variables['lat'].units = 'degrees_north' nc.variables['lat'][:] = lat nc.createVariable(outtimename, 'f8', (outtimename)) nc.variables[outtimename].units = 'days since 1900-01-01 00:00:00' nc.variables[outtimename].calendar = 'LEAP' dstart = pyroms_toolbox.date2jday(datetime(year, month + 1, 1, 1, 30)) roms_time = np.arange(dstart, dstart + daysinmonth[month], 3. / 24) nc.variables[outtimename][:] = roms_time nc.createVariable(outvarname, 'f', (outtimename, 'lat', 'lon'), fill_value=spval) nc.variables[outvarname].missing_value = spval nc.variables[outvarname].long_name = long_name nc.variables[outvarname].units = units nc.variables[outvarname].coordinates = 'lon lat' for day in range(daysinmonth[month]): # if year == 2010: # if ((month+1 >= 6) & (month+1 <= 8)): # file_tag = 'MERRA301'
# url='http://tds.hycom.org/thredds/dodsC/datasets/GLBa0.08/expt_91.1/2014/temp/archv.%04d_%03d_00_3zt.nc' %(year,day) #get data from server try: dataset = netCDF4.Dataset(url) var = dataset.variables[invarname][0, :, 2100:, 550:4040] spval = var.get_fill_value() dataset.close() print 'Got %s from server...' % invarname except: print 'No file on the server... We skip this day.' retry_day.append(day) continue #create netCDF file outfile = 'data/HYCOM_GLBa0.08_%s_%04d_%03d.nc' % (outvarname, year, day) jday = pyroms_toolbox.date2jday(datetime(year, 1, 1)) + day - 1 create_HYCOM_file(outfile, jday, lon, lat, z, var) if retry == 'True': if len(retry_day) != 0: print "Some file have not been downloded... Let's try again" while len(retry_day) != 0: for day in retry_day: print 'Retry file for %s, day %03d, year %04d' % (invarname, day, year) url = 'http://tds.hycom.org/thredds/dodsC/datasets/GLBa0.08/expt_91.0/2014/temp/archv.%04d_%03d_00_3zt.nc' % ( year, day) # url='http://tds.hycom.org/thredds/dodsC/datasets/GLBa0.08/expt_91.1/2014/temp/archv.%04d_%03d_00_3zt.nc' %(year,day) #get data from server try: dataset = netCDF4.Dataset(url)
nc.createDimension(outtimename, None) nc.createVariable('lon', 'f8', ('lon')) nc.variables['lon'].long_name = 'longitude' nc.variables['lon'].units = 'degrees_east' nc.variables['lon'][:] = lon nc.createVariable('lat', 'f8', ('lat')) nc.variables['lat'].long_name = 'latitude' nc.variables['lat'].units = 'degrees_north' nc.variables['lat'][:] = lat nc.createVariable(outtimename, 'f8', (outtimename)) nc.variables[outtimename].units = 'days since 1900-01-01 00:00:00' nc.variables[outtimename].calendar = 'LEAP' dstart = pyroms_toolbox.date2jday(datetime(year, month+1, 1, 1, 30)) roms_time = np.arange(dstart, dstart+daysinmonth[month], 3./24) nc.variables[outtimename][:] = roms_time nc.createVariable(outvarname, 'f', (outtimename, 'lat', 'lon'), fill_value=spval) nc.variables[outvarname].missing_value = spval nc.variables[outvarname].long_name = long_name nc.variables[outvarname].units = units nc.variables[outvarname].coordinates = 'lon lat' for day in range(daysinmonth[month]): # if year == 2010: # if ((month+1 >= 6) & (month+1 <= 8)): # file_tag = 'MERRA301' # else: # file_tag = 'MERRA300'
print('Processing file for %s, day %d, year %04d' % (invarname, day_out * 3, year)) #get data from server try: var = dataset.variables[invarname][day, :, 170:215, 195:265 - 1] # spval = var.get_fill_value() # dataset.close() print('Got %s from server...' % invarname) except: print('No file on the server... We skip this day.') retry_day.append((day, day_out)) continue #create netCDF file nc.variables[outvarname][day_out] = var jday = pyroms_toolbox.date2jday(datetime(year, 1, 1)) + day_out * 73 / 24. nc.variables['ocean_time'][day_out] = jday day_out += 1 if retry == 'True': if len(retry_day) != 0: print("Some file have not been downloded... Let's try again") while len(retry_day) != 0: for (day, day_out) in retry_day: print('Retry file for %s, day %03d, year %04d' % (invarname, day_out, year)) #get data from server try: var = dataset.variables[invarname][day, :, 170:215, 195:265 - 1] #spval = var.get_fill_value()
# url='http://tds.hycom.org/thredds/dodsC/datasets/GLBa0.08/expt_91.1/2014/salt/archv.%04d_%03d_00_3zs.nc' %(year,day) #get data from server try: dataset = netCDF4.Dataset(url) var = dataset.variables[invarname][0,:,2100:,550:4040] spval = var.get_fill_value() dataset.close() print 'Got %s from server...' %invarname except: print 'No file on the server... We skip this day.' retry_day.append(day) continue #create netCDF file outfile = 'data/HYCOM_GLBa0.08_%s_%04d_%03d.nc' %(outvarname,year,day) jday = pyroms_toolbox.date2jday(datetime(year, 1, 1)) + day - 1 create_HYCOM_file(outfile, jday, lon, lat, z, var) if retry == 'True': if len(retry_day) != 0: print "Some file have not been downloded... Let's try again" while len(retry_day) != 0: for day in retry_day: print 'Retry file for %s, day %03d, year %04d' %(invarname, day, year) url='http://tds.hycom.org/thredds/dodsC/datasets/GLBa0.08/expt_91.0/2014/salt/archv.%04d_%03d_00_3zs.nc' %(year,day) # url='http://tds.hycom.org/thredds/dodsC/datasets/GLBa0.08/expt_91.1/2014/salt/archv.%04d_%03d_00_3zs.nc' %(year,day) #get data from server try: dataset = netCDF4.Dataset(url) var = dataset.variables[invarname][0,:,2100:,550:4040]
for day in range(rec_start,rec_end): print 'Processing file for %s, day %d, year %04d' %(invarname, day_out*3, year) #get data from server try: var = dataset.variables[invarname][day,:,170:215-1,195:265] # spval = var.get_fill_value() # dataset.close() print 'Got %s from server...' %invarname except: print 'No file on the server... We skip this day.' retry_day.append((day,day_out)) continue #create netCDF file nc.variables[outvarname][day_out] = var jday = pyroms_toolbox.date2jday(datetime(year, 1, 1)) + day_out*73/24. nc.variables['ocean_time'][day_out] = jday day_out += 1 if retry == 'True': if len(retry_day) != 0: print "Some file have not been downloded... Let's try again" while len(retry_day) != 0: for (day,day_out) in retry_day: print 'Retry file for %s, day %03d, year %04d' %(invarname, day_out, year) #get data from server try: var = dataset.variables[invarname][day,:,170:215-1,195:265] # spval = var.get_fill_value() print 'Got %s from server...' %invarname