Example #1
0
    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'
Example #2
0
    #    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'
Example #4
0
    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]
Example #6
0
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