# 0.25 degree resolution target path = ('/nfs/a68/gyjcab/datasets/lapse_data_harmonised/Jan_2018/mon_0.25deg/') pt25_cube = path+'sal_clara_mon_0.25deg_1982_2015_direct_from_netcdf.nc' # specify target cube regrid_cube = one_deg_cube # read in ERA5 data path = '/nfs/a68/gyjcab/datasets/ERA5/' cube = iris.load_cube(path + 'era5_surface_solar_radiation.nc') print(cube) # Convert units to W/m2 by dividing by seconds in day dates = get_dates(cube) for t in range(len(dates)): date = dates[t] seconds_in_day = 60*60*24 temp_data = cube.data[t, :, :] / seconds_in_day cube.data[t, :, :] = temp_data # convert cube data units cube.units = 'W/m2' # call harmonise.cube2netcdf function to regrid and save as new cube harmonise.cube2netcdf(cube, 'rdn', startyr=1979, nyear=41, #remove_cell_methods=True, product='era5_test', regrid=True, latlon_bounds=True, #time_bounds=False, regrid_cube=regrid_cube)
path = ('/nfs/a68/gyjcab/datasets/lapse_data_harmonised/Jan_2018/mon_0.25deg/') pt25_cube = path + 'sal_clara_mon_0.25deg_1982_2015_direct_from_netcdf.nc' # specify target cube regrid_cube = one_deg_cube # read in GLEAM netcdf data_path = '/nfs/a68/gyjcab/datasets/GLEAM/v3.3/v3.3b/monthly/' #cube = iris.load_cube(data_path + 'E_1980_2018_GLEAM_v3.3a_MO.nc') cube = iris.load_cube(data_path + 'E_2003_2018_GLEAM_v3.3b_MO.nc') # reorder coordinates cube.transpose([0, 2, 1]) print(cube) cube.standard_name = 'water_evaporation_flux' name = 'water_evaporation_flux' cube.convert_units('mm.s-1') cube.units = 'kg m^-2 s^-1' # call harmonise.cube2netcdf function to regrid and save as new cube harmonise.cube2netcdf(cube, 'evspsbl', startyr=2003, nyear=16, product='gleam_3.3b_test', regrid=True, latlon_bounds=True, regrid_cube=regrid_cube, time_bounds=False, name=name)
# specify target cube regrid_cube = one_deg_cube # GRACE Monthly Mass Grids - Global mascons (JPL RL06_v02) # read scale path = '/nfs/a68/gyjcab/datasets/GRACE/JPL_MASCON/' scale = iris.load_cube(path + 'CLM4.SCALE_FACTOR.JPL.MSCNv02CRI.nc') # read liquid water equivalent thickness name_constraint = iris.Constraint( cube_func=lambda cube: cube.var_name == 'lwe_thickness') lwe = iris.load_cube(path + 'GRCTellus.JPL.200204_201911.GLO.RL06M.MSCNv02CRI.nc', constraint=name_constraint) name = lwe.name() cube = lwe * scale.data # call harmonise.cube2netcdf function to regrid and save as new cube harmonise.cube2netcdf(cube, 'lwe', startyr=2002, nyear=19, product='test_grace_jpl_mascon', regrid=True, latlon_bounds=True, regrid_cube=regrid_cube, time_bounds=False, name=name)
path = ('/nfs/a68/gyjcab/datasets/lapse_data_harmonised/Jan_2018/mon_1.0deg/') one_deg_cube = path + 'tas_airs_mon_1.0deg_2003_2016.nc' # 0.25 degree resolution target path = ('/nfs/a68/gyjcab/datasets/lapse_data_harmonised/Jan_2018/mon_0.25deg/') pt25_cube = path + 'sal_clara_mon_0.25deg_1982_2015_direct_from_netcdf.nc' # specify target cube regrid_cube = one_deg_cube # read in CHIRPS netcdf path = '/nfs/a68/gyjcab/datasets/CHIRPS/' cube = iris.load_cube(path + 'chirps-v2.0.monthly_1981_2020.nc') print(cube) # if needed convert units #cube.units = 'kg m-2 month-1' #cube.convert_units('kg m-2 day-1') # call harmonise.cube2netcdf function to regrid and save as new cube harmonise.cube2netcdf(cube, 'pr', startyr=1981, nyear=40, remove_cell_methods=True, product='test_chirps', regrid=True, latlon_bounds=True, time_bounds=False, regrid_cube=regrid_cube)
import harmonise import warnings warnings.filterwarnings("ignore") # specify path to file that matches the resolution you wish to regrid to # 1.0 degree resolution target path = ('/nfs/a68/gyjcab/datasets/lapse_data_harmonised/Jan_2018/mon_1.0deg/') one_deg_cube = path+'tas_airs_mon_1.0deg_2003_2016.nc' # 0.25 degree resolution target path = ('/nfs/a68/gyjcab/datasets/lapse_data_harmonised/Jan_2018/mon_0.25deg/') pt25_cube = path+'sal_clara_mon_0.25deg_1982_2015_direct_from_netcdf.nc' # specify target cube regrid_cube = one_deg_cube # read in CLARA radiation data data_path = '/nfs/a68/gyjcab/datasets/CLARA/surface_radiation/sis/' cubes = harmonise.iris_read(data_path, 'surface_downwelling_shortwave_flux', short_name='SIS') nyear = len(cubes)/12 # call harmonise.cube2netcdf function to regrid and save as new cube harmonise.cube2netcdf(cubes, 'sis', startyr=1982, nyear=nyear, product='clara_test', regrid=True, latlon_bounds=True, merge=True, regrid_cube=regrid_cube, units='W m^-2')